Initial Commit

This commit is contained in:
John 2023-09-21 15:41:12 -05:00
commit 8f66a64924
6 changed files with 62 additions and 0 deletions

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
**/Cargo.lock
target

9
Cargo.toml Normal file
View File

@ -0,0 +1,9 @@
[workspace]
members = ["libconlang"]
resolver = "2"
[workspace.package]
version = "0.0.1"
authors = ["John Breaux"]
edition = "2021"
license = "MIT"

1
dummy.cl Normal file
View File

@ -0,0 +1 @@
// This is an example Conlang file.

1
libconlang/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
/target

9
libconlang/Cargo.toml Normal file
View File

@ -0,0 +1,9 @@
[package]
name = "conlang"
version.workspace = true
edition.workspace = true
authors.workspace = true
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]

40
libconlang/src/lib.rs Normal file
View File

@ -0,0 +1,40 @@
//! Conlang is an expression-based programming language
pub mod token {
//! Stores a component of a file as a type and span
}
pub mod ast {
//! Stores functions, data structure definitions, etc.
}
pub mod lexer {
//! Converts a text file into tokens
}
pub mod parser {
//! Parses tokens into an AST
}
pub mod interpreter {
//! Interprets an AST as a program
}
#[cfg(test)]
mod tests {
mod token {
// TODO
}
mod ast {
// TODO
}
mod lexer {
// TODO
}
mod parser {
// TODO
}
mod interpreter {
// TODO
}
}