C’est un peu la syntaxe qui m’y a fait penser. :-)
Ainsi, si je reprends le premier exemple...
La première ligne, startsharpe FORME se traduirait juste par FORME (ou montre FORME s’il s’agit d’un résultat de calcul et non d’un dessin) ;
puis la définition qui suit :
shape FORME {CIRCLE[]CIRCLE[x1 brightness 0.5]}
...se traduirait en logo francisé, mais défini préalablement à l’appel, par
pour FORME
CIRCLE
CIRCLE 1 0.5
fin
Par contre, il faut avoir créé les formes de base, ce qui se fait aisément (et j’imagine que le TRIANGLE ici est équilatéral ?).
L'autre truc qui m’a fait penser à ce langage, ce sont les crochets et les modifications :
cfdg
logo
x ?
av ? (tortue regardant vers la droite)
x -?
re ? (tortue regardant vers la droite)
y ?
av ? ou avance ? (tortue regardant vers le haut)
y -?
re ? ou recule ? (tortue regardant vers le haut)
rotate ?
td ? ou droite ? (tortue orientée à 0°)
rotate -?
tg ? ou gauche ? (tortue orientée à 0°)
size ?
(je sèche pour celui-ci)
...les modifications dans une certaine limite (comme indiqué entre parenthèses) et puis la couleur, si je ne me rappelle bien était géré avec une palette numéroté, et non pas spécifiée sous forme HSB/TSL
L’exemple de récursion donné en exemple :
pour MAFORME :taille :couleur
fcc :couleur
SQUARE :taille
avance 1.1
droite 20
repete 1 [
MAFORME [retourne produit :taille 0.99]
[retourne somme :couleur + 1]
]
fin
Logo reprend les aspects fonctionnel et orienté object réflexif de Lisp ;-) mais laisse les parenthèses (je me souviens avoir même lu que c’est un « Lisp sans parenthèse » et de me dire « mais ils ont mis des crochets » haha)... et a une récursion toujours terminale. Puis il va influencer à son tour (en tout cas j’y retrouve des clins d’œil) : Smalltalk (plus Lisp directement et Simula), Scratch (qui à son tour va, avec Scheme, influencer BYOB/Snap!), Rebol (influencé aussi par Forth et Self), etc.
Mais bon, on retrouve nombre des aspects de CFDG dans divers langages textuels de dessin non contextuel ; mais il y a un petit plus par rapport à ceux que je connais : les rules natifs...! (ou alors ça ne m’avait pas marqué ?)
"It is seldom that liberty of any kind is lost all at once." ― David Hume
[^] # Re: Le zéro-pouce ?
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse à la dépêche L'art non contextuel. Évalué à 2 (+0/-0).
C’est un peu la syntaxe qui m’y a fait penser.
:-)Ainsi, si je reprends le premier exemple...
La première ligne,
startsharpe FORMEse traduirait juste parFORME(oumontre FORMEs’il s’agit d’un résultat de calcul et non d’un dessin) ;puis la définition qui suit :
...se traduirait en logo francisé, mais défini préalablement à l’appel, par
Par contre, il faut avoir créé les formes de base, ce qui se fait aisément (et j’imagine que le
TRIANGLEici est équilatéral ?).L'autre truc qui m’a fait penser à ce langage, ce sont les crochets et les modifications :
x ?av ?(tortue regardant vers la droite)x -?re ?(tortue regardant vers la droite)y ?av ?ouavance ?(tortue regardant vers le haut)y -?re ?ourecule ?(tortue regardant vers le haut)rotate ?td ?oudroite ?(tortue orientée à 0°)rotate -?tg ?ougauche ?(tortue orientée à 0°)size ?...les modifications dans une certaine limite (comme indiqué entre parenthèses) et puis la couleur, si je ne me rappelle bien était géré avec une palette numéroté, et non pas spécifiée sous forme HSB/TSL
L’exemple de récursion donné en exemple :
...ressemblerait en logo à quelque chose comme :
Logo reprend les aspects fonctionnel et orienté object réflexif de Lisp
;-)mais laisse les parenthèses (je me souviens avoir même lu que c’est un « Lisp sans parenthèse » et de me dire « mais ils ont mis des crochets » haha)... et a une récursion toujours terminale. Puis il va influencer à son tour (en tout cas j’y retrouve des clins d’œil) : Smalltalk (plus Lisp directement et Simula), Scratch (qui à son tour va, avec Scheme, influencer BYOB/Snap!), Rebol (influencé aussi par Forth et Self), etc.Mais bon, on retrouve nombre des aspects de CFDG dans divers langages textuels de dessin non contextuel ; mais il y a un petit plus par rapport à ceux que je connais : les
rules natifs...! (ou alors ça ne m’avait pas marqué ?)"It is seldom that liberty of any kind is lost all at once." ― David Hume