https://ring-lang.github.io/doc1.17/rin ... about-ring
https://ring-lang.github.io/doc1.3/synt ... e-and-give
The Ring language is very interesting to me, it's syntax flexibility means you can modify the keywords and operators of it's syntax before the rest of the code / compilation takes place which allows for the rest of the code that follows to be made to look a lot more like various other programming languages. If you look at the examples on that page I linked to above you will see why I posted about it in the xTalk Implementations section.
Ring (language) with Syntax Flexibility
Forum rules
Please limit any bashing/harping on any commercial interests to a minimum, thanks!
Please limit any bashing/harping on any commercial interests to a minimum, thanks!
- OpenXTalkPaul
- Posts: 2836
- Joined: Sat Sep 11, 2021 4:19 pm
- Contact:
- OpenXTalkPaul
- Posts: 2836
- Joined: Sat Sep 11, 2021 4:19 pm
- Contact:
Re: Ring (language) with Syntax Flexibility
Try RING online:
https://ring-lang.github.io/web/tryring ... oject.html
Paste this in to that page and click run to see how the syntax flexibility can modify the language so that it behaves like xTalk for string concatenation:
https://ring-lang.github.io/web/tryring ... oject.html
Paste this in to that page and click run to see how the syntax flexibility can modify the language so that it behaves like xTalk for string concatenation:
Code: Select all
ChangeRingKeyword print put
ChangeRingOperator + &
ChangeRingOperator nl cr
PUT "HELLO" & cr & "TEST"
-
- Posts: 466
- Joined: Sat Sep 11, 2021 4:37 pm
- Contact:
Re: Ring (language) with Syntax Flexibility
Did you ever go through a Rebol phase? So many great ideas in Sassenrath's tookit.
http://www.rebol.com/r3/docs/concepts/p ... lects.html
http://www.rebol.com/r3/docs/concepts/p ... lects.html
- OpenXTalkPaul
- Posts: 2836
- Joined: Sat Sep 11, 2021 4:19 pm
- Contact:
Re: Ring (language) with Syntax Flexibility
I have stumbled across it a few times. It looks like it hasn't been updated since 2011, with only an unofficial release in 2014.FourthWorld wrote: ↑Fri Jul 26, 2024 5:46 am Did you ever go through a Rebol phase? So many great ideas in Sassenrath's tookit.
http://www.rebol.com/r3/docs/concepts/p ... lects.html
The syntax defining bits of syntax are always difficult for my brain to wrap around, not just in Rebol.
Here is the Extension Builder source code for the XB Language Module that contains it's Canvas Drawing syntax:
https://github.com/livecode/livecode/bl ... canvas.lcb
Which is binds LCB syntax to things in the C++ files named: module-canvas.cpp, module-canvas.h, module-canvas-internal.h which are in the same directory.
There's no documentation that I can find on using their syntax defining structure.
But it's still easier to understand than others, at least to me but I already understand the way the FFI bindings work and LCB specific stuff like that so that probably helps.
Ring (one ring to rule them all) makes it super easy to redefine its parser/interpreter for keywords and operators, but not, as far as I can tell, the token ordering.
- OpenXTalkPaul
- Posts: 2836
- Joined: Sat Sep 11, 2021 4:19 pm
- Contact:
Re: Ring (language) with Syntax Flexibility
Bumping this topic because Ring language has continued to improve.
Ring has support for Qt and Web Assembly, Desktop, Mobile. As I've said previously, it's not an xTalk but I think it could be. It's intentionally very malleable, with an API for to be able to define your very own "natural language" lang definition that can then be loaded and used / compiled with Ring.
I really like Ring for its the 'open-language'
goal being one of it's major features (as oppose to being a 'stretch goal').
I sort of began an xTalk language set file the very first time a gave it a try, maybe I'll revisit that.
It would be very cool to be able to code in xTalk (and an xTalk that you can customize the syntax of on the fly), and then compile directly to a binary executable as if it were written in C, C++, Rust, etc.
There is also a Visual Programming Environment written in Ring that supports RIng lang (naturally):
https://github.com/PWCT/pwct2
Ring has support for Qt and Web Assembly, Desktop, Mobile. As I've said previously, it's not an xTalk but I think it could be. It's intentionally very malleable, with an API for to be able to define your very own "natural language" lang definition that can then be loaded and used / compiled with Ring.
I really like Ring for its the 'open-language'

I sort of began an xTalk language set file the very first time a gave it a try, maybe I'll revisit that.
It would be very cool to be able to code in xTalk (and an xTalk that you can customize the syntax of on the fly), and then compile directly to a binary executable as if it were written in C, C++, Rust, etc.
There is also a Visual Programming Environment written in Ring that supports RIng lang (naturally):
https://github.com/PWCT/pwct2
Who is online
Users browsing this forum: No registered users and 5 guests