libera/#lisp - IRC Chatlog
Search
15:02:09
lisbeths
I want to make a version of schemes like this but I want it to be able to be purely reversible and so I have to give up tail call recursion optimization
15:02:41
lisbeths
I also want the interpreter of this to fit into the boot sector of a floppy like sector lisp or sector 4th and I can actually implement this in both sector list and in sector 4th
15:03:09
lisbeths
also this syntax is possible with pure untyped curried lambda calculus if you have the ability to make definitions
15:04:42
lisbeths
I think your example Jack Daniel would have to mean that the number one could take an argument otherwise what that would do is return one and then immediately begin calculating as if x were a function that needed to take an argument otherwise it would be a syntax error
15:24:22
White_Flame
the reverse one is of course more popular, but that's the term for nested expressions without any bounding syntax
15:25:48
White_Flame
and IMO the only reason to ever use forward polish notation is when you need something utterly simplistic to implement, because the code isn't that great to work with
15:37:05
lisbeths
also I think reverse Polish notation requires infix notation to do a definition doesn't it
15:39:35
Alfr
lisbeths, not really. Can think about it as putting things onto a stack and operators taking some of those and putting results back.
15:40:36
lisbeths
I have played with fourth and it does not feel as clean as what I am describing in ml curried syntax
15:56:30
lisbeths
One of the problems with this notion is that if data goes on the stack and if all that functions do is manipulate data then it creates a separation between data and functions
16:10:15
pjb
lisbeths: you can also have a use for operators like swap and tuck in PN and in lisp. See Bachus's article about functional programming.
17:48:37
lisbeths
I think that having operations like swap and tuck and all this not only make the system more complicated and difficult to read but are inferior to having a tree-like structure like how lisp or like how c code blocks have
17:49:19
lisbeths
I have fallen for the concatenative meme for a long time but I just don't buy yet that it is the best system for writing programs with combinators
17:50:02
lisbeths
what I am implying still has a tree-like structure only in order to read the tree you have to know how many arguments each function takes and this forces you to read your own code
17:50:18
lisbeths
it punishes you for having code that's millions of lines where you don't know what anything does
17:50:56
lisbeths
furthermore I think that with the syntax I have described it may be possible to create a function that is a working left parentheses and a working right parentheses made out of combinators