diff --git a/src/rukka_lang/mod.rs b/src/rukka_lang/mod.rs index 334f65b..478d975 100644 --- a/src/rukka_lang/mod.rs +++ b/src/rukka_lang/mod.rs @@ -138,8 +138,16 @@ impl EvaluatorState { _ => return Err(format!("Bad assignment")), } "lambda" => match operands { - Cons(box paramlist, box Cons(box formalexp, box Nil)) => { - unimplemented!() //needs to return an abstract object + Cons(box mut paramlist, box Cons(box formalexp, box Nil)) => { + let mut formal_params = vec![]; + { + let mut ptr = &mut paramlist; + + } + FnLiteral { + formal_params, + body: Box::new(formalexp) + } }, _ => return Err(format!("Bad lambda expression")), },