4 ms·
Could someone explain this simply?
by rosstex 9y ago
Could someone explain this simply?
- dguaraglia 9y agoLooks like a "preprocessor" on steroids. Imagine the C preprocessor, but instead of simple macros and constants you can define expressions that will be expanded to much more complex things. This example they give is pretty good at conveying the idea: you can define "goto" to emit the intermediate LLVM opcodes to jump to a label, then use it immediately after. This is great for defining your own DSL.
- throwaway91111 9y agoit's three things: * a syntax, including literals * first class support for llvm IR and primitives * a macro system allowing you to create new ir-level primitives with aforementioned syntax. It seems like a lisp without homoiconicity and a complex syntax (compared to sexps). Think: greenfield compiler development, or maybe a DSP DSL.