Kartik Agaram
71eb22a5bf
5924
2020-01-27 00:36:44 -08:00
Kartik Agaram
1a65c3af0f
5923 - start work on code-generation for 'var'
2020-01-27 00:20:21 -08:00
Kartik Agaram
810b0f67fa
5922
2020-01-26 23:46:37 -08:00
Kartik Agaram
f39eeb3af3
5921
2020-01-26 23:44:40 -08:00
Kartik Agaram
0c1f023acf
5920
2020-01-26 15:09:57 -08:00
Kartik Agaram
9a4631af77
5919
2020-01-26 15:07:55 -08:00
Kartik Agaram
d1b94adc39
5918
2020-01-26 15:05:12 -08:00
Kartik Agaram
5b4f4d63bd
5917
2020-01-22 23:47:33 -08:00
Kartik Agaram
e4dec37372
5916
2020-01-22 23:47:24 -08:00
Kartik Agaram
e2d73d037c
5915
2020-01-21 00:58:34 -08:00
Kartik Agaram
6c8642f647
5914
2020-01-21 00:46:48 -08:00
Kartik Agaram
6915c2774c
5913
2020-01-20 03:14:26 -08:00
Kartik Agaram
f833e0a0e7
5912
2020-01-20 03:09:06 -08:00
Kartik Agaram
73e6c9a389
5911 - support for compound types
2020-01-20 03:09:01 -08:00
Kartik Agaram
75bb5e4ab1
5910
...
Trace browser: Don't let the background color get too light, and cycle
back to darker shades so I'm not squinting at low depths.
2020-01-20 02:58:31 -08:00
Kartik Agaram
9ed9188a39
5909
...
Draft 5.
2020-01-20 02:42:08 -08:00
Kartik Agaram
ad1b89e280
5908
...
Now parse-type passes, but some outer test is failing. The result is not
being consumed right by `type-equal?`.
2020-01-20 02:27:07 -08:00
Kartik Agaram
efd3681e19
5907
...
Draft 3.
Getting close. Now the tree structure seems right.
2020-01-20 02:21:56 -08:00
Kartik Agaram
cad99482cc
5906
...
Draft 2.
2020-01-20 02:08:12 -08:00
Kartik Agaram
f5387ede3a
5905
...
Draft of my first, incorrect attempt at parsing s-expressions.
No matter how many times I've done this, I never get it right the first
time.
2020-01-20 01:51:01 -08:00
Kartik Agaram
41e4cfc33f
5904
2020-01-19 23:38:06 -08:00
Kartik Agaram
33258e0ad2
5903
2020-01-19 21:58:32 -08:00
Kartik Agaram
bd92759047
5902
2020-01-19 20:43:24 -08:00
Kartik Agaram
1008059f1f
5901
2020-01-19 17:55:59 -08:00
Kartik Agaram
b89ce8e455
5900
2020-01-19 17:53:06 -08:00
Kartik Agaram
ab837e8f6c
5899
2020-01-19 17:52:25 -08:00
Kartik Agaram
622f1be099
5898 - strengthen slice-empty? check
...
Anytime we create a slice, the first check tends to be whether it's empty.
If we handle ill-formed slices here where start > end, that provides a
measure of safety.
In the Mu translator (mu.subx) we often check for a trailing ':' or ','
and decrement slice->end to ignore it. But that could conceivably yield
ill-formed slices if the slice started out empty. Now we make sure we never
operate on such ill-formed slices.
2020-01-19 17:37:11 -08:00
Kartik Agaram
6070c23e5e
5897 - rename comparison instructions
...
Signed and unsigned don't quite capture the essence of what the different
combinations of x86 flags are doing for SubX. The crucial distinction is
that one set of comparison operators is for integers and the second is
for addresses.
2020-01-16 18:31:12 -08:00
Kartik Agaram
5a6601aba9
5896
2020-01-16 18:10:42 -08:00
Kartik Agaram
01e88c8833
5895
2020-01-16 18:10:42 -08:00
Kartik Agaram
675fa93ded
5894
2020-01-16 18:10:42 -08:00
Kartik Agaram
c504ca5661
5893
2020-01-14 01:52:54 -08:00
Kartik Agaram
5c368edcb2
5892
2020-01-14 01:52:54 -08:00
Kartik Agaram
564ced70fd
5891
2020-01-14 01:52:54 -08:00
Kartik Agaram
928f71d294
5890
2020-01-14 01:52:54 -08:00
Kartik Agaram
8fa32599bb
5889
2020-01-14 01:52:54 -08:00
Kartik Agaram
468d8bb9b2
5888
2020-01-14 01:52:54 -08:00
Kartik Agaram
51858e5d46
5887 - reorganize library
...
Layers 0-89 are used in self-hosting SubX.
Layers 90-99 are not needed for self-hosting SubX, and therefore could
use transitional levels of syntax sugar.
Layers 100 and up use all SubX syntax sugar.
2020-01-14 01:52:54 -08:00
Kartik Agaram
730e689467
5886
2020-01-12 21:30:29 -08:00
Kartik Agaram
271f26d791
5885
...
Finalize design for type trees.
2020-01-12 20:25:11 -08:00
Kartik Agaram
fa786ea791
5884
2020-01-12 14:52:07 -08:00
Kartik Agaram
f1eade7286
5883 - drop the `ref` keyword
...
When I created it I was conflating two things:
a) needing to refer to just the start, rather than the whole, and
b) counting indirections.
Both are kinda ill-posed. Now Mu will have just `addr` and `handle` types.
Normal types will translate implicitly to `addr` types, while `handle`
will always require explicit handling.
2020-01-12 14:49:35 -08:00
Kartik Agaram
e064f1bbfd
5882
2020-01-10 10:35:48 -08:00
Kartik Agaram
194d100792
5881
2020-01-10 10:35:17 -08:00
Kartik Agaram
0bcfe6e5cf
5880
2020-01-10 10:35:17 -08:00
Kartik Agaram
a5010b1b37
5879
2020-01-10 10:35:13 -08:00
Kartik Agaram
2f899b3b2c
5878
...
The current prototype doesn't really use floating point; drop the
guardrails there.
2020-01-03 22:12:28 -08:00
Kartik Agaram
68071dca1e
5877
2020-01-03 02:17:53 -08:00
Kartik Agaram
7e7a8a6eae
5876 - address -> addr
2020-01-03 01:36:34 -08:00
Kartik Agaram
c9bda4d13e
5875
2020-01-02 15:23:01 -08:00