aboutsummaryrefslogtreecommitdiff
path: root/compilers.md
diff options
context:
space:
mode:
authorEduardo Julian2020-08-12 01:01:30 -0400
committerEduardo Julian2020-08-12 01:01:30 -0400
commitddcc768d9d2e798814989037a286df9951840bcd (patch)
tree1db8ae1685671765dc71358853b412b279007f1d /compilers.md
parent56fa0ab84c1112ea297c46814e580ca8d11b101e (diff)
WIP: New build-tool named Aedifex (can read project descriptions).
Diffstat (limited to 'compilers.md')
-rw-r--r--compilers.md283
1 files changed, 283 insertions, 0 deletions
diff --git a/compilers.md b/compilers.md
new file mode 100644
index 000000000..56d6601ca
--- /dev/null
+++ b/compilers.md
@@ -0,0 +1,283 @@
+# Clean all
+
+```
+cd ~/lux/lux-jvm/ && lein clean && \
+cd ~/lux/lux-js/ && lein clean && \
+cd ~/lux/lux-python/ && lein clean && \
+cd ~/lux/lux-lua/ && lein clean && \
+cd ~/lux/lux-ruby/ && lein clean && \
+cd ~/lux/lux-php/ && lein clean && \
+cd ~/lux/lux-cl/ && lein clean && \
+cd ~/lux/lux-scheme/ && lein clean && \
+cd ~/lux/lux-r/ && lein clean
+```
+
+---
+
+# JVM compiler
+
+## Test
+
+```
+cd ~/lux/lux-jvm/ && lein lux auto test
+cd ~/lux/lux-jvm/ && lein clean && lein lux auto test
+```
+
+## Build
+
+```
+cd ~/lux/lux-jvm/ && lein lux auto build
+cd ~/lux/lux-jvm/ && lein clean && lein lux auto build
+```
+
+## REPL
+
+```
+cd ~/lux/lux-jvm/ && java -jar target/program.jar repl --source ~/lux/stdlib/source --target ~/lux/stdlib/target
+```
+
+## Try
+
+```
+cd ~/lux/lux-jvm/ && time java -jar target/program.jar build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux
+cd ~/lux/stdlib/ && lein clean && cd ~/lux/lux-jvm/ && time java -jar target/program.jar build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux
+cd ~/lux/stdlib/ && cd ~/lux/lux-jvm/ && time java -jar target/program.jar build --source ~/lux/stdlib/source --library ~/lux/stdlib/target/library.tar --target ~/lux/stdlib/target --module test/lux
+cd ~/lux/lux-jvm/ && java -jar target/program.jar export --source ~/lux/stdlib/source --target ~/lux/stdlib/target
+
+cd ~/lux/stdlib/target/ && java -jar program.jar
+```
+
+## Deploy
+
+```
+cd ~/lux/lux-jvm/ && mvn install:install-file -Dfile=target/program.jar -DgroupId=com.github.luxlang -DartifactId=lux-jvm -Dversion=0.6.0-SNAPSHOT -Dpackaging=jar
+
+cd ~/lux/lux-jvm/ && mvn deploy:deploy-file \
+-Durl=https://<username>:<password>@oss.sonatype.org/content/repositories/snapshots/ \
+-Dfile=target/program.jar \
+-DgroupId=com.github.luxlang \
+-DartifactId=lux-jvm \
+-Dversion=0.6.0-SNAPSHOT \
+-Dpackaging=jar
+```
+
+---
+
+# JavaScript compiler
+
+## Test
+
+```
+cd ~/lux/lux-js/ && lein lux auto test
+cd ~/lux/lux-js/ && lein clean && lein lux auto test
+```
+
+## Build
+
+```
+cd ~/lux/lux-js/ && lein lux auto build
+cd ~/lux/lux-js/ && lein clean && lein lux auto build
+cd ~/lux/lux-js/ && lein clean && lein lux build && mv target/program.jar program.jar
+```
+
+## Try
+
+```
+cd ~/lux/stdlib/ && lein clean && cd ~/lux/lux-js/ && time java -jar program.jar build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux
+cd ~/lux/stdlib/target/ && node program.js
+
+cd ~/lux/lux-js/ && lein clean && time java -jar program.jar build --source ~/lux/lux-js/source --target ~/lux/lux-js/target --module program && mv target/program.js program.js
+
+cd ~/lux/stdlib/ && lein clean && cd ~/lux/lux-js/ && time node --stack_size=8192 program.js build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux
+```
+
+---
+
+# Python compiler
+
+## Test
+
+```
+cd ~/lux/lux-python/ && lein lux auto test
+cd ~/lux/lux-python/ && lein clean && lein lux auto test
+```
+
+## Build
+
+```
+cd ~/lux/lux-python/ && lein lux auto build
+cd ~/lux/lux-python/ && lein clean && lein lux auto build
+```
+
+## Try
+
+```
+cd ~/lux/lux-python/ && java -jar target/program.jar build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux
+```
+
+---
+
+# Lua compiler
+
+## Test
+
+```
+cd ~/lux/lux-lua/ && lein lux auto test
+cd ~/lux/lux-lua/ && lein clean && lein lux auto test
+```
+
+## Build
+
+```
+cd ~/lux/lux-lua/ && lein lux auto build
+cd ~/lux/lux-lua/ && lein clean && lein lux auto build
+```
+
+## Try
+
+```
+cd ~/lux/lux-lua/ && java -jar target/program.jar build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux
+```
+
+---
+
+# Ruby compiler
+
+## Test
+
+```
+cd ~/lux/lux-ruby/ && lein lux auto test
+cd ~/lux/lux-ruby/ && lein clean && lein lux auto test
+```
+
+## Build
+
+```
+cd ~/lux/lux-ruby/ && lein lux auto build
+cd ~/lux/lux-ruby/ && lein clean && lein lux auto build
+```
+
+## Try
+
+```
+cd ~/lux/lux-ruby/ && java -jar target/program.jar build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux
+```
+
+---
+
+# PHP compiler
+
+## Test
+
+```
+cd ~/lux/lux-php/ && lein lux auto test
+cd ~/lux/lux-php/ && lein clean && lein lux auto test
+```
+
+## Build
+
+```
+cd ~/lux/lux-php/ && lein lux auto build
+cd ~/lux/lux-php/ && lein clean && lein lux auto build
+```
+
+## Try
+
+```
+cd ~/lux/lux-php/ && java -jar target/program.jar build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux
+```
+
+---
+
+# Common Lisp compiler
+
+## Test
+
+```
+cd ~/lux/lux-cl/ && lein lux auto test
+cd ~/lux/lux-cl/ && lein clean && lein lux auto test
+```
+
+## Build
+
+```
+cd ~/lux/lux-cl/ && lein lux auto build
+cd ~/lux/lux-cl/ && lein clean && lein lux auto build
+```
+
+## Try
+
+```
+cd ~/lux/lux-cl/ && java -jar target/program.jar build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux
+```
+
+---
+
+# Scheme compiler
+
+## Test
+
+```
+cd ~/lux/lux-scheme/ && lein lux auto test
+cd ~/lux/lux-scheme/ && lein clean && lein lux auto test
+```
+
+## Build
+
+```
+cd ~/lux/lux-scheme/ && lein lux auto build
+cd ~/lux/lux-scheme/ && lein clean && lein lux auto build
+```
+
+## Try
+
+```
+cd ~/lux/lux-scheme/ && java -jar target/program.jar build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux
+```
+
+---
+
+# R compiler
+
+## Test
+
+```
+cd ~/lux/lux-r/ && lein lux auto test
+cd ~/lux/lux-r/ && lein clean && lein lux auto test
+```
+
+## Build
+
+```
+cd ~/lux/lux-r/ && lein lux auto build
+cd ~/lux/lux-r/ && lein clean && lein lux auto build
+```
+
+## REPL
+
+```
+cd ~/lux/lux-r/ && java -jar target/program.jar repl --source ~/lux/stdlib/source --target ~/lux/stdlib/target
+```
+
+## Try
+
+```
+cd ~/lux/lux-r/ && time java -jar target/program.jar build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux
+cd ~/lux/stdlib/ && lein clean && cd ~/lux/lux-r/ && time java -jar target/program.jar build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux
+cd ~/lux/stdlib/ && lein clean && cd ~/lux/lux-r/ && time java -jar target/program.jar build --source ~/lux/stdlib/source --library ~/lux/stdlib/target/library.tar --target ~/lux/stdlib/target --module test/lux
+cd ~/lux/lux-r/ && java -jar target/program.jar export --source ~/lux/stdlib/source --target ~/lux/stdlib/target
+
+cd ~/lux/stdlib/target/ && java -jar program.jar
+```
+
+---
+
+# Compiler trial
+
+## Build
+
+```
+cd ~/lux/lux-trial/ && lein clean && lein lux build
+cd ~/lux/lux-trial/target/ && java -jar program.jar
+```
+