Scm2Cpp Translation example
(define (fact n)
(if (= n 0) 1
(* (fact (- n 1)) n)))
translate to
#include "scm2cpp.hpp"
template< typename NType >
typename scm2cpp::make_variant_shrink_over< boost::mpl::vector< int,NType > >::type
fact( NType n )
{
if( n == 0 )
{ return 1 ; }
else
{ return (fact((n-1))*n) ; }}
You can see detail of