Would recommend placing example language syntax above the fold. Was tough to have to scroll halfway down the entire site to see any syntax. Nobody cares about the EBNF syntax until they have a feel for the language.
Aren't LLMs supposed to write machine code directly, no more programming languages at all, any day now? Joking aside, programming languages are a good mental exercise. Forth was my first language after assembly. Didn't like the stack juggling and ended up using its macro assembler more and more, it became something else, conventions over code I suppose, like what to keep in registers. Forth (and Unix) got the composability requirement right, the testing of individual units.
That would be parsed as a single operator and evaluated using the following rule:
> Evaluates to the operation defined for the operator in the environment. If none, evaluates to a constant function that pushes the operator, followed by all input terms, onto the output program.
absolutely does! for a new language that no one has heard of, it is essential that examples make at least a parallel with other languages. providing examples for mundane things is very useful to build the understanding with the reader who hasn't been writing a paper on OM language.
I like how it unifies the operation stream with the stack (by pushing outputs back into the operation stream to process next).
An even simpler model than Forth, which evaluates an operation stream, with words that operate on a stack. And as noted, this makes recursion trivial.
Would recommend placing example language syntax above the fold. Was tough to have to scroll halfway down the entire site to see any syntax. Nobody cares about the EBNF syntax until they have a feel for the language.
Aren't LLMs supposed to write machine code directly, no more programming languages at all, any day now? Joking aside, programming languages are a good mental exercise. Forth was my first language after assembly. Didn't like the stack juggling and ended up using its macro assembler more and more, it became something else, conventions over code I suppose, like what to keep in registers. Forth (and Unix) got the composability requirement right, the testing of individual units.
I'm still waiting to see the first show HN I made a language designed for LLMs to write programs better.
It came up a few weeks ago already, can't find the link
I worked with Jason (creator of Om) at my last job. He's awesome!
is it his first language design ?
A more explanatory article mentioned in the post: https://evincarofautumn.blogspot.com/2012/02/why-concatenati...
ah, thanks, that's why my first thought was that "hey, this feels very FORTH like"
Let's have more programming language posts (even about "retro" ones like Icon, SNOBOL, Bliss, MUMPS, etc.), guys.
And less about AI topics.
Om.
https://emojipedia.org/om
https://en.wikipedia.org/wiki/Om
if everyone on HN started downvoting all the AI posts (atleast the slop ones) it would cut down submissions by half
> any UTF-8 text (without byte-order marker) defines a valid Om program.
What is the behavior of a program with unmatched braces? I am not sure a stray `}` would fit any of the defined syntax.
https://www.om-language.com/index.html#language__syntax__
That would be parsed as a single operator and evaluated using the following rule:
> Evaluates to the operation defined for the operator in the environment. If none, evaluates to a constant function that pushes the operator, followed by all input terms, onto the output program.
I believe it would simply output itself.
I confused this with https://github.com/omcljs/om
Yeah Om was an extremely widely used Clojurescript library many years ago (maybe still is), and to me that's what this word will always refer to.
I think Hinduism might have a prior claim.
https://news.ycombinator.com/item?id=47161422
Another concatenative-ish one embedded in js .. just for fun - https://github.com/srikumarks/pjs
You may find the "genailang" module fun to play with.
Missing a 'g'!
Omg would have a ring to it.
May I introduce you to the ultimate level of conciousness: https://en.wikipedia.org/wiki/Om
When you realize you were the missing "g" all along.
Will never not complain about languages not giving code examples. It’s like writing a charting/UI/style library and showing no examples. Just what?
You overlooked the examples. They might not satisfy you, but there are examples.
To be fair, the examples are extremely easy to overlook. They are also, to put it delicately, not the most helpful.
Absolutely agree. But fairness precludes denying the existence of examples.
They are not prominent, but they are in a section with the heading 'Examples'.
apparently fold example is very helpful to some.
if it's something you do 100% of the time, is it really adding any information to the world?
absolutely does! for a new language that no one has heard of, it is essential that examples make at least a parallel with other languages. providing examples for mundane things is very useful to build the understanding with the reader who hasn't been writing a paper on OM language.