LLVM asosida kompilyator uchun til

Men o'yinchoq tilida ba'zi dastlabki sinovlar va tajribalar bilan shug'ullanmoqchiman va LLVM-asosidagi kompilyatorni yaratib beraman.

Men C ++ ning "native" va eng yaxshi qo'llab-quvvatlanadigan til ekanligini bilaman, lekin men haqiqatdan ham C yoki C ++ ni ishlatishni xohlamayman. Shunday qilib LLVM API bilan ishlash uchun barqaror va aniq qo'llab-quvvatlangan yuqori darajadagi tilni izlayapman.

Python LLVM kutubxonasi bilan o'tkazilgan birinchi ishim umidsizlikka tushib qoldi, chunki loyiha bekor qilinganga o'xshaydi, Men PyPi haqida LLVM ko'magi ularning ramkasiga integratsiyalashuvi haqida va'da berayotgan xabarlarni eshitgan bo'lsam-da, lekin ko'p vaqtni biron bir marshrutga cho'mishdan oldin odamlar tajribasi nimani anglatishini bilmoqchi edim.

Shunday qilib, mening savolim sizning har biringiz LLVM bilan yuqori darajadagi til va/yoki ramka yordamida ijobiy tajribaga ega bo'lganmi? Agar shunday bo'lsa, qaysi? Yoki sizdan qochish uchun aytadigan biron nima bormi?

6
PyPy ancha vaqt oldin LLVMni tark etdi. PyPy LLVM dan foydalangan bo'lsa ham, RPython-da yozilgan tarjimoni olgan tarjimalarda ishlatiladigan tarjimonlar va JIT kompilyatorlari uchun backend sifatida ishlatiladi va past darajadagi kodga (ixtiyoriy ravishda JIT va boshqa qo'ng'iroqlar va hushtak chizig'i qo'shib) qo'shiladi.
qo'shib qo'ydi muallif delnan, manba

1 javoblar

LLVM API ning pastki qismini oddiy S sarmajerlari orqali ochish mumkin. Kodni yaratish uchun yetarli bo'ladi va amalda har qanday yuqori darajadagi tildan foydalanish mumkin. Qutidagi OCaml bindirmalari mavjud (" Ushbu qo'llanmada ) va Haskell bindings ham juda yaxshi (masalan, GHC o'zi LLVM orqali tuzish mumkin). Men LLVM ni .NET-ga asoslangan tillardan ham foydalanmayapman (faqat P/Invoke sarlavhalaridan avtomatik ravishda yaratilgan paketlar).

6
qo'shib qo'ydi