Re: Time to finish RedyCode 1.0

new topic     » goto parent     » topic index » view thread      » older message » newer message
irv said...

"Why" is a good question.

If your reason for writing a new programming language is fame - forget it. You'll never beat the number of users of Qu (a language similar to Euphoria, but with real objects) - even though it works very well, there are between zero and one people using it, AFAIK.

https://en.wikipedia.org/wiki/Qu_(programming_language)

(Oh... if you meant fame for having the largest number of users, I think you can forget that.)

If your reasoning is:

  • you are dissatisfied with some features of Euphoria,
  • and you know enough about programming to be able to write a new language

then wouldn't your time be better spent (and more appreciated) if you used those talents to fix Eu?

If you want to write something that would actually be used by more than a handful of people, maybe you should try to get Eu (with GUI and IDE) to run on non-rooted Android devices, they're everywhere!

I have thought about being an active euphoria developer, but every time i tried to look at the source code, i got totally lost. I considered just forcing myself to stare at it until it started to sink in. But, in the last year or two, while working on RedyCode, i have begun to realize how difficult it is to do certain things in Euphoria. What the Redy project really needs is beyond the current abilities of Euphoria.

After lots of consideration, i came up with an idea that could let me create a new language that does what i need, while at the same time, possibly contribute to the development of Euphoria.

The basic concept is this: have 3 types of syntax:

  1. A low-level C-like language that is similar to euphoria, but uses C data types, pointers, structures, etc. It can be directly converted to C and compiled by GCC.
  2. Euphoria 4.x syntax
  3. A new experimental Eu-like syntax based on euphoria, but not totally compatible

The frontend and backend would first be written in Euphoria as a proof-of-concept. Then, a faster backend could be written in the C-like language so it can build itself. Part of the backend would be a euphoria IL interpreter, and part would be a Eu-like interpreter. The interpreters could run multiple programs, each in it's own thread, and a data sharing mechanism would let them communicate with each other. A program could have sections of code written in any combination of the three syntax modes, but only the C-like code would actually be compiled. The Eu and Eu-like code would be interpreted within the compiled program.

This design could open up some new possibilities:

  1. The C-like language allows for much easier access to dlls and fast low-level code
  2. Euphoria programs could be run as dynamically-loaded scripts or plugins within an exe or dll.
  3. The Eu-like language could do interesting things that euphoria currently cannot do

Now that RedyCode is working, i'll be able to experiment with this new language design within the RedyCode, and adapt RedyCode to become the IDE for this new language.

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu