To round of the f32 / f64 wasm supported opcodes. This also means we can remove the now outdated WEBASSEMBLY_BUILTIN_FLOAT_OPS.
1.7 KiB
TODO
-
Decide between lineair types / uniqueness vs garbage collector
-
Rename constant to literal
-
Implement a trace() builtin for debugging
-
Check if we can use DataView in the Javascript examples, e.g. with setUint32
-
Storing u8 in memory still claims 32 bits (since that's what you need in local variables). However, using load8_u / loadu_s we can optimize this.
-
Implement a FizzBuzz example
-
Also, check the codes for FIXME and TODO
-
Allocation is done using pointers for members, is this desired?
-
Functions don't seem to be a thing on typing level yet?
-
static_array and tuple should probably not be PrimitiveType3, but instead subclass AppliedType3?
-
See if we want to replace Fractional with Real, and add Rational, Irrationl, Algebraic, Transendental
-
test_bitwise_or_inv_type
-
test_bytes_index_out_of_bounds vs static trap(?)
-
test_num.py is probably best as part of the generator?
-
Find pytest.mark.skip
-
There's a weird resolve_as reference in calculate_alloc_size
- Either there should be more of them or less
- At first glance, looks like failure in the typing system
- Related to the FIXME in phasm_type3?
-
WEBASSEMBLY_BUILTIN_BYTES_OPS is special cased
- Should be part of a prelude (?)
- In Haskell this is not a type class
-
Casting is not implemented except u32 which is special cased
-
Parser is putting stuff in ModuleDataBlock
- Compiler should probably do that
-
ourlang.BinaryOp should probably always be a Type3ClassMethod
- Remove U32_OPERATOR_MAP / U64_OPERATOR_MAP
-
Make prelude more an actual thing
-
Implemented Bounded: https://hackage.haskell.org/package/base-4.21.0.0/docs/Prelude.html#t:Bounded