Skip to content

Commit

Permalink
v0.6.5
Browse files Browse the repository at this point in the history
  • Loading branch information
eduardoejp committed Dec 1, 2021
1 parent 872c097 commit 4334564
Show file tree
Hide file tree
Showing 24 changed files with 103 additions and 107 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ aedifex.jar

/jbe

/lux-jvm-function/RELEASE

/lux-bootstrapper/RELEASE
/lux-bootstrapper/target
/lux-bootstrapper/classes
Expand Down
2 changes: 1 addition & 1 deletion lux-bootstrapper/project.clj
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
(def version "0.6.5-SNAPSHOT")
(def version "0.6.5")

(defproject com.github.luxlang/lux-bootstrapper #=(identity version)
:min-lein-version "2.1.0" ;; 2.1.0 introduced jar classifiers
Expand Down
2 changes: 1 addition & 1 deletion lux-js/commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ cd ~/lux/lux-js/ \
## Compile Lux's Standard Library's tests using a JS/Node-based compiler.
cd ~/lux/stdlib/ \
&& lein clean \
&& node --stack_size=8192 ~/lux/lux-js/lux.js build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux \
&& node --stack_size=8192 ~/lux/lux-js/target/program.js build --source ~/lux/stdlib/source --target ~/lux/stdlib/target --module test/lux \
&& node ~/lux/stdlib/target/program.js
```

Expand Down
6 changes: 3 additions & 3 deletions lux-js/project.lux
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[""
["identity" ["com.github.luxlang" "lux-js" "0.6.5-SNAPSHOT"]
["identity" ["com.github.luxlang" "lux-js" "0.6.5"]
"info" ["url" "https://github.com/LuxLang/lux"
"scm" "https://github.com/LuxLang/lux.git"
"licenses" [["name" "Lux License v0.1.2"
Expand All @@ -15,7 +15,7 @@
"repositories" ["https://oss.sonatype.org/content/repositories/snapshots/"
"https://oss.sonatype.org/service/local/staging/deploy/maven2/"]

"dependencies" [... ["com.github.luxlang" "stdlib" "0.6.5-SNAPSHOT" "tar"]
"dependencies" [... ["com.github.luxlang" "stdlib" "0.6.5" "tar"]
]

"program" "program"]
Expand All @@ -24,5 +24,5 @@
["compiler" ["com.github.luxlang" "lux-js" "0.6.4" "js"]]

"jvm"
["compiler" ["com.github.luxlang" "lux-jvm" "0.6.5-SNAPSHOT" "jar"]
["compiler" ["com.github.luxlang" "lux-jvm" "0.6.5" "jar"]
"dependencies" [["org.openjdk.nashorn" "nashorn-core" "15.1" "jar"]]]]
4 changes: 2 additions & 2 deletions lux-jvm-function/commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@

```
cd ~/lux/lux-jvm-function/ \
&& mvn install:install-file -Dfile=dependency.jar -DgroupId=com.github.luxlang -DartifactId=lux-jvm-function -Dversion=0.6.5-SNAPSHOT -Dpackaging=jar
&& mvn install:install-file -Dfile=dependency.jar -DgroupId=com.github.luxlang -DartifactId=lux-jvm-function -Dversion=0.6.5 -Dpackaging=jar
cd ~/lux/lux-jvm/ && mvn deploy:deploy-file \
-Durl=https://<username>:<password>@oss.sonatype.org/content/repositories/snapshots/ \
-Durl=https://USERNAME:PASSWORD@oss.sonatype.org/content/repositories/snapshots/ \
-Dfile=target/program.jar \
-DgroupId=com.github.luxlang \
-DartifactId=lux-jvm \
Expand Down
33 changes: 1 addition & 32 deletions lux-jvm-function/dependency.pom
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<groupId>com.github.luxlang</groupId>
<artifactId>lux-jvm-function</artifactId>
<packaging>jar</packaging>
<version>0.6.5-SNAPSHOT</version>
<version>0.6.5</version>
<name>lux-jvm-function</name>
<description>Function abstract class for the JVM compiler.</description>
<url>https://github.com/LuxLang/lux</url>
Expand All @@ -17,23 +17,6 @@
<scm>
<url>https://github.com/LuxLang/lux.git</url>
</scm>
<build>
<sourceDirectory>source</sourceDirectory>
<testSourceDirectory>test</testSourceDirectory>
<resources>
<resource>
<directory>resources</directory>
</resource>
</resources>
<testResources>
<testResource>
<directory>resources</directory>
</testResource>
</testResources>
<directory>target</directory>
<outputDirectory>target/classes</outputDirectory>
<plugins/>
</build>
<repositories>
<repository>
<id>central</id>
Expand All @@ -45,16 +28,6 @@
<enabled>true</enabled>
</releases>
</repository>
<repository>
<id>clojars</id>
<url>https://repo.clojars.org/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
<repository>
<id>snapshots</id>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
Expand All @@ -79,7 +52,3 @@
</developers>
</project>

<!-- This file was autogenerated by Leiningen.
Please do not edit it directly; instead edit project.clj and regenerate it.
It should not be considered canonical data. For more information see
https://github.com/technomancy/leiningen -->
4 changes: 2 additions & 2 deletions lux-jvm/commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,10 @@ cd ~/lux/stdlib/ \

```
cd ~/lux/lux-jvm/ \
&& mvn install:install-file -Dfile=target/program.jar -DgroupId=com.github.luxlang -DartifactId=lux-jvm -Dversion=0.6.5-SNAPSHOT -Dpackaging=jar
&& mvn install:install-file -Dfile=target/program.jar -DgroupId=com.github.luxlang -DartifactId=lux-jvm -Dversion=0.6.5 -Dpackaging=jar
cd ~/lux/lux-jvm/ && mvn deploy:deploy-file \
-Durl=https://<username>:<password>@oss.sonatype.org/content/repositories/snapshots/ \
-Durl=https://USERNAME:PASSWORD@oss.sonatype.org/content/repositories/snapshots/ \
-Dfile=target/program.jar \
-DgroupId=com.github.luxlang \
-DartifactId=lux-jvm \
Expand Down
2 changes: 1 addition & 1 deletion lux-jvm/project.clj
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
(def version "0.6.5-SNAPSHOT")
(def version "0.6.5")
(def repo "https://github.com/LuxLang/lux")
(def sonatype "https://oss.sonatype.org")
(def sonatype-releases (str sonatype "/service/local/staging/deploy/maven2/"))
Expand Down
2 changes: 1 addition & 1 deletion lux-lein/project.clj
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
(defproject com.github.luxlang/lein-luxc "0.6.5-SNAPSHOT"
(defproject com.github.luxlang/lein-luxc "0.6.5"
:description "The Leiningen plugin for the Lux programming language."
:url "https://github.com/LuxLang/lux"
:license {:name "Lux License v0.1.2"
Expand Down
12 changes: 6 additions & 6 deletions lux-lua/project.clj
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
(def version "0.6.4")
(def lux_version "0.6.5")
(def repo "https://github.com/LuxLang/lux")
(def sonatype-releases "https://oss.sonatype.org/service/local/staging/deploy/maven2/")
(def sonatype-snapshots "https://oss.sonatype.org/content/repositories/snapshots/")

(def asm_version "5.0.4")
(def rembulan_version "0.1")

(defproject com.github.luxlang/lux-lua #=(identity version)
(defproject com.github.luxlang/lux-lua #=(identity lux_version)
:description "A Lua compiler for Lux."
:url ~repo
:license {:name "Lux License v0.1.2"
Expand All @@ -21,9 +21,9 @@
:deploy-repositories [["releases" {:url ~sonatype-releases :creds :gpg}]
["snapshots" {:url ~sonatype-snapshots :creds :gpg}]]

:plugins [[com.github.luxlang/lein-luxc ~version]]
:dependencies [[com.github.luxlang/lux-bootstrapper ~version]
;; [com.github.luxlang/stdlib ~version]
:plugins [[com.github.luxlang/lein-luxc ~lux_version]]
:dependencies [[com.github.luxlang/lux-bootstrapper ~lux_version]
;; [com.github.luxlang/stdlib ~lux_version]

[org.ow2.asm/asm ~asm_version]
[org.ow2.asm/asm-commons ~asm_version]
Expand All @@ -35,7 +35,7 @@
[com.github.luxlang/rembulan-stdlib ~rembulan_version]
[com.github.luxlang/rembulan-compiler ~rembulan_version]]

:manifest {"lux" ~version}
:manifest {"lux" ~lux_version}
:source-paths ["source"]
:lux {:program "program"}
)
2 changes: 1 addition & 1 deletion lux-python/project.clj
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
(def version "0.6.4")
(def version "0.6.5")
(def repo "https://github.com/LuxLang/lux")
(def sonatype-releases "https://oss.sonatype.org/service/local/staging/deploy/maven2/")
(def sonatype-snapshots "https://oss.sonatype.org/content/repositories/snapshots/")
Expand Down
6 changes: 3 additions & 3 deletions lux-python/project.lux
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[""
["identity" ["com.github.luxlang" "lux-python" "0.6.4"]
["identity" ["com.github.luxlang" "lux-python" "0.6.5"]
"description" "A Python compiler for Lux."
"info" ["url" "https://github.com/LuxLang/lux"
"scm" "https://github.com/LuxLang/lux.git"
Expand All @@ -15,8 +15,8 @@
"repositories" ["https://oss.sonatype.org/content/repositories/snapshots/"
"https://oss.sonatype.org/service/local/staging/deploy/maven2/"]

"compiler" ["com.github.luxlang" "lux-jvm" "0.6.4" "jar"]
"dependencies" [... ["com.github.luxlang" "stdlib" "0.6.4" "tar"]
"compiler" ["com.github.luxlang" "lux-jvm" "0.6.5" "jar"]
"dependencies" [... ["com.github.luxlang" "stdlib" "0.6.5" "tar"]
["org.python" "jython-standalone" "2.7.2" "jar"]]

"program" "program"]]
4 changes: 2 additions & 2 deletions lux-ruby/commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,10 @@ cd ~/lux/stdlib/ \

```
cd ~/lux/lux-ruby/ \
&& mvn install:install-file -Dfile=target/program.jar -DgroupId=com.github.luxlang -DartifactId=lux-ruby -Dversion=0.6.5-SNAPSHOT -Dpackaging=jar
&& mvn install:install-file -Dfile=target/program.jar -DgroupId=com.github.luxlang -DartifactId=lux-ruby -Dversion=0.6.6-SNAPSHOT -Dpackaging=jar
cd ~/lux/lux-ruby/ && mvn deploy:deploy-file \
-Durl=https://<username>:<password>@oss.sonatype.org/content/repositories/snapshots/ \
-Durl=https://USERNAME:PASSWORD@oss.sonatype.org/content/repositories/snapshots/ \
-Dfile=target/program.jar \
-DgroupId=com.github.luxlang \
-DartifactId=lux-ruby \
Expand Down
5 changes: 2 additions & 3 deletions lux-ruby/project.clj
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
(def version "0.6.4")
(def version "0.6.5")
(def repo "https://github.com/LuxLang/lux")
(def sonatype-releases "https://oss.sonatype.org/service/local/staging/deploy/maven2/")
(def sonatype-snapshots "https://oss.sonatype.org/content/repositories/snapshots/")
Expand All @@ -14,8 +14,7 @@
[:name "Eduardo Julian"]
[:url "https://github.com/eduardoejp"]]]

:repositories [["releases" ~sonatype-releases]
["snapshots" ~sonatype-snapshots]]
:repositories [["snapshots" ~sonatype-snapshots]]
:deploy-repositories [["releases" {:url ~sonatype-releases :creds :gpg}]
["snapshots" {:url ~sonatype-snapshots :creds :gpg}]]

Expand Down
12 changes: 6 additions & 6 deletions stdlib/project.lux
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
[... An optional identity for the project.
... It can also be specified or overriden in a non-default profile.
... This will be the name given to the project when installed/deployed as a dependency.
"identity" ["com.github.luxlang" "stdlib" "0.6.5-SNAPSHOT"]
"identity" ["com.github.luxlang" "stdlib" "0.6.5"]

... Every piece of information, and the whole "info" bundle, are optional.
"info" ["url" "https://github.com/LuxLang/lux"
Expand Down Expand Up @@ -41,7 +41,7 @@
... The following are alternative profiles to use in various situations.
"jvm"
[... "compiler" specifies the dependency to fetch and use as the compiler.
"compiler" ["com.github.luxlang" "lux-jvm" "0.6.5-SNAPSHOT" "jar"]
"compiler" ["com.github.luxlang" "lux-jvm" "0.6.5" "jar"]
... "dependencies" is an optional list of dependencies to fetch.
... The dependencies have the same shape as when specifying the compiler.
... When omitting the packaging format of the dependency, "tar" will be assumed.
Expand All @@ -52,25 +52,25 @@
]

"js"
["compiler" ["com.github.luxlang" "lux-js" "0.6.4" "js"]
["compiler" ["com.github.luxlang" "lux-js" "0.6.5" "js"]
... The OS command to use when running JS tests. The default is described below.
... "js" ["node" "--stack_size=8192"]
]

"lua"
["compiler" ["com.github.luxlang" "lux-lua" "0.6.4" "jar"]
["compiler" ["com.github.luxlang" "lux-lua" "0.6.5" "jar"]
... The OS command to use when running Lua tests. The default is described below.
... "lua" ["lua"]
]

"python"
["compiler" ["com.github.luxlang" "lux-python" "0.6.4" "jar"]
["compiler" ["com.github.luxlang" "lux-python" "0.6.5" "jar"]
... The OS command to use when running Python tests. The default is described below.
... "python" ["python3"]
]

"ruby"
["compiler" ["com.github.luxlang" "lux-ruby" "0.6.5-SNAPSHOT" "jar"]
["compiler" ["com.github.luxlang" "lux-ruby" "0.6.5" "jar"]
... The OS command to use when running Ruby tests. The default is described below.
... "ruby" ["ruby"]
]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,10 @@
[arity {"+" Arity}]
["[1][0]" phase ("[1]#[0]" monad)]
[reference
[variable {"+" Register Variable}]]]]]])
[variable {"+" Register Variable}]]
[meta
[archive
["[0]" dependency]]]]]]])

(def: .public (apply expression archive [functionS argsS+])
(Generator (Application Synthesis))
Expand Down Expand Up @@ -68,7 +71,8 @@
(def: .public (function statement expression archive [environment arity bodyS])
(-> Phase! (Generator (Abstraction Synthesis)))
(do [! ///////phase.monad]
[[function_name body!] (/////generation.with_new_context archive
[dependencies (dependency.dependencies archive bodyS)
[function_name body!] (/////generation.with_new_context archive dependencies
(do !
[scope (# ! each ..@scope
(/////generation.context archive))]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -782,7 +782,7 @@
[_ (/////generation.execute! ..runtime)
_ (/////generation.save! ..module_id {.#None} ..runtime)]
(in [(|> artifact.empty
artifact.resource
(artifact.resource true artifact.no_dependencies)
product.right)
(sequence.sequence [..module_id
{.#None}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,38 +1,39 @@
(.using
[library
[lux {"-" case let if symbol}
[abstract
["[0]" monad {"+" do}]]
[data
["[0]" text
["%" format {"+" format}]]
[collection
["[0]" list ("[1]#[0]" functor mix)]
["[0]" set]]]
[math
[number
["n" nat]
["i" int]]]
[target
["_" python {"+" Expression SVar Statement}]]]]
["[0]" // "_"
["[1][0]" runtime {"+" Operation Phase Generator Phase! Generator!}]
[library
[lux {"-" case let if symbol}
[abstract
["[0]" monad {"+" do}]]
[data
["[0]" text
["%" format {"+" format}]]
[collection
["[0]" list ("[1]#[0]" functor mix)]
["[0]" set]]]
[math
[number
["n" nat]
["i" int]]]
[target
["_" python {"+" Expression SVar Statement}]]]]
["[0]" // "_"
["[1][0]" runtime {"+" Operation Phase Generator Phase! Generator!}]
["[1][0]" reference]
["[1][0]" primitive]
["/[1]" // "_"
["[1][0]" reference]
["[1][0]" primitive]
["/[1]" // "_"
["[1][0]" reference]
[synthesis
["[0]" case]]
["/[1]" // "_"
[synthesis
["[0]" case]]
["/[1]" // "_"
["[1][0]" synthesis {"+" Member Synthesis Path}]
["[1][0]" generation]
["//[1]" /// "_"
[reference
["[1][0]" variable {"+" Register}]]
["[1][0]" phase ("[1]#[0]" monad)]
[meta
[archive {"+" Archive}]]]]]]])
["[1][0]" synthesis {"+" Member Synthesis Path}]
["[1][0]" generation]
["//[1]" /// "_"
[reference
["[1][0]" variable {"+" Register}]]
["[1][0]" phase ("[1]#[0]" monad)]
[meta
[archive {"+" Archive}
["[0]" dependency]]]]]]]])

(def: .public (symbol prefix)
(-> Text (Operation SVar))
Expand Down Expand Up @@ -323,7 +324,10 @@
(def: .public (case statement expression archive [valueS pathP])
(-> Phase! (Generator [Synthesis Path]))
(do ///////phase.monad
[[[case_module case_artifact] pattern_matching!] (/////generation.with_new_context archive
[dependencies (dependency.path_dependencies archive pathP)
[[case_module case_artifact] pattern_matching!] (/////generation.with_new_context
archive
dependencies
(case! true statement expression archive [valueS pathP]))
.let [@case (_.var (///reference.artifact [case_module case_artifact]))
@dependencies+ (..dependencies (/////synthesis.path/seq (/////synthesis.path/then valueS)
Expand Down

0 comments on commit 4334564

Please sign in to comment.