1 Numeric types in ocean...
3 Currently (nov 2021) I have 'number' which is arbitrary precision rational.
7 I need to be able to specify range of numbers, at least in structs/arrays.
9 number of bits, or maximum
11 floating-point options
13 I need to know if overflow wraps, clips, or errors.
14 Certainly I need cyclic unsigned numbers.
15 Others probably need to report an error if correctness cannot
17 Errors can be ignored, but this must be explicit.
19 So: integer, natural, cyclic, floating
21 These can abbreviate to 3 letters or 1 with a number
22 int nat i8 c32 f32 f64
24 Units can be included as suffix of literal (30cm) or attribute of
26 units and combinations are declared
28 addition requires matching units or unitless
29 multiplication combines units if known to be valid
31 Track range of varables and decide type based on range when not explicit?
33 Need a notion of flag sets
39 .bar can be added to or remove from x
40 x.bar tests and can be assigned like a bool.
47 can use .a when context confirms type