From b33a74120e3043eeba38f89933ccf1a96a2d4526 Mon Sep 17 00:00:00 2001 From: Cassie Jones Date: Tue, 3 Mar 2020 02:34:31 +0100 Subject: [PATCH] Add more notes to the README --- Cargo.toml | 2 +- README.md | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index cd4816b..49aa5b5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "ivy" -version = "0.1.0" +version = "0.2.0" authors = ["Cassie Jones "] edition = "2018" diff --git a/README.md b/README.md index 3d0a4cc..6156e77 100644 --- a/README.md +++ b/README.md @@ -3,3 +3,25 @@ [Little lambdas eat ivy.][etymology] [etymology]: https://en.wikipedia.org/wiki/Mairzy_Doats + +Ivy is an impure functional language that compiles to native code. It was +developed as an educational project to learn more about compiling functional +languages, and compiling without going through frameworks like LLVM that handle +the backend. It currently supports x64, and requires clang as an assembler. + +Setup: + +Running the compiler requires the Ivy runtime be on the linker search path. +Build the runtime: + +```shell +$ cd rt +$ cargo build --release +``` + +And then you can either install `rt/target/release/libivy_rt.a` in your library +directory of choice, or run the compiler in the Ivy project root directory via: + +```shell +$ env LIBRARY_PATH=rt/target/release cargo run --release +``` -- 2.43.2