Files
sybil/src/syn/ast.rs
Alek Ratzloff cbe22bb89e Start adding eval and machine implementations, remove Inst for now
We're not compiling yet and mostly want to get the name stuff figured
out. Also may switch to using anyhow error handling.

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
2022-01-08 10:13:27 -08:00

20 lines
341 B
Rust

use crate::object::{Float, Int, Str};
use crate::syn::span::*;
#[derive(Debug, Clone, PartialEq)]
pub enum Expr {
Atom(SpAtom),
Quote(Vec<SpExpr>),
}
#[derive(Debug, Clone, PartialEq)]
pub enum Atom {
Word(Str),
Float(Float),
Int(Int),
Str(Str),
}
pub type SpAtom = Spanned<Atom>;
pub type SpExpr = Spanned<Expr>;