Arka plan: Kendi eğlenceme/düzeltmem için Haskell'de bir oyuncak Lisp interperter/compiler yazıyorum. LLVM bayt koduna derleme yeteneği eklemeye çalışıyorum.Haskell LLVM bağlamalarında CodeGen * 'i anlamağa doğru
Bağlam: Haskell LLVM kullanılan kombinasyon arasında aracı ve soyutlama (. Abelson and Sussman Structure and Interpretation of Computer Programs tarif edildiği gibi) arasında araçlarını anlamaya çalışan LLVM.Core belgelerine ve bir kod örneği (here) okuma edilmiştir bağlamaları. Bir sürü küçük parça var ve birlikte nasıl çalışacaklarını açıklamıyorum. LLVM ile çok fazla tecrübeye sahip olan ama benim gibi ayakları ıslak olan kişiler için belgelenmemiş olan temel LLVM makine talimatlarının üzerinde bir soyutlama seviyesi var gibi görünüyor.
Soru: Ne CodeGenModule
ve CodeGenFunction
ve nasıl Functions
ve Modules
oluşturmak için kullanılır?