Bonjour, dans le cadre de mes réflexions faisant suite à https://linuxfr.org/~Montaigne/20582.html et https://linuxfr.org/~Montaigne/19629.html je cherche une formalisation grammaticale d'un pidgin, si possible issu d'au moins une langue indo européenne.
S'il y a des linguistes dans la salle, ayant des éventuels pointeurs, je suis intéressé, google ne m'ayant rien donné de très exploitable.
Merci
# Pour info
Posté par Anonyme . Évalué à 6.
# Formalisation grammaticale
Posté par Duncan Idaho . Évalué à 3.
Je ne suis pas linguiste mais j'y suis un peu sensibilisé, et à ma connaissance, de ce que je comprends de "formalisation grammaticale" et de "pidgin", ta question n'a pas de réponse.
Quel est le rapport avec les journaux précédents ?
[^] # Re: Formalisation grammaticale
Posté par Ontologia (site web personnel) . Évalué à 2.
Le but étant de pouvoir interpréter des phrases dans un espèce de langage naturel primitif et d'en extraire le sens.
Le rapport avec mes journaux précédent est que je cherche (c'est une simple piste) des moyens de programmer autrement, et donc d'être un peu moins coincé par les grammaires formelles trop strictes dont on à l'habitude(entre autre, car il y a beaucoup d'autres concepts). J'en parle un peu dans l'intro du premier journal cité.
Mais j'en reparlerai dans quelques mois quand j'aurai fini.
« Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker
[^] # Du côté de la syntaxe
Posté par chimrod (site web personnel) . Évalué à 5.
Il faut savoir qu'en linguistique, la notion de grammaire n'a pas beaucoup de sens, puisque la linguistique n'a pas pour vocation d'être normative mais descriptive.. Je pense que tu trouveras davantage de résultats avec le mot "syntaxe"[2] ( même si, pour avoir fait une présentation de la syntaxe du thaï, je sais que le net n'est pas très riche en informations la dessus. )
Par contre, il n'est pas possible de te donner d'informations concernant les pidgin, puisque comme cela a été dit, un pidgin dépend des langues qui ont permit sa construction ( en gros il y a une langue/culture dominante, et une langue dominée, la langue dominante imposant sa syntaxe, la langue dominée gardant son vocabulaire ; je dis bien, en gros... )
Je pense que tu aurais plus d'informations si tu t'intéressais à la syntaxe d'une manière générale... Sans vouloir faire un cours la dessus, la syntaxe est le procédé par lequel les "mots" s'agencent par des relations de détermination pour donner du sens. Ce procédé résulte d'un découpage de la réalité ( quand on dit "le chat dort", on sépare l'objet ( le chat ) de son action ( dormir ), ce qui est un découpage totalement artificiel.. ), et aussi d'une re-construction, dans le but d'économiser le nombre de mot dans une langue, évidement.
Ensuite, il est possible d'étudier les caractéristiques des différentes unités ( à l'aide d'opération de commutation ), en partant du principe que deux unités de même catégorie :
1) ont les mêmes relations avec les autres catégories ( ex : un nom peut être déterminé par un déterminant, par le pluriel, et peut déterminer un verbe .. ( bien sur j'en oublie ) )
2) s'excluent l'une l'autre ( on peut dire chat ou chien, mais le fait de dire l'un empêche de dire l'autre )
Bon, j'ai développé plus que je ne voulais, mais je pense effectivement que les langages informatiques et les langues ne sont pas si éloignés que cela... :)
Bonne recherche !
[1] http://fr.wikipedia.org/wiki/Grammaire_g%C3%A9n%C3%A9rative
[2] http://fr.wikipedia.org/wiki/Syntaxe
[^] # Re: Du côté de la syntaxe
Posté par iznogoud . Évalué à 4.
Un angle d'approche pourrait être celui de l'AppleScript, qui tente d'être entre la langue et le programme. L'idée est plus un intermédiaire entre une vraie langue de programmation et la langue je pense (il faudrait voir les arcanes de la chose pour en etre sur).
Ca permet d'avoir des lignes du genre (j'ai plus la ligne en tete, mais ca y ressemble) :
"tell iTunes to set Volume to 20"
qui sera parfaitement la meme chose que de cliquer sur le bouton de volume et de le mettre a (pile poil, on a de la chance) 20% du volume max.
En gros, ils ont identifié des phrases en anglais qui avaient une structure plutot figée :
TELL sthg TO do_sthg
SET sthg TO sthg
Apres, ils ont ajouté le "OF" qui permet de specifier un peu plus les choses :
tell iCal to set value of day Tuesday November, 20th to empty
(bon l'exemple est completement bidon mais l'idee est la).
Petit a petit on arriverait a construire un lexique, une syntaxe... un coup de yacc/flex et c'est alors gagné.
Un des gros inconvenients, c'est que la programmation en applescript est tres deroutante au debut : on a 2/3 mots cles, et apres on doit essayer de deviner un peu comment acceder a une valeur (y'a de la doc, mais il faut toujours faire des allers-retour). Ca fait moins formel. Et je ne suis pas sur qu'on gagne en maintenabilité, lisibilite...
Mais je pense que ce que tu cherches, Ontologia, c'est aller plus loin que ca. Est-ce que je me trompe ?
[^] # Re: Du côté de la syntaxe
Posté par Joris Dedieu (site web personnel) . Évalué à 2.
Ce n'était pas également l'idée de départ du SQL ?
[^] # Re: Du côté de la syntaxe
Posté par Ontologia (site web personnel) . Évalué à 2.
En fait, une des pistes que j'explore, est de pouvoir écrire des phrases à la syntaxe simplifiée, contextuel au vocabulaire afin d'écrire du code.
Plus clairement, au lieu de partir de la logique habituelle qui consiste à dire qu'une grammaire précise s'applique à l'appel d'une fonction, j'aimerai que ce soit le nom de la fonction qui impose contextuellement sa grammaire.
Par exemple :
(je fais du franglais, car l'anglais possède moins de déterminant que le français)
CréerUnRépertoire <où> NamedBy
En gros la structure grammaticale de la fonction va donner des renseignement sur le type des données, et permettre d'utiliser des mots de liaisons.
Exemple
if exist file (repSrc+"\"+uneVariable) then
fileCopy itself to repDest
Le mot if attend une condition, classique, or le syntagme exist file <Nom Fichier> renvoi un booléen.
Exist File est la combinaison de deux mots où exist attend un ensemble et un élement.
Ici l'analyseur de contexte va comprendre que dans exist file <Nom fichier> file désigne intrinsèquement un emsemble (bien qu'il soit lui même un mot fonction) et que le paramètre de file est l'élément recherché.
Il va aussi déduire que itself revient à (repSrc+"\"+uneVariable)
fileCopy itself to repDest a pour syntaxe fileCopy to <localité>
Bref, (je réfléchis en écrivant hein...), ya pas mal de problèmes.
En fait il faut créer un graphe de concept qui permette de décrire des notions, comme la localité, le nom, "quoi", "qui", "vers", etc... De manière à pouvoir les contextualiser pour chaque contexte ensembliste.
Par exemple dans l'ensemble "Arborescence de fichier", une localité est un chemin répertoire ou fichier précis.
Dans une structure de donnée représentant un réseau, ce sera une ip donné. Dans un xml, ce sera un chemin, etc...
C'est un peu logique flou en fait. C'est pour cela que j'essaye de formaliser une grammaire assez lâche, mais qui permette à une phrase, comme présenté en exemple ci dessu, soit compréhensible par l'interpréteur.
Alors quel est mon but ? Je déflore un peu, car je vous ferais la surprise avec un gros journal quand j'aurai (et si je) finis, où tout au moins que j'aurai produit une conceptualisation qui tienne debout et me semble exploitable (l'oeil inquisiteur de mon ami Benoit Sonntag qui est un des meilleurs spécialiste en compilation objet et ne ratera aucun trou logique, m'obligera à présenter quelques chose de solide).
C'est en lisant le texte de Victoria Livschitz, dont j'ai traduit l'interview dans un des deux journaux cités que j'ai compris ce qu'était le KeyWord central était "intuitivité", il faut que les langage de programmation s'adapte à la façon de penser, de parler de l'Homme.
L'autre apport d'importance - outre que d'être développeur de métier adorant les langages type SQL, regexp, xpath et détestant l'impératif - fut une discussion avec Nat Makarevitch (entre autre créateur d'IdealX). J'étais déjà en train d'essayer de penser à un langage où, comme en SQL, regexp, Xpath, je demande à l'ordinateur de m'envoyer un résultat en décrivant ce que je veux et non en décrivant ce que l'ordinateur doit faire pour l'obtenir.
Plus trivialement, écrire des boucles à longueur de journée, ça m'emmerde.
Un bon select from where dans un objet ça me va parfaitement, j'ai autre chose à faire que de concevoir l'algo qui ma me donner le résultat et j'ai absolument horreur de se sentiment de perdre mon temps à écrire des conneries.
(Je sais il existe ça et là des lib permettant de le faire en .Net/Java/... mais c'est hyper lourd à mettre en oeuvre)
Nat m'a parlé du projet http://Tunes.org et de l'objectif de créer en définitive une sorte de méta langage. Bref un langage où on décrit à la machine ce qu'on veut qu'elle fasse, et non que l'on décrive un automate, un graphe de code, bref une sémantique opérationelle http://fr.wikipedia.org/wiki/S%C3%A9mantique_op%C3%A9rationn(...) , où l'on décrit une métaphore d'exécution sur une machine virtuelle (qui exécute ton code).
Le but est de travailler avec une sémantique plus axiomatique avec des fortes notions de reconnaissance de formes, de structures.
J'ai vite compris que le background et les partis pris de l'abruti (pourtant normalien, mais qui a écrit cette horreur là : http://www.quebecoislibre.org/030927-11.htm qui me donne envie de vomir en tant que démocrate) qui mène ce projet va le diriger droit vers l'échec (qui a d'ailleurs l'air dors et déjà mort).
AMHA, je pense qu'un type qui prone un extrémisme scientifique, qui est l'individualisme méthodologique, base théorique des néolibéraux (dont il est un des pires représentant) ne permet pas de comprendre les concepts fondamentaux qui mèneront à la conception d'un métalangage.
En ce qui me concerne, je suis au miyeux, entre déterminisme et individualisme méthodologique, avec des phénomènes d'attractions, et de probabilité de tomber dans le déterminisme, stop, je me lance pas dans l'explication.
Bref tout ça pour dire que je n'ai pas envisagé de collaboration avec lui et ait commencé à réfléchir à la question dans mon coin, en travaillant sur différentes thématiques : syntaxe/linguistique, Métadynamique des Système Multi Agent, psychologie cognitive (eh oui on s'adapte à un humain, faut comprendre comment il fonctionne), axiomatique mathématique, etc...
Je fais une formalisation, je demande l'avis à plein de monde et surtout à Benoit qui me dira si c'est compilable, interprétable ou pas...
Voilà pour répondre à ta question, mais pour le moment, j'ai plus d'idée en vrac qu'autre chose et n'ait pas encore effectué de synthèse.
A dans quelques mois...
« Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker
[^] # Re: Du côté de la syntaxe
Posté par Sylvain Sauvage . Évalué à 2.
— Alan Perlis
(Quand quelqu'un dit « Je veux un langage de programmation dans lequel j'aurai seulement besoin de dire ce que je souhaite qu'il soit fait », donnez-lui une sucette.)
;oP
(Remarquons que décrire le résultat attendu est ce que l'on fait avec certains langages, comme Prolog p.ex.)
En ce qui concerne la syntaxe plus « humaine », même si j'ai bien compris que tu veux aller beaucoup plus loin, les systèmes de mots-clefs de Smalltalk ou de Common Lisp permettent déjà pas mal de choses :
créer :quoi 'répertoire :où ... :nommé ...
(ordre indéfini).
[^] # Re: Du côté de la syntaxe
Posté par Ontologia (site web personnel) . Évalué à 0.
C'est pas parce que des grands pontes totalement coincé dans leur monde et peu intéressés d'avoir une approche transdisciplinaire, disent que c'est impossible qu'il ne faut pas essayer.
Avec une mentalité pareil, la Science risque de ne guère avancer.
Mais ça m'étonne pas. C'est dur à admettre pour un type ayant une culture mathématique, informatique théorique seule, de penser que ce genre de chose est possible. Mais c'est uniquement par manque de culture et d'intérêt (que je ne critique pas : les goûts et les couleurs....).
J'ai des exemples personnels à l'appui.
Faut pas se leurer, dans 30 on programmera plus les machines. Et ça commence : dans des grandes boites comme Cap Gemini, 97% du code est généré suite à des schémas, spécifications, design d'interface...
En ce qui concerne la syntaxe plus « humaine », même si j'ai bien compris que tu veux aller beaucoup plus loin, les systèmes de mots-clefs de Smalltalk ou de Common Lisp permettent déjà pas mal de choses :
créer :quoi 'répertoire :où ... :nommé ...
(ordre indéfini).
SI je présente ça comme la solution, on me répondra à raison
"tu es gentil, mais c'est du sucre syntaxique"
Et en ce qui me concerne, je trouve ça totalement insuffisant.
« Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker
[^] # Re: Du côté de la syntaxe
Posté par LeMagicien Garcimore . Évalué à 2.
T'as de sources ou c'est une estimation a la louche? Ca me semble un peu surréaliste, quand on voit la qualité du code généré...
Sinon pour le reste, je suis plutôt pas d'accord avec toi :) Quand on programme une machine (que ce soit avec des schémas, des pouik pouik qui clignotent ou un langage presque "naturel"), on s'attend a un comportement déterministe, pas a un truc bourre d'heuristiques. Et c'est ça le problème des langues naturelles. Elles sont tellement basées sur les sous-entendus et l'implicite qu’elles sont beaucoup trop ambigüe pour pouvoir programmer une machine. Et j’insiste, par définition on devra toujours programmer une machine. C'est-à-dire lui dicter son « comportement », même s’il s’agit d’une IA.
[^] # Re: Du côté de la syntaxe
Posté par Ontologia (site web personnel) . Évalué à 2.
Estimation à la louche d'un copain ingénieur à CapGemini.
Sinon pour le reste, je suis plutôt pas d'accord avec toi :) Quand on programme une machine (que ce soit avec des schémas, des pouik pouik qui clignotent ou un langage presque "naturel"), on s'attend a un comportement déterministe, pas a un truc bourre d'heuristiques. Et c'est ça le problème des langues naturelles. Elles sont tellement basées sur les sous-entendus et l'implicite qu’elles sont beaucoup trop ambigüe pour pouvoir programmer une machine. Et j’insiste, par définition on devra toujours programmer une machine. C'est-à-dire lui dicter son « comportement », même s’il s’agit d’une IA.
Pas d'accord non plus :)
En particulier, je ne suis pas d'accord avec l'assertion "Entre la programmation opérationnelle ( http://fr.wikipedia.org/wiki/S%C3%A9mantique_op%C3%A9rationn(...) ) et le flou artistique du langage naturelle, il n'y a pas de solution".
SQL c'est quoi ? Une expression régulière c'est quoi ?
Un métalangage. Tu lui décris ce que tu veux, le système te renvoi la réponse.
L'objectif est ici de généraliser ce concept.
SI tu dis au système A={ qqsoit y ¤ B | y ¤ B et y > 15}, tu as quelques chose de déterministe...
Mon propos n'est pas de vouloir mettre un langage "naturel" pour programmer, mais de dépasser le carcan de la grammaire classique formalisable en BNF.
C'est juste l'idée de disposer après analyse de graphe grammaticaux relativement simple dont le sens va émmerger Et de la structure grammatical Et du sens des mots clé utilisé, donc du contexte.
Avec une bonne IA, comprendre
'Create file "toto.xml"' ou 'Create xml structure with' , c'est pas insurmontable !
Bref, je ne cherche pas du côté de la logique flou, je cherche un formalisme souple et évolutif permettant de décrire avec précision une spécification précises, complète et sans ambiguités de ce que je veux obtenir.
« Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker
[^] # Re: Du côté de la syntaxe
Posté par iznogoud . Évalué à 3.
je demande à l'ordinateur de m'envoyer un résultat en décrivant ce que je veux et non en décrivant ce que l'ordinateur doit faire pour l'obtenir.
j'ai aussi tout de suite pensé Prolog.
Je cite d'ailleurs wikipedia a propos de la programmation logique (utilisée par Prolog) :
La Programmation logique est une forme de programmation dont l'essence est de définir des règles de logique mathématique au lieu de fournir une succession d'instructions que l'ordinateur exécuterait.
Dans ton exemple avec itself, j'ai l'impression que ce que tu cherches c'est que ton langage évolue au fil du temps : itself n'avait pas de sens avant le exist file. Tu n'as pas eu à le définir ensuite, parce que son sens est devenu intrinsèquement lié à l'objet considéré au moment présent. A première vue ça ressemble à une déclaration de variable/objet qui serait induite par le langage et non imposée par une instanciation effectuée par le développeur.
Dans la programmation, il y a deux extrêmes : ceux qui veulent qu'on fasse : déclaration, instanciation, utilisation, destruction. Et ceux qui pensent que tout ça, ça lourde, c'est verbeux, on peut laisser le soin à la machine de s'en occuper tout seul. On arrive actuellement à des langages où on doit déclarer et instancier en même temps, la destruction est laissée à la machine.
Tu aimerais d'une certaine manière avoir un langage dont le sens te permet de t'affranchir de l'instanciation, si j'ai bien compris, c'est ça ?
(pareil que toi, je réflechis en même temps que j'écris)
Donc, comme tu dis, le nom de la variable a maintenant un sens dans ce langage : grâce au vocabulaire, on peut deviner ce qu'est un élément. A quoi il se rapporte, c'est du au contexte (itself est dans une boucle if, et concerne ce qui est testé par le if, mais pas l'existence, parce qu'elle n'est qu'un test, pas un "objet" humainement visible et palpable. Donc itself ne peut être que file).
Tes idées sont toujours aussi marrantes, parce qu'elles vont contre courant, j'aime bien ;) Même si ça ne mène à rien d'exploitable (ou pas), ça donne parfois à réflechir sur des sujets intéressants
[^] # Re: Du côté de la syntaxe
Posté par Ontologia (site web personnel) . Évalué à 2.
Prolog c'est vachement intéressant, mais beaucoup trop limité. On peut difficilement écrire un logiciel de gestion avec.
Dans ton exemple avec itself, j'ai l'impression que ce que tu cherches c'est que ton langage évolue au fil du temps : itself n'avait pas de sens avant le exist file. Tu n'as pas eu à le définir ensuite, parce que son sens est devenu intrinsèquement lié à l'objet considéré au moment présent. A première vue ça ressemble à une déclaration de variable/objet qui serait induite par le langage et non imposée par une instanciation effectuée par le développeur.
C'est exactement ça. Du sens de chaque mot et de la grammaire formée emmerge le sens.
On pourrait définir dans la bibliothèque le mot clé create de la façon suivante.
Create [in] <élément> et Create <élément> []
(En effet, je taxinomise pour le moment (je peux changer d'avis) en terme de "notion", "d'agent non vivant" et "d'agent vivant", sachant que chaque agent est potentiellement un SMA peuplé lui même d'agent formés par des SMA... Il y aura aussi probalement les notions de temps et de localisation)
On a donc deux dérivation possible associée à "Create".
Dans Create [in] <élément> l' ensemble est un objet "physique", donc on créé un élément dans l'ensemble.
Si Create est associé à une notion, cela veux dire que l'on crée un élement qui est une instanciation de cette notion, donc ici un fichier. La notion de localisation se réfère ici à l'endroit où elle se crée. La notion de localisation sera une primitive qui pourra se décliner en fonction du contexte. Dans un contexte fichier, il s'agit de préciser sur quel disque physique, ressource réseaux etc... on crée le fichier.
Cela pourra aussi donner lieu à la localisation d'un endroit particulier du fichier, en fonction du pattern.
(je réfléchis encore en écrivant)
Dans un fichier xml, il s'agit de retrouver un ou plusieurs pattern.
exemple find in (file "toto.xml" of type xml) (pattern [folder] [type ="(\w*)"][/folder]) and replace capture [0-9]+ by "coucou"
On a find in <qq_chose>
and est une conjonction de coordination, donc là la machine déduit qu'il s'agit d'un ordre associé.
replace <qq_chose> by <qq_chose>
("find in" sera toujours associé à un ensemble)
find in <qq_chose>: désigne (file "toto.xml" of type xml). Le système comprend que l'ensemble en question est un ensemble structuré par une grammaire (xml en l'occurence).
Le <qq_chose>de find doit donc se rapporter à l'ensemble désigné et être compatible avec la grammaire. De plus, on ne sait pas si on cherche un élément ou un sous ensemble, d'où l'utilisation de <qq_chose> dont hérite et <éléments>
Ici il est remplacé par (pattern [folder] [type ="(\w*)"][/folder]) qui est un sous ensemble (un sous arbre) de l'xml.
Ensuite, on passe à l'ordre suivant :
replace capture [0-9]+ by "coucou"
Comme j'ai mis ma regexp entre parenthèse, j'ai une capture. Il y aura donc autant de captures que de sous ensembles trouvés. '[0-9]+' veut dire n'importe laquelle.
replace <élément> by <élément>
Bon j'arrête le délire ici.
Tel que je l'imagine, le système serait doté d'un moteur logique qui détecterait les ambiguité et demanderait à l'utilisateur de les lever.
Merci pour vos intervention multiples qui m'ont fait beaucoup réfléchir , je crois qu'il va falloir que j'étudie la théorie des grammaires génératives de chomsky, ainsi que les types ayant essayé de concevoir un langage logique destiné à supprimer les sous entendus.
« Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker
[^] # Re: Du côté de la syntaxe
Posté par Sylvain Sauvage . Évalué à 2.
Tu semblais pourtant intéressé par AppleScript. Il s'agit juste d'une autre forme, d'une autre piste.
En AppleScript, on a tell … to …, avec tell et to qui sont deux mots-clefs. Ils sont lexicalisés dans la grammaire. (En tout cas, ils le semblent, comme des begin … end ou do … end.)
En CLISP et en Smalltalk, le premier mot est une fonction et les suivants sont des symboles. Ils sont donc variables suivant la fonction et ne sont pas dans la grammaire.
En ce qui concerne l'utilisateur, les deux formes sont des mots-clefs à retenir. (Certain Smalltalkien de ma connaissance soutient mordicus le contraire en affirmant que le Smalltalk n'a presque pas de mots-clefs (beaucoup moins que Java ou Python, p.ex.), comme si 1) il ne fallait pas mémoriser ces symboles, 2) une grande partie d'entre eux n'étaient pas génériques et communs à de nombreuses fonctions…)
# Hmm ...
Posté par alexissoft . Évalué à 6.
void *ptr;
ptr = &(linguist->pidgin);
A tous les coups je dois m'être gourré qqpart, mon niveau en C sur ce genre de trucs n'étant pas super top.
[^] # [HS] merci pour ta page sur free
Posté par fasthm . Évalué à 0.
Ah si seulement je l'avais vue il y a quelques mois :-(
La gent féminine, pas la "gente", pas de "e" ! La gent féminine ! Et ça se prononce comme "gens". Pas "jante".
[^] # Re: [HS] merci pour ta page sur free
Posté par alexissoft . Évalué à 0.
[^] # Re: [HS] merci pour ta page sur free
Posté par fasthm . Évalué à 0.
navigateur.
Enfin ceci n'enlève rien aux mérites (certes sans rapport aucun avec
free.fr ) de ta page ;-)
La gent féminine, pas la "gente", pas de "e" ! La gent féminine ! Et ça se prononce comme "gens". Pas "jante".
# perl ?
Posté par syntaxerror . Évalué à 2.
Je crois que j'ai ce qu'il te faut:
http://www.perl.com/doc/manual/html/pod/perlsyn.html
:-p
# Bah yacc qu'à demander...
Posté par RodZilla . Évalué à 3.
%token LOL
%% /* Grammar rules and actions follow */
irc : KIKOO | LOL ;
%
Tu dois pouvoir faire le même pour le SMS en moins de deux.
[^] # Re: Bah yacc qu'à demander...
Posté par Axel R. (site web personnel) . Évalué à 4.
Tro lol !
token Tro unexpected !
# Espéranto-Ido
Posté par Gesmas . Évalué à 2.
Tu devrais chercher du côté des langues artificielles, en particulier l'ido.
L'ido est une version moderne de l'esperanto, sans les accents bizarres ou la primauté du masculin.
L'avantage est d'avoir:
- une grammaire régulière, simple et restreinte.
- une similarité par rapport aux langues naturelle qui facilite l'apprentissage,
- un vocabulaire riche ayant des racines dans les langues indo-européennes,
- une expression souple et puissante grâce à l'usage de radicaux et d'affixes (un même radical peut être un nom, un verbe, un adjectif, donner une idée d'antériorité, de multiplicité, d'infériorité, de féminité, de répétition, etc.).
L'ido est sûrement la meilleure langue véhiculaire et probablement un lien entre le langue humain et le language machine évolué tel que tu le présentes dans tes réflexions.
[^] # Re: Espéranto-Ido
Posté par gyhelle . Évalué à 3.
- Vi - Emacs
- KDE - Gnome
- Debian - Ubuntu
- C - C++
- Perl - Python
- J'en passe - Et des meilleures
voici le grand retour du troll (qui date du début du siècle, un peu le grand-père de tout les trolls, quoi)
- Esperanto - Ido
C'est la gloire \o/
[^] # Re: Espéranto-Ido
Posté par gyhelle . Évalué à 3.
Pour le premier :
Le mot lojban vient de langue logique, en lojban. En effet, la grammaire du lojban est basée sur les principes de la logique des prédicats. http://fr.wikipedia.org/wiki/Lojban
Pour le deuxième, c'est une langue à-priori .
[^] # Re: Espéranto-Ido
Posté par Gesmas . Évalué à 2.
Une langue naturelle se caractérise, entre autre, par ses redondances, sa polysémie, sa capacité à connoter.... Je dirais même que c'est le propre de la communication humaine. Un langage logique évacue, ou tente d'évacuer, ce qui n'est pas explicite et univoque. In fine on se retrouve avec un langage mathématique, proche d'un langage informatique, très peu intuitif et facile à apprendre.
L'ido me semble être le meilleur compromis entre une langue naturelle et un langage informatique.
[^] # Re: Espéranto-Ido
Posté par gyhelle . Évalué à 2.
Ce qui tombe bien, vu que l'auteur de l'article recherche justement à faire un langage informatique plus proche du langage humain.
[^] # Re: Espéranto-Ido
Posté par Gesmas . Évalué à 1.
Je voulais dire peu intuitif et PAS facile à apprendre.
Pour aller au bout de ma pensée: je trouve cela inutile d'avoir un langage artificiel aussi rébarbatif pour le commun des mortels qu'un langage informatique.
L'avantage d'une langue comme l'ido utilisé dans l'informatique serait d'avoir une langue destinée à couvrir toute l'expression humaine (comme les langues naturelles), mais pouvant être appliquée à une destination précise sans trop d'efforts (en l'occurence l'informatique).
Ce que je propose c'est une langue humaine proche du langage informatique.
[^] # Re: Espéranto-Ido
Posté par Hrv . Évalué à 2.
- le Toki Pona (tokipona.org),
- le Glosa (glosa.org),
- le Basic English (basic-english.org),
- et beaucoup d'autres (langmaker.com).
Le Lojban (lojban.org) est très loin d'être minimaliste, mais c'est le plus axé sur la communication avec les ordinateurs.
Les créoles sont essentiellement des langues orales, comme le kreyol haïtien, qui plus est dans des pays pauvres. Il y a donc peu de documentation sur l'internet.
Il doit y avoir plus d'infos sur le Swahili et le Filipino.
[^] # Re: Espéranto-Ido
Posté par Ontologia (site web personnel) . Évalué à 1.
Pour un tel langage, il faut rester dans quelques chose d'internationnal et connu, donc l'anglais.
Un anglais avec une grammaire simplifiée à mort, où on enlève tout ce qui peut être ambigue, très intéressant...
« Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker
[^] # Re: Espéranto-Ido
Posté par Axel R. (site web personnel) . Évalué à 2.
http://lvogel.free.fr/tokipona/
pour les espérantophones :
http://www.uni-leipzig.de/esperanto/voko/revo/inx/lx_tp_a.ht(...)
pour les hispanophones :
http://elzr.com/tokipona/
pour les del.icio.usophones :
http://del.icio.us/tag/tokipona
Axel
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.