C groveller

4 views
Skip to first unread message

Attila Lendvai

unread,
Mar 1, 2021, 3:03:55 PM3/1/21
to compiler-seminar-budapest
sziasztok,

nektek mond valamit az a kifejezes, h "to grovel C headers", meg "C groveller"?

ez a lisp vilagban az a tool, amelyik C definiciokbol lisp definiciokat csinal, ugy, h general egy .c file-t, majd leforditja es lefuttatja azt, ami vegul ki-print-eli a kivant lisp form-okat.

arra lennek kivancsi, h ezt minden kozossegben igy hivjak-e... es ha nem, akkor mi a szelesebb korben elfogadott neve egy ilyennek.

- attila

Gábor Horváth

unread,
Mar 1, 2021, 3:18:14 PM3/1/21
to Attila Lendvai, compiler-seminar-budapest
Szia!

Nem biztos, h ertem mire gondolsz az alatt, h kiprinteli a kivant list formokat. The ha arrol van szo, hogy hogyan lehet C konyvtarat hasznalni Lisp-bol, a SWIG egy egesz nepszeru tool hasonlo problemak megoldasara: Simplified Wrapper and Interface Generator (swig.org)

Udv,
Gabor

--
Azért kapta ezt az üzenetet, mert feliratkozott a Google Csoportok „compiler-seminar-budapest” csoportjára.
Az erről a csoportról és az ahhoz kapcsolódó e-mailekről való leiratkozáshoz küldjön egy e-amailt a(z) compiler-seminar-b...@googlegroups.com címre.
Ha szeretné megtekinteni ezt a beszélgetést az interneten, látogasson el ide: https://groups.google.com/d/msgid/compiler-seminar-budapest/CAE4vfcJAwL2o8iLebZK5_6u4qpk2aBQPy7KnDq_HA858Hr4EKw%40mail.gmail.com.

Attila Lendvai

unread,
Mar 1, 2021, 4:15:56 PM3/1/21
to Gábor Horváth, compiler-seminar-budapest

Nem biztos, h ertem mire gondolsz az alatt, h kiprinteli a kivant list formokat. The ha

a lisp oldal general egy olyan foo.c file-t, amit ha leforditok es lefuttatok gcc-vel, akkor az kiirja azt a lisp programot, ami tartalmazza majd a C header file-okbol a magikus konstansokat.

rovidebben: egy DSL -> C fordito.

szoval kb ugyanaz mint a SWIG, csak valoszinuleg lenyegesen egyszerubben.

hatranya, h ehhez szukseg van egy C forditora... de ez persze belefer olyankor, amikor a target maga is egy C-ben irt oprendszer.

elonye, h viszonylag egyszeru, es garantaltan a host-nak a valos ertekeit fogja produkalni.

de itt a maru-nal nem jatszik egy ilyen SWIG meretu dependency... :)

egyebkent common-lisp-hez irtam egy eleg jot, ami egy c2ffi nevu LLVM+C++-ban irt program altal generalt json file-ok alapjan dolgozik. ezeket be lehet commit-olni a repo-ba es akkor nem hozza be a c2ffi dependency-t, es meglepoen stabilan mukodnek (ABI-change hatarokon belul). de ez is overkill lenne a maru eseteben.

mar van a maru-hoz egy DSL, plusz hozza egy parser grammar, amivel ilyen .c file-okat lehet generalni. azt elesztem most fel... csak szegenynek "osdefs" a neve, ami nem valami szerencses, mert itt igazabol nem OS-rol van szo, hanem a C-vel valo interface-elesrol.
Reply all
Reply to author
Forward
0 new messages