Maybe it's a weird fetish of mine, but I always enjoy a good embeddable, scripting engine. It kind of brings me joy and hope. Can't say why. The more engines, the merrier.
As a student interested in language design and VM programming, this is wonderful. Clean, easy to read code, as well as what seems to be a really well-thought out language. Thanks for this!
It doesn't sound like they were rebuking you. It's pretty common to link to a previous discussion for people interested, especially if the current one doesn't take off or if the previous one contains some information worth repeating or avoiding.
Hi, I'm the author of picoc. It's not self-hosting, no. It's meant to be small rather than a feature-complete implementation of C so it's unlikely it will ever be self-hosting.
I've used it a tiny bit as part of ROOT (and its predecessor cint a bit more). It pretty much works as advertised, there's not a whole lot to get excited about IMHO. It certainly doesn't make ROOT any less miserable to use.
Author here. I tried to make it small enough to run on tiny microcontrollers like the arduino but unfortunately C seems just a bit too complicated for that.
I actually was working on my own sub-sub-subset of C for a tiny scripting language (for the aforementioned project) and I was often referring back to how you wrote picoc.
TCC isn't a JIT-compiler, the script-option compiles all and then runs it on the fly. This allows C-files to be executable by themselves with a shebang-line.
It's also usable as a dynamic load library. It's still not a JIT, but a program can use it to run code directly without having to fork/exec/spawn anything.
what problem does this solve that is not already solved by the n scripting engines that are already out there? When would I use this in lieu of Rhino / JS on the JVM, for example?
Pet peeve of mine: people publish projects and don't position what they've built in the universe of existing things. Readers without context won't know what to do with it. A simple FAQ would be really helpful.