Po po téměř roce vývoje od vydání verze 5.38 byla vydána nová stabilní verze 5.40 programovacího jazyka Perl (Wikipedie). Do vývoje se zapojilo 75 vývojářů. Změněno bylo přibližně 160 tisíc řádků v 1 500 souborech. Přehled novinek a změn v podrobném seznamu.
Uroš Popović popisuje, jak si nastavit Linux na desce jako Raspberry Pi Zero, aby je šlo používat jako USB „flešku“.
Andreas Kling oznámil, že jelikož už se nevěnuje nezávislému operačnímu systému SerenityOS, ale výhradně jeho webovému prohlížeči Ladybird, přičemž vyvíjí primárně na Linuxu, SerenityOS opustí a Ladybird bude nově samostatný projekt (nový web, repozitář na GitHubu).
Po dvou měsících vývoje byla vydána nová verze 0.13.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 73 vývojářů. Přehled novinek v poznámkách k vydání.
Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.
Před 70 lety, 7. června 1954, ve věku 41 let, zemřel Alan Turing, britský matematik, logik, kryptoanalytik a zakladatel moderní informatiky.
NiceGUI umožňuje používat webový prohlížeč jako frontend pro kód v Pythonu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2024.6. Z novinek lze vypíchnout lepší integraci LLM (OpenAI, Google AI, Ollama) nebo podporu Matter 1.3.
IKEA ve Spojeném království hledá zaměstnance do své nové pobočky. Do pobočky v počítačové hře Roblox. Nástupní mzda je 13,15 liber na hodinu.
Alyssa Rosenzweig se v příspěvku na svém blogu Vulkan 1.3 na M1 za 1 měsíc rozepsala o novém Vulkan 1.3 ovladači Honeykrisp pro Apple M1 splňujícím specifikaci Khronosu. Vychází z ovladače NVK pro GPU od Nvidie. V plánu je dále rozchodit DXVK a vkd3d-proton a tím pádem Direct3D, aby na Apple M1 s Asahi Linuxem běžely hry pro Microsoft Windows.
Python 3.13 pravděpodobně dostane JIT kompilaci. Pokud bude schválen pull-request 113465. Díky JIT (just-in-time) kompilaci by se běh programů mohl zrychlit o 2 až 9 procent.
Tiskni Sdílej:
On average, GraalPy is 4.3x faster than CPython.Python v GraalVM. P.S. z diskuse na HN v roce 2021:
Wonder if the techniques can be upstreamed to upcoming JIT in CPythontak se to přeci jen povedlo, akorát místo 4× rychlejší je to o 4 % rychlejší (místy až 9).
$ time java Hello ahoj real 0m0,035s user 0m0,015s sys 0m0,026sNení to sice jako nativní AOT kompilovaná binárka třeba v C/C++, ale i tak to už asi ničemu nevadí. Co se týče paměti: 36 MB. To taky na dnešní poměry není špatné (a rozhodně to není 1 GB).
pry neumi udelat full blown jit, aniz by to nemelo fixni 1GB RAM penalty a nemelo to 100x pomalejsi startup premyslim, proc je node.js tak rychle, hmmmVtipálku, slušný python programátor porazí node.js i bez jit, rychlost pythonu neví v rychlosti interpretru ani v optimalizacích, ale z dobře použitých knihoven. Kdybys uměl číst, viděl bys, že JIT v pythonu 3.13 je experimentální featura, která nemá za cíl cokoliv zrychlovat, jen přidat API, aby se s tím do budoucna počítalo. Až se udělá opravdový jit, pak bude python konečně dostatečně použitelný i pro debily co dneska píšou v nodu nebo komentují tady.
to mi přijde podobné, jako to bylo u kryptoměn, jak je něco v kurzu, tak se tam software píše hrozně ve spěchu, bez ohledu na kvalitu, většinou je to nějak narychlo poslepovaný prototyp, který najednou lidi začnou používat v produkci
Python je bezva, protože je bezpečný, vysokoúrovňový, není to Céčko…a zároveň ale, když upozorníš na pomalost Pythonu:
Python je lepidlo a výkonný kód je stejně v nativní kompilované knihovně, takže nevadí, že samotný Python je pomalý.Jenže ty knihovny jsou typicky psané v Céčku, což jaksi popírá tu výhodu vysokoúrovňosti a bezpečnosti. To by se musely psát třeba v Rustu, C++, D, Go (?) nebo Javě kompilované přes GraalVM do nativní binárky. Pak by to bezpečné bylo. Ale když už člověk místo C dokáže použít Rust/C++/D/Go/Javu, tak proč vůbec potřebovat nějaké lepidlo v podobě Pythonu? Argument, že se nemusí kompilovat moc neberu, protože malé programy jsou zkompilované hned a automatizace je otázkou jednoho jednoduchého Makefilu nebo něčeho podobného. Navíc nutnost přepínat mezi jazyky podle toho, zda člověk chce zrovna „lepit“ nebo „programovat“ je dost nešikovná. Nemluvě o tom, že i při použití vyššího jazyka bude to rozhraní mezi Pythonem a nativní knihovnou mít nejspíš podobu céčkového API. Zrovna teď jsem potřeboval napsat „skript“ který mi z LDAPu vytáhne určité osoby a výsledek vypíše jako CSV. Mohl bych to udělat v shellu nad příkazy
ldapsearch
, grep, sed, awk atd. ale převádět ta strukturovaná data na text a ten zase parsovat a převádět dál na CSV mi bylo proti srsti. Tak jsem to napsal v Javě. A přijde mi to jako nejlepší řešení – je to jednoduché, nemá to žádné závislosti (klient pro LDAP je ve standardní knihovně a generátor CSV je jedna třída na pár řádků). Kdybych měl naučenou/vyzkoušenou LDAP knihovnu v jiném jazyce, tak bych to napsal třeba v C++, Rustu, D. Ale proč bych to měl psát v Pythonu?
Ale když už člověk místo C dokáže použít Rust/C++/D/Go/Javu, tak proč vůbec potřebovat nějaké lepidlo v podobě Pythonu? Argument, že se nemusí kompilovat moc neberu, protože malé programy jsou zkompilované hned a automatizace je otázkou jednoho jednoduchého Makefilu nebo něčeho podobného.Protože když dáváš zákazníkovi aplikaci, kterou si může customizovat programováním, tak mu tam nebudeš na systém instalovat komplet vývojovej stack. Já teda Python nepoužívám, ale význam lepidla celkem chápu. V mém případě je to Rust jako ten kompilovaný jazyk, a Rune jako lepidlo.
Jenže ty knihovny jsou typicky psané v Céčku, což jaksi popírá tu výhodu vysokoúrovňosti a bezpečnosti. To by se musely psát třeba v Rustu, C++, D, Go (?) nebo Javě kompilované přes GraalVM do nativní binárky. Pak by to bezpečné bylo. Ale když už člověk místo C dokáže použít Rust/C++/D/Go/Javu, tak proč vůbec potřebovat nějaké lepidlo v podobě Pythonu? Argument, že se nemusí kompilovat moc neberu, protože malé programy jsou zkompilované hned a automatizace je otázkou jednoho jednoduchého Makefilu nebo něčeho podobného. Navíc nutnost přepínat mezi jazyky podle toho, zda člověk chce zrovna „lepit“ nebo „programovat“ je dost nešikovná. Nemluvě o tom, že i při použití vyššího jazyka bude to rozhraní mezi Pythonem a nativní knihovnou mít nejspíš podobu céčkového API.Spousta těch knihoven je v Cythonu (např. numpy), což je takový podivný hybrid mezi pythonem a C. Výhoda v bezpečnosti je stejná jako u toho rustu: mám pevně oddělené safe a unsafe části. Výhoda oproti tomu to psát v jazycích co zmiňuješ je mnohem vyšší produktivita a menší množství kódu, při hodně podobné rychlosti běhu programu. A když už rychlost nestačí neni zase problém přepsat výkonově kritický python modul do rustu nebo C++, oba mají efektivní a jednoduše použitelné knihovny pro python bindingy. Pokud seš tak starej, že píšeš nejradši skripty v javě, k asi nemá cenu tě přesvědčovat, dožij si s tím co umíš :) Já ani nevim jestli mám v počítači překladač javy nainstalovanej.
Pokud seš tak starej, že píšeš nejradši skripty v javě, k asi nemá cenu tě přesvědčovat…Ještě jsem zapomněl dodat, že k jejich sestavení/spuštění rád používám Make.
Povedal by som, ze dizajn ktory nemoznuje taketo veci je podstatne blbuvzdornejsi a jednoznacny.Vidiš to. Já to vnímám naopak. Nikdy jsem neměl třeba v Haskellu problém s tím, že odsazoval. Stejně bych to dělal. A tak skutečnost, že tam není smetí považuji za plus. Pokud něco špatně napsal, tak mě srozumitelně vynadal. V Javě, C#, etc které používají volný styl, tak tam to vždycky řvalo nějaké haluze, a poradil jsem si jen díky tomu, že už prostě mám nějaké zkušenosti. Takže v tom to nebude. A co třeba skutečnost, že u volného stylu vždycky probíhá řežba, jak se bude kód formátovat. O to jsem v Pythonu ochuzenej (a mohu se soustředit na jiné spory). (zbytek textu jsem nepochopil, tak jsem to ignoroval)