aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/lux/host/jvm/constant
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--stdlib/source/lux/host/jvm/constant.lux50
-rw-r--r--stdlib/source/lux/host/jvm/constant/pool.lux12
-rw-r--r--stdlib/source/lux/host/jvm/constant/tag.lux4
3 files changed, 34 insertions, 32 deletions
diff --git a/stdlib/source/lux/host/jvm/constant.lux b/stdlib/source/lux/host/jvm/constant.lux
index 7f87136a5..1395e6d5a 100644
--- a/stdlib/source/lux/host/jvm/constant.lux
+++ b/stdlib/source/lux/host/jvm/constant.lux
@@ -5,10 +5,12 @@
["." parser]
["." equivalence (#+ Equivalence)]]
[data
- ["." number]
+ [number
+ ["." int]
+ ["." frac]]
["." text]
[format
- ["." binary (#+ Format) ("mutation/." Monoid<Mutation>)]]
+ ["." binary (#+ Format) ("mutation/." monoid)]]
[collection
["." row (#+ Row)]]]
[type
@@ -18,7 +20,7 @@
["//." index (#+ Index)]
[descriptor (#+ Descriptor)]]
[/
- ["/." tag ("tag/." Equivalence<Tag>)]])
+ ["/." tag ("tag/." equivalence)]])
(type: #export UTF8 Text)
@@ -35,11 +37,11 @@
(-> (Index UTF8) Class)
(|>> :abstraction))
- (def: #export Equivalence<Class>
+ (def: #export class-equivalence
(Equivalence Class)
- (:: equivalence.Contravariant<Equivalence> map-1
+ (:: equivalence.contravariant map-1
(|>> :representation)
- //index.Equivalence<Index>))
+ //index.equivalence))
(def: class-format
(Format Class)
@@ -58,11 +60,11 @@
(All [kind] (-> (Value kind) kind))
(|>> :representation))
- (def: #export (Equivalence<Value> Equivalence<kind>)
+ (def: #export (value-equivalence Equivalence<kind>)
(All [kind]
(-> (Equivalence kind)
(Equivalence (Value kind))))
- (:: equivalence.Contravariant<Equivalence> map-1
+ (:: equivalence.contravariant map-1
(|>> :representation)
Equivalence<kind>))
@@ -88,7 +90,7 @@
<base>))]
[long-format Long .int (<|) binary.bits/64]
- [double-format Double number.bits-to-frac number.frac-to-bits binary.bits/64]
+ [double-format Double frac.bits-to-frac frac.frac-to-bits binary.bits/64]
[string-format String (<|) (<|) //index.format]
)
)
@@ -105,8 +107,8 @@
[(def: #export <equivalence>
(Equivalence <type>)
($_ equivalence.product
- //index.Equivalence<Index>
- //index.Equivalence<Index>))
+ //index.equivalence
+ //index.equivalence))
(def: #export <format>
(Format <type>)
@@ -114,8 +116,8 @@
//index.format
//index.format))]
- [Name-And-Type Equivalence<Name-And-Type> name-and-type-format]
- [Reference Equivalence<Reference> reference-format]
+ [Name-And-Type name-and-type-equivalence name-and-type-format]
+ [Reference reference-equivalence reference-format]
)
(type: #export Constant
@@ -129,27 +131,27 @@
(#Interface-Method Reference)
(#Name-And-Type Name-And-Type))
-(def: #export Equivalence<Constant>
+(def: #export equivalence
(Equivalence Constant)
($_ equivalence.sum
## #UTF8
- text.Equivalence<Text>
+ text.equivalence
## #Long
- (..Equivalence<Value> number.Equivalence<Int>)
+ (..value-equivalence int.equivalence)
## #Double
- (..Equivalence<Value> number.Equivalence<Frac>)
+ (..value-equivalence frac.equivalence)
## #Class
- ..Equivalence<Class>
+ ..class-equivalence
## #String
- (..Equivalence<Value> //index.Equivalence<Index>)
+ (..value-equivalence //index.equivalence)
## #Field
- ..Equivalence<Reference>
+ ..reference-equivalence
## #Method
- ..Equivalence<Reference>
+ ..reference-equivalence
## #Interface-Method
- ..Equivalence<Reference>
+ ..reference-equivalence
## #Name-And-Type
- ..Equivalence<Name-And-Type>
+ ..name-and-type-equivalence
))
(def: #export format
@@ -169,7 +171,7 @@
## TODO: Method-Type
## TODO: Invoke-Dynamic
)]
- {#binary.reader (do parser.Monad<Parser>
+ {#binary.reader (do parser.monad
[tag (get@ #binary.reader /tag.format)]
(`` (cond (~~ (do-template [<case> <tag> <format>]
[(tag/= <tag> tag)
diff --git a/stdlib/source/lux/host/jvm/constant/pool.lux b/stdlib/source/lux/host/jvm/constant/pool.lux
index d1da6f606..7e3119222 100644
--- a/stdlib/source/lux/host/jvm/constant/pool.lux
+++ b/stdlib/source/lux/host/jvm/constant/pool.lux
@@ -5,15 +5,15 @@
[monad (#+ do)]
["." state (#+ State)]]
[data
- [text ("text/." Equivalence<Text>)]
+ [text ("text/." equivalence)]
[format
["." binary (#+ Format)]]
[collection
- [list ("list/." Fold<List>)]
+ [list ("list/." fold)]
["." row (#+ Row)]]]
[type
abstract]]
- ["." // (#+ UTF8 Class Constant) ("class/." Equivalence<Class>)
+ ["." // (#+ UTF8 Class Constant) ("class/." class-equivalence)
[//
["." encoding]
["." index (#+ Index)]
@@ -23,9 +23,9 @@
(type: #export Pool (Row Constant))
-(def: #export Equivalence<Pool>
+(def: #export equivalence
(Equivalence Pool)
- (row.Equivalence<Row> //.Equivalence<Constant>))
+ (row.equivalence //.equivalence))
(template: (!add <value> <tag> <=>)
(function (_ pool)
@@ -58,7 +58,7 @@
(def: #export (class name)
(-> UTF8 (State Pool (Index Class)))
- (do state.Monad<State>
+ (do state.monad
[@name (utf8 name)]
(class' (//.class @name))))
diff --git a/stdlib/source/lux/host/jvm/constant/tag.lux b/stdlib/source/lux/host/jvm/constant/tag.lux
index 8e34d975d..3862f5158 100644
--- a/stdlib/source/lux/host/jvm/constant/tag.lux
+++ b/stdlib/source/lux/host/jvm/constant/tag.lux
@@ -8,14 +8,14 @@
[type
abstract]]
[///
- ["." encoding (#+ U1) ("u1/." Equivalence<U1>)]])
+ ["." encoding (#+ U1) ("u1/." u1-equivalence)]])
(abstract: #export Tag
{}
U1
- (structure: #export _ (Equivalence Tag)
+ (structure: #export equivalence (Equivalence Tag)
(def: (= reference sample)
(u1/= (:representation reference)
(:representation sample))))