Join The Works program to have access to the most current content, and to be able to ask questions and get answers from Revelation staff and the Revelation community

At 12 OCT 2009 08:00:59PM Martin Drenovac wrote:

Just as a curiosity - does someone have the BNF for the OI Basic++?

Am reading about a couple new languages and it's struck me that I've never seen a BNF for OI.

Cheers


At 12 OCT 2009 08:44PM Colin Rule wrote:

Martin,

You are a sad, sad geek!!

Colin


At 14 OCT 2009 06:34PM [email protected] wrote:

Martin,

BNF does exist for Basic+ but not in any publishable form. The BNF forms part of the actual source for the meta-compiler (which is basically a compiler compiler), so it's interlaced with compiler meta directives which make it tough on the eyes :)

Of course, there's nothing to stop you generating the BNF for Basic+ yourself based on the documented language. It would be an interesting exercise and I'm sure we'd all be keen to see the results!

Basic+ is essentially the same as any other Basic dialect with bits of C syntax thrown in for good measure, so a good starting point would be an existing Basic BNF - it gets fun when you have to handle the BNF for things like the EVIL implied formatting constructs…

[email protected]

Captain's Blog

Battlestar Sprezzatura - BSG 77

Colonial leaders in all things RevSoft


At 15 OCT 2009 10:03PM [url=http://www.srpcs.com]SRP[/url]'s Kevin Fournier wrote:

Funny you should bring that up, C. I started to reverse engineer the BNF back in '04 with the idea that in so doing, I could use it to jazz up the SRP Editor (add more context sensitive autofill and get more accurate code folding), but I just didn't have the perseverance to see it through.

I think your idea of starting with another BASIC language is a good one.

On a side note, I did reverse engineer the BNF for Rlist. That really was a fun exercise… and a bit challenging in a few areas.

View this thread on the Works forum...

  • third_party_content/community/commentary/forums_works/08469ada2dd654c08525764e0000176c.txt
  • Last modified: 2023/12/30 11:57
  • by 127.0.0.1