aboutsummaryrefslogtreecommitdiff
path: root/new-luxc/source
diff options
context:
space:
mode:
authorEduardo Julian2018-07-31 22:23:07 -0400
committerEduardo Julian2018-07-31 22:23:07 -0400
commit97ab1f076ac08992d6b64cd77bc0bef97b3fc50a (patch)
tree6ea01c3e9f5be6a1387c1a7621681d1642176329 /new-luxc/source
parent7e44ee8a2cfb14e35f6283a9eb8d6a2ddc8bd99a (diff)
Now implementing array functionality in stdlib instead of the compiler.
Diffstat (limited to 'new-luxc/source')
-rw-r--r--new-luxc/source/luxc/lang/translation/common-lisp/procedure/common.jvm.lux29
-rw-r--r--new-luxc/source/luxc/lang/translation/js/procedure/common.jvm.lux33
-rw-r--r--new-luxc/source/luxc/lang/translation/js/runtime.jvm.lux30
-rw-r--r--new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux56
-rw-r--r--new-luxc/source/luxc/lang/translation/lua/procedure/common.jvm.lux33
-rw-r--r--new-luxc/source/luxc/lang/translation/php/procedure/common.jvm.lux31
-rw-r--r--new-luxc/source/luxc/lang/translation/python/procedure/common.jvm.lux31
-rw-r--r--new-luxc/source/luxc/lang/translation/r/procedure/common.jvm.lux25
-rw-r--r--new-luxc/source/luxc/lang/translation/ruby/procedure/common.jvm.lux33
9 files changed, 0 insertions, 301 deletions
diff --git a/new-luxc/source/luxc/lang/translation/common-lisp/procedure/common.jvm.lux b/new-luxc/source/luxc/lang/translation/common-lisp/procedure/common.jvm.lux
index 54a4336fb..91a95d2f9 100644
--- a/new-luxc/source/luxc/lang/translation/common-lisp/procedure/common.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/common-lisp/procedure/common.jvm.lux
@@ -177,34 +177,6 @@
(install "arithmetic-right-shift" (binary bit//arithmetic-right-shift))
)))
-## [[Arrays]]
-(def: (array//new size0)
- Unary
- (_.make-array/init size0 _.nil))
-
-(def: (array//get [arrayO idxO])
- Binary
- (runtimeT.array//get arrayO idxO))
-
-(def: (array//put [arrayO idxO elemO])
- Trinary
- (runtimeT.array//put arrayO idxO elemO))
-
-(def: (array//remove [arrayO idxO])
- Binary
- (runtimeT.array//put arrayO idxO _.nil))
-
-(def: array-procs
- Bundle
- (<| (prefix "array")
- (|> (dict.new text.Hash<Text>)
- (install "new" (unary array//new))
- (install "get" (binary array//get))
- (install "put" (trinary array//put))
- (install "remove" (binary array//remove))
- (install "size" (unary _.length))
- )))
-
## [[Numbers]]
(host.import: java/lang/Double
(#static MIN_VALUE Double)
@@ -359,7 +331,6 @@
(dict.merge int-procs)
(dict.merge frac-procs)
(dict.merge text-procs)
- (dict.merge array-procs)
(dict.merge io-procs)
(dict.merge box-procs)
)))
diff --git a/new-luxc/source/luxc/lang/translation/js/procedure/common.jvm.lux b/new-luxc/source/luxc/lang/translation/js/procedure/common.jvm.lux
index df1be8508..0efdedd4c 100644
--- a/new-luxc/source/luxc/lang/translation/js/procedure/common.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/js/procedure/common.jvm.lux
@@ -164,27 +164,6 @@
[bit//logical-right-shift runtimeT.bit//logical-right-shift]
)
-## [[Arrays]]
-(def: (array//new sizeJS)
- Unary
- (self-contained (format "new Array(" runtimeT.int//to-number "(" sizeJS ")" ")")))
-
-(def: (array//get [arrayJS idxJS])
- Binary
- (format runtimeT.array//get "(" arrayJS "," idxJS ")"))
-
-(def: (array//put [arrayJS idxJS elemJS])
- Trinary
- (format runtimeT.array//put "(" arrayJS "," idxJS "," elemJS ")"))
-
-(def: (array//remove [arrayJS idxJS])
- Binary
- (format runtimeT.array//remove "(" arrayJS "," idxJS ")"))
-
-(def: (array//size arrayJS)
- Unary
- (format arrayJS ".length"))
-
## [[Numbers]]
(host.import: java/lang/Double
(#static MIN_VALUE Double)
@@ -388,17 +367,6 @@
(install "clip" (trinary text//clip))
)))
-(def: array-procs
- Bundle
- (<| (prefix "array")
- (|> (dict.new text.Hash<Text>)
- (install "new" (unary array//new))
- (install "get" (binary array//get))
- (install "put" (trinary array//put))
- (install "remove" (binary array//remove))
- (install "size" (unary array//size))
- )))
-
(def: io-procs
Bundle
(<| (prefix "io")
@@ -424,7 +392,6 @@
(dict.merge int-procs)
(dict.merge frac-procs)
(dict.merge text-procs)
- (dict.merge array-procs)
(dict.merge io-procs)
(dict.merge box-procs)
)))
diff --git a/new-luxc/source/luxc/lang/translation/js/runtime.jvm.lux b/new-luxc/source/luxc/lang/translation/js/runtime.jvm.lux
index d5abbc150..af47bffce 100644
--- a/new-luxc/source/luxc/lang/translation/js/runtime.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/js/runtime.jvm.lux
@@ -597,35 +597,6 @@
__text//clip
__text//char))
-(runtime: array//get "arrayGet"
- (format "(function " @ "(arr,idx) {"
- "var temp = arr[" int//to-number "(idx)];"
- (format "if(temp !== undefined) {"
- (format "return " (some "temp") ";")
- "}"
- "else {"
- (format "return " none ";")
- "}")
- "})"))
-
-(runtime: array//put "arrayPut"
- (format "(function " @ "(arr,idx,val) {"
- "arr[" int//to-number "(idx)] = val;"
- "return arr;"
- "})"))
-
-(runtime: array//remove "arrayRemove"
- (format "(function " @ "(arr,idx) {"
- "delete arr[" int//to-number "(idx)];"
- "return arr;"
- "})"))
-
-(def: runtime//array
- Runtime
- (format __array//get
- __array//put
- __array//remove))
-
(runtime: io//log "log"
(format "(function " @ "(message) {"
"if(typeof console !== \"undefined\" && console.log) { console.log(message); }"
@@ -685,7 +656,6 @@
runtime//bit
runtime//int
runtime//text
- runtime//array
runtime//io
runtime//js))
diff --git a/new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux b/new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux
index 49b1971f1..2c470c44c 100644
--- a/new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux
@@ -113,15 +113,6 @@
(def: lux-intI $.Inst (|>> _.I2L (_.wrap #$.Long)))
(def: jvm-intI $.Inst (|>> (_.unwrap #$.Long) _.L2I))
-(def: (array-writeI arrayI idxI elemI)
- (-> $.Inst $.Inst $.Inst
- $.Inst)
- (|>> arrayI (_.CHECKCAST ($t.descriptor $Object-Array))
- _.DUP
- idxI jvm-intI
- elemI
- _.AASTORE))
-
(def: (predicateI tester)
(-> (-> $.Label $.Inst)
$.Inst)
@@ -209,41 +200,6 @@
[bit//logical-right-shift _.LUSHR]
)
-## [[Arrays]]
-(def: (array//new lengthI)
- Unary
- (|>> lengthI jvm-intI (_.ANEWARRAY ($t.binary-name "java.lang.Object"))))
-
-(def: (array//get [arrayI idxI])
- Binary
- (<| _.with-label (function (_ @is-null))
- _.with-label (function (_ @end))
- (|>> arrayI (_.CHECKCAST ($t.descriptor $Object-Array))
- idxI jvm-intI
- _.AALOAD
- _.DUP
- (_.IFNULL @is-null)
- runtimeT.someI
- (_.GOTO @end)
- (_.label @is-null)
- _.POP
- runtimeT.noneI
- (_.label @end))))
-
-(def: (array//put [arrayI idxI elemI])
- Trinary
- (array-writeI arrayI idxI elemI))
-
-(def: (array//remove [arrayI idxI])
- Binary
- (array-writeI arrayI idxI _.NULL))
-
-(def: (array//size arrayI)
- Unary
- (|>> arrayI (_.CHECKCAST ($t.descriptor $Object-Array))
- _.ARRAYLENGTH
- lux-intI))
-
## [[Numbers]]
(def: nat-method
$.Method
@@ -501,17 +457,6 @@
(install "clip" (trinary text//clip))
)))
-(def: array-procs
- Bundle
- (<| (prefix "array")
- (|> (dict.new text.Hash<Text>)
- (install "new" (unary array//new))
- (install "get" (binary array//get))
- (install "put" (trinary array//put))
- (install "remove" (binary array//remove))
- (install "size" (unary array//size))
- )))
-
(def: io-procs
Bundle
(<| (prefix "io")
@@ -537,7 +482,6 @@
(dict.merge int-procs)
(dict.merge frac-procs)
(dict.merge text-procs)
- (dict.merge array-procs)
(dict.merge io-procs)
(dict.merge box-procs)
)))
diff --git a/new-luxc/source/luxc/lang/translation/lua/procedure/common.jvm.lux b/new-luxc/source/luxc/lang/translation/lua/procedure/common.jvm.lux
index 4b128f946..394dd3d34 100644
--- a/new-luxc/source/luxc/lang/translation/lua/procedure/common.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/lua/procedure/common.jvm.lux
@@ -155,27 +155,6 @@
[bit//logical-right-shift runtimeT.bit//logical-right-shift]
)
-## [[Arrays]]
-(def: (array//new sizeO)
- Unary
- (runtimeT.array//new sizeO))
-
-(def: (array//get [arrayO idxO])
- Binary
- (runtimeT.array//get arrayO idxO))
-
-(def: (array//put [arrayO idxO elemO])
- Trinary
- (runtimeT.array//put arrayO idxO elemO))
-
-(def: (array//remove [arrayO idxO])
- Binary
- (runtimeT.array//put arrayO idxO runtimeT.unit))
-
-(def: array//size
- Unary
- lua.length)
-
## [[Numbers]]
(host.import: java/lang/Double
(#static MIN_VALUE Double)
@@ -387,17 +366,6 @@
(install "clip" (trinary text//clip))
)))
-(def: array-procs
- Bundle
- (<| (prefix "array")
- (|> (dict.new text.Hash<Text>)
- (install "new" (unary array//new))
- (install "get" (binary array//get))
- (install "put" (trinary array//put))
- (install "remove" (binary array//remove))
- (install "size" (unary array//size))
- )))
-
(def: io-procs
Bundle
(<| (prefix "io")
@@ -423,7 +391,6 @@
(dict.merge int-procs)
(dict.merge frac-procs)
(dict.merge text-procs)
- (dict.merge array-procs)
(dict.merge io-procs)
(dict.merge box-procs)
)))
diff --git a/new-luxc/source/luxc/lang/translation/php/procedure/common.jvm.lux b/new-luxc/source/luxc/lang/translation/php/procedure/common.jvm.lux
index 774c28acf..f77a35292 100644
--- a/new-luxc/source/luxc/lang/translation/php/procedure/common.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/php/procedure/common.jvm.lux
@@ -182,36 +182,6 @@
## (install "arithmetic-right-shift" (binary bit//arithmetic-right-shift))
## )))
-## ## [[Arrays]]
-## (def: (array//new sizeO)
-## Unary
-## (|> _.none
-## list _.list
-## (_.* sizeO)))
-
-## (def: (array//get [arrayO idxO])
-## Binary
-## (runtimeT.array//get arrayO idxO))
-
-## (def: (array//put [arrayO idxO elemO])
-## Trinary
-## (runtimeT.array//put arrayO idxO elemO))
-
-## (def: (array//remove [arrayO idxO])
-## Binary
-## (runtimeT.array//put arrayO idxO _.none))
-
-## (def: array-procs
-## Bundle
-## (<| (prefix "array")
-## (|> (dict.new text.Hash<Text>)
-## (install "new" (unary array//new))
-## (install "get" (binary array//get))
-## (install "put" (trinary array//put))
-## (install "remove" (binary array//remove))
-## (install "size" (unary _.length))
-## )))
-
## ## [[Numbers]]
## (host.import: java/lang/Double
## (#static MIN_VALUE Double)
@@ -348,6 +318,5 @@
(dict.merge int-procs)
## (dict.merge frac-procs)
## (dict.merge text-procs)
- ## (dict.merge array-procs)
## (dict.merge io-procs)
)))
diff --git a/new-luxc/source/luxc/lang/translation/python/procedure/common.jvm.lux b/new-luxc/source/luxc/lang/translation/python/procedure/common.jvm.lux
index a760dc3a2..430d4b5e7 100644
--- a/new-luxc/source/luxc/lang/translation/python/procedure/common.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/python/procedure/common.jvm.lux
@@ -182,36 +182,6 @@
(install "arithmetic-right-shift" (binary bit//arithmetic-right-shift))
)))
-## [[Arrays]]
-(def: (array//new sizeO)
- Unary
- (|> python.none
- list python.list
- (python.* sizeO)))
-
-(def: (array//get [arrayO idxO])
- Binary
- (runtimeT.array//get arrayO idxO))
-
-(def: (array//put [arrayO idxO elemO])
- Trinary
- (runtimeT.array//put arrayO idxO elemO))
-
-(def: (array//remove [arrayO idxO])
- Binary
- (runtimeT.array//put arrayO idxO python.none))
-
-(def: array-procs
- Bundle
- (<| (prefix "array")
- (|> (dict.new text.Hash<Text>)
- (install "new" (unary array//new))
- (install "get" (binary array//get))
- (install "put" (trinary array//put))
- (install "remove" (binary array//remove))
- (install "size" (unary python.length))
- )))
-
## [[Numbers]]
(host.import: java/lang/Double
(#static MIN_VALUE Double)
@@ -388,7 +358,6 @@
(dict.merge int-procs)
(dict.merge frac-procs)
(dict.merge text-procs)
- (dict.merge array-procs)
(dict.merge io-procs)
(dict.merge box-procs)
)))
diff --git a/new-luxc/source/luxc/lang/translation/r/procedure/common.jvm.lux b/new-luxc/source/luxc/lang/translation/r/procedure/common.jvm.lux
index d8b383ff2..421618890 100644
--- a/new-luxc/source/luxc/lang/translation/r/procedure/common.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/r/procedure/common.jvm.lux
@@ -179,30 +179,6 @@
(install "arithmetic-right-shift" (binary bit//arithmetic-right-shift))
)))
-## [[Arrays]]
-(def: (array//get [arrayO idxO])
- Binary
- (runtimeT.array//get arrayO idxO))
-
-(def: (array//put [arrayO idxO elemO])
- Trinary
- (runtimeT.array//put arrayO idxO elemO))
-
-(def: (array//remove [arrayO idxO])
- Binary
- (runtimeT.array//put arrayO idxO r.null))
-
-(def: array-procs
- Bundle
- (<| (prefix "array")
- (|> (dict.new text.Hash<Text>)
- (install "new" (unary runtimeT.array//new))
- (install "get" (binary array//get))
- (install "put" (trinary array//put))
- (install "remove" (binary array//remove))
- (install "size" (unary r.length))
- )))
-
## [[Numbers]]
(host.import: java/lang/Double
(#static MIN_VALUE Double)
@@ -380,7 +356,6 @@
(dict.merge int-procs)
(dict.merge frac-procs)
(dict.merge text-procs)
- (dict.merge array-procs)
(dict.merge io-procs)
(dict.merge box-procs)
)))
diff --git a/new-luxc/source/luxc/lang/translation/ruby/procedure/common.jvm.lux b/new-luxc/source/luxc/lang/translation/ruby/procedure/common.jvm.lux
index 1f995b44b..e40f49b80 100644
--- a/new-luxc/source/luxc/lang/translation/ruby/procedure/common.jvm.lux
+++ b/new-luxc/source/luxc/lang/translation/ruby/procedure/common.jvm.lux
@@ -181,38 +181,6 @@
(install "arithmetic-right-shift" (binary bit//arithmetic-right-shift))
)))
-## [[Arrays]]
-(def: (array//new sizeO)
- Unary
- (ruby.apply "Array.new" (list sizeO)))
-
-(def: (array//get [arrayO idxO])
- Binary
- (runtimeT.array//get arrayO idxO))
-
-(def: (array//put [arrayO idxO elemO])
- Trinary
- (runtimeT.array//put arrayO idxO elemO))
-
-(def: (array//remove [arrayO idxO])
- Binary
- (runtimeT.array//put arrayO idxO ruby.nil))
-
-(def: array//size
- Unary
- ruby.length)
-
-(def: array-procs
- Bundle
- (<| (prefix "array")
- (|> (dict.new text.Hash<Text>)
- (install "new" (unary array//new))
- (install "get" (binary array//get))
- (install "put" (trinary array//put))
- (install "remove" (binary array//remove))
- (install "size" (unary array//size))
- )))
-
## [[Numbers]]
(host.import: java/lang/Double
(#static MIN_VALUE Double)
@@ -421,7 +389,6 @@
(dict.merge int-procs)
(dict.merge frac-procs)
(dict.merge text-procs)
- (dict.merge array-procs)
(dict.merge io-procs)
(dict.merge box-procs)
)))