diff options
author | Eduardo Julian | 2018-07-31 18:36:18 -0400 |
---|---|---|
committer | Eduardo Julian | 2018-07-31 18:36:18 -0400 |
commit | eea58ee669f69fddf2cef9e1675c41959e2e0a55 (patch) | |
tree | 5424dab3ef26190958fe4371f3f50995025d31cf /new-luxc/source/luxc/lang/translation/jvm | |
parent | 748c868680683df1949f62aac274040ac5bf43da (diff) |
Now implementing atom functionality in stdlib instead of the compiler.
Diffstat (limited to '')
-rw-r--r-- | new-luxc/source/luxc/lang/translation/jvm/common.jvm.lux | 2 | ||||
-rw-r--r-- | new-luxc/source/luxc/lang/translation/jvm/procedure/common.jvm.lux | 33 |
2 files changed, 0 insertions, 35 deletions
diff --git a/new-luxc/source/luxc/lang/translation/jvm/common.jvm.lux b/new-luxc/source/luxc/lang/translation/jvm/common.jvm.lux index a138bd79a..34e7f02c8 100644 --- a/new-luxc/source/luxc/lang/translation/jvm/common.jvm.lux +++ b/new-luxc/source/luxc/lang/translation/jvm/common.jvm.lux @@ -4,8 +4,6 @@ [monad (#+ do)] ["ex" exception (#+ exception:)]] ["." io] - [concurrency - [atom (#+ Atom atom)]] [data ["." error (#+ Error)] ["." text ("text/." Hash<Text>) 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 327a95871..a6b037947 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 @@ -408,30 +408,6 @@ (|>> (_.INVOKESTATIC "java.lang.System" "currentTimeMillis" ($t.method (list) (#.Some $t.long) (list)) #0) (_.wrap #$.Long))) -## [[Atoms]] -(def: atom-class Text "java.util.concurrent.atomic.AtomicReference") -(def: (atom//new initI) - Unary - (|>> (_.NEW atom-class) - _.DUP - initI - (_.INVOKESPECIAL atom-class "<init>" ($t.method (list $Object) #.None (list)) #0))) - -(def: (atom//read atomI) - Unary - (|>> atomI - (_.CHECKCAST atom-class) - (_.INVOKEVIRTUAL atom-class "get" ($t.method (list) (#.Some $Object) (list)) #0))) - -(def: (atom//compare-and-swap [atomI oldI newI]) - Trinary - (|>> atomI - (_.CHECKCAST atom-class) - oldI - newI - (_.INVOKEVIRTUAL atom-class "compareAndSet" ($t.method (list $Object $Object) (#.Some $t.boolean) (list)) #0) - (_.wrap #$.Boolean))) - ## [[Box]] (def: empty-boxI $.Inst @@ -559,14 +535,6 @@ (install "exit" (unary io//exit)) (install "current-time" (nullary io//current-time))))) -(def: atom-procs - Bundle - (<| (prefix "atom") - (|> (dict.new text.Hash<Text>) - (install "new" (unary atom//new)) - (install "read" (unary atom//read)) - (install "compare-and-swap" (trinary atom//compare-and-swap))))) - (def: box-procs Bundle (<| (prefix "box") @@ -593,7 +561,6 @@ (dict.merge text-procs) (dict.merge array-procs) (dict.merge io-procs) - (dict.merge atom-procs) (dict.merge box-procs) (dict.merge process-procs) ))) |