Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Arduino-Shell: Token Threaded Forth Shell for Arduino #26

Open
mikaelpatel opened this issue Mar 2, 2016 · 3 comments
Open

Arduino-Shell: Token Threaded Forth Shell for Arduino #26

mikaelpatel opened this issue Mar 2, 2016 · 3 comments

Comments

@mikaelpatel
Copy link

Started a small project last week with the intention to revisit Forth-land and token threading. This time around I wanted to build an interpreter/virtual machine that 1) used printable characters as token (abbreviated forth words), 2) code could be written directly without an outer interpreter (i.e. token compiler), 3) small enough to be added to Arduino sketches for scripting configuration and/or parts of the application.

The result is a strange marriage between some of the concepts from PostScript with the traditional Forth stack machine.

For more details please see the repository.

@mikaelpatel
Copy link
Author

Completed the first round of this "natural" token thread interpreter. The latest update includes a unified address space for SRAM, EEPROM and PROGMEM (flash) so that scripts can be run from all address spaces. Script definitions are automatically saved to EEPROM. Together with an op-code to synchronize variables with EEPROM this allow persistent defined scripts and restart.

@jjonethal
Copy link
Member

Good job

2016-03-14 9:44 GMT+01:00 Mikael Patel notifications@github.com:

Completed the first round of this "natural" token thread interpreter. The
latest update includes a unified address space for SRAM, EEPROM and PROGMEM
(flash) so that scripts can be run from all address spaces. Script
definitions are automatically saved to EEPROM. Together with an op-code to
synchronize variables with EEPROM this allow persistent defined scripts and
restart.


Reply to this email directly or view it on GitHub
#26 (comment).

@mikaelpatel
Copy link
Author

Completed the second round of performance improvements. Benchmarks are improving but there is a long way to go. Please see benchmark measurements mikaelpatel/Arduino-Shell#40 and ongoing performance improvements, https://github.com/mikaelpatel/Arduino-Shell/issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants