Esperanta komputila programlingvo
af MiMalamasLaAnglan, 8. sep. 2019
Meddelelser: 135
Sprog: Esperanto
sergejm (Vise profilen) 6. okt. 2019 16.29.23
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 (Vise profilen) 7. okt. 2019 09.16.57
(laŭ la franca esprimo, kiun oni diras al iu kiu frontas malfacilaĵon aŭ entreprenas longan klopodan taskon)
MiMalamasLaAnglan (Vise profilen) 7. okt. 2019 14.29.13
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 (Vise profilen) 7. okt. 2019 17.22.41
sergejm (Vise profilen) 7. okt. 2019 17.35.53
Uzado:
gcc -c saluton.c | traduku
MiMalamasLaAnglan (Vise profilen) 7. okt. 2019 21.26.41
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 (Vise profilen) 8. okt. 2019 00.14.35
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 (Vise profilen) 8. okt. 2019 15.43.58
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 (Vise profilen) 8. okt. 2019 16.55.14
MiMalamasLaAnglan (Vise profilen) 9. okt. 2019 15.01.23
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