cherry-lamr
cherry-lamr
cherry.fix
Cofree
Cofree
Fix
cherry.lamr
BuiltinType
Lang
Universe
Record
Extend
Function
Builtin
GetKey
Set
Merge
Narrow
AndThen
Capture
External
Str
Float
Integer
Bool
Lang
Call
get
rec
recT
LibRef
RecordKey
Symbol
Index
RecordKey
TypeOptions
TypeOptions
cherry.lamr.norm
BuiltinLibrary
Cause
MissingLibrary
MissingRef
BadType
MissingKey
BadRef
UnrelatedValue
Abort
DummyIneqSystem
Error
Inequasion
InequasionSystem
Library
LibraryPack
NameResolutionLibrary
NormValue
Normalizer
Position
Sign
State
TypeCause
Builtin
cherry.lamr.norm.ints
IntsLibrary
Fn
cherry.lamr.norm.umami
Abstract
BooleanValue
BuiltinNormType
BuiltinTypeValue
Closure
ExtendType
FloatValue
FunctionType
IntegerValue
Merge
Narrow
NormType
RecordType
RecordType
RecordValue
RecordValue
RecordValueBase
StringValue
UmamiNormalizer
UnitValue
UniverseType
Variable
cherry.utils
Act
Action
Par
Act
Raising
ConstEndo
ConstEndo
DisplayK
ErrorCtx
ErrorCtx
LayeredMap
LayeredMap
SimpleTraversing
SimpleTraversing
TofuDisplay
TofuDisplay
FromDisplay
hello
cherry-lamr
/
cherry.lamr.norm
cherry.lamr.norm
package
cherry.lamr.norm
Type members
Value members
Type members
Classlikes
object
BuiltinLibrary
extends
LibraryPack
with
RecordValueBase
enum
Cause
class
DummyIneqSystem
[
T
]
extends
InequasionSystem
[
T
]
case
class
Error
(
cause:
Cause
,
value:
Option
[
NormValue
],
term:
Option
[
Term
],
position:
Option
[
Position
])
case
class
Inequasion
[
T
](
symbol:
Long
,
sign:
Sign
,
term:
T
)
trait
InequasionSystem
[
T
]
trait
Library
class
LibraryPack
(
includes:
Map
[
String
,
Library
])
extends
Library
trait
NameResolutionLibrary
(
val
name:
String
)
extends
Library
with
NormValue
trait
NormValue
trait
Normalizer
case
class
Position
(
start:
Long
,
end:
Long
)
enum
Sign
case
class
State
(
var
symbolCount:
Long
,
var
inequasions:
InequasionSystem
[
Term
],
var
symbols:
Map
[
Long
,
RecordKey
],
var
position:
Option
[
Position
],
var
value:
Option
[
NormValue
],
var
term:
Option
[
Term
],
var
errors:
Vector
[
Error
])
extends
Raising
[
Cause
]
enum
TypeCause
Types
type
Process
[
+
A
] =
Act
[
State
,
A
]
type
Term
=
Fix
[
Lang
]
Value members
Concrete methods
def
newSymbol
[
R
](
name:
String
,
tpe:
R
):
Process
[
NormValue
]