Hacker News new | ask | show | jobs
by baruchel 2882 days ago
> And in practice it's hard to find a concatenative language which would be used seriously, not just in a few hobby projects.

One could argue that piping commands in the shell is a very serious use of concatenative syntax.

1 comments

In a general sense, yes, of course. Here are more examples.

1. BNF notation. Yes, it could be surprising, but in a BNF-like language we use function-level representation and white spaces here denote sequential composition of functions -- nonterminals.

2. In a some Lisp-like language one may use spaces to describe "abstract" composition. So, for sequential composition: "(seq func1 func2 func3)". And for parallel composition, for example: "(par func1 func2 func3)".

But in the case of real concatenative programming, which has its origin in Forth, you mostly deal with stacks and stack machines.