We are an early stage (still exploring) startup looking for some help with a small proof-of-concept compiler project using Ocaml or Haskell.
We want to build a small domain specific language and convert it to
a C-like language. In the process of this source-to-source translation, we want to try partial evaluation followed by relatively simple optimizations (dead code elimination, common subexpression elimination, constant folding, inlining). We are also considering some other domain specific transformations that may involve converting (hopefully automatically) code to continuation passing style.
We are especially interested in exploring stage compilation using MetaOcaml for this project.
Contact us at psimonp_AT_yahoo_DOT_com if interested in helping out.
Thanks,
Simon
_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs
2010/6/17 Simon P <psi...@yahoo.com>:
> We want to build a small domain specific language and convert it to
> a C-like language. In the process of this source-to-source translation, we want to try partial evaluation followed by relatively simple optimizations (dead code elimination, common subexpression elimination, constant folding, inlining).
It might be interested for you to look at Min-Caml compiler:
http://min-caml.sourceforge.net/index-e.html
Paper describing the compiler: http://min-caml.sourceforge.net/paper.pdf
MinCaml is a complete ML-like compiler compiling to Sparc in about
2,000 lines of code. As far as I remember, it does common
subexpression elimination, constant folding and inlining.
Sincerely yours,
david