Linotte a la particularité d'être entièrement en français. Il facilite ainsi l'apprentissage de la programmation des enfants et même des débutants plus âgés !
La syntaxe du langage a évolué pour prendre en compte les remarques et demandes des utilisateurs :
- Introduction à la programmation fonctionnelle,
- Appelle des méthodes par valeur ou par copie,
- Clonage des objets,
- Affichage des objets au format SVG,
- et plus encore !
Linotte est un logiciel écrit en langage JAVA. Depuis la dernière dépêche, la syntaxe du langage a évolué pour prendre en compte les différentes remarques remontées.
Linotte, malgré sa syntaxe très simple, offre au programmeur des fonctionnalités puissantes :
- Programmation fonctionnelle et récursivité
- Parallélisation des traitements et synchronisation des traitements
- Notion de clonage des objets
- Gestion des greffons
- Amélioration de la lecture des formules mathématiques
- Ajout de la boucle "tant que"
- Lecture du format SVG
- Ajout du crayon pour simuler une tortue (programmation LOGO)
- Possibilité de lire un livre sur un site Internet avec une applet JAVA.
De plus, maintenant, la documentation et le logiciel sont sous licence GPL V3.
D'autres évolutions devraient arriver dans un futur proche, par exemple la 3D et la gestion des erreurs. Sur ce dernier point, je bloque car je n'ai pas trouvé d'idée pour "attraper" les erreurs sans alourdir son programme....
Aller plus loin
- Site du langage Linotte (104 clics)
- Exemple 1 : jeu de la vie (42 clics)
- Exemple 2 : Le casse brique (35 clics)
- Précédente dépêche DLFP sur Linotte (13 clics)
# Magnifique !
Posté par steckdenis (site web personnel) . Évalué à 3.
Tout d'abord, félicitations. J'ai regardé les exemples, et le langage est vraiment très complet et bien conçu. Je pensais tomber sur une simple traduction du Pascal ou du C en français, et bien non !
Bref, c'est un pur bonheur de lire le code, un peu verbeux, mais superbement bien pensé. Je relève juste un petit problème : en s'exprimant dans un langage trop proche de la langue parlé, pas assez strict, on fait plus facilement des erreur de syntaxe.
Pour les exceptions, j'avais pensé à une syntaxe de la sorte :
essaie de lire
vide tableau
si erreur, lis
ajoute «Oh oh, pas bon» dans sortie
c'est bon
«essaie de lire» et «c'est bon» pouvant être ommis :
vide tableau
si erreur, lis
ajoute «Oh oh, pas bon» dans sortie
Ou même la version courte
vide tableau
si erreur, ajoute «Oh oh, pas bon» dans sortie
Bravo en tous cas, vivement un binding de Qt vers ce langage, que j'utiliserai avec bonheur :) .
[^] # Re: Magnifique !
Posté par Graveen . Évalué à 1.
Mais au bout de 2 livres, j'ai vraiment du mal, en regardant le code, à m'y retrouver.
La force de l'habitude sans doute.
En tous cas, trés rafraîchissant :D
[^] # Re: Magnifique !
Posté par cpc6128 (site web personnel) . Évalué à 2.
Merci pour vos commentaires très sympathiques !
En effet, la syntaxe du langage entraîne facilement des erreurs de syntaxe.... (moi le premier...), c'est pour cela que j'ai ajouté le menu verbier avec tous les raccourcies du langage. Dans un futur trèèès lointain, il faudrait proposer la complétion des phrases dans l'Atelier.
Ce que tu proposes ressemble au try/catch en Java. ça veut dire qu'il faut gérer les erreurs dans toutes les parties du code où le risque d'erreur est important.
N'est-ce pas trop compliqué pour des débutants ?
[^] # Re: Magnifique !
Posté par outs . Évalué à 1.
Perso, je dirai non mais a condition ne pas forcer à mettre des catch ni a déclarer que l'on peut en envoyer (en gros pas comme en java)
# un peu de soleil dans le noir
Posté par brazz . Évalué à 4.
# Bof
Posté par Laurent Vivier (site web personnel) . Évalué à 2.
[^] # Re: Bof
Posté par B16F4RV4RD1N . Évalué à 10.
moi aussi : si j'avais découvert linuxfr avec tes commentaires, jamais je ne serais resté ;)
Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it
[^] # Re: Bof
Posté par floriang . Évalué à 9.
[^] # Re: Bof
Posté par Laurent Vivier (site web personnel) . Évalué à 2.
[^] # Re: Bof
Posté par Jean B . Évalué à 3.
Mais de toute façon je ne pense pas qu'il faille voir ce langage comme un langage pour l'industrie, mais plutôt comme un outil d'introduction à l'algorithmique.
# Effet : wow
Posté par valeuf . Évalué à 6.
C'est vraiment amusant que je lise cette dépêche aujourd'hui, il y a quelques semaines mon prof de langage de programmation expliquait qu'il était inconcevable de concevoir une langage de programmation consistant et complet dans une autre langue que l'anglais. Non pas que techniquement cela ne soit pas faisable, mais cela serait, selon lui, inutile, inutilisable, et inintéressant !
Au contraire, en lisant des programmes écrit en Linotte, je trouve que l'approche peut apporter certaines idées de syntaxes. En tout cas à première vue, c'est un langage très beau, qui semble assez orthogonal !
A explorer :) Surtout à l'heure ou l'anglais bouffe tout sur son passage.
[^] # Re: Effet : wow
Posté par B16F4RV4RD1N . Évalué à 2.
Désolé de faire le parallèle avec Inform 7 à chaque fois, en tout cas la description en BNF existe pour ce système en langage naturel (en anglais) :
http://www.inform-fiction.org/I7/Download%20-%20Documents.ht(...)
plus exactement :
http://www.inform-fiction.org/I7Downloads/Documents/I7-Gramm(...)
Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it
[^] # Re: Effet : wow
Posté par valeuf . Évalué à 3.
Après il est évident que ce ne sont sans doute pas des langages vraiment utilisable dans la programmation de tous les jours. Sans doute bien trop verbeux, sans doute bien trop éloigné de la réalité de la manipulation de données etc... Quoi que Inform7 semble avoir été utilisé !
Mais je trouve par contre vraiment intéressant d'un point de vue pédagogique. Cela donne vraiment un contre-point par rapport aux classiques : impératif, objet, fonctionnel, logique.
J'ai fait une petite recherche rapide, mais j'ai vu très peu de publication ayant fait des recherche sur ce "type" de langage, on trouve plus des articles sur la façon d'évaluer le langage naturel. (C'est certain qu'évaluer une langue naturel, plutôt que de faire rentrer à coup de marteau et burin dans un langage de programmation une langue naturelle, c'est pas super logique).
C'est pourtant assez curieux, car il doit y avoir des choses assez intéressante à voir. Par exemple, la programmation impérative, voir objet, se prête assez bien à la langue Française. Mais j'imagine très mal la chose coller avec la langue coréenne par exemple. Je me demande ce que l'on pourrait obtenir !
Bref, Linotte ouvre une façon bien poétique de voir l'informatique : j'adore !!
[^] # Re: Effet : wow
Posté par B16F4RV4RD1N . Évalué à 2.
De plus, Inform permet de modéliser pas mal de choses, qui pourraient même sortir du contexte des jeux textuels. Par exemple maintenant il est possible de modéliser et résoudre des équations avec Inform 7 (exemple copié ici : http://langagelinotte.free.fr/punbb/viewtopic.php?id=68 ), et qui sait ce que nous réservent les prochaines versions ?
Ce qui m'intéresse dans Linotte, c'est que l'on peut réaliser des applets java sans connaître java, alors c'est sûr un programmateur expérimenté cela peut le faire doucement sourire comme on dit, mais je pense que Linotte a sa raison d'être.
Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it
[^] # Re: Effet : wow
Posté par Jean B . Évalué à 7.
Effectivement ma machine à laver est en train de se bidonner.
--> []
[^] # Re: Effet : wow
Posté par B16F4RV4RD1N . Évalué à 2.
Désolé à tous les informatiqueurs et hackeux que j'ai pu froisser...
Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it
# Français uniquement ?
Posté par zerkman (site web personnel) . Évalué à 3.
Le Klingon ou le Kobaïen seraient intéressants aussi.
Bonne idée en tout cas ;)
[^] # Re: Français uniquement ?
Posté par Rémi Birot-Delrue . Évalué à 1.
Ça serait tellement plus compréhensible…
http://tokipona.wikia.com/wiki/toki_pali_pi_mun_lili
[^] # Re: Français uniquement ?
Posté par cpc6128 (site web personnel) . Évalué à 2.
# trivial ?
Posté par volia . Évalué à 6.
« La programmation doit être aussi simple que d’écrire une phrase en français ! » Moi, je ne trouve pas le Français trivial à écrire, loin de là, même pour un francophone.
Maintenant, le langage à l'air amusant, et c'est déjà très bien.
# Goto
Posté par barmic . Évalué à 3.
'Paragraphe' c'est l'équivalent d'un goto ?
Je vais un peu m'amuser avec le langage pour voir comment c'est.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Goto
Posté par B16F4RV4RD1N . Évalué à 2.
http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-8.html
Only wimps use tape backup: real men just upload their important stuff on megaupload, and let the rest of the world ~~mirror~~ link to it
# goto++
Posté par Xavier Dunat (site web personnel) . Évalué à 1.
[^] # Re: goto++
Posté par outs . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.