feat: add native_lisp_function macro

- refactor project layout to use child crates
  - lispers-core: parser and evaluator
  - lispers-macro: proc macros
This commit is contained in:
2025-01-04 20:12:11 +01:00
parent 9179f06132
commit 3e11142361
21 changed files with 243 additions and 72 deletions

View File

@@ -1,5 +1,5 @@
use lispers::lisp::{eval, Environment};
use lispers::parser::ExpressionStream;
use lispers_core::lisp::{eval, Environment};
use lispers_core::parser::ExpressionStream;
fn main() {
let programs = [

View File

@@ -1,7 +1,7 @@
use lispers::lisp::Expression;
use lispers::parser::ParserError;
use lispers_core::lisp::Expression;
use lispers_core::parser::ParserError;
use lispers::{lisp, parser};
use lispers_core::{lisp, parser};
use std::io::Write;
fn main() {

View File

@@ -1,11 +1,12 @@
use lispers::lisp::environment::EnvironmentLayer;
use lispers::lisp::prelude::mk_prelude;
use lispers::lisp::{eval, Environment};
use lispers::parser::ExpressionStream;
use lispers::raytracer::lisp::mk_raytrace;
use lispers_core::lisp::environment::EnvironmentLayer;
use lispers_core::lisp::prelude::mk_prelude;
use lispers_core::lisp::{eval, Environment};
use lispers_core::parser::ExpressionStream;
fn main() {
let programs = [
"(vadd (vector 1 2 3) (vector 4 5 6))",
"(set 'blue (material (color 0 0 1) (color 0 0 1) (color 0 0 0.6) 50 0.25))",
"(set 'green (material (color 0 1 0) (color 0 1 0) (color 0 0.6 0) 50 0.25))",
"(set 'white (material (color 1 1 1) (color 1 1 1) (color 0.6 0.6 0.6) 100 0.5))",