Forums Casio - Projets de programmation

Index du Forum > Projets de programmation > Casio Basic Web Interpreter
Krevo_
Hors ligne
Membre
Points: 61
Défis: 0
Message
Posté le 29/08/2014 15:06

Casio Basic Web Interpreter :

Bonjour,

Je viens de m'inscrire pour vous faire part de la mise en ligne d'un "Casio Basic Web Interpreter" que j'ai commencé à écrire.
Je crois que le nom parle de lui-même.... c'est un interpreteur pour le langage basic des calculatrices Casio.
Le truc c'est que c'est un interpréteur en mode web, le rendu (=écran de la calculatrice) se fait sur un canvas HTML5.

Donc c'est ici => Casio Basic Web Interpreter

ATTENTION : ce que je partage avec vous est dans une version "alpha", il manque encore beaucoup de choses...
J'ai mis pleins de programmes en exemple.

En vrac la liste des instructions supportés :


Plot
PlotOn
PlotOff
PlotChg
PxlOn
PxlOff
PxlChg
PxlTest
Line
F-Line
Horizontal
Vertical
Cls
ClrText
Isz
Dsz
Lbl
Goto
Prog
Return
Mcl
Range
ViewWindow
Locate
Text
expr->variable
expr->variableStart~variableEnd
variable
"string"
?->variable
"string"?->variable
Ran#
GetKey
Int
Intg
Frac
Deg
Rad
Grad
sin
cos
tan
Rec
Pol
+
-
*
/
=> (If)
If/Then/Else/IfEnd
And/Or/Xor/Not
<=
>=
=
<> (or !=)
<
>
(expr)
-expr
Do/LpWhile
While/WhileEnd


J'ai mis les sources sur mon gitlab.

A bientôt.
Krevo_



Pages: 1, 2, 3, 4 | Suivante

Legolas
Hors ligne
Ancien rédacteur
Points: 3266
Défis: 104
Message
Citer : Posté le 29/08/2014 15:09 | #
Super merci !
----------------------------------
Mes programmes
Cacher les programmes
Mes défis
Cacher les défis



Lephenixnoir
Hors ligne
Administrateur
Points: 13181
Défis: 136
Message
Citer : Posté le 29/08/2014 15:09 | #
Hey, c'est du bon boulot !
Bienvenue à toi Krevo_, et bravo

Malgré que je ne voie pas spécialement l'intérêt d'éxécuter du Basic Casio sur un ordinateur...
----------------------------------
Rise.
Scientifix
Hors ligne
Membre
Points: 762
Défis: 30
Message
Citer : Posté le 29/08/2014 15:09 | #
Super !
----------------------------------
JE SERAI ABSENT POUR 2 ANS A+

Je suis fan de Mathématiques et de Sciences en général (d'où mon nom ). Consultez mes programmes en rapport avec les Maths
--------------------------------------------------------

Calculatrice : Graph 75
Legolas
Hors ligne
Ancien rédacteur
Points: 3266
Défis: 104
Message
Citer : Posté le 29/08/2014 15:10 | #
Si, on peut programmer en basic sur FA_124 sans devoir transférer le programme à la calculatrice à chaque changement pour tester l'effet rendu.
----------------------------------
Mes programmes
Cacher les programmes
Mes défis
Cacher les défis



Scientifix
Hors ligne
Membre
Points: 762
Défis: 30
Message
Citer : Posté le 29/08/2014 15:11 | #
Au contraire Lephe, sur un ordi on gère beaucoup mieux le code et tout est plus propre, on s'y retrouve mieux (meilleure vision d'ensemble).
Je trouve que c'est une super idée pour ma part
----------------------------------
JE SERAI ABSENT POUR 2 ANS A+

Je suis fan de Mathématiques et de Sciences en général (d'où mon nom ). Consultez mes programmes en rapport avec les Maths
--------------------------------------------------------

Calculatrice : Graph 75
Lephenixnoir
Hors ligne
Administrateur
Points: 13181
Défis: 136
Message
Citer : Posté le 29/08/2014 15:12 | #
Ah oui tiens, je n'y avais pas pensé.
(Faut dire que je programme plus en Basic depuis longtemps aussi. ^^' )

Tu l'as programmé en JavaScript ?
----------------------------------
Rise.
Legolas
Hors ligne
Ancien rédacteur
Points: 3266
Défis: 104
Message
Citer : Posté le 29/08/2014 15:13 | #
Lephenixnoir a écrit :
Ah oui tiens, je n'y avais pas pensé.
(Faut dire que je programme plus en Basic depuis longtemps aussi. ^^' )

Tu l'as programmé en JavaScript ?

On dirait, ou alors du ajax.
----------------------------------
Mes programmes
Cacher les programmes
Mes défis
Cacher les défis



Scientifix
Hors ligne
Membre
Points: 762
Défis: 30
Message
Citer : Posté le 29/08/2014 15:13 | #
@Legolas : on peut exécuter le programme qu'on est en train de taper sur fa 124 ?
----------------------------------
JE SERAI ABSENT POUR 2 ANS A+

Je suis fan de Mathématiques et de Sciences en général (d'où mon nom ). Consultez mes programmes en rapport avec les Maths
--------------------------------------------------------

Calculatrice : Graph 75
Legolas
Hors ligne
Ancien rédacteur
Points: 3266
Défis: 104
Message
Citer : Posté le 29/08/2014 15:13 | #
Scientifix a écrit :
@Legolas : on peut exécuter le programme qu'on est en train de taper sur fa 124 ?

Non.
----------------------------------
Mes programmes
Cacher les programmes
Mes défis
Cacher les défis



Dark storm
Hors ligne
Membre d'honneur
Points: 10694
Défis: 174
Message
Citer : Posté le 29/08/2014 15:14 | #
Rhaaaaa !!!
Pas de boucles avec les labels ! :kill:

Mais sinon c'est sympa
----------------------------------
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Páranÿe quetë Quendya
Krevo_
Hors ligne
Membre
Points: 61
Défis: 0
Message
Citer : Posté le 29/08/2014 15:15 | #
Parmi les buts :
- faire revivre d'ancien programmes que j'avais écrit par le passé
- "just for fun" (ça c'est une très bonne raison !!)
- perfectionnement en techno web : javascript / canvas
- explorer un peu le monde des parser/compilateur/interpreteur (j'ai oublié de mentionné que j'ai utilisé "JS/CC" comme outil pour faire ma grammaire et générer le parseur)
Lephenixnoir
Hors ligne
Administrateur
Points: 13181
Défis: 136
Message
Citer : Posté le 29/08/2014 15:17 | #
Certaines expressions génèrent des erreurs de syntaxe, comme
.5(1000)->A
(la flèche non transformée bien entendu).
Par contre le niveau maximal de parenthèses est infini au du moins supérieur à 240, c'est appréciable
----------------------------------
Rise.
Scientifix
Hors ligne
Membre
Points: 762
Défis: 30
Message
Citer : Posté le 29/08/2014 15:18 | #
C'est une super idée maintenat il faut que ton Interpreter gère plus de code, car comme le dit Dark storm pas mal de truc manquent ... Mais t es sur la bonne voie, ton idée est énorme
----------------------------------
JE SERAI ABSENT POUR 2 ANS A+

Je suis fan de Mathématiques et de Sciences en général (d'où mon nom ). Consultez mes programmes en rapport avec les Maths
--------------------------------------------------------

Calculatrice : Graph 75
Krevo_
Hors ligne
Membre
Points: 61
Défis: 0
Message
Citer : Posté le 29/08/2014 15:19 | #
Dark storm a écrit :
Rhaaaaa !!!
Pas de boucles avec les labels ! :kill:

Mais sinon c'est sympa


Oui bien sûr, d'accord je n'ignore pas le "'GOTO Considered Harmful' ( Edsger Dijkstra).
Le lycée est loin et à l'époque il n'y avait que Lbl/Goto....
Donc j'ai codé ça d'abord (pour voir si mes programmes de l'époque pouvait être interprété).
Les autres boucles suivront...

Ajouté le 29/08/2014 à 15:22 :
Ajouté le 29/08/2014 à 15:21 :
Lephenixnoir a écrit :
Certaines expressions génèrent des erreurs de syntaxe, comme
.5(1000)->A
(la flèche non transformée bien entendu).
Par contre le niveau maximal de parenthèses est infini au du moins supérieur à 240, c'est appréciable


Parce que ça ne gère pas les multiplications sans l'opérateur *
Actuellement tu est obligé de faire
.5*(1000)->A
qui marche très bien.

J'ajoute que les A[1], A[2], ... Z[50] sont gérés aussi.
Lephenixnoir
Hors ligne
Administrateur
Points: 13181
Défis: 136
Message
Citer : Posté le 29/08/2014 15:25 | #
Le souci c'est que si tu ne respectes par strictement toute la syntaxe de l'interpréteur de Casio, on ne pourra pas exécuter les programmes comme on veut. De plus, comme on cherche souvent à gagner des octets on omet constamment le symbole de multipliation d'il y a des parenthèses.

Au fait, tu devrais te présenter.
----------------------------------
Rise.
Krevo_
Hors ligne
Membre
Points: 61
Défis: 0
Message
Citer : Posté le 29/08/2014 15:29 | #
Lephenixnoir a écrit :
Le souci c'est que si tu ne respectes par strictement toute la syntaxe de l'interpréteur de Casio, on ne pourra pas exécuter les programmes comme on veut. De plus, comme on cherche souvent à gagner des octets on omet constamment le symbole de multipliation d'il y a des parenthèses.


Mais j'ai bien l'intention que l'interpreteur puisse interpreté des programmes existants sans être obligé de les modifié.
Je connais bien ce raccourci ... surtout à l'époque de la fx7000G avec ses 422 pas seulement ! Mais c'est une histoire qui ira bien dans ma présentation... à venir.



Ajouté le 29/08/2014 à 15:32 :
MAJ : Vas y réessaye tes multiplications, j'ai modifié la grammaire à l'instant :-)
Lephenixnoir
Hors ligne
Administrateur
Points: 13181
Défis: 136
Message
Citer : Posté le 29/08/2014 15:33 | #
C'est mieux comme ça

Bon courage pour continuer.
----------------------------------
Rise.
Scientifix
Hors ligne
Membre
Points: 762
Défis: 30
Message
Citer : Posté le 29/08/2014 15:34 | #
Est ce que tu pourrais faire un genre de catalogue avec les commandes ? Ça serait génial 8)
Au passage j'aime bien ton Prog 2
----------------------------------
JE SERAI ABSENT POUR 2 ANS A+

Je suis fan de Mathématiques et de Sciences en général (d'où mon nom ). Consultez mes programmes en rapport avec les Maths
--------------------------------------------------------

Calculatrice : Graph 75
Darkysun
Hors ligne
Membre
Points: 1746
Défis: 52
Message
Citer : Posté le 29/08/2014 15:44 | #
Super projet je te soutiens à fond !!!
----------------------------------
Si je ne réponds pas à un post depuis trop longtemps : envoyez-moi un message pour me le rappeler !




Lephenixnoir
Hors ligne
Administrateur
Points: 13181
Défis: 136
Message
Citer : Posté le 29/08/2014 15:54 | #
Il y a quelques différences avec la police d'origine aussi.
Si ça t'intéresse, il existe un pdf avec toute la police au pixel.
----------------------------------
Rise.

Pages: 1, 2, 3, 4 | Suivante

Index du Forum > Projets de programmation > Casio Basic Web Interpreter

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2018 | Il y a 23 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire indépendant, géré bénévolement et n'est donc pas affilié à Casio | Toute reproduction de Planète Casio, même partielle, est interdite
Les fichiers, programmes et autres publications présents sur Planète Casio restent la propriété de leurs auteurs respectifs et peuvent être soumis à des licences ou des copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd