Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.
Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.
Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.
Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.
Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.
Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.
Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.
Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.
GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.
Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.
Jinak Perl5 tu s námi bude i k nelibosti některých ještě hodně dlouho. Existence velkého množství projektů, CPAN, podpora vývojářského týmu etc.
Jinak ano, máte pravdu, za určitých podmínek může slabé typování vadit. V Perlu pětce to lze ochcat přes moose a další, v šestce je možnost silného typování přímo v jazyce. Jak je to v Pythonu, netuším, zkuste povyprávět. Ale asi nejlépe to má zařízené Ada, takže pokud chcete mít typování proměnných opravdu v richtiku, tak zkuste psát v Adě. Ono totiž kontrola typování nekončí u čísel a řetězců, ale v praxi je taky potřeba dbát na to, zda nepřičítáte sekundy k minutám nebo centimetry ke kilogramům...
A Vaše další výtky? To je pořád totéž, kdo chce psa bít... profík si může vybrat co chce, je spousta problémů kde na nějakém silném typování zas tak úplně nezáleží, spíš naopak, je to přitěžující... profíků kteří pracují v Perlu (verze 5) je nepočítaně. Přístup k poli v hashi je něco jako $foo->{bar}[2], což má k nepřehlednosti hodně daleko. Objekty jsou dolepek ale poměrně zdařilý, když se např. podívám, jak se dolepilo C++... pokud jste v Perlu "uživatelem" objektů, tak Vám může být srdečně jedno jak fungují uvnitř. Pokud nějakou třídu tvoříte, tak buď vezmete nějaký generátor (které umí hodně věcí!) a pak Vám je to zase srdečně, nebo holt na to jdete z gruntu a musíte do toho proniknout a daný modus operandi akceptovat. Skaláry jsme už probrali, že je v Perlu také kontext polí a docela mocný nástroj pro práci s ním, Vás asi moc nebere.
sub aaa {
wantarray ? map uc, @_ : lc $_[0]
}

A nechceš zkusit Ruby?
Loni co jsem koukal na české servery práce, tak na perl jako hlavní jazyk bylo víc pozic než na python. Jestli se to změnilo nevím a ani mě to nezajímá.
Po přibližně dvaceti letech programování, kdy jsem udělal kolečko: Fortran-> Pascal-> Perl-> C-> Python-> C++-> Smalltalk-> Objective- C-> (Fortran, C++) (nebo tak zhruba nějak a samo spoustu dalších menších odboček, ve kterých jsem moc řádků nenapsal) jsem došel k názoru, že interpretované jazyky nepřináší vůbec nic nového, jsou pomalé (fakt mockrat), potřebují interpret (velký obecný balík nesouvisejících funkcí) atd. takze numerické, obrazkové a jiné věci píšu ve Fortranu a grafické, textové a systémové věci pak C++ a občas použiju menší skriptík v sh.
Psaní v interpretovaných jazycích je podle mě neúcta k uživatelům, protože musí mít naistalovou spoustu marastu a čekat na pomalé odezvy. K použití Perlu i Pythonu v nějakých vážnějších a dlouhodobějších projektech mám proto vážné výhrady. Nehledě na to, že se jejich specifikace pořád mění, takže já například při urdžování GUI jednoho programu jsem začal s C (ovšem to mě pak pekně naštvaly s Gtk), pak to přepsal do Perlu, pak Python a nakonec C++. A jsem rád, Python po změně specifikace bude opět vyžadovat zásahy, zatímco programy v C a Fortranu jedou i po deseti letech tak jak mají.
Paradoxně, často proklamovaný rapidní vývoj v Pythonu se u mě nedostavil, stejná rychlost je při použití stejného toolkitu jako u C++. Naopak ve Fortranu jsem minimálně čtyřikrát rychlejší než v C++ pri programování grafických věcí na které jsou oba zhruba stejně vhodné (aspoň jak se říká). Je to samozřejmě dané jednoduchou syntaxí Fortranu, která umožňuje myslet na řešený problém a ne na sytaxi. A taky solidní podporou polí, která není jinde vyřešena vůbec (Matlab je opět interpretovaný).
Takže pokud se chceš něco učit (což se hodí, aby jsi pochopil ty kolem), tak se nauč obě. Jinak je to ale ztráta času. Použití tříd a STL v C++ společně se šikovným toolkitem nebo knihovnami s přehledem nahradí moduly obou. Pokud chceš dynamicky typovaný jazyk bez drbaní jako v C++ zkus Objective C. Na trhu práce ovšem nejspíš uspěješ jedině s php a maximálně s Pythonem nebo dnes tzv. moderní Javou, Mono, atd.... ale cena na tebe určitě stoupne, když budeš znát php a zároveň C++, které už trubky neznají...
Tiskni
Sdílej: