1

Je voulais savoir si quelqu'un avait déjà fait un shell pour TI reprenant les commandes UNIX (ls, pwd, etc...) offrant une alternative aux autres explorateurs style TICT Explorer ou Einstein...

Par ailleurs, pourquoi personne n'a porté de ROM pour la TI utilisant Linux? Il existe pourtant des "distributions" pour 68000 tenant sur 500k à peu près, non?
"Mi lernas Esperanto. G^i estas tre facila lingvo"
Apprenez vous aussi l'Esperanto!
Cours gratuit ici et dictionnaire

2

dans le même style, il y avait un programme qui reprenait les commandes ms-dos smile

3

MS-DOS : rotfl

Plus sérieusement, en fait, avec 2 copains on en a commencé un en basic, mais c'était tellement lent... Je voulais savoir si quelqu'un en avait fait un en C ou assembleur...
"Mi lernas Esperanto. G^i estas tre facila lingvo"
Apprenez vous aussi l'Esperanto!
Cours gratuit ici et dictionnaire

4

stpatrick
a écrit : Par ailleurs, pourquoi personne n'a porté de ROM pour la TI utilisant Linux? Il existe pourtant des "distributions" pour 68000 tenant sur 500k à peu près, non?

1. Pas de MMU. Mais peut-être que ucLinux tournerait.
2. Pas assez de RAM. C'est surtout ça le problème.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

5

il me semble qu'il y a des versions de linux sans MMU smile

6

Oui. http://www.uclinux.org. Mais le problème de RAM est moins facile à résoudre. sad
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

7

Je voulais savoir si quelqu'un avait déjà fait un shell pour TI reprenant les commandes UNIX (ls, pwd, etc...) offrant une alternative aux autres explorateurs style TICT Explorer ou Einstein...
Pedrom est en ligne de commande meme si ce n'est pas vraiment un shell. J'hésite a integrer ca dans tish. Sur 92 ca peux etre pratique mais sur 89 sick
avatar

8

Même sur 89, on arrive à taper rapidement... N'hésite pas à l'intégrer, donc top
"Mi lernas Esperanto. G^i estas tre facila lingvo"
Apprenez vous aussi l'Esperanto!
Cours gratuit ici et dictionnaire

9

je suis actuellement en train de develloper un shell qui reprend les commandes unix, donne moi ton adresse mail et je t'enverrai une pre beta et si ca t'interresse, tu peux m'aider, dans ce cas je t'enverrai mes sources (en C) et toutes "inovations" seront les bienvenues (surtout qu'il me reste pas mal a faire)

il est en ligne de commande comme le bash linux smile
http://membres.lycos.fr/pingooz/
Un cafe et deux sucres

10

le gros problème c'est surtout que ca risque de prendre de la place pour quelquechose que l'on n'utilisera pas forcement. je crois que je vais faire 2 versions alors
avatar

11

Ben PrOSit, quand on lançait la console, avait "quelques" fonction qui se rapprochaine des commandes unix std. Mais bon, de loin, dans le noir, quand on est myope grin
avatar

12

sinon il y aviat un shell qui s'appelait TiLinux, mais G jamais reussi a comprendre comment lancer les commandes, je tapais par ex. ls, il me retournait 'command unknow'
http://membres.lycos.fr/pingooz/
Un cafe et deux sucres

13

disons que les cmd unix c bien bo...
mais c encore mieux si on peut en faire des shell-scrpit smile
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

14

Tiens, peut-être qu'on pourrait porter ça: http://tallyho.bc.nu/~steve/omu.html...
Je n'ai pas regardé la licence, mais il semble encourager les portages...

Et pour les utilitaires portables, mais pas trop gourmands en mémoire, peut-être que http://www.netbsd.org pourrait être d'utilité. Le kernel NetBSD a besoin d'un MMU, mais les utilitaires pourraient être utilisables.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

15

pourtant sur le site de netBSD, il y a des verion pour x68k et 68000, elles ont besoin de MMU elles aussi ???
http://membres.lycos.fr/pingooz/
Un cafe et deux sucres

16

Oui. C'est pour les 68k avec MMU.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

17

on a dit qu'il y avait des versions sans MMU, faut lire les spec de chacune smile

18

squale92 a écrit :
disons que les cmd unix c bien bo...
mais c encore mieux si on peut en faire des shell-scrpit smile


j'aimerai en integrer a mon shell, mais je sais pas comment "fonctionne" les interpreteur (enfin, l'alghorithme de lecture ... et le reste smile)
si qqu'un peux m'aider ....
http://membres.lycos.fr/pingooz/
Un cafe et deux sucres

19

Microbug a écrit :
on a dit qu'il y avait des versions sans MMU, faut lire les spec de chacune smile

J'ai regardé les specs de toutes les versions 68k, et aucune ne supporte les 68000 sans MMU.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

20

pingoo> bon courage smile
avec un peu de chance, il y aurait pas un shell qui soit open-source ?
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

21

prend PedRom smile

22

squale92
a écrit : avec un peu de chance, il y aurait pas un shell qui soit open-source ?


Le mien le sera quand je l'aurai fini (mais C pas super bien programme pour le moment)
http://membres.lycos.fr/pingooz/
Un cafe et deux sucres

23

PiNGoO>TiLinux qu'on peut trouver sur ticalc.org marche très bien, ls compris!
Malheureusement il crée un dossier root dont on a pas besoin, mais il suffit de le lancer à partir d'un prog TI-Basic le supprimant à chaque fois que l'on quitte...
"Mi lernas Esperanto. G^i estas tre facila lingvo"
Apprenez vous aussi l'Esperanto!
Cours gratuit ici et dictionnaire

24

ouais, ou alors C T le laucher que j'arrivait pas a faire marcher, je sais plus, mais C par ce que je l'ai pas trouvé terrible que je suis en train de m'en coder un
http://membres.lycos.fr/pingooz/
Un cafe et deux sucres

25

PiNGoO : Pour fabriquer un interpréteur, il faut fonctionner à la base d'un graphe particulier qui est un automate grammatical (je ne connais plus la définition exacte, mais c'est au programme du second trimestre à l'IUT)
avatar

26

Pas nécessairement. Il y a des algorithmes ad-hoc qui n'utilisent aucune description grammaticale. Descente récursive par exemple, mais aussi de vrais bidouillages.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

27

quels sont ces algorithmes STP ????
moi je suis qu'en terminale, et pas en IUT
http://membres.lycos.fr/pingooz/
Un cafe et deux sucres

28

Je pense que pour ton cas, un algorithme de la catégorie "bidouillage" est largement suffisant. Compare bêtement le premier mot avec chaque mot-clé. Pour les caractères spéciaux, de style >, |, etc., si tu veux les gérér, tu peux utiliser du strchr, ou de préférence une boucle qui fait la même chose, mais en tenant compte des [i][/i].
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

29

OK, mais alors, il faudra faire gaffe au espaces etc ... non ??

Sinon, a titre "culturelle", comment ca marche ??? (les algo. compliqués)
http://membres.lycos.fr/pingooz/
Un cafe et deux sucres

30

Bon, je vais essayer d'expliquer rapidement le parsing LR, mais il n'y aura pas tous les détails:
* Tu commences avec une "grammaire". Celle-ci contient des "états", et des "tokens" qui correspondent à des mots, ou plus exactement à des catégories de mots. La grammaire décrit à quel état on passe en fonction de l'état de départ et du token lu. Par exemple, pour une phrase simple:
état "départ" + token "sujet" -> état 1
état 1 + token "verbe" -> état 2
état 2 + token "objet" -> état "fin"
Tout token qui n'est pas prévu par la grammaire sera vu comme une erreur de syntaxe ("parse error").
* En plus des passages d'état, la grammaire te dit comment interpréter les tokens. Par exemple:
"sujet": "shift" (le token ne veut rien dire tout seul, il faut en lire un autre)
"sujet"+"verbe": "shift"
"sujet"+"verbe"+"objet": "reduce" -> "phrase" (sujet+verbe+objet=phrase)
* En pratique, ces informations ne sont pas codées comme dans l'exemple ci-dessus, mais associées aux états:
état "départ": shift, "sujet" -> état 1
état 1: shift, "verbe" -> état 2
état 2: shift, "objet" -> état 3
état 3: reduce(3) -> "phrase" -> état "fin" (le 3 de reduce(3) étant le nombre de tokens à "réduire")
* La phrase "Je parse une phrase." sera donc parsée par cette grammaire comme:
état "départ": shift, Je = "sujet" -> état 1
état 1: shift, parse = "verbe" -> état 2
état 2: shift, une phrase = "objet" -> état 3
état 3: reduce(3): "sujet" + "verbe" + "objet" -> "phrase" -> état "fin"
(En pratique, "une phrase" sera lu comme "préposition" "nom commun" et devra être également réduit en un seul token "objet".)
* Èvidemment, le résultat final intéressant n'est pas juste le token "phrase", mais aussi les étapes de réduction. Ici, on sait que notre phrase est constituée du "sujet" Je, du "verbe" parse et de l'"objet" une phrase. Ici, le "parse tree" a un seul niveau. En général, c'est un arbre qui peut devenir très grand.
* En pratique, un parseur LR ne se limite pas à passer d'état en état, il exécute aussi du code quand il se trouve en certains états. Ce code fait en quelque sorte partie de la grammaire.
* Le parsing LR parse toujours de gauche à droite, d'où le nom "LR" (left-right). Cela présuppose une rangée limitée de grammaires possibles. Dans une grammaire générale, il peut y avoir des conflits entre un "shift" et un "reduce" (par exemple: "I saw the man" a un sens tout seul, mais "I saw [a man with a telescope]" a un sens différent que "[I saw a man] with a telescope". Donc il y a conflit entre un reduce de "I saw a man" ou un shift, suivi d'un reduce de "[a man with a telescope]") ou entre 2 "reduce" (situation semblable: 2 simplifications possibles, et on ne sait à priori pas laquelle choisir). Il existe une généralisation, le "generalized LR" qui consiste à résoudre ces conflits en essayant les 2 solutions jusqu'à trouver une erreur, et cela d'une manière astucieuse en temps et en vitesse (évidemment, ça ne marche bien que si la phrase n'est pas ambigüe. Si elle est ambigüe, il y a plusieurs solutions dont aucune ne porte à une erreur). (Mais ce n'est pas toujours fait de cette manière optimale. GCC fait par exemple à certains endroits du parseur C++ actuel du "generalized LR" naïf: on essaye une solution; si elle passe, on accepte, sinon on essaye la prochaine solution. Et on recalcule tout même s'il y a des calculs en commun entre les 2 solutions, ce qui n'est pas optimal.) Mais je ne rentrerai pas dans les détails du "generalized LR" parce que c'est très long à expliquer clairement. Déjà le LR simple est assez compliqué.

(J'ai travaillé sur les parseurs LR en partie pour l'université (exposé sur le "generalized LR parsing") et en partie en travaillant sur GCC (GNU Bison). Mais je ne connais quand-même pas tout jusqu'au dernier détail. smile)
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité