First draft grammar of Xeph, a non-pure functional language, a superset of ASDL. Input is needed. (+ guide on reading EBNF) (gist.github.com)
from ChubakPDP11@programming.dev to programming@programming.dev on 19 Apr 00:45
https://programming.dev/post/12963204

Please tell me what you honestly think of it — this is not a ‘labor of love’ exactly, I only spent a few hours on it. But I think its a strong foundation for what comes next. The implementation, I hope, will be an orgy of love!

I am intentionally not giving an example because I want people to give one, just to make sure how ‘comprehensible’ my grammar-writing skills are. So, what do you think it looks like?

I will give an example for the upcoming versions.

Also, I think there is not need for an example, it’s just your run-off-the-mill ML-like language.

Thanks.

#programming

threaded - newest

Corbin@programming.dev on 19 Apr 01:45 next collapse

It looks alright. You’ll have to use it for a few months before knowing whether it’s comfortable.

To be honest, I’m not a fan of variables; I’m in the tacit/concatenative camp. But I think it’s good to try new things and learn for yourself why they are good or bad.

ChubakPDP11@programming.dev on 19 Apr 04:54 collapse

You showed up! So, about this, you see how ‘let’ binding does not allow you to add parameters right? (the val binding does) I think this is a good place to use tacitness. I will basically add Perl-like, POSX-shell-like features. To further add concatativenss, I shall add OCaml-style shell (|>). I will take a page from F#'s book and add a ‘<|’ too. I was originally planning to have these two operators be defined orthogonal-like via the operator binders (infix, infixr etc) but I think it’s necessary to bake them in.

So any other cool stuff? I plan on having intrinsics like ‘add’ and ‘or’ etc. Since it is translated down to C, I will add a two-way FFI, similar to the language I am writing it in, Cyclone Scheme.

THANKS.

tsonfeir@lemm.ee on 19 Apr 06:39 collapse

rulese?

ChubakPDP11@programming.dev on 19 Apr 07:35 collapse

I don’t understand. Am I doing something against the rules of this instance? I have posted stuff like this before?

dsemy@lemm.ee on 19 Apr 11:19 collapse

I think he means this typo:

[ and ] mark optional rulese, for example, [ ‘a’ ] could mean a or an empty language (sigma).

ChubakPDP11@programming.dev on 20 Apr 09:32 collapse

Uh apologies. I did not realize that.