Esperanta komputila programlingvo
by MiMalamasLaAnglan, September 8, 2019
Messages: 135
Language: Esperanto
sergejm (User's profile) October 6, 2019, 4:29:23 PM
1. Ricevi fontaĵojn C, akirebla laŭ GNU licenco.
2. Anstataŭi ŝlosilvortojn kaj erarmesaĝojn per la Esperantaj en literaloj
3. Kompili per malnova C-kompililo.
4. Anstataŭi ŝlosilvortojn kaj erarmesaĝojn per la Esperantaj en aliaj lokoj.
5. Kompili per Esperanta C-kompililo.
Altebrilas (User's profile) October 7, 2019, 9:16:57 AM
(laŭ la franca esprimo, kiun oni diras al iu kiu frontas malfacilaĵon aŭ entreprenas longan klopodan taskon)
MiMalamasLaAnglan (User's profile) October 7, 2019, 2:29:13 PM
sergejm:Nu simile oni povas fari kun C:Tio estas mirinda ideo! Estus facile tiel krei dosieron "eo.h" por programi en C (kaj ankaŭ C++) esperante.#define se if
#define alie else
#define liveru(x) return x
#define revenu return
typedef int ent;
ent Fakt(ent n) {
se (n == 0) {
liveru(0);
} alie {
liveru(Fakt(n-1)*n);
}
}
Dankegon pro tiu ideo.
Redakto: Mi provis fari Saluton Mondo programo kaj ricevis eraron.
Eraro:
saluton.c:6:3: error: use of undeclared identifier 'liveru'
liveru 0;
^
1 error generated.
saluton.c:
#include
#include "eo.h"
ent main() {
printf("Saluton Mondo\n");
liveru 0;
}
eo.h:
#define se if
#define alie else
#define liveru(x) return x
#define revenu return
typedef int ent;
sergejm (User's profile) October 7, 2019, 5:22:41 PM
sergejm (User's profile) October 7, 2019, 5:35:53 PM
Uzado:
gcc -c saluton.c | traduku
MiMalamasLaAnglan (User's profile) October 7, 2019, 9:26:41 PM
sergejm:Se vi volas ricevi erarmesaĝoj Esperante, skribu programon "traduku", kiu kaptas mesaĝoj de komplilo kaj tradukas ilin.Vi skribu tiun tradukilon, se vi volas ĝin. Eble povus esti "gcc-eo"-programo.
Uzado:gcc -c saluton.c | traduku
Kio estas la typedef-oj, kiujn mi devas aldoni? Vi proponis "ent[jero]". Kiel tradukiĝus char? Eble double estus "duobla" kaj long estus "longa".
sergejm (User's profile) October 8, 2019, 12:14:35 AM
typedef definas novan tipon, tio estas pli bone - komplilo pli verŝajne skribas pli kompreneblan erarmesaĝon.
#define tipo typedef
#define konst const
tipo char signo, karaktro; // rigardu komputeko.net
konst ent unu = 1;
MiMalamasLaAnglan (User's profile) October 8, 2019, 3:43:58 PM
sergejm:#define anstataŭas la vorto ĉie, kie ĝin renkontas. En kompililaj mesaĝoj vi vidos ne originalon, sed anstataŭaĵon.Ĉu eblas traduki aferojn kiel "#define" kaj "#include"?
typedef definas novan tipon, tio estas pli bone - komplilo pli verŝajne skribas pli kompreneblan erarmesaĝon.
#define tipo typedef
#define konst const
tipo char signo, karaktro; // rigardu komputeko.net
konst ent unu = 1;
Laŭ https://komputeko.net/index_en.php?vorto=character, "signo" estas pli ofta ol "karaktro".
Dankegegon pro via helpo kun la programlingvo! Mi nun bezonas krei nur .h-dosieron!
sergejm (User's profile) October 8, 2019, 4:55:14 PM
MiMalamasLaAnglan (User's profile) October 9, 2019, 3:01:23 PM
sergejm:Ne. Direktivoj de antaŭprocesoro mem ne estas anstataŭeblaj. Sed eblas uzi alian antaŭprocesoro (simile al postprocesoro por traduki erarojn)Mi faris ĝin. https://pastebin.com/hqZ1M8Rb