aboutsummaryrefslogtreecommitdiff
path: root/lux-jvm
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--lux-jvm-function/commands.md15
-rw-r--r--lux-jvm-function/dependency.jarbin0 -> 951 bytes
-rw-r--r--lux-jvm-function/dependency.pom85
-rw-r--r--lux-jvm/commands.md2
-rw-r--r--lux-jvm/project.clj4
-rw-r--r--lux-jvm/source/luxc/lang/translation/jvm.lux3
-rw-r--r--lux-jvm/source/luxc/lang/translation/jvm/runtime.lux6
7 files changed, 110 insertions, 5 deletions
diff --git a/lux-jvm-function/commands.md b/lux-jvm-function/commands.md
new file mode 100644
index 000000000..a82070bc6
--- /dev/null
+++ b/lux-jvm-function/commands.md
@@ -0,0 +1,15 @@
+# Deploy
+
+```
+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
+
+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.1-SNAPSHOT \
+-Dpackaging=jar
+```
+
diff --git a/lux-jvm-function/dependency.jar b/lux-jvm-function/dependency.jar
new file mode 100644
index 000000000..500384906
--- /dev/null
+++ b/lux-jvm-function/dependency.jar
Binary files differ
diff --git a/lux-jvm-function/dependency.pom b/lux-jvm-function/dependency.pom
new file mode 100644
index 000000000..1c826547f
--- /dev/null
+++ b/lux-jvm-function/dependency.pom
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>com.github.luxlang</groupId>
+ <artifactId>lux-jvm-function</artifactId>
+ <packaging>jar</packaging>
+ <version>0.6.5-SNAPSHOT</version>
+ <name>lux-jvm-function</name>
+ <description>Function abstract class for the JVM compiler.</description>
+ <url>https://github.com/LuxLang/lux</url>
+ <licenses>
+ <license>
+ <name>Lux License v0.1.2</name>
+ <url>https://github.com/LuxLang/lux/blob/master/license.txt</url>
+ </license>
+ </licenses>
+ <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>
+ <url>https://repo1.maven.org/maven2/</url>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ <releases>
+ <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>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ </repository>
+ </repositories>
+ <dependencyManagement>
+ <dependencies/>
+ </dependencyManagement>
+ <dependencies>
+ </dependencies>
+ <developers>
+ <developer>
+ <name>Eduardo Julian</name>
+ <url>https://github.com/eduardoejp</url>
+ </developer>
+ </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 -->
diff --git a/lux-jvm/commands.md b/lux-jvm/commands.md
index 1d3c9dec1..81a36643a 100644
--- a/lux-jvm/commands.md
+++ b/lux-jvm/commands.md
@@ -40,7 +40,7 @@ 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.3 -Dpackaging=jar
+&& mvn install:install-file -Dfile=target/program.jar -DgroupId=com.github.luxlang -DartifactId=lux-jvm -Dversion=0.6.5-SNAPSHOT -Dpackaging=jar
cd ~/lux/lux-jvm/ && mvn deploy:deploy-file \
-Durl=https://<username>:<password>@oss.sonatype.org/content/repositories/snapshots/ \
diff --git a/lux-jvm/project.clj b/lux-jvm/project.clj
index 803c29b0f..5d9ae53d2 100644
--- a/lux-jvm/project.clj
+++ b/lux-jvm/project.clj
@@ -1,4 +1,4 @@
-(def version "0.6.4")
+(def version "0.6.5-SNAPSHOT")
(def repo "https://github.com/LuxLang/lux")
(def sonatype "https://oss.sonatype.org")
(def sonatype-releases (str sonatype "/service/local/staging/deploy/maven2/"))
@@ -20,6 +20,8 @@
:url ~(str repo ".git")}
:dependencies [[com.github.luxlang/lux-bootstrapper ~version]
+ [com.github.luxlang/lux-jvm-function ~version]
+
;; [com.github.luxlang/stdlib ~version]
;; JVM Bytecode (TODO: Remove ASAP)
[org.ow2.asm/asm "7.3.1"]
diff --git a/lux-jvm/source/luxc/lang/translation/jvm.lux b/lux-jvm/source/luxc/lang/translation/jvm.lux
index 7642a6952..0d4f493bb 100644
--- a/lux-jvm/source/luxc/lang/translation/jvm.lux
+++ b/lux-jvm/source/luxc/lang/translation/jvm.lux
@@ -200,4 +200,5 @@
(type.class (..class_name [0 0]) (list)))
(def: .public $Function
- (type.class (..class_name [0 1]) (list)))
+ (type.class "library.lux.Function" ... (..class_name [0 1])
+ (list)))
diff --git a/lux-jvm/source/luxc/lang/translation/jvm/runtime.lux b/lux-jvm/source/luxc/lang/translation/jvm/runtime.lux
index 6058ba138..dc2cb5053 100644
--- a/lux-jvm/source/luxc/lang/translation/jvm/runtime.lux
+++ b/lux-jvm/source/luxc/lang/translation/jvm/runtime.lux
@@ -408,11 +408,13 @@
(Operation [Registry Output])
(do phase.monad
[runtime_payload ..translate_runtime
- function_payload ..translate_function]
+ ... function_payload ..translate_function
+ ]
(in [(|> artifact.empty
artifact.resource
product.right
artifact.resource
product.right)
(sequence.sequence runtime_payload
- function_payload)])))
+ ... function_payload
+ )])))