scm2cpp
scm2cpp is READABLE C++ code generator from Scheme code.
Ver 0.6
- URL http://www.suri.cs.okayama-u.ac.jp/servlets/APPLICATION.rkt
- simple expantion scm2c http://people.csail.mit.edu/jaffer/Schlep/scm2c.html
- need C++11
- Not support
- define inside define ...
- Bug
- many bugs related to let
Ver 0.7
- URL http://www.suri.cs.okayama-u.ac.jp/servlets2/scm2cpp.rkt
- Feature
- Support
- uniform vector, uniform list ...
- More statement can deal than Ver 0.6
- Not support
- call/cc , string , char , symbol, switch , car , cdr , cons , let* , letrec , hash , alist ...
- no difference let let*
- tail recursion does not expanded
- some type declaration does not work than Ver0.6
- Bug in 0.7.2
- function should not return lambda
- function should not return do block
- related work http://www-ti.informatik.uni-tuebingen.de/~weissr/doc/scm2cpp.pdf
- Require C++ library
- Boost.Array Boost.Assign Boost.Fusion Boost.Function
- In ver 0.7.2 following implemented, but not tested.
- do , named let , cond