💾 Archived View for ftrv.se › _now_202103 captured on 2022-06-03 at 23:05:56. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2021-11-30)
-=-=-=-=-=-=-
Newest entries[1].
Previous month[2].
Ate the last piece of banana bread. Although it seemed like too much at first, I am glad I made two loafs. That's three people SLAUGTHERING bread in 4 days.
Today's reading is Partial Evaluation and Automatic Program Generation (N. Jones, G. K. Gomard, P. Sestoft).
I started sitting at a desk again, with a big external monitor in portrait mode. Don't know whether I'm not used to this, or something being wrong, but my shoulder and neck seem to be constantly in stress with this setup.
Not much, just boring full time job, mostly.
Lost the charger for electric razor, repurposed/soldered one myself and got it charged. Note: it's not my head that got a full shave. Don't think I'm going to do that on myself at any point whatsoever, I really like long hair (the longer the better) and bangs so far.
Rewrote tokenizer in plain C by hand. Was very easy, took way less time than with Ragel, and it works with Unicode properly with `char*` :)
No computers. Only plants. Lemon trees. Clementine trees. Avocado.
Btw the banana bread is amazing.
Tada (CW: instagram, a photo of banana bread)[3]. Cooling down for the night.
[3] Tada (CW: instagram, a photo of banana bread)
EARLIER
Making banana bread with walnuts, almonds and rum! Gonna taste it tomorrow.
Apart from having trouble with unicode in identifiers, tokenizer seems to work great now. I hope to fix issues with unicode later. It's time to start on the parser!
; echo 'y = zzzz+₂101010/x*(i+₁₆ff), zzzz=3, x=9, i=13;'|./6.out -dt ⟨i value=y⟩ ⟨o =⟩ ⟨i value=zzzz⟩ ⟨o +⟩ ⟨n base=2 width=8 signif=6 value=101010 unsigned=42 binary=2A⟩ ⟨o /⟩ ⟨i value=x⟩ ⟨o *⟩ ⟨o (⟩ ⟨i value=i⟩ ⟨o +⟩ ⟨n base=16 width=8 signif=8 value=ff unsigned=255 binary=FF⟩ ⟨o )⟩ ⟨o ,⟩ ⟨i value=zzzz⟩ ⟨o =⟩ ⟨n base=10 width=8 signif=2 value=3 unsigned=3 binary=03⟩ ⟨o ,⟩ ⟨i value=x⟩ ⟨o =⟩ ⟨n base=10 width=8 signif=4 value=9 unsigned=9 binary=09⟩ ⟨o ,⟩ ⟨i value=i⟩ ⟨o =⟩ ⟨n base=10 width=8 signif=4 value=13 unsigned=13 binary=0D⟩ ⟨o ;⟩
EARLIER
Adding more stuff to my programming language `x₀`. Making comments valid tokens so they can be used for documentation later. Added strings, escape codes, lots of operators. Note this is just the tokenizer for now, I'm still largely figuring out how I want the language to look like.
Anyway, a sneak peek at the "operator" section:
'_' # any | '@' # address of | '=' # assign | '