[Haskell-cafe] Free monad based EDSL for writing LLVM programs.

arrowdodger 6yearold at gmail.com
Thu Aug 7 14:16:57 UTC 2014


Hello. I'm new with Haskell and FP, so i wanted someone to give comments on
the package i've made [1]. It's, actually, my first attempt to create
something more or less real, so any feedback would be welcome.

I've used Free monad to create EDSL that allows writing LLVM IR code.
Afterwards it could be converted into pure AST structure provided by
llvm-general-pure[2] package. Currently, it supports almost every
instruction, but i haven't yet come up with sensible defaults for them.

Another thing that bugs me is the ability to transform the code in syb way.
I want take a user-supplied function that would pattern-match instruction
and produce another code block and apply this function everywhere in the
code, but still can't get my head around it. I've come up with extF
function, that unlike extM, would resort to wrap instead of return, but
that's all i've managed to do.

Thanks in advance.

[1] https://bitbucket.org/arrowdodger/llvm-general-edsl
[2] http://hackage.haskell.org/package/llvm-general-pure
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20140807/6d973f16/attachment.html>


More information about the Haskell-Cafe mailing list