# TODO - Decide between lineair types / uniqueness vs garbage collector - https://borretti.me/article/how-australs-linear-type-checker-works - Rename constant to literal - Implement a trace() builtin for debugging - Check if we can use DataView in the Javascript examples, e.g. with setUint32 - Implement a FizzBuzz example - Also, check the codes for FIXME and TODO - Allocation is done using pointers for members, is this desired? - See if we want to replace Fractional with Real, and add Rational, Irrationl, Algebraic, Transendental - Implement q32? q64? Two i32/i64 divided? - Does Subscript do what we want? It's a language feature rather a normal typed thing. How would you implement your own Subscript-able type? - Clean up Subscript implementation - it's half implemented in the compiler. Makes more sense to move more parts to stdlib_types. - Have a set of rules or guidelines for the constraint comments, they're messy. - Why is expression_subscript_bytes using a helper method but expression_subscript_static_array is not? - calculate_alloc_size can be reworked; is_member isn't useful with TYPE_INFO_MAP - Parser is putting stuff in ModuleDataBlock - Surely the compiler should build data blocks - Also put the struct.pack constants in TYPE_INFO_MAP - Make prelude more an actual thing - Merge in compiler.INSTANCES - Make it less build in - have a environment class of some kind - Implemented Bounded: https://hackage.haskell.org/package/base-4.21.0.0/docs/Prelude.html#t:Bounded - Try to implement the min and max functions using select - Filter out methods that aren't used; other the other way around (easier?) only add __ methods when needed - Move foldr into type class methods - Functions don't seem to be a thing on typing level yet? - Related to the FIXME in phasm_type3? - Type constuctor should also be able to constuct placeholders - somehow.