Programovací jazyk pro smartphone

Nemohu to prokázat, ale jsem přesvědčený, že takový (téměř) univerzální programovací jazyk, který by běhal na každém chytrém telefonu, by pomohl rozvíjet zájem mých žáků o programování, a potažmo také jejich programovací schopnosti.
Existuje nejméně jedna firma, která se touto problematikou „tak nějak“ zabývá, ale „cosi“ zvané Xamarin umírá a během svého života mě nepřesvědčilo o své praktické použitelnosti.

A teď to překvapení: JavaScript učinil obrovský krok, aby roli programovacího jazyka pro smartphone obsadil!
(Komu čest – tomu čest, a proto uvádím, že já jsem na to nepřišel. Upozornil na to pan Janek Wagner na serveru PI.)

O co jde:

JS má nyní paměť! Trvalou, dlouhodobou, nehořlavou paměť! Sám JavaScript by na to nestačil, ale on se stejně vždycky vyskytuje „v týmu“ s HTML a CSS. Tu paměť poskytuje HTML5 a příslušný „akční“ objekt se jmenuje localStorage.

Co to umí:
Podobně jako XML, i localStorage pracuje výhradně se stringy, ale převody stringů na čísla jsou pro JS brnkačka. Paměť je lokální v daném browseru a (samozřejmě!) na daném telefonu. Různé scripty mohou a nemusí sdílet tutéž paměť.


Co se s tím dá dělat:
JS odjakživa uměl třeba slide show. Ale bez paměti nevěděl, co předváděl včera. Má-li paměť, může si pamatovat posledních pár (v mém případě 9) sekvencí obrázků, které jsem si pomocí slide show prohlížel. Libovolnou z nich mohu znovu spustit jediným dotykem.
(Přesněji, dvěma dotyky. Šest-a-půl-palcová obrazovka je přece jenom příliš malá, než abych na ni umístil všechny potřebné ovládací prvky současně.)

Co chybí:
Chybí především „tvrdý“ výstup – takový, který by šel zaznamenat na medium a který by byl použitelný i na jiném telefonu.
Napadlo mě, že cesta by mohla vést přes clipboard. Teoreticky by to mělo jít.
„Akční“ objekt pro takovéto manipulace se jmenuje navigator, ale ouha, dosud se mi nepodařilo jej zprovoznit.

Na čem psát programy (nebo scripty) pro smartphone:
Na běžném (ani šest-a-půl-palcovém) mobilu to nejde. Potřebujete pořádnou klávesnici a k ní desktop nebo NB. Odtamtud váš script do mobilu snadno přenesete přes USB rozhraní. Výhodou JavaScriptových scriptů je, že vás nezajímá SDK, že na cílovém zařízení už nemusíte řešit žádné nastavení. Prohlížeč funguje „rovnou“. A samozřejmě musíte dodat data, se kterými má váš script pracovat.

Pohled do historie:
V devadesátých letech existovala zařízení zvaná PDA, na jejichž rezistivní dotykové obrazovky se psalo tenkým (!!) stylusem, a jejichž operační systém Win-CE umožňoval provozovat běžným (!!) uživatelem vytvořené programy (např. v jazyce C++).
Proti dnešním mobilům s OS Android to byla zařízení – z hlediska programátora – luxusní.
Ale ani na nich nešlo psát programy v běžném programovacím jazyce.

Perspektiva:
Budu se snažit zprovoznit zápis do clipboardu.
Nebo mě napadne jiný postup, jak zaznamenat výstup ze scriptu.
Nebo se objeví další programovací prostředek.