abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 20:11 | Nová verze

    Byla vydána nová verze 2.4.67 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 11 zranitelností.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | Zajímavý software

    Brush (Bo(u)rn(e) RUsty SHell) je v Rustu napsaný shell kompatibilní s Bash (Bourne Again SHell). Vydána byla verze 0.4.0.

    Ladislav Hagara | Komentářů: 2
    včera 04:44 | Komunita

    Google zveřejnil seznam 1 141 projektů (vývojářů) od 184 organizací přijatých do letošního, již dvaadvacátého, Google Summer of Code. Přihlášeno bylo celkově 23 371 projektů od 15 245 vývojářů ze 131 zemí.

    Ladislav Hagara | Komentářů: 3
    včera 03:00 | Komunita

    Na čem pracovali vývojáři GNOME a KDE Plasma minulý týden? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    3.5. 03:44 | Nová verze

    Open source počítačová hra na hrdiny NetHack (Wikipedie, GitHub) byla vydána v nové verzi 5.0.0. První verze této hry byla vydána v roce 1987.

    Ladislav Hagara | Komentářů: 4
    1.5. 15:11 | IT novinky

    Evropská komise naléhavě vyzvala členské státy EU, aby kvůli ochraně nezletilých na internetu urychlily zavádění unijní aplikace pro ověřování věku a zajistily její dostupnost do konce roku. Členské státy mohou zavést aplikaci EU pro ověřování věku jako samostatnou aplikaci nebo ji integrovat do takzvané evropské peněženky digitální identity.

    Ladislav Hagara | Komentářů: 42
    30.4. 23:33 | Nová verze

    Richard Biener oznámil vydání verze 16.1 (16.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 16. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.

    Ladislav Hagara | Komentářů: 0
    30.4. 23:11 | Nová verze

    Zulip Server z open source komunikační platformy Zulip (Wikipedie, GitHub) byl vydán ve verzi 12.0. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    30.4. 12:11 | IT novinky

    Před 30 lety, tj. v úterý 30. dubna 1996, byl spuštěn Seznam.cz.

    Ladislav Hagara | Komentářů: 46
    30.4. 11:44 | Komunita

    Byly zpracovány a zveřejněny všechny videozáznamy, které stojí za zveřejnění, z konference FOSDEM 2026.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (9%)
     (2%)
     (14%)
     (32%)
     (4%)
     (7%)
     (3%)
     (16%)
     (24%)
    Celkem 1495 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    SqueakOnJava

    13.7.2007 22:57 | Přečteno: 1125× | Výběrový blog

    Je to už nějaký čas, kdy Dan Ingalls zveřejnil demonstrační verzi svého malého projeku SqueakOnJava, což je implementace smalltalkovského virtuálního stroje v Javě. Bohužel od té doby se nedostal ke zveřejnění zdrojových kódů.

    Protože se nezdá, že by k jejich zveřejnění mělo brzy dojít, zkusil jsem využít jedné z pozitivních vlastností Javy, kterou zdědila po Smalltalku - čitelný dekompilovaný kód. Binární třídy jsem tedy prohnal programem jad.

    Původně jsem měl za to, že Dan vytvořil translator Smalltalku na Javu a nechal kód interpretu vygenerovat podobně, jako se to dělá pro jazyk C. Alespoň se jsem tak odvozoval od nijak oslňující rychlosti výsledného virtuálního stroje. SqueakOnJava je ale zcela samostatná implementace od nuly. Narozdíl od JPythonu, JRuby apod. nepoužívá překlad přímo do bytekódu Javy, ale smalltalkovský bytekód jednoduše interpretuje.

    Samotný výstup z jadu není sice dokonalý (neumí si dobře poradit např. se zanořenými třídami či návěstími), ale úprav skutečně mnoho nepotřebuje. Celý tento virtuální stroj má cca 5500 řádků dobře čitelného kódu. Současná implementace má ještě řadu nedostatků. Neumí ukládat image, má problémy se čtením image s jiným endianem, implementuje minimum primitiv apod. Ovšem k puštění a provozování malé MVC image postačuje.

    Krom toho, že to jednoho zarytého smalltalkera přinutilo zase jednou pustit Netbeans, to zatím k ničemu užitečnému asi dobré není, ale minimálně pro případ, kdy potřebujete provozovat Smalltalk někde, kde nelze nainstalovat nativní virtuální stroj, to může být v budoucnu dobrý pomocník.

    Download: SqueakOnJava.zip

           

    Hodnocení: 90 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    14.7.2007 11:44 Lukáš Zapletal | skóre: 42 | blog: lzapův svět | Olomouc
    Rozbalit Rozbalit vše Re: SqueakOnJava
    Možnost dekompilace není vlastností Javy, ale vlastností s JDK dodávaného překladače javac. Dá se jednoduše zajistit, abyste z bytekódu nepřečetl zpětně nic, pouze samotné instrukce.
    alblaho avatar 14.7.2007 22:22 alblaho | skóre: 17 | blog: alblog
    Rozbalit Rozbalit vše Re: SqueakOnJava
    Ne, bytecode jde zpět na javu relativně dobře (oproti překladu z assembleru do céčka). Začíná to tím, že každá třída je uložena v extra souboru. Veřejná rozhraní jsou čitelná, pač jsou přístupná přes i reflexi. Takže jediné, co nejde dohledat jsou názvy lokálních proměnných.

    Tedy pokud se nepoužije obfuskátor, ale jeho použití bych od zastánce ST nečekal :-)
    14.7.2007 13:22 Pavel Křivánek | skóre: 29 | blog: Kvičet nezávaznou konverzaci
    Rozbalit Rozbalit vše Re: SqueakOnJava

    nejnovější Ingallsův vynález ;-)

    http://www.youtube.com/watch?v=Rj4moeKDGY4

    I'm sure it crashed in the most type-safe way possible.
    alblaho avatar 14.7.2007 22:26 alblaho | skóre: 17 | blog: alblog
    Rozbalit Rozbalit vše Re: SqueakOnJava
    JRuby nepřekládá do java bytecode. Ruby totiž ani žádný bytecode nemám, originální interpreter interpretuje AST.

    JPython (Jython?) si myslím je taky jen reimplementace CPythonu v Javě.
    15.7.2007 01:05 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: SqueakOnJava
    JRuby nepřekládá do java bytecode.
    Zatím. Ale chtějí to, bohopytelně z výkonových důvodů.
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    alblaho avatar 15.7.2007 19:00 alblaho | skóre: 17 | blog: alblog
    Rozbalit Rozbalit vše Re: SqueakOnJava
    Existuje nějaký akademický překladač Ruby do CIL, ale je to dost zběsilé. Znamená to generovat hromadu CIL tříd pro kde co, moc se mi to nelíbilo.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.