Uz maji github, https://github.com/WebAssembly
prevazne jsou to markdowny s design dokumenty, zajimave je asi hlavne https://github.com/WebAssembly/design/blob/master/MVP.md kde definuji cile pro zacatek a FAQs: https://github.com/WebAssembly/design/blob/master/FAQ.md
OK, licencia by mohla byt problem, ale ... najprv JAVA (nie JVM):
- Viacnasobna dedicnost - to je bordel a v podstate existuje v podobe default implementacie interface - a je to border ;-)
- Sablony su kniznica
- Closure su
- Co je nekonecny zoznam - nieco ako nekonecna pamat?
JVM:
- Praca s pamatou je OK, mame incremental GC, a rozne dalsie
Mozete pouzit ine jazyky nad JVM ktore tieto veci podporuju, vysledok je bytecode ktory tam pobezi - Groovy, Jython, Scala, Xtend, ...
Viacnasobna dedicnost - to je bordel a v podstate existuje v podobe default implementacie interface - a je to border
Že to Java neumí udělat pořádně, neznamená, že by to byl bordel. Třeba Python nemá s vícenásobnou dědičností problémy.
Sablony su kniznica
Měl jsem na mysli šablony pro generické programování, ne ty webové.
Closure su
Lambdy v Javě nejsou beztřídní funkce, ale instance anonymních tříd implementujících Callable. Beztřídní funkce má třeba C.
Co je nekonecny zoznam - nieco ako nekonecna pamat?
Např. seznam všech Fibonacciho čísel či všech desetinných číslic π. Používá se to ve funkcionálních jazycích.
Praca s pamatou je OK, mame incremental GC, a rozne dalsie
V JVM je velmi problematické používat RAII, GC je totiž nedeterministický.
Lambdy v Javě nejsou beztřídní funkce, ale instance anonymních tříd implementujících Callable.
Jsou to instance libovolného interface s jedinou metodou.
Co je nekonecny zoznam - nieco ako nekonecna pamat? - Např. seznam všech Fibonacciho čísel či všech desetinných číslic π. Používá se to ve funkcionálních jazycích.
V Javě se nekonečnému seznamu říká stream.
Python s vícenásobnou dědičností problém nemá, ale má ho programátor :-))) Ještě se vám v Pythonu nestalo, že třídu díky nevhodně zvolené dědičnosti nelze přeložit? A přeskládávání tříd je pak zbytečné zdržování, zvláště, když koncept dědičnosti se spíše opouští a nahrazuje se skládáním.
Presne tak, my uz taky jazyk mame (a nie jeden). Mame Javu, Python, .... (kazdy si doplni ten svoj). Jedine, co je na tomto celom koncepte zle, je browser ! Ten treba zahodit a vymysliet nieco lepsie. Pripadne sa zamysliet celkovo nad celou koncepciou WWW, ktora je uz asi trochu prezita.
Cely JS a veci okolo toho su zase len slepa vetva. Vysledok bude este sialenejsi "standard". Ako vzdy... Len ma udivuje, ze IT profesionali zbastlia vzdy takyto psi grc. Ako keby programovali prvy tyzden..
O jazyk prece primo nejde, jde o kontejner ve stylu ELF formatu, ktery prenasi AST strom, method tables, bindingy, exporty, security a ostati deklarace. V binarnim (dnes VM/browser specific) nebo textovem tvaru. Jasne ze to zacne s textovym JS/ES. K binarnimu bud nedojde nikdy nebo pres konvergenci k asm.js jako mezistupni. V tu chvili by to zacalo byt zajimave, protoze by se nam z vendor specific VM staly substituovatelne VMs, kde compiler jakehokoliv vyssiho jazyka (nejenom ES extenzi jako typescript, ale i dart, swift, Ccko, Lisp ;)) bude schopen generovat validni bytekod s celou assembly. Blby je to ale porad s tim browserem samotnym, dostupnym environmentem (sandbox) vcetne API k nemu, s tim souvisejicim signovanim obsahu pro pristup mimo soucasny sanbox... je toho kybl prace a ne vzdy prospesne pro vendory uzavrenych (radi by) ekosystemu/produktovych stacku. Mimochodem flex/flash/actionscript uz byl dost blizko, proc nebyl standardizovan a adoptovan ? Inu nekdo by byl moc napred a zvyhodnovan (navazane produkty jako lifecycle, media servery, pdf, ps, cs...), jistejsi to bude odzacatku, pres w3c (alespon naoko {google, ms, facebook}, {apple, ibm}, ...) pekne pomalu a at nikdo nepredbiha...