diff --git a/nec/confs/passageenseine/2023/baguette.org b/nec/confs/passageenseine/2023/baguette.org new file mode 100644 index 0000000..187e7a2 --- /dev/null +++ b/nec/confs/passageenseine/2023/baguette.org @@ -0,0 +1,55 @@ +#+title: Les langages exotiques ludiques : Le cas du Baguette# +#+date: <2023-06-23 ven.> +#+html_link_up:../roadmap.html + +* Introduction + +[[https://passageenseine.fr][Rediffusion]] - [[https://baguettesharp.nwa2coco.fr][Site]] + +Conférence faite par Charlotte Thomas, étudiante en Licence 2 à +l'ISTIC et en stage au sein de l'IRISA/INRIA. + +* Les langages exotiques + +Un langage exotique, ou [[https://esolangs.org/][esolang]] en anglais, fait partie de +*l'informatique récréative*. On fait ça pour s'amuser et n'a pas +vocation à être utile. + +Le langage exotique le plus connu : le brainfuck. + +D'autres langages rigolos : [[https://esolangs.org/wiki/Befunge][Befunge]] (programmation 2D), [[https://esolangs.org/wiki/2014][2014]] et [[https://esolangs.org/wiki/2017][2017]] +qui, comme leurs noms l'indiquent, ne fonctionnent qu'en 2014 et 2017. + +Le principal intérêt de ces langages est *pédagogique*. On apprend à +faire un langage simple. Baguette# était au début un simili-Basic, +dont l'interpréteur est écrit en Ocaml. Il a été codé sans +connaissance d'algorithme d'analyse syntaxique, ce qui a été entre +autres appris lors de la réalisation de ce projet. + +* Baguette# + +Ce langage n'a aucun intérêt si ce n'est apprendre (et être invitée à +PSES). Les mots clés sont pertinents avec le nom, tournant autour de +la pâtisserie (=PARIS BREST= pour ouvrir un guillemet...). + +Il n'a pas d'opération infixe, ne sachant pas les réaliser à +l'implémentation de l'interpréteur. Il faut écrire les opérations de +la manière suivante : =+ 2 2=[fn:1]. + +Particularité : il n'a pas de boucles, il faut utiliser des =goto=. + +Le langage peut être écrit avec des émojis : c'est grâce à *une +propriété d'Ocaml*. Les chaînes de caractères sont *encodées en +UTF-8*, il est donc possible de faire du /pattern matching/ dessus. + +Le langage a un manageur de paquets, comme =pip= ou =npm= et s'appelle +*Boulangerie*. Il s'adapte selon la langue locale : en français les +commandes sont en anglais et vice-versa. L'interpréteur et le manageur +de paquets ne sont disponibles que sur MacOS et Linux, à cause d'une +bibliothèque utilisée qui n'existe pas sur Windows. + +Il n'y a pas de mode Emacs... pour l'instant. + +* Footnotes + +[fn:1] Cela me fait penser au Lisp où l'addition est =(+ 2 2)=. diff --git a/nec/confs/stunfest/espaces_liminaux.org b/nec/confs/stunfest/espaces_liminaux.org index dd40a1f..c409aa4 100644 --- a/nec/confs/stunfest/espaces_liminaux.org +++ b/nec/confs/stunfest/espaces_liminaux.org @@ -1,16 +1,6 @@ -#+options: ':nil *:t -:t ::t <:t H:3 \n:nil ^:t arch:headline -#+options: author:t broken-links:nil c:nil creator:nil -#+options: d:(not "LOGBOOK") date:t e:t email:nil f:t inline:t num:t -#+options: p:nil pri:nil prop:nil stat:t tags:t tasks:t tex:t -#+options: timestamp:t title:t toc:t todo:t |:t #+title: Étrangeté numérique : Voyage dans les espaces liminaux et autres analog horror -#+date: <2023-05-21 dim.> -#+author: -#+email: rick@lyra -#+language: en -#+select_tags: export -#+exclude_tags: noexport -#+creator: Emacs 28.3 (Org mode 9.6.4) +#+date: <2023-06-23 dim.> +#+html_link_up:../roadmap.html * Introduction