Đi đến phần nội dung

Esperanta komputila programlingvo

viết bởi MiMalamasLaAnglan, Ngày 08 tháng 9 năm 2019

Tin nhắn: 135

Nội dung: Esperanto

sergejm (Xem thông tin cá nhân) 16:29:23 Ngày 06 tháng 10 năm 2019

Sed mi supozis vi volas fari ion pli grandan, ekz:
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 (Xem thông tin cá nhân) 09:16:57 Ngày 07 tháng 10 năm 2019

Bonan kuraĝon!

(laŭ la franca esprimo, kiun oni diras al iu kiu frontas malfacilaĵon aŭ entreprenas longan klopodan taskon)

MiMalamasLaAnglan (Xem thông tin cá nhân) 14:29:13 Ngày 07 tháng 10 năm 2019

sergejm:Nu simile oni povas fari kun C:
#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);
}
}
Tio estas mirinda ideo! Estus facile tiel krei dosieron "eo.h" por programi en C (kaj ankaŭ C++) esperante.

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 (Xem thông tin cá nhân) 17:22:41 Ngày 07 tháng 10 năm 2019

Se vi volas skibi "liveru x;" tiam skribu en eo.h "#define liveru return"

sergejm (Xem thông tin cá nhân) 17:35:53 Ngày 07 tháng 10 năm 2019

Se vi volas ricevi erarmesaĝoj Esperante, skribu programon "traduku", kiu kaptas mesaĝoj de komplilo kaj tradukas ilin.
Uzado:
gcc -c saluton.c | traduku

MiMalamasLaAnglan (Xem thông tin cá nhân) 21:26:41 Ngày 07 tháng 10 năm 2019

sergejm:Se vi volas ricevi erarmesaĝoj Esperante, skribu programon "traduku", kiu kaptas mesaĝoj de komplilo kaj tradukas ilin.
Uzado:
gcc -c saluton.c | traduku
Vi skribu tiun tradukilon, se vi volas ĝin. Eble povus esti "gcc-eo"-programo.

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 (Xem thông tin cá nhân) 00:14:35 Ngày 08 tháng 10 năm 2019

#define anstataŭas la vorto ĉie, kie ĝin renkontas. En kompililaj mesaĝoj vi vidos ne originalon, sed anstataŭaĵon.
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 (Xem thông tin cá nhân) 15:43:58 Ngày 08 tháng 10 năm 2019

sergejm:#define anstataŭas la vorto ĉie, kie ĝin renkontas. En kompililaj mesaĝoj vi vidos ne originalon, sed anstataŭaĵon.
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;
Ĉu eblas traduki aferojn kiel "#define" kaj "#include"?

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 (Xem thông tin cá nhân) 16:55:14 Ngày 08 tháng 10 năm 2019

Ne. Direktivoj de antaŭprocesoro mem ne estas anstataŭeblaj. Sed eblas uzi alian antaŭprocesoro (simile al postprocesoro por traduki erarojn)

MiMalamasLaAnglan (Xem thông tin cá nhân) 15:01:23 Ngày 09 tháng 10 năm 2019

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

Quay lại