Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Came here to say this, so I entirely agree. I found Forth and the concept of concatenative languages after deep study of the fundamentals of computing, specifically studying Lisps and the Lambda Calculus. Eventually found combinators and the Iota combinator. Finally hit the bottom of the rabbit hole!

It really does give the lightbulb moment. “Don’t try to generate code, that is impossible. Only try to realize the truth… There Is No Code (only data)”



I went through a similar path! Concatenative appeared to me like the most economic paradigm one can possible come up with, a ultimate reduction, for which there’s practically no path to further downward abstraction. It feels more like a primitive building block than anything else. I always admired the design of Unix pipes, and flow oriented programming in general, then you realize that these things are just natural to stack processing, you need to introduce nothing. It’s like you’re programming with order itself. Programming is taught and practiced in a very convoluted way, and it makes you think that complexity must somehow stem for the lower levels of abstraction, until you get a grip of stack virtual machines, they couldn’t be simpler in their innate mechanics. I don’t know if it’s only me, but I used to think Turing Completeness was something challenging to achieve in a system, a hallmark of sophisticated complexity, but as I understood stack based languages I realized it’s the opposite, it’s the hallmark of simplicity. I wonder what it's like to have had Forth et al as a first language…


Are you using Forth day-to-day? And in what form?


How are you using the Forth philosophy? Did you build your own, using another system?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: