Derniers sujets
Rechercher
Résultats par :
Recherche avancée
Qui est en ligne ?
Il y a en tout 2 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 2 Invités

Aucun

Voir toute la liste


Partagez
Voir le sujet précédentAller en basVoir le sujet suivant
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

Linotte 2.0

le Wed 13 Jun - 10:02
Bonjour,

Ce post va présenter les premières réflexions qui seront portées par Linotte 2.0.

La version 2.0 doit corriger les erreurs de jeunesse du langage et va s'inspirer de ce que j'ai déjà testé sur Parangon-lang.

- Tous les acteurs seront locaux sauf ceux présents dans la section "grands rôles". Le symbole § disparaitra.
- La mémoire sera vidée avant chaque lancement de livre (mais si j'hésite encore sur ce point...)
- Les livres en Linotte 2.0 ne seront pas compatibles avec les livres en Linotte 1.x
- Le symbole <
-
va disparaitre pour :=

Voici un exemple de syntaxe que je propose (non définitif !)

[php]
globale
requête :: texte <
- "select nom from clients"

principale :
noms :: casier de texte
i :: nombre
début
si 4 >
= 2, lis
affiche "c'est bon"
ferme
sinon affiche "et non, tu as faux !"
pour i de 1 à 10, lis
affiche i
ferme
[/php]

La simplification de la syntaxe est un sujet crucial pour l'avenir du langage. Linotte est je pense (AMHA) un bon langage mais il peut faire peur par son expressivité excessive qui conduit souvent à écrire des erreurs syntaxiques qui peuvent faire perdre du temps dans l'élaboration de programme.

Cette version arrivera sûrement à la fin de l'année. Je me laisse le temps de la réflexion... et de la votre afin que vous m'apportiez vos propres idées !

Plus d'informations ici et lien pour le télécharger la version beta ici :
http://langagelinotte.free.fr/wordpress/?p=259
Senior Member
Messages : 340
Date d'inscription : 2010-08-31
Voir le profil de l'utilisateurhttp://zamirhlinotte.monsite-orange.fr/

RE: Linotte 2.0

le Wed 13 Jun - 18:19
Yo,

Tu connais déjà mon avis par rapport à la syntaxe donc je vais po rabacher sur ce point ^^

Sinon, les greffons sont une solution temporaire ou définitive ? seront-ils un jour intégrés directement au Linotte ?

Je trouve que le langage devient de plus en plus compliqué avec la simplification syntaxique et la multiplication des greffons ^^
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Thu 14 Jun - 9:39
Oui, je connais ton point de vue. Hier, je suis aller justement hier les remarques laissées sur le forum sur un post précédent sur le même sujet.

Ce travail sur la syntaxe, je le fais pour prendre en compte les remarques que je constate sur ce site ou ailleurs.
Ainsi, je dois prendre en compte vos remarques qui me font plutôt plaisir car par exemple, toi, tu souhaites garder la syntaxe du langage.
Mais en même temps, je dois attirer des nouveaux développeurs et débutants.... dur dur du concilier les trois.

N'hésitez pas à proposer des syntaxes !

Voici une nouvelle proposition :

[php]
démonstration sql :

globale
requête := "select nom from clients"

fn principal
connecteur :: sql, config = "dzdz"
noms :: texte .. ("pour créer un tableau")
i :: nombre
début
noms = connecteur.executer(requête)
affiche noms
évoque connecteur.ferme()
si 4 >
= 2, lis
affiche "c'est bon"
ferme
sinon affiche "et non, tu as faux !"
pour i de 1 à 10, lis
affiche i
ferme
[/php]
Senior Member
Messages : 497
Date d'inscription : 2008-09-21
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Thu 14 Jun - 10:13
Bonjour,

Si je comprends bien, il n’y aura plus d’évolution sur la base de la version 1.x ??
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Thu 14 Jun - 11:18
Bonjour Pat,

ça faisait longtemps que l'on ne t'avait pas vu sur le forum !


Si je comprends bien, il n’y aura plus d’évolution sur la base de la version 1.x ??

Attention, c'est théorique pour l'instant ! Ce que je dois déterminer, c'est ce qui ne sera plus compatible avec la version 1.x.

Le point fort est celui là :

- Tous les acteurs seront locaux sauf ceux présents dans la section "grands rôles". Le symbole § disparaitra.

Si vraiment, c'est embêtant pour vous, je pourrais ajouter un mode compatibilité "1.X" : une option dans le menu qui active ou pas cette nouvelle évolution du langage en sachant que le nouveau mode sera activé par défaut.
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Thu 14 Jun - 11:21
Autre question, que pensez-vous de cette syntaxe pour déclarer un tableau :

avant
[php]
tableau :: casier de texte valant "a", "b"
[/php]

Linotte 2.0 :
[php]
tableau :: texte .. "a", "b"
[/php]
Senior Member
Messages : 585
Date d'inscription : 2012-01-11
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Thu 14 Jun - 14:34
Bonjour,
Je viens participer au débat ^^

Concernant les deux premiers points de la version 2.0 je suis entièrement d'accord, a savoir :
- Tous les acteurs seront locaux sauf ceux présents dans la section "grands rôles". Le symbole § disparaitra.
- La mémoire sera vidée avant chaque lancement de livre (je soutiens particulièrement ce point x))

Concernant les modifications de la syntaxe, voici mon point de vue :
le langage Linotte est pour moi le langage le plus facile à apprendre.
De part sa syntaxe en français, il offre une nouvelle vision de la programmation, bien plus accessible.
Cela permet à tous les amateurs de pouvoir se lancer dans quelques projets, en prenant du plaisir à (re)découvrir la programmation, sans s'arracher les cheveux à chaque ligne de code.

Si le langage rebute les programmeurs plus expérimentés, c'est là qu'intervient le langage Parangon-lang, non ?

Je ne pense pas qu'il faille mélanger les deux.

Si le but du langage Linotte est de pouvoir être enseigné aux enfants, je pense qu'il peut remplir son rôle.

Mais s'agit-il d'apprendre aux enfants le langage Linotte ou la programmation ?

Par exemple, la programmation évoluant dans la langue anglaise, avec ses "if", "for", etc... jusqu'au plus simple exemple, le "Hello world", tout l'intêret du Linotte réside dans sa syntaxe en français.
Ceci dans le but de pouvoir réaliser facilement un programme sans devoir pour autant apprendre une nouvelle langue !

Autre exemple, les accolades que l'on retrouve dans les langages classiques n'ont pas leur place dans le langage Linotte.
On retrouvera en revanche une ponctuation "normale".

Mais si le but est d'appendre la programmation, alors le Parangon-lang est là pour prendre le relais du Linotte.

Je pense que l'idée de concevoir deux langages est très bonne.

On peut ainsi s'essayer à la conception de programmes avec le Linotte pour ensuite appréhender plus facilement la programmation en général grâce au Parangon-lang.
L'inverse est également possible :
Les programmeurs amateurs, débutant en anglais, s'essayant au parangon-lang, pourront alors faire le lien avec avec le langage Linotte et sa syntaxe ainsi que sa documentation en français !
Cela pourrait d'ailleurs sauver de multiples projets amateurs débutés dans des langages plus complexes et avec une documentation qu'ils tentent de traduire avec Google Translate ^^

Mais ceci est ma propre idée du langage Linotte.
Alors peut-être faudrait-il me rappeler les buts recherchés par le langage Linotte ?

Dernier point :
Je suis évidemment pour une compatibilité entre les deux versions (si besoin il y a) : je ne voudrais pas avoir à retaper mes quelques milliers de lignes de code x)

Concernant le remplacement de <
- par := je suis contre.
Premièrement <
- c'est simple et efficace : on comprend bien ce que l'on fait. (Et puis, j'en ai l'habitude et que je l'aime bien x))
Deuxièmement, car je préfère laisser le signe = pour les opérations mathématiques.

Pour la déclaration des tableaux, je trouve le terme casier approprié : on sait tout de suite à quoi on a affaire.


La simplification de la syntaxe est un sujet crucial pour l'avenir du langage. Linotte est je pense (AMHA) un bon langage mais il peut faire peur par son expressivité excessive qui conduit souvent à écrire des erreurs syntaxiques qui peuvent faire perdre du temps dans l'élaboration de programme.

Je trouve au contraire que le Linotte permet très peu d'erreurs au niveau de la syntaxe.
Une erreur que je faisait souvent était l'oubli de la virgule après "Sinon", ce qui à été corrigé depuis x)
L'exemple du casier est parfait pour le démontrer :
Avec cette nouvelle syntaxe on aura plus tôt fait d'oublier un point en le déclarant plutôt que d'oublier le "r" à casier...
Senior Member
Messages : 497
Date d'inscription : 2008-09-21
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Thu 14 Jun - 14:49
Pour ma part :

L’option proposée me paraît comme indispensable…

Concernant la syntaxe / aux tableaux, je trouve que l’on y perd beaucoup en « lisibilité ».

Sinon, je n’ai plus que peu de temps à consacrer à la programmation, mais je suis avec intérêt l’évolution du langage Linotte.

Bonne continuation…
Senior Member
Messages : 340
Date d'inscription : 2010-08-31
Voir le profil de l'utilisateurhttp://zamirhlinotte.monsite-orange.fr/

RE: Linotte 2.0

le Thu 14 Jun - 20:38
C'est po bête ce que dit Wam.

Le Linotte pour les Linottiens, le Parangon-Lang pour les programmeurs !
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Fri 15 Jun - 10:03
Bonjour,

Merci pour ces retours très intéressants pour moi.

* La version 2.0 sera compatible avec les livres de la version 1.X mais à la condition que les livres contiennent le mot clé version1 :

[php]
Livre :acteurs locaux à un sous-paragraphe
version1

Paragraphe : principal
rôles :
casier :: casier de nombre vide
actions :
pour chaque 10, lis
§ b :: nombre valant 15
mélange b
ajoute b dans casier
ferme
affiche casier

[/php]

* La version 2.0 sera capable de "comprendre" la syntaxe Linotte 1.X.
* Tous les acteurs seront locaux sauf ceux présents dans la section "grands rôles". Le symbole § disparaitra.
* La mémoire sera vidée avant chaque lancement de livre (mais si j'hésite encore sur ce point...)
* Les symboles {} seront remplacés par [] pour être en cohérence avec ce qu'il se fait dans les autres langages de programmation.
* Il doit disparaitre des mots clés du langage : livre, paragraphe, rôle, action.
* alors ne doit plus être utilisé mais seulement la virgule lors de l'utilisation des conditions.
* Linotte garde le <
-
* un livre commence par synopsis ou syn
* un paragraphe devient une fonction. j'hésite encore avec le mot clé fn ou fonc.

Voici un exemple probable de nouvelle syntaxe :

[php]
synopsis trouver un nombre
globale
secret <
- hasard(500)
boucle <
- 0

fn principal
réponse :: nombre <
- 0
début
affiche "Tu dois trouver un nombre entre 0 et 500."
tant que réponse != secret, lis
boucle vaut boucle + 1
affiche "Propose un nombre"
demande réponse
si réponse >
secret, lis
"Ce nombre est trop grand !" !
ferme
sinon si réponse <
secret, lis
"Ce nombre est trop petit !" !
ferme
ferme
affiche "Félicitation, c'était ${secret} et tu as réussi en ${boucle} coups !"
[/php]
Senior Member
Messages : 585
Date d'inscription : 2012-01-11
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Fri 15 Jun - 14:34

* La version 2.0 sera compatible avec les livres de la version 1.X mais à la condition que les livres contiennent le mot clé version1
* La version 2.0 sera capable de "comprendre" la syntaxe Linotte 1.X.

*Soupir de soulagement*


* Linotte garde le <
-

Parfait x)


* alors ne doit plus être utilisé mais seulement la virgule lors de l'utilisation des conditions.

Simplifie le langage sans nuire à la lisibilité : sa me convient.


* Il doit disparaitre des mots clés du langage : livre, paragraphe, rôle, action.
* un paragraphe devient une fonction. j'hésite encore avec le mot clé fn ou fonc.

Si le vocabulaire du Linotte doit être remplacé par celui utilisé dans la programmation, pourquoi pas ?
Cela pourrait favoriser la compréhension de la programmation en général.
Mais le langage Linotte doit conserver sa syntaxe en français.
Le Linotte doit donc garder la possibilité d'écrire les mots en entier (pouvoir écrire "fonction"). Après, rien n'empêche de les remplacer par des diminutifs, dans un soucis de rapidité.


* un livre commence par synopsis ou syn

Je suis contre. Mot inutilement complexe, ne faisant pas partie du vocabulaire de programmation et donc n'apportant rien au langage Linotte.


* Les symboles {} seront remplacés par [] pour être en cohérence avec ce qu'il se fait dans les autres langages de programmation.

Si vraiment on ne peut pas en réchapper, autant garder les accolades telles quelles, l'accolade étant un signe de ponctuation structurant un texte en délimitant des groupes d'éléments. Cf : wikipédia ^^
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Fri 15 Jun - 17:17
Voici une nouvelle proposition de syntaxe suite aux différents retour ![/align]
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Sat 16 Jun - 22:27
[php]
script trouver un nombre
[/php]

Pour remplacer le mot livre, j'ai pensé à mettre script comme dans l'exemple pdf indiqué ci-dessus.

Sinon, module :
[php]
module trouver un nombre
[/php]

ou tout simplement :
[php]
linotte trouver un nombre
[/php]

Vous en pensez quoi ?
Senior Member
Messages : 585
Date d'inscription : 2012-01-11
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Sun 17 Jun - 14:54
J'aurais une préférence pour "linotte".

Mais en fait à quoi servira de mettre le mot fonction devant le nom du paragraphe ?
Car actuellement, on se contente juste de marquer le nom du paragraphe.
Il y a d'autre mots de prévus ?
Par exemple, sur une fonction qui retourne un nombre on écrira :

retourne nom_de_fonction
{
...
}
?
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Sun 17 Jun - 21:59
ça permet juste de clarifier la lecture d'un livre.
Dés retour que j'ai. je pense que les deux points après le nom du paragraphe ne facilite pas la lecture du programme. Il y a trop de deux points.
Senior Member
Messages : 585
Date d'inscription : 2012-01-11
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Mon 18 Jun - 2:22
Surprenant.
L'utilisation des deux points ne m'a jamais gêné, je les trouve même intuitifs :
on indique le nom du paragraphe, suivit des deux points, pour en indiquer le contenu.

Je trouve cela plus simple que de devoir écrire "fonction" ou "fn" devant le nom de chaque paragraphe, d'autant que le mot se révèle inutile.

Et je ne pense pas que repérer une fonction au milieu de son code pose un problème ^^
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Mon 18 Jun - 11:32
Tu es peut être habitué à cette syntaxe. Du coup, ça ne te choque pas.

Je propose un nouvel exemple de code 2.0.
Comme j'ai supprimé les mots clés rôles et actions suivis par les deux-points, je propose de garder le deux-points après le nom du paragraphe.

J'ai gardé le mot clé "script", ça permet de garder une porte ouverte le jour où je veux mettre un autre mot clé comme : classe, objet ou greffon....
Ainsi, je pourrai typer les sources.
Senior Member
Messages : 585
Date d'inscription : 2012-01-11
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Mon 18 Jun - 16:36
Sa me va x)
Pour le fait de typer les sources je suis également d'accord.

Une autre question :
Comme tu supprimes les mots actions et rôles, tu conserves le mot "souffleurs" ?
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Mon 18 Jun - 21:00
Je supprime juste les mots. Les sections correspondantes sont toujours là.
Avant le mot clé début, il y a les rôles, et après les actions.
Oui, je conserve le mot souffleur.
Senior Member
Messages : 585
Date d'inscription : 2012-01-11
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Tue 19 Jun - 1:29
Ok, parce que je trouve que le mot "souffleur" ne sert pas à grand chose.
Écrire "dès que" suffit pour comprendre la condition.
De plus, ce n'est pas un mot faisant partit du vocabulaire de la programmation ^^
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Wed 20 Jun - 9:55
Bonjour Wam,

Oui, tu as raison sur le fait que le "dès que" est suffisant mais il permet de "partitionner" clairement le livre.

Il faut que je réfléchisse également à l'avenir des souffleurs...
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Wed 20 Jun - 17:00
La version 2.0 apportera également une modification de l'option "bonifier" qui sera activée par défaut (cf pdf attaché).
Senior Member
Messages : 585
Date d'inscription : 2012-01-11
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Wed 20 Jun - 18:30
Personnellement, je ne me sert pas de cette option.
Néanmoins, je ne voit pas d’inconvénient à l'activer par défaut, tant qu'on n'est pas obligé de la désactiver à chaque redémarrage de l'atelier ^^
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Fri 22 Jun - 16:41
Quelques corrections cosmétiques du bonifieur...
La déclaration des rôles est plus visible.
De plus, j'ai ajouté une option qui permet à l'Atelier d'être stricte au niveau de la validation des livres.
avatar
Site Admin
Messages : 1038
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

RE: Linotte 2.0

le Fri 6 Jul - 22:12
En attendant la version stable 2.0 pour la fin de l'année, je propose une préversion nommé... Linotte 1.99.

Elle est téléchargeable ici :

https://langagelinotte.googlecode.com/f ... 1.99.0.zip

D'ici quelques jours, je ferai une annonce sur le site mais pour l'instant, je la réserve pour le forum.

J'attends vos retours sur les éventuels bogues :-)

Le bogue des collisions est corrigé dans cette version.
Contenu sponsorisé

Re: Linotte 2.0

Voir le sujet précédentRevenir en hautVoir le sujet suivant
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum