...
Tässä sessiossa selittävät hyvin syvälle JavaScriptiin mennen, miten ohjelmoida toisen ohjelmointikielen tulkki sillä. Kun on kysymysten aika, voisin kysyä että "miksi?"
Yhteenvetona, se tosiaan on mahdollista päästä aika alhaiselle konetasolle (lähelle prosessoria) javascriptillä, vaikka toki tämä kaikki suoritetaan selaimessa joten tehokkuus ei koskaan ole ihan huippuluokkaansa. Mutta, käänöksen jälkeen käännetty ohjelma toimii yhtä tehokkaasti kuin suoraan Javascriptillä kirjoitettu vastine. Kyseessä siis tehokas tulkki.
Syy miksi tehdä tämä selvisi, ellei osaa JavaScriptiä, voi koodata kielellä jota osaa (mutta kuka sitten on kirjoittanut sen javascript-koodin joka tulkaa? hmm...)
Parantaakseen tehokkuutta ei kuitenkaan pidä tyytyä javascriptin tapahtum-looppiin. On kuitenkin mahdollista kirjoittaa oma rinnakkaisuuden looppinsa.
Yhäkin ihmettelen että miksi tehdä tämä. Kaikki ilmeisetsi pihalla koska esitelmään liittyviä kysymyksiä ei esitetä.
Better Web Development with WebKit Remote Debugging
Sharma Ashutosh Jagdish
Webkitillä on etädebuggausprotokolla,jota toki tarvittaessa olisi hyvä käyttää. Tätä tukee siis Chrome (vain ihan uusin versio) ja Safari. Käyttäjä siis debuggaa javascript-koodiaan selaimen kautta (esimerkki ois kiva, mutta ei näytä...)
Korjaus: kyse on siitä että debuggaa paikallsiesti, mutta simuloidaan etänä olemista. pitää käynnistää debuggaus joka on seliamessa, ja sen jälkeen http://localhost näyttää paikallsiet sivut kuin niitä katsoisi etänä.
Nyt esimerkkejä / demoja miten tämä toimii. Esim. eri porteista saa eri tietoa, mm. localhost:9222 sisältää json-tietoa debugattavasta koodista.
WebCL for Hardware-Accelerated Web Applications
Jeon Won
OpenCL on ympäristö jossa kirjoitetut ohjelmat toimivat eri alustoilla. WebCl on verkkoverio samasta: http://webcl.nokiaresearch.com/
Julkaistu paperi: http://www2012.wwwconference.org/proceedings/nocompanion/DevTrack_008.pdf
Mihin tarvitaan? Uusimmat mobiiliapit (kuten puhene prosessointi ja monimutkainen prosessoitu valokuvaus) vaativat paljon tehoa alustaltaan. Tämä perimmäinen tarkoitus on parantaa webbipohjaiset alustat (eli tehostaa webbiapplikaatiot.)
Tavoite: tehdä korkeatehoinen alustariippumaton sovelluskehitysympäristö. Tämäm tulisi tosiana siis otimia heterogeenisilla alustoilla, mobiili ja pöytä ja eri valmistajien laitteet.
Käytännössä tämä on JavaScript-toteuttus OpenCL.stä.
Täällä hetkellä on olemassa prototyyppi tästä, rakennettu WebKitin päälle ja on open source julkaisu. Ldattavissa: http://code.google.com/p/webcl/
Nyt näytetään esimerkkjä koodista, eli tehtyjä koodipätkiä.
Nyt demoja. On itse asiassa kovin tehokas, esitettiin ensin sama pelkästään javascriptillä, ja sitten WebCL:ää käyttäen, ja ero oli huomattava.
Loppu / Fin