Post Reply 
newRPL project status
03-02-2015, 03:01 PM
Post: #17
RE: newRPL project status
(02-28-2015 12:23 PM)Ailurus Wrote:  I've been following the project from the start and I wonder if there is any way to help out. Is there some mailing-list or something, any way to contribute?

Yes! we have mailing lists in sourceforge, there used to be a lot of discussions there in the first part of last year (when the project started). But now that it's just me there hasn't been any posts in a long time (I see no reason to talk to myself).
Your help is welcome! Send me an email at [my first name] at and we can discuss how your skills can be put to good use.

A little bit of status update for all readers:
Right now the core has been mostly "frozen" for 3 months, while I'm developing a Qt simulator that can compile and run the firmware natively on a PC. This is needed (in my opinion, but since I'm a one-man team now, it's the only opinion I hear) to accelerate debugging and development of the most "difficult" parts. The UI mainly needs visual feedback, and the cycle "compiling/flashing/watching-it-crash/trying-again" is too time-consuming.
So far, the simulator already executes the firmware on a simulated LCD (grayscale and monochrome emulation, still working on adding the annunciators). There's also timers simulation and some low-level cpu API (mostly dummy functions). Next step is to provide keyboard simulation (which hopefully will be ready in a couple weeks).

To achieve this, the whole firmware tree was reorganized so it can be compiled from within Qt Creator: Opening the "simulator" project file should compile and execute the simulator, while opening the "firmware" project should cross-compile and leave a rom image. All on the same source tree, and using the same IDE.

This is being done so that anyone can get the source code, install Qt Creator and be ready to develop in 5 minutes. Hopefully this will attract more developers to the project. Also debugging in the simulator will make things so much easier for everybody. Since the whole tree will be changing, this will only be released to the public repository when it's ready, in one shot.

Nowadays we have 5 main battlefronts, and the project needs help in all of them:
  1. Simulator:
    • Keyboard simulation
    • New/Open/Save RPL sessions.
  2. User Interface:
    • Command line editor
    • Customizable keyboard handlers
    • Soft menus
  3. RPL Core:
    • Symbolic rules engine
    • Vectors and matrices
    • User interface-related commands
    • A loooong list of commands and features, which are more-or-less independent of each other and can be developed in separate libraries by different people at once without stepping on each others toes.
  4. Documentation:
    • Documentation is almost non-existent (just a couple of documents on the website), so there is a huge amount of work to be done here.
  5. Testing:
    • Test the compiler with all sorts of malformed input to see how robust it is (try to break it/crash it).
    • Test the decompiler with malformed objects to make sure it doesn't crash.
    • Take every single command, review its code and test it for robustness in multiple possible scenarios. Perhaps create a battery of tests for RPL language.

There's of course a natural order of things: the simulator will help in developing the user interface, which will in turn help with testing. The symbolic rules engine will unlock work on most other symbolic commands (which will become sets of rules mostly).
Matrices haven't been implemented yet, since the idea is to have a single matrix object that can contain reals, complex or symbolic objects. So symbolics needed to be ready first.

This may serve as an invitation for others who feel they have the skills to help with any of these areas to join. Just send me an email.

Find all posts by this user
Quote this message in a reply
Post Reply 

Messages In This Thread
newRPL project status - Claudio L. - 03-26-2014, 02:27 PM
RE: newRPL project status - pdo - 03-28-2014, 01:13 PM
RE: newRPL project status - Claudio L. - 03-28-2014, 03:17 PM
RE: newRPL project status - Ailurus - 04-09-2014, 11:53 AM
RE: newRPL project status - Claudio L. - 04-10-2014, 01:13 PM
RE: newRPL project status - Ailurus - 04-11-2014, 07:24 PM
RE: newRPL project status - Claudio L. - 04-12-2014, 09:00 PM
RE: newRPL project status - Ailurus - 04-13-2014, 07:37 AM
RE: newRPL project status - brouhaha - 04-12-2014, 03:33 AM
RE: newRPL project status - David Hayden - 04-12-2014, 01:19 PM
RE: newRPL project status - Claudio L. - 04-12-2014, 08:49 PM
RE: newRPL project status - tuns1999 - 05-15-2014, 08:59 PM
RE: newRPL project status - Claudio L. - 05-19-2014, 02:09 PM
RE: newRPL project status - Han - 01-07-2015, 09:21 PM
RE: newRPL project status - Claudio L. - 01-09-2015, 02:48 PM
RE: newRPL project status - Ailurus - 02-28-2015, 12:23 PM
RE: newRPL project status - Claudio L. - 03-02-2015 03:01 PM

User(s) browsing this thread: 1 Guest(s)