@fanoush, you are absolutely correct. I try to do the least to the code... otherwise we can go byte-code or even complete compile in an upfront build chain... when doing so, we also can go further and add far more meta code. To me this feels against what the original intent of Espruino was and - I hope - still is. I know that some Espruino critics - and you fall for sure not into this category - cannot see single good thing in JS and even more so interpretation from source code. I cannot but help myself by thinking that these people are just stuck in their limited enginuity bubble... there was a time that 'morons' - sorry for the word - claimed: Real programmer use Fortran! - now it is: Real programmers use C. - I have no issue with 'there are seasons - more precise: realms / contexts -for everything and thy even coexist. To me, a hybrid approach is the best: have a preference, and where this preference fares the worst, compensated it, with the best other thing and run it as a combination. That's exactly how I see Espruino is built: primarily JS, and where JS is not the answer, bring it into the realm of JS with C. Best example is the two 'process loops' waiting for work by interrupts on the HW level in the firmware - in C, delivering / filling the queue for the Middleware (drivers/device modules) and Application Level (more modules and applications) - in JS.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
@fanoush, you are absolutely correct. I try to do the least to the code... otherwise we can go byte-code or even complete compile in an upfront build chain... when doing so, we also can go further and add far more meta code. To me this feels against what the original intent of Espruino was and - I hope - still is. I know that some Espruino critics - and you fall for sure not into this category - cannot see single good thing in JS and even more so interpretation from source code. I cannot but help myself by thinking that these people are just stuck in their limited enginuity bubble... there was a time that 'morons' - sorry for the word - claimed: Real programmer use Fortran! - now it is: Real programmers use C. - I have no issue with 'there are seasons - more precise: realms / contexts -for everything and thy even coexist. To me, a hybrid approach is the best: have a preference, and where this preference fares the worst, compensated it, with the best other thing and run it as a combination. That's exactly how I see Espruino is built: primarily JS, and where JS is not the answer, bring it into the realm of JS with C. Best example is the two 'process loops' waiting for work by interrupts on the HW level in the firmware - in C, delivering / filling the queue for the Middleware (drivers/device modules) and Application Level (more modules and applications) - in JS.