Make uLisp as standalone library


#1

Hi,

your library is really great and I love it! But, I don’t like that it’s just .ino, which is by default as REPL / CLI uLisp interpreter. Since I’m working on using uLisp as mini-scripting language for user-code, I started porting uLisp to “library” state. I read the Why are the uLisp sources in a single file, I absolutely understand this and I love it too, but well, make uLisp as library would be great. My tasks are:

  • Make uLisp as Arduino Library, so I will include uLisp.h, and I can use uLisp features (I have this already done)
  • Add basic public functions to interact with language (adding custom functions etc.)
  • Merge ARM and AVR version together (why maintaining two almost same versions?)
  • Compilation support on x86

I will add some progress in my fork, but for begin, I will have there only some concept of library, I have deadline and need to get the things work for the project (I will later start porting the code to library).

Opinions and recommendations are welcomed!


#2

This sounds like a great idea; let me know if you need any other information.

Merge ARM and AVR version together (why maintaining two almost same versions?)

This would definitely be possible; however there are significant differences between the ARM and AVR versions, specifically 16-bit integer only (AVR) vs. 32-bit with floating point (ARM), and EEPROM for save-image (AVR) vs. no EEPROM (ARM), so it would need a lot of conditional preprocessor statements.