Fix ', add if and = along with bools

This commit is contained in:
2023-02-08 01:54:53 -05:00
parent c801f604c2
commit d861d91397
3 changed files with 39 additions and 11 deletions

View File

@@ -8,7 +8,7 @@ pub Term: Form = {
NUM => Form::Int(i32::from_str(<>).unwrap()),
SYM => Form::Symbol(<>.to_owned()),
"(" <ListInside?> ")" => <>.unwrap_or(Form::Nil),
"'" <Term> => Form::Pair(Rc::new(Form::Symbol("quote".to_owned())), Rc::new(<>)),
"'" <Term> => Form::Pair(Rc::new(Form::Symbol("quote".to_owned())), Rc::new(Form::Pair(Rc::new(<>), Rc::new(Form::Nil)))),
};
ListInside: Form = {
<Term> => Form::Pair(Rc::new(<>), Rc::new(Form::Nil)),
@@ -20,8 +20,8 @@ match {
")",
".",
"'",
r"[0-9]+" => NUM,
r"[a-zA-Z+*/_-][\w+*/_-]*" => SYM,
r"(;[^\n]*\n)|\s+" => { }
r"[0-9]+" => NUM,
r"[a-zA-Z+*/_=-][\w+*/=_-]*" => SYM,
r"(;[^\n]*\n)|\s+" => { }
}