Exprimer des appels de fonction imbriqués sans ambiguïté en espéranto
של psychoslave, 20 בנובמבר 2013
הודעות: 20
שפה: Français
psychoslave (הצגת פרופיל) 20 בנובמבר 2013, 16:06:04
![lango.gif](/images/smileys/lango.gif)
Ce que je souhaite c’est trouvé un moyen concis mais grammaticalement correct d'exprimer des appels de fonction non-ambigu en espéranto. Par exemple un équivalent a "c = sum(b, b)" pourrait être il me semble "con sumu bo bo", ou peut être "con sumigu bo bo", l’idée étant d’exprimer "bo et bo sont sommés dans co" plutôt que "co est affecté de la somme de bo et bo".
De plus je voudrais exprimer des appels de fonctions imbriqués tel "c = sum( sum(b, b), b)". Est-ce que je peux utiliser la préposition "je" à cet fin ? À savoir "con sumu je sumu bo bo tiam bo". Cela fait-il sens en espéranto ?
Sub (הצגת פרופיל) 20 בנובמבר 2013, 18:47:43
sumu n'existe pas donc ce serait plutôt sumigu ou adiciu. De plus il faut mettre l'accusatif derrière donc peut-être : por kalkuli c-n, sumigu b-n kaj b-n
sum( sum(b, b), b)
sumigu b-n kaj b-n
kaj sumigu ĝin denove kun b-n
Je ne sais pas trop...
erinja (הצגת פרופיל) 20 בנובמבר 2013, 19:25:28
psychoslave (הצגת פרופיל) 21 בנובמבר 2013, 10:08:21
Sub:J'ai du mal à comprendre la question. Est-ce que tu cherches comment lire à l'oral un programme informatique ou comment expliquer un calcul en esperanto ? Ou est-ce que tu cherches si l'espéranto pourrait fournir un moyen innovant d'exprimer des appels de fonctions en détournant l'usage de l'accusatif, par exemple ?C’est effectivement ce dernier cas qui m’intéresse. À terme mon objectif est de disposer de langages de programmation basés sur l’espéranto. Bien sûr pour cela je ne suis pas forcé de passer par une grammaire strictement espérantiste. En soit on peut tirer partie de la régularité de l'espéranto d'un coté et de l'autre se contenter d’expressions symboliques comme a = b + c. Mais j'aimerais qu'optionnellement il soit possible de tout exprimer en toute lettre, car j'aime également la poésie et je trouverais formidable de pouvoir écrire des programmes qui associent l'élégance algorithmique au charme poétique.
C’est un projet libre de recherche sur la wikiveresité nommé Algoritmaro.
D'après le dictionnaire de lernu sumigi signifie « additionner ». Donc si je ne me méprends pas sur la signification de l’affixe -iĝ-, « sumigiĝi » signifie « s’aditionner »
Donc mon idée est dire que b = c + d + f peut s'exprimer :
co, do kaj fo sumigiĝu en bo
Soit « c, d et f s’additionnent dans b ». En utilisant l’accusatif plutôt que la préposition en, et en se passant de la conjonction de coordination (qui à mon humble avis n’est pas indispensable) on peut donc, il me semble, dire :
co, do, fo sumigiĝu bon
Et comme en espéranto on est pas tenu de se tenir à l'ordre sujets/verbe/complément, on peut écrire
bon sumigiĝu co, do, fo
Aussi, d’après le dictionnaire majstro le verbe sumi est définie et se traduit en anglais par add up, soit s’additionner. Donc on doit effectivement pouvoir écrire de façon plus brève :
bon sumu co, do, fo
Jusque là en fait tout cela ne me paraît pas trop tiré par les cheveux. Et même ça me semble être une phrase espéranto grammaticalement correct (nonobstant la majuscule initiale et le point) qui calque parfaitement l'expression d'affectation b = sum(c, d, f).
La question que je me pose est donc : comment continuer pour « traduire » des expressions comme b = sum(c, sum(d, f) ) ou b = sum( sum(c, d), f) en étant aussi univoque ? Bien entendu pour une fonction de sommation qui est commutative et associative, ça n'est pas indispensable, mais il est clair que pour atteindre une équivalence expressive au système des parenthèses il faut une solution générique.
Francestral (הצגת פרופיל) 21 בנובמבר 2013, 17:04:54
-Exemple : Cirklo *c = new Cirklo(Punkto(a, b), r);
-Prononciation : cirklo stelo co egalas al nju cirklo punkto a bo [maldaŭra silento] ro
Au pire, dans un cas plus tordu, on peut utiliser des "kies [nombro]-a argumento estas".
-Exemple : f( g(h(a,b)), c, d, i(e) )
-Prononciation : fo, kies 1a argumento estas go ho a bo, kaj kies 2a kaj 3a argumentoj estas co kaj do, kaj kies 4a argumento estas i e.
Sub (הצגת פרופיל) 21 בנובמבר 2013, 18:22:14
(a+(c+d+e))+(f+g)
Solution 1 : En indiquant le nombre d'arguments :
sumu duope sumu duope a , sumu triope c, d , e , sumu duope f kaj g
Solution 2 : En marquant le dernier argument par kaj devant lui :
sumu sumu a kaj sumu c, d kaj e kaj sumu f kaj g
psychoslave (הצגת פרופיל) 21 בנובמבר 2013, 22:25:32
![ridulo.gif](/images/smileys/ridulo.gif)
En lisant le message de Francestral je suis directement aller chercher comment traduire arité, mais au final duloka ne me semble pas extrêmement plus pertinent que le duope proposé par Sub.
Pour ma part j’étais partie dans des recherches sur les proposition subordonnées, et si on trouve des explications sur les propositions subordonnées à l’impératif assez facilement, en revanche je n’ai pas l’impression qu’il existe de postposition de fermeture de subordonné. Tout au plus je remarque que « ju pli …, des pli … » associent deux propositions qu’on peut probablement un peu balader dans la phrase sans perdre le sens, bien que ce ne soit peut être pas très idiomatique « Ju pli rapide, kredu min, des pli bone », « Des pli bone, kredu min, ju pli rapide ». Bref, toutes les pistes que j’ai suivi en ce sens ne m’ont rien donné de très satisfaisant.
J’aime beaucoup l’idée de marquer le dernier argument par kaj, on pourrait difficilement faire plus concis, par contre je ne suis pas sur qu’accoler les verbes à l’impératif soit grammaticalement correct en espéranto, si, ou tout au moins pour indiquer une subordonné. Dans le cas où ça formerait une phrase espéranto valide, il me semblerait plutôt qu’il s’agirait de propositions juxtaposées : il faudrait ajouter ke pour subordonner. De plus je préférais réserver « kaj » comme opérateur de conjonction booléenne. À place, le plus court qui me vient à l’esprit et qui me semble sémantiquement valable sont les adverbes « fine » ou « laste ». La préposition « je » me tenterait aussi, mais je ne pense pas que ce serait correct.
Ce qui nous donne :
sumu ke sumu a laste ke sumu c, d laste e laste sumu f laste g
Kaj était plus intéressant du fait qu’il est moins long et que ce n’est pas un adverbe qu’on s’attend à pouvoir placer indifféremment avant ou après le substantif. Bon au niveau de l’ordre des mots il me semble qu’on est de toute manière assez contraint en espéranto du moment qu’on a des compléments d'objet indirects. Lingua::Romana:
![lango.gif](/images/smileys/lango.gif)
psychoslave (הצגת פרופיל) 21 בנובמבר 2013, 23:25:09
sumu ke sumu a plie ke sumu c, d plie e plie sumu f ĝis g
( a + ( c + d + e ) ) + ( f + g ) soit:
sum( a, sum( sum( c, d, e ), sum( f, g ) ) soit:
sumu a ke sumu ke sumu c,d plie e plie sumu f,g
psychoslave (הצגת פרופיל) 22 בנובמבר 2013, 11:10:55
psychoslave (הצגת פרופיל) 22 בנובמבר 2013, 16:14:08
Tio estas precize, kion mi volis. => C'est exactement ce que je voulais.
Peut-on dire « kion mi volis, precize estas tio » (ce que je voulais, c'est exactement ça) ?