hvrosen
12/16/2021, 9:16 AMthing
exists in order to reach your intuition for it (“air coding”)?
Your..
+ thoughts on this experience
+ ideas for an attack on this problem
.. are welcome! 🙂 ❤️Tom Larkworthy
12/16/2021, 9:29 AMhvrosen
12/16/2021, 9:35 AMTom Larkworthy
12/16/2021, 9:41 AMhvrosen
12/16/2021, 10:06 AM{ a: { b: { c: ... } }, d: ..., e: ...}
. So I consider the idea that this is more concrete than it need be philosophically. Here is an attack: Let’s define two operators: &
for combining values into and-states, and :
for combining values into hierarchies. Then we write a:b:c & d & e
. Traditionally, the CS practitioner and programmer would ask for precedence rules or brackets to disambiguate the expression:
{(a:b:c), d, e}
or {a:(b:c) , d , e }
. Here is the point where an alternative orthogonal model might be possible and might be valuable from a language-design point-of-view: In stead of nesting we lay out the values in a two-dimensional grid, e.g. drawing the &
relation horizontally, and the :
vertically upwards. Then, a noteworthy thing can be observed: The a
value is now both an element in the and-state (horizontal relation) and the first element in the hierarchy (vertical relation). This is my criteria for detecting of orthogonality, as I meant it in the OP.
Wow thanks!, it was kind of cool to actually write it down.
Follow-up question: So, while this evidently is drawable; does it map well to cognition, implementation? Is it view-point in the eye of the beholder, or does it open up them HSM model for e.g. generalization/deeper understanding?Tom Larkworthy
12/16/2021, 10:18 AMTom Larkworthy
12/16/2021, 10:20 AMTom Larkworthy
12/16/2021, 10:43 AMdaltonb
12/17/2021, 5:34 AMhvrosen
12/17/2021, 8:46 AMAndrew F
12/17/2021, 3:45 PMThe a value is now both an element in the and-state (horizontal relation) and the first element in the hierarchy (vertical relation). This is my criteria for detecting of orthogonality...
Is this not satisfied any time the stuff nested under a is fully contained inside it? I'm having trouble seeing this as anything other than a syntactic change. Nesting is still going to crop up in the semantics, or at least, it will cause a lot more trouble to get rid of it than you could possibly benefit from. Syntax should clearly express that. I do think things that don't explicitly depend on each other should be allowed to be going independent. For instance, finding all the natural concurrency in a program. I don't know if this is exactly what you're saying, but I think it's related. Somewhat aside: I've come to think of nesting and sequencing as being different sides of the same concept, namely dependency. I think this is supported by the way nesting-based encodings of sequences, like linked lists and fixed points, keep cropping up.