Compilateur

Sujets variés concernant le développement en PureBasic
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Compilateur

Message par G-Rom »

Pourquoi sacrilège ?

tu peut faire de la sorte :
b.f = 0
y.f = 10.0
z.f = 0.1

For( x.f=b , x < y , x + z )

Next
en ce moment même je fixe le bloc for/next , si tu as une remarque , c'est tout de suite ou jamais :D
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Compilateur

Message par Backup »

G-Rom a écrit :Pourquoi sacrilège ?

tu peut faire de la sorte :

b.f = 0
y.f = 10.0
z.f = 0.1

For( x.f=b , x < y , x + z )

Next
en ce moment même je fixe le bloc for/next , si tu as une remarque , c'est tout de suite ou jamais :D

sacrilege eu egars au tradition lexical du Basic ;)

la forme que tu donne , est pas mal , mais me gene sur un truc

Code : Tout sélectionner

For(  x.f=b  ,  x < y ,  x + z )
tu repete
For( x.f=b , x < y , x + z )


la forme historique

For I =1 ; signifie pour une variable du nom de I commençant a la valeur 1
to 255 ; et allant jusqu'a 255 me parait bien plus clair

dans ta forme , on ne comprends pas ce que ça signifie :)

le but etant de se rappeler de la syntaxe , il faut traduire en terme simple
la phrase suivante :

"une boucle commençant a X jusqu'a Y "


c'est pourquoi en PureGolo j'avais fait

Code : Tout sélectionner

repete 4
av 100
td 90
fin_repete
qui est l'equivalent simplifié de la boucle for -next :)
au sens ou il n'y a pas de condition comme dans while_wend ou Repeat-until



j'aurai pu ajouter un parametre de pas

repete 4 pas
av 100
td 90
fin_repete

voila , juste pour te dire que simplifier , oui , mais a condition
que ce soit réellement de la simplification, et non pas une façon
qui TE soit plus comprehensible :)


d'un point de vue literal lorsque tu utilise :
x < y
et
x + z
tu induit en erreur , car n'importe qui ayant ete un peut a l'ecole
traduit ces 2 termes par
x < y
= si x est plus petit que Y

bref tu integre une condition dans une boucle For-next qui n'est qu'un compteur, un engrenage
une roue qui tourne pendant X tours
x + z
= x plus z
que viens faire une notion d'addition dans une boucle For-next ...?
qui n'est qu'une roue qui tourne, ...

si je te chipote la dessus , c'est juste pour attirer ton attention sur le fait
que le Basic n'as pas eu cette syntaxe par hasard !!
tout comme le Logo de Papert , les Termes employés, la syntaxe
a été choisi avec soin :)

c'est pas facile de trouver un "langage" qui puisse etre compris du premier coup :)

voila pourquoi je parlais de "Sacrilege" ;)
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Compilateur

Message par G-Rom »

Une fois le principe assimilé , c'est très simple à comprendre
For MaVar = 0, MaVar < 50 , MaVar+1
; code...
next
For MaVar = 0
Pour MaVar qui commence à 0
MaVar < 50
Repète tant que MaVar est inférieur à 50
MaVar + 1
Incrémente MaVar de 1

Je trouve le principe plus propre que 'For/To/Step/Next' 4 mot clés pour une boucle , pour un basic , ca fait beaucoup de mot clé je trouve.
je chipote , en réalité les 2 façon de faire ne me dérange pas , quoi que j'ai une préférence pour 'For MaVar = 0, MaVar < 50 , MaVar+1'
ca modernise un peu le truc , je vais réfléchir a tout ca et prendre ma décision plus tard du coup. :/
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Compilateur

Message par Backup »

Fais comme tu le sent :)

je veux juste attirer ton attention sur la préemption que peut avoir un "oeil neuf" (un débutant)
dans ton langage , ce que nous sommes par force des choses :)

bref un peu de réflexion en te mettant a la place d'un bleu
et ton langage y gagnera de toute façon :)

c'est vrais que je suis de la vielle école en matière de Basic, donc
je me cramponne a mon univers :lol:

j'ai fait des reproches au purebasic , pour les mêmes raisons :lol:
j'ai vu que tu avais l'intention de garder le Goto :)
Avatar de l’utilisateur
MLD
Messages : 1124
Inscription : jeu. 05/févr./2009 17:58
Localisation : Bretagne

Re: Compilateur

Message par MLD »

Il faut garder le Goto, car même s'il doit servir seulement dans de rares occasions, c'est l'équivalent du jump de l'ASM.
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Compilateur

Message par G-Rom »

va pour le for / to / step. Pour le goto, il n'était pas question de le virer.
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Compilateur

Message par G-Rom »

En ce début d'après midi , à 13:41 , heure de paris , j'ai réussi à créer mon premier exécutable dérivé de cette source :mrgreen: :
Main.i(Argc.i,*Argv.c)

; Test
; Commentaire qui sert strictement à rien ! ; Coool ; Bug ? <EOI> ;
Test.b
MyVar.ui =45 ; Commentaire
Zoob.ui = 0
MyVar = 89

If MyVar = 89
ZooB = 50
Else
ZOob = 22
EndIf

EndMain
Avatar de l’utilisateur
Ar-S
Messages : 9539
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Compilateur

Message par Ar-S »

C'est très prometteur tout ça, n'oublie pas de vraiment bien le documenter si tu le diffuses avec exemple et tout et tout.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
tonton
Messages : 315
Inscription : mar. 26/avr./2005 15:19

Re: Compilateur

Message par tonton »

Pourquoi pas ecrire comme ca:

Boucle a = 80 pas 5
fin boucle

Si a = 20
b=3
sinon
b=2
fin condition....................

Pouvez pas faire honneur a votre patrie?
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Compilateur

Message par G-Rom »

je lui ai fait honneur de ma présence pendant 7 ans , tu peut en dire autant ? :D
et je continue par le biais de mes charges sociales astronomique , qui ne couvre que très peu ma retraite & ma protection sociale , et pas du tout le chômage.
la patrie , j'ai donné & je donne encore...

je vois mal une syntaxe comme ceci :
Saucisson 1 tranche à 10 epaisseur 1mm
Mettre Saucisson dans Baguette
FinSaucisson
:mrgreen:
Avatar de l’utilisateur
TazNormand
Messages : 1297
Inscription : ven. 27/oct./2006 12:19
Localisation : Calvados (14)

Re: Compilateur

Message par TazNormand »

Question bête G-Rom, mais la finalité de ton compilateur, c'est quoi ?

Concurrent de PureBasic ? Complément de PB ?

Je demande ça juste par curiosité
Image
Image
tonton
Messages : 315
Inscription : mar. 26/avr./2005 15:19

Re: Compilateur

Message par tonton »

TazNormand a écrit :Question bête G-Rom, mais la finalité de ton compilateur, c'est quoi ?

Concurrent de PureBasic ? Complément de PB ?

Je demande ça juste par curiosité
Curiosité malsaine dans tes hypothèses!
Il aime programmer a mon sens ! c' est tout
Perso, j ai composé jamais pour du pognon, jamais par competition, ...que par passion
C' est ca qui est beau!
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Compilateur

Message par G-Rom »

+1 tonton.

TazNormand, c'est avant tout un défi personnel , je ne veut pas faire de concurrence à qui que ce soit, n'y être complémentaire à PureBasic.
si mon projet aboutit , ce sera plus puissant que PureBasic :mrgreen:
G-Rom
Messages : 3641
Inscription : dim. 10/janv./2010 5:29

Re: Compilateur

Message par G-Rom »

Je suis content , j'arrive à importé des fonctions issue du c/c++ directement dans mon code :D

Code : Tout sélectionner

GlobalVar.i = 0

Main ( )
	
	;Génère une erreur de typage
	;MyVar.xxx = 55
	
	;Génère une erreur de déclaration (type non défini)
	;MyGhost = 28
	
	GlobalVar = 2
	
	
	trustcall printf("Hello world ! %i \n",GlobalVar )
	
	
EndMain
en sortie :
Hello world ! 2

trustcall , est un mot clé qui permet d'appeler avec confiance une fonction issue du c/c++ , il n'y a pas de vérification a la précompilation.
Avatar de l’utilisateur
case
Messages : 1545
Inscription : lun. 10/sept./2007 11:13

Re: Compilateur

Message par case »

lol grom ,) gogogo ^^
ImageImage
Répondre