I took a class with Alan Perlis when I was in college. Yes, I did have a slight idea of how lucky I was.
@sjmaddox Жыл бұрын
Great talk! Very clear exposition. And thanks for the reference 🙂
@JohannesRiecken Жыл бұрын
Why isn’t “swap” called “dig” for consistency with “dig2”? Very enjoyable to see how stack languages relate to other compiler theory concepts!
@DevineLuLinvega Жыл бұрын
In the joy docs, it says `Note that "dig1" is the same as "swap". ` It looks like it wanted to have a word that was symmetric to buryn/dign.
@teeesen Жыл бұрын
This is bringing back a lot of memories. Back in the early 90s I made a semantics for machine code that had the same sort of [| p q |] = [| p |] o [| q |] distributivity relationship between semantics, concatenation, and composition, allowing you to break a machine code program at any point and get the same meaning. But, I’m wondering whether the language in the talk actually has this property. Since “[“ and “]” aren’t given meaning on their own, it seems that you only get the distributivity property if “[“ and “]” are replaced using quote and compose.
@23bcx5 ай бұрын
Wouldn't make more sense for dig to be an operation that pops the top of the stack and digs that far?
@BartoszGolda Жыл бұрын
Very nice, even if one would not get 100% - still, it's helpful. Examples in one of Forth standards could be more universal though - if it's doable at all (cons?)..
@DevineLuLinvega Жыл бұрын
Forth is not based on lambda calculus tho, it'd be trickier, you'd have to have to build library words that are non standard, joy and factor have those built into the standard implementations.