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í
×

    8.11. 00:33 | Nová verze

    Byla vydána OpenIndiana 2026.10. Unixový operační systém OpenIndiana (Wikipedie) vychází z OpenSolarisu (Wikipedie).

    Ladislav Hagara | Komentářů: 19
    8.11. 00:22 | IT novinky

    Americký výrobce polovodičů onsemi (ON Semiconductor) zrušil plány na rozšíření výroby v rožnovském závodě v Česku za dvě miliardy dolarů (podle aktuálního kurzu zhruba 43,5 mld. Kč). Důvodem je vývoj na trhu.

    Ladislav Hagara | Komentářů: 38
    7.11. 13:00 | Bezpečnostní upozornění
    Nové vydání zlib opravuje několik problémů při kompresi a dekompresi dat, přetečení bufferů, čtení mimo vyhrazenou paměť, únik neinicializovaných dat. Zvlášť významné jsou chyby v inflateGetDictionary(), inflateSync() a gzwrite(), které mohou způsobit poškození paměti. Vysoká relevance - zlib používá řada systémových i aplikačních komponent.
    vencour | Komentářů: 6
    7.11. 12:25 | Bezpečnostní upozornění
    Digicert hlásí neoprávněné čtení archivních zákaznických údajů. Došlo k němu po migraci z února 2025, po níž se interní systém, dříve dostupný jen přes VPN, stal přístupným z internetu. Chyba v oprávněních umožnila nově vytvořeným účtům číst archivní záznamy. K přístupu k datům mělo dojít mezi 27. červnem a 2. červencem 2026. DigiCert neoprávněné čtení potvrdil až 19. října 2026. Problém zpočátku vyhodnotil jako tvorbu účtů, ne jako … více »
    vencour | Komentářů: 5
    7.11. 04:44 | Pozvánky

    O víkendu probíhá na FIT VUT v Brně konference OpenAlt 2026 o otevřeném softwaru a datech, IT bezpečnosti, DIY a IoT. Na programu je spousta zajímavých přednášek. Pokud jste v Brně, stavte se. Vstup zdarma. Přednášky lze sledovat i online na VHSky a YouTube.

    Ladislav Hagara | Komentářů: 4
    7.11. 02:11 | IT novinky

    Qualcomm uzavřel víceletou dohodu se SpaceX. Bude dodávat rádiové technologie, baseband jednotky a software pro plánovanou pozemní 5G síť Starlink Mobile. Výstavba má zahrnovat desítky tisíc základnových stanic v USA. Zahájení nasazování se očekává v roce 2027. Qualcomm dohodu označuje za svůj dosud největší 5G kontrakt.

    vencour | Komentářů: 3
    7.11. 02:00 | IT novinky

    Google rozšířil Cloud Vulnerability Reward Program. Nově nabízí odměnu až 250 tisíc dolarů za vysoce závažné architektonické bezpečnostní chyby označované jako Root-in-Cloud.

    vencour | Komentářů: 3
    6.11. 12:22 | IT novinky

    V březnu byla oznámena spolupráce GrapheneOS s Motorolou. Nejnovější vlajka Motorola Signature 27 je první Motorola s oficiální podporou GrapheneOS. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.

    Ladislav Hagara | Komentářů: 9
    6.11. 04:55 | Nová verze

    Omarchy (Wikipedie) je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové verzi 4.5.0. Nově také pro Apple Silicon, konkrétně pro M1/M2/M3/Neo MacBooky.

    Ladislav Hagara | Komentářů: 4
    6.11. 03:22 | Nová verze

    Byla vydána nová stabilní verze 8.3 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 156 s bezpečnostními opravami z Chromia 157. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (8%)
     (7%)
     (4%)
     (21%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 3052 hlasů
     Komentářů: 36, poslední 11.11. 22:38
    Rozcestník

    Strongtalk

    29.12.2006 11:18 | Přečteno: 1423×

    V září Sun uvolnil pod BSD-like licencí již téměř zapomenutý a prakticky neudržovaný projekt Strongtalk, o čemž se objevila zmínka i zde na Abíčku. Tento krok byl přívítán velice kladně a vyvolal spoustu očekávání, protože Strongtalk si vybudoval pověst nejrychlejší existující implementace Smalltalku.

    Jeho VM je napsaná v C++ a vzhledem k tomu, že tento projekt má na svých bedrech už jeden křížek, nebylo jej možné hned zpočátku přeložit v současných nástrojích a vyžadoval velice starou verzi Visual C++ a assembleru od Borlandu. Tušíte správně, jedná se o program pro Windows.

    Naštěstí se v tomto ohledu od jeho uvolnění situace značně zlepšila. Sice si jej pod Linuxem můžeme pustit zatím jen pod Wine, ale alespoň již jde přeložit pod nejnovějším volně dostupným VisualStudiem Express a přeložit by měl jít i pod MinGW. GUI Strongtalku je vytvořeno pomocí přímých volání API přes dynamické knihovny Windows, ale se i tak snad dočkáme nativního portu.

    Na Strongtalk jsem se podíval poměrně důkladně a rád bych se zde podělil o svoje dojmy z toho zajímavého Smalltalku. Ač jeho praktické využití je zatím spíše utopie, má celou řadu zajímavých vlastností, které rozhodně stojí za zmínku

    Statická typová kontrola

    Jak už samotný název napovídá, Strongtalk je Smalltalk se silnou statickou typovou kontrolou. Myšlenka zavést statickou typovou kontrolu do Smalltalku je hodně kacířská, ale kupodivu celkem funkční a prakticky použitelná. Strongtalk kvůli tomu musel zavést několik rozšíření jazyka, ovšem udělal to velice citlivě. Důležité je, že tato typvá kontrola je volitelná. To znamená, že ve Strongtalku je možné psát naprosto běžný Smalltalkovský kód bez deklarování typů proměnných, argumentů a návratových hodnot. Navíc tento kód není o nic pomalejší než typovaný. Programátor tak může velice rychle vytvořit dynamicky typovaný prototyp aplikace, u níž případně později doladí informace o typech a opraví související chyby.

    Další rozšíření

    Kromě rozšíření, která přímo souvisí s typovou kontrolou (protokoly apod.), Strongtalk narozdíl od Smalltalku-80 podporuje tzv. mixins. Strongtalk většinou vytváří třídy slepování mixinů dohromady. Celý jeho přístup k práci s třídami se dost liší a například nepodporuje instanční proměnné metatříd, které je nutno nahrazovat globálními proměnnými. Díky tomu je i jeho standardní hierarchie tříd dost odlišná od běžné Smalltalkovské a je díky mixinům kvalitnější.

    Image

    Dost zásadní rozdíl oproti klasickým Smalltalkům je v práci s image. Strongtalk totiž ukládá pouze deklarativní informace o programu, tedy program samotný. Oproti běžným Smalltalkům neukládá do image jiné existující objekty. Strongtalk má díky tomu opravdový vstupní bod do programu, nemá inicializační seznamy tříd a samotné ukládání a nahrávání image si řeší převážně na úrovni image samotné.

    Tento přístup je poměrně kontroverzní a rozhodně zde nebudu soudit, jestli se jedná o vylepšení či degeneraci Smalltalku. Má totiž svá negativa i pozitiva, která se projeví až při práci na konkrétním projektu. Obecně lze říci, že je bližší mainstreamovému chápání programů a tak asi může leckomu vyhovovat více.

    Omezení

    Oproti výše uvedeným rozdílům oproti Smalltalku-80, která lze většinou chápat spíše pozitivně, má současný Strongtalk některá nepříjemná omezení. Na nich je vidět, že Strongtalk se od chvíle, kdy se od něj Sun macešsky odvrátil ve prospěch Javy, příliš nevyvíjel a ujel mu vlak.

    Strongtalk používá zastaralý způsob inicializace instancí, které se konstruktorem new automaticky neinicializují a překonvertovat image mi dalo hodně práce.

    Zásadní omezení se týká práce s aktivním kontextem a zásobníkem, k nimž nemá Strongtalk přímý přístup. Strongtalk používá nativní vlákna a k informacím zásobníku se lze dostat jen v okamžiku suspendování vlákna. V zásobníku se nelze pohybovat a informace, které se dají o jednotlivých úrovních zanoření získat, jsou značně limitované. Díky tomu je prakticky nemožné vytvořit kvalitní debugger.

    Problém, který s tím úzce souvisí, jsou výjimky. Strongtalk běžné výjimky bouhužel nepodporuje. Jediná možnost, kterou má, je vyvolání nelokálního návratu, který vede k ukončení postiženého vlákna. Při tom má jedinou možnost vykonání opravného kódu a to pomocí zprávy ensure:, která však nemá možnost lokální návrat zastavit.

    Pomocí speciálního procesu, který umožní získat informace o zásobníku a drobné opravy virtuálního stroje se mi sice podařilo výjimky částečně implementovat, ale k dokonalosti to má ještě hodně daleko.

    Díky velice omezené práci se zásobníkem je také v současnosti nemožné portovat do Strongtalku Seaside. Tuto podstatnou část interpretu je nutné celou přepsat a celkově ji vytvořit méně optimalizovanou (nejdůležitější operace jsou napsány přímo v assembleru), což se ale jistě negativně projeví na jeho rychlosti.

    Ne zcela dopracovaná je také například práce s velkými čísly, kde některé základní operace nejsou zatím implementovány (bez nich například nebylo možné ukládat image s metodami, které obsahovaly velká čísla, protože k nim selhávalo vytvoření hashe).

    Nyní také není možné provést rekompilaci celé image a celkově není Strongtalk zatím příliš stabilní.

    UI

    Vývojové prostředí nezastírá svojí inspiraci v jiném Sunovském projektu - Selfu. Místo smalltalkovských browserů se tak zde pracuje s outlinery. Těm sice celá řada důležitých operací s kódem chybí, ale i tak práce s nimi je celkem pohodlná.

    Strongtalk nahrazuje absenci plnohodnotné image pomocí uživatelské stránky projektu, do které si člověk může snadno vložit vlastní kód, odkazy na outlinery apod.

    Závěr

    Strongtalk je velice zajímavý projekt. Vážně pochybuji, že by se do konce roku podařilo někomu získat prémii Dana Ingallse na portování Squeaku na Strongtalkovskou VM, ale i tak by se časem mohla ze Strongtalku vyklubat zajímavá platforma - pokud jej ovšem Sun uvolněním Javy pod GPL nepohřbí podruhé.

    Strongtalk lze chápat jako pokus o hodně prakticky orientovaný Smalltalk, který úspěšně potlačuje některé vlastnosti Smalltalku, které mnozí vývojáři chápou spíše negativně, a mohl se tak pro tyto vývojáře postavit jako vice než plnohodnotná alternativa Javy. Každopádně především vývojáři zajímající se o dynamickou kompilaci a virtuální stroje by mu měli věnovat nemalou pozornost.

           

    Hodnocení: 100 %

            špatné • dobré        

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

    Komentáře

    Vložit další komentář

    29.12.2006 12:24 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Strongtalk
    Díky moc za článek. Že by Strongtalk otevřel cestu k pořádným jazykům i takovým primitivům, jako jsem já? ;-)
    When your hammer is C++, everything begins to look like a thumb.
    29.12.2006 16:09 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: Strongtalk
    Taky se přidávám s díky a chválou. Docela bych i uvítal případně nějakou sérii článků o Smalltalku, protože mě tenhle jazyk docela zaujal, ale materiálů je poskrovnu a u nás na FI se to projistotu neučí :-(.

    (Sice tam teď byla jedna přednáška Javy věnovaná Smalltalku, ale ten den jsem nemohl a bohužel nikoho nenapadlo takovou věc nahrávat...)
    θηριον ειμι
    29.12.2006 16:43 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: Strongtalk
    Já nevím, ale chtít zrovna po Pavlu Křivánkovi sérii článků o Smalltalku ... ;-)
    When your hammer is C++, everything begins to look like a thumb.
    29.12.2006 17:20 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
    Rozbalit Rozbalit vše Re: Strongtalk
    Super, díky, jdu se stydět do kouta, že jsem málo googlil ;-)
    θηριον ειμι

    Založit nové vlákno • Nahoru

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