aboutsummaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
authorJJ2023-04-13 22:09:36 +0000
committerJJ2023-04-13 22:11:21 +0000
commit07448425a0e3c946dacf9d71a49de69f8cc30f58 (patch)
tree5f1843f9cbde52864eaee223dc57c1e5d452fed4 /src/main.rs
parentf1286b162b9223f039ac561dcd4fea5bbfa831d3 (diff)
split bidirectional checking and conversion + defaults out of simple.rs
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/main.rs b/src/main.rs
index 4504d87..a33e963 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -2,6 +2,8 @@ use std::io::{Write, stdout, stdin};
use chrysanthemum::*;
use chrysanthemum::ast::*;
+use chrysanthemum::bidirectional::*;
+use chrysanthemum::simple::*;
fn main() {
println!("chrysanthemum");
@@ -22,7 +24,7 @@ fn main() {
input.clear();
stdin().read_line(&mut input).unwrap();
- match simple::infer(&empty_context, parser::parse_lambda(&input).unwrap()) {
+ match infer(&empty_context, parser::parse_lambda(&input).unwrap()) {
Ok(kind) => println!("infers! {}", kind),
Err(e) => println!("{:?}", e),
}
@@ -34,10 +36,10 @@ fn main() {
input.clear();
stdin().read_line(&mut input).unwrap();
- let kind = simple::infer(&empty_context, parser::parse(&input));
+ let kind = infer(&empty_context, parser::parse_lambda(&input).unwrap());
match kind {
Ok(kind) => {
- match simple::check(&empty_context, parser::parse_lambda(&input).unwrap(), &kind) {
+ match check(&empty_context, parser::parse_lambda(&input).unwrap(), &kind) {
Ok(_) => println!("checks!"),
Err(e) => println!("{:?}", e),
}
@@ -52,7 +54,7 @@ fn main() {
input.clear();
stdin().read_line(&mut input).unwrap();
- match simple::execute(&empty_context, parser::parse_lambda(&input).unwrap()) {
+ match execute(&empty_context, parser::parse_lambda(&input).unwrap()) {
Ok(term) => println!("{}", term),
Err(e) => println!("{:?}", e)
}