macro_lisp 0.2.0

Lisp-like DSL for Rust language.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// run command:
//    $ rustup run nightly cargo run --example factorial
//
// if not install nightly, then
//    $ rustup install nightly

extern crate macro_lisp;

use macro_lisp::lisp;

lisp!(defun factorial ((n i32)) i32
  (if (<= n 1)
    1
    (* n (factorial (- n 1)))));

lisp!(defun main () ()
    (defconstant num (factorial 10))
    (println "10! = {}" num));