From 3f23fb8c846acfd7cf04481f12839469c63a1148 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Thu, 18 Mar 2021 16:27:04 -0400 Subject: Updates for Scheme compiler. --- lux-php/commands.md | 37 +++++++++++++++++++++++++++++++++++++ lux-php/source/program.lux | 2 +- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 lux-php/commands.md (limited to 'lux-php') diff --git a/lux-php/commands.md b/lux-php/commands.md new file mode 100644 index 000000000..618c13c52 --- /dev/null +++ b/lux-php/commands.md @@ -0,0 +1,37 @@ +# PHP compiler + +## Test + +``` +cd ~/lux/lux-php/ && lein lux auto test +cd ~/lux/lux-php/ && lein clean && lein lux auto test +``` + +## Build + +``` +## Develop +## NOTE: Must set lux/control/concurrency/thread.parallelism = 1 before compiling to make sure JPHP doesn't cause trouble. +cd ~/lux/lux-php/ \ +&& lein clean \ +&& lein lux auto build + +## Build JVM-based compiler +## NOTE: Must set lux/control/concurrency/thread.parallelism = 1 before compiling to make sure JPHP doesn't cause trouble. +cd ~/lux/lux-php/ \ +&& lein clean \ +&& lein lux build \ +&& mv target/program.jar jvm_based_compiler.jar +``` + +## Try + +``` +## Compile Lux's Standard Library's tests using a JVM-based compiler. +cd ~/lux/stdlib/ \ +&& lein clean \ +&& time java -jar ~/lux/lux-php/target/program.jar build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux + +php -f ~/lux/stdlib/target/program.php +``` + diff --git a/lux-php/source/program.lux b/lux-php/source/program.lux index a13039760..716405587 100644 --- a/lux-php/source/program.lux +++ b/lux-php/source/program.lux @@ -483,7 +483,7 @@ (let [global (reference.artifact context) @global (_.global global)] (do try.monad - [#let [definition (_.; (_.set @global input))] + [#let [definition (_.set! @global input)] _ (run! definition) value (run! (_.return @global))] (wrap [global value definition])))) -- cgit v1.2.3