zo iNiTiATiON SPEECHES
S01E28 2024-08-25

S01E28 — 25-08-2024.

Toujours plus loin.

jour 28.

Te revoilà, je ne pensais pas que tu suivrais au temps ma folie. Je profite que tu sois encore là pour te montrer le reste des avancées :

-bytes

Les octets peuvent s’écrire litéralement de la façon suivante.


-- atlas: bytes.

`0`     `*`     `?`     `!`     `#`
`$`     `t`     `n`     `r`     `)`
`+`     `-`     `=`     `{`     `}`
`[`     `]`     `|`     `;`     `:`
`2`     `"`     `,`     `.`     `ç`

-chars

Les caratères ascii suivront la syntaxe qui suit.

« c’est très maigre en ce moment mais je ne comprends pas encore comme je dois procédé avec les caractères d’échappements. C’est encore très instable pour le moment. Je corrigerai tout ça après mettre aéré l’esprit et potasser un peu. »


-- atlas: chars.

'a'     'b'     'c'     ' '     '\0'
'\n'    '\t'    '\r'    'İ'     '山'

-groups

L’ensemble des délimiteurs du langages.


-- atlas: groups.

(   )   {   }   [   ]

-kws

L’ensemble des mots clés du langage pour le moment. J’essaye de la réduire à moins de 25 mots clés en vain. Garde-toi en tête c’est une liste temporaire. Sinon ça fonctionne bien. Je suis content.


-- atlas: kws.

abstract    and         apply         as        async
await       break       continue      else      enum
ext         false       Fn            fn        fun
for         if          imu           load      loop
match       me          mut           pack      pub
return      struct      true          type      _
val         wasm        when          while

-strs

Côté chaines de caractères, il n’y a rien de ouf à l’horizon. C’est la même syntaxe que les autres langages. Plus tard, j’aimerai bien créer un Formatter pour permettre d’écrire des bayes du type : "hello, {name}" pour que ce qui se trouve entre les crochets permettre l’interpolation. La variable name serait récupérer si elle est présente dans le scope courant. Si non, j’écris un rapport d’erreur pour me signaler que la variable n’existe pas.

« Pareil que pour les caractères, c’est très maigre comme symboles supportés mais les caractères d’échappements me bloquent encore. C’est instable aussi. »


-- atlas: strs.

"Ahoj"        "გამარჯობა"     "yo"         "안녕하세요"    "Բարեւ"
"{turfu}"     "ሰላም"          "你好"        "A1B2C3"     "wesh"
"Olá"         "fødselsdag"    "नमस्ते"        "হ্যালো"       "สวัสดี"
"Привет"      "char"          "str"        "¡Hola!"     "שלום"
"unicode_µ"   "emoji_😊"      "こんにちは"   "fn()"       "مرحبا"

-zsx

C’est un langage de balisage de la famille des XML que je suis encore entrain de développer. Avec je vais pouvoir créer des applications multi-platformes. Je voulais partir sur du egui mais entre temps, j’ai de nouvelles recherches, mon choix final est encore en suspens.

  1. characters.

Comme je suis la spécification W3C pour l’instant, chaque caractère correspond à un jeton de type ZsxCharacter contenant le caractère qui va bien à chaque fois. J’ai cru voir qu’il fallait ensuitre construire l’arbre mais je ne sais pas si on parle ici d’un arbre plus au niveau du Tokenizer ou un truc niveau arbre de syntaxe abstraite. Je verrai…


-- atlas: zsx character.

::=

  foobar    lorem     ipsum   raboof

;
  1. tags.

Ici c’est le plaisir de la nuit blanche.

« Petite détection de balises — va-li-dé! »


-- atlas: zsx tag.

::=

  <foobar>    <lorem>     </ipsum>   </raboof>

;
  1. mixes

Là, c’est ce qui me laisse pantois. J’apprécie la beauté de la récursivité et de l’entralassement entre les balises et les caractères. Ne sont-ils pas tous beaux à danser à l’unissons.


-- atlas: zsx tag.

::=

  <foobar>    <lorem>     foobar      </ipsum>    </raboof>

;

Samedi 25 août minuit et dix minutes, ça sent la nuit blanche. Je vais passer ma soirée avec Takeoff (Paix à son âme) en boucle pour me motiver à charbonner 24 - 7. Ja-mais lâcher le steak.

« focus, focus, focus! » by Robert Virding

@invisageable