This is confusing to newcomers to microcontrollers, that there is only one program, no o/s, and that old-timers refer to all this as "firmware". In the Arduino world they get around this by calling the application part of the firmware a "sketch". We seem to have no similar word here in the Spark world for the application programmer's / user's contribution to the firmware. I understand how and why the terminology has arisen, but the Spark is not a simple microcontroller. The CC3000 has its own firmware. The one thread MCU model doesn't apply to the CPU - there are background task(s) for the cloud - and those are firmware. The Spark almost has it's own little o/s keeping everything cooperating. And that's firmware. There is the original Tinker app, also called firmware. And then our applications are firmware.
Old-timers know what is meant by "firmware" from the context in which the term is used. For the rest of us it just seems as though there is an unnecessarily restricted terminology, as though the vocabulary is limited.
I don't have the solution but @Rehaan is right: Why would any newcomer to MCUs think to look under a "Firmware" title for the Spark application programming language definition?
Too right. Your example is spot on. “Code” or “program” or “sketch”. I know that my application code is compiled into the object code, one unit for setup() another for the loop() and others for libraries, and that this is linked into one big executable with a main() and many other functions I did not write and which I do not ever see, and that that executable is the “firmware” that is uploaded to the Spark. But the bit I provide is called what, exactly, in the Spark world?
And “language reference” would suit me fine for the docs.