Imagine a more complex case:
a = bar(foo);
b = bar(foo) + bar(baz);
((:= a (bar foo))
(:= b (+ (bar foo) (bar baz))))
What if that parsed, in memory, into a graph structure like:
((:= a #1=(#2=bar foo))
(:= b (+ #1# (#2# baz))))
Would it be easier or harder to work with it?
I honestly have no answer; it's just some pondering that I had on the back of my mind for the last year or so.
We talk so much about Abstract Syntax Trees, but maybe we should talk about "abstract structure graphs"?
Say you have code like:
foo = 1;
foo += bar(foo);
In AST form, using Lisp notation:
'((:= "foo" 1)
(+= "foo" ("bar" "foo")))
In "ASG" form:
'((:= #1="foo" 1)
(+= #1# ("bar" #1#))
Where #1= and #1# mean all instances of #1# contain (via pointers) *the same* object as marked with #1=, not just an equal one.
Some pictures to clarify what I mean are attached.
There's a chart in this article (reposted in this toot) that maps pretty much 1:1 to my thinking on market economy.
Imagine the red line being" usefulness to society", and blue line being "profits". All the nice things happen at the peak of the red line, but we're riding the blue line and shooting past the peak we're after.
I don't have any further conclusions so far - it's something I'm currently thinking about.
loathing, anger, sanitation, DIY repair
I finally had a few hours this evening I could spend on something else than work or kids. Instead of doing something useful, I was fixing a blocked kitchen sink.
I don't have words that can fully encompass the idiocy of what I saw under the sink. But I have a picture (attached).
The whole setup is essentially both flooding *and* fire hazard. I didn't realize it until I had to disassemble it tonight. I'll need to call a plumber anyway, to make them redo it.
"Only dream I ever have..."
"Is it the surface of the Sun?"
"Everytime I shut my eyes, it's always the same."
A description of features of Borg genomes are not something I expected to find in a biology paper.
Resistance is futile.
Correction: my org mode agenda broke in one particular case, because of org-habit module. Fortunately, diagnosing the problem and disabling the culprit took whole 2 minutes.
Introducing "related" tasks. Expressing the concept of "see also; this is relevant".
(That's the dashed line between "Design meeting" and "Feature 3".)
Implemented as :RELATED: property, works just like :BLOCKED:, except org-edna should not recognize it and thus not block changing TODO states.
At this point it's becoming obvious the graph will need explicit organization. I can provide #graphviz with layout hints, but I need to figure out the organizing principle first. Any ideas?
Update on the graphing capabilities.
- Items with todo state are now rounded;
- Items without todo state remain square
- Items tagged "milestone" are polygonal (why "milestone"? just because)
- Tags other than "milestone" are printed on the node
- Done items are diminished (dashed border, lighter color)
- Smaller padding in nodes
- Arrows distinguish start-to-finish relations (full arrow) from finish-to-finish (empty)
That + some code cleanup:
Currently it handles basic TODO states (color) parent-child relationships and org-edna blockers (ID only).
Because I keep saying that tasks tend to form graphs, not trees or lists, and it's nice to have a way to encode and visualize it.
(I have many ideas where to take this further, but progress depends mostly on my own itches to scratch.)
note taking, roam, emacs
Here's the graph of links in my personal wiki right now. I'm surprised by a) how many notes I've accumulated over the years, and b) how very much unconnected they all are.
(Only for the equirectangular projection for now, but getting the GeoTIFF tags right was the hard part.)
Now for the really interesting part: exporting zoomed maps with oblique orthogonal projection, so that I can find the best spots for my base.
A screenshot to save lazy people some clicks :).
“We watch your thoughts, as they become your words; we watch your words, and predict your actions; we watch your actions, and infer your habits; we watch your habits, and model your character; we study the model of your character, and make it your destiny.”
― L. Tzu, President of the Union of Advertising Technologies And Marketing workers.
Just a coder / space enthusiast.
This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either!