V Lucemburku byly oznámeny výsledky posledního kola výzev na evropské továrny pro umělou inteligenci neboli AI Factories. Mezi úspěšné žadatele patří i Česká republika, potažmo konsorcium šesti partnerů vedené VŠB – Technickou univerzitou Ostrava. V rámci Czech AI Factory (CZAI), jak se česká AI továrna jmenuje, bude pořízen velmi výkonný superpočítač pro AI výpočty a vznikne balíček služeb poskytovaný odborníky konsorcia. Obojí bude sloužit malým a středním podnikům, průmyslu i institucím veřejného a výzkumného sektoru.
Byla vydána (𝕏) zářijová aktualizace aneb nová verze 1.105 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.105 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Ve Firefoxu bude lepší správa profilů (oddělené nastavení domovské stránky, nastavení lišt, instalace rozšíření, uložení hesla, přidání záložky atd.). Nový grafický správce profilů bude postupně zaváděn od 14.října.
Canonical vydal (email) Ubuntu 25.10 Questing Quokka. Přehled novinek v poznámkách k vydání. Jedná se o průběžné vydání s podporou 9 měsíců, tj. do července 2026.
ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzi 1.5.0.
Byla vydána nová verze 1.12.0 dynamického programovacího jazyka Julia (Wikipedie) určeného zejména pro vědecké výpočty. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Aktualizována byla také dokumentace.
V Redisu byla nalezena a v upstreamu již opravena kritická zranitelnost CVE-2025-49844 s CVSS 10.0 (RCE, vzdálené spouštění kódu).
Ministr a vicepremiér pro digitalizaci Marian Jurečka dnes oznámil, že přijme rezignaci ředitele Digitální a informační agentury Martina Mesršmída, a to k 23. říjnu 2025. Mesršmíd nabídl svou funkci během minulého víkendu, kdy se DIA potýkala s problémy eDokladů, které některým občanům znepříjemnily využití možnosti prokázat se digitální občankou u volebních komisí při volbách do Poslanecké sněmovny.
Společnost Meta představila OpenZL. Jedná se o open source framework pro kompresi dat s ohledem na jejich formát. Zdrojové kódy jsou k dispozici na GitHubu.
Google postupně zpřístupňuje českým uživatelům Režim AI (AI Mode), tj. nový režim vyhledávání založený na umělé inteligenci. Režim AI nabízí pokročilé uvažování, multimodalitu a možnost prozkoumat jakékoliv téma do hloubky pomocí dodatečných dotazů a užitečných odkazů na weby.
Kdysi jsem ty psal o tom, jak udělat z Javy Smalltalk. Šlo o to, že jsem obyčejné volání metod obalil mechanismem posílání zpráv. Ale byla to jen taková onanie, protože to mělo dvě nevýhody.
foo.message("bar", new Object[] {"param1", "param2"});
message
zajišťující přijímání zpráv by to chtělo mít hodně vysoko v hierarchii tříd, nejlépe ve třídě Object. Jenže Java není Ruby Taky jsem psal o nových fíčurách v C# 3.0. No a nějak mi došlo, že C# má prostředky k řešení obou zmíněných problémů.
Nepříjemné vytváření polí z parametrů za nás může dělat překladač. Stačí využít konstrukci pro metody s proměnným počtem parametrů. Nutno podotknout, že tento slaďoučký syntaktický cukřík už je i v Javě 5. V C# se používá klíčové slovo params
, v Javě elipsa (tři tečky).
S druhým problémem pomůžou rozšiřující metody (extension methods) právě z C# 3.0. Jedná se o způsob jak připlácnout novou metodu k jakékoliv (uzavřené) třídě. (Ano, rozšiřující metoda se pozná podle klíčového slova this
v parametrech No a my si připlácnem metodu
message
k třídě Object
. Takže to bude nakonec vypadat nějak takhle:
public static object Message(this object me, string name, params object[] args) { return me.GetType().GetMethod(name).Invoke(me, args); }
Což dává použitelné výsledky. Pokud mě má ryze teoretická znalost C# 3.0 nezradila, bylo by možné napsat třeba tohle:
3333333.Message("ToString").Message("Substring", 2, 3);
Nevím jak podle vás, ale podle mě to pomalu začíná chodit jako kachna .
Tiskni
Sdílej:
Ale pořád je ve mě ten Adysta, který si myslí, že silná typová kontrola čas šetří... Uvidíme.Ano šetří, ale procesoru a ne programátorovi. Anebo, když se to povedlo přeložit, je to bez chyb. BTW: LISP mě kupodivu (na vysoké se jim povedlo, že mě -- a nejen mě -- tento jazyk znechutili) celkem láká, kdybych někdy neměl co dělat, tak se na něho určitě mrknu. Teď dělám právě ve Smalltalku/Squeaku, ale nevím proč, ta jeho syntaxe se mi vůbec nelíbí i když síla toho jazyka ano.
Ano šetří, ale procesoru a ne programátorovi. Anebo, když se to povedlo přeložit, je to bez chyb.Ano, přesně tak se v Adě programuje. Občas se to nepíše lehce, standardní knihovna (díky propracované typové struktuře) není triviální. A když se to konečně povede přeložit, pak to funguje. V Adě jsem nikdy nic neladil. Taky je to fajn při úpravách. Je těžké zavléct takovou chybu, aby to pak šlo přeložit
mixin
. Známé jsou hlavně z Ruby (a podobných), ale umožňuje je prakticky každý AOP framework.
Jinak nevím zda jsem u předchozího článku říkal, ale v JVM se chystá podpora pro "dynamické jazyky" - spočívající právě v takovémto volání metod.