Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].
V lednu byl otevřen editor kódů Zed od autorů editoru Atom a Tree-sitter. Tenkrát běžel pouze na macOS. Byl napevno svázán s Metalem. Situace se ale postupně mění. V aktuálním příspěvku Kdy Zed na Linuxu? na blogu Zedu vývojáři popisují aktuální stav. Blíží se alfa verze.
O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.
Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.
Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.
Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).
Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.
Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. 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.
Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.
#deklarace prazdne hash our %konfigurace; sub load_konfig() { # deklaruje lokalni promenne; my %konfigurace; # nacte ze souboru data a ulozi postupne do %konfigurace, # jenz ma strukturu { klic1=>[1,2,3,4],klic2=>[1,2],...} # jestlize doslo ke korektnimu naplneni lokalnich promennych, # zkopiruj my %konfigurace do our %konfigurace, # jinak skonci ale zachovej puvodni globalni konfiguraci. } # hlavni program load_konfig(); # chvili neco dela na zaklade %konfigurace load_konfig(); # chvili neco dela na zaklade nove %konfigurace load_konfig(); # chvili neco dela na zaklade dalsi nove %konfiguraceChci programu menit konfiguraci za behu a chci mit moznost kontroly syntaxe te nove konfigurace aniz bych narusil aktualni beh aplikace.
Sice získám kopii reference, jenže jestli se nepletu, bude se odkazovat na stejný místo v paměti, tedy do lokálních struktur tzn. při opětovném vyvolání té funkce, když budu ukládat nový konfigurák do těch lokálních proměnných, tak si budu zároveň přepisovat ty globální, ne?Tak takhle snad nefungují lokální proměnné ani v Perlu, ne? Resp. je rozdíl mezi
my
a local
, ale už si nepamatuju jaký, tak daleko jsem se v Perlu naštěstí nedostal
our $konfigurace={} # reference na hash $konfigurace=load_konfig(); #v load_konfig() my $ret=$main::konfig # puvodni hodnota /VSE v poradku s daty/ && $ret=konfig # lokalni v procedure return $ret; }IMO our %config a my %konfig je zbytecnost samoucelna, nesetrici pamet a znesnadnujici citelnost Povesit load_konfig na signal (HUP, USR1) by byl problem ?
foreach ($key,$value) = $main::konfigurace { # maze globalni strukturu splice(@$value); # vymaze pole pod klicem v hashi delete($main::konfigurace{$key}); # vymaze prvek globalniho hashe; } foreach ($key,$value) = $konfigurace { # vytvari novou globalni strukturu z lokalni $main::konfigurace{$key} = [ @$value ] ; # vytvoř kopii pole a její anonymní referenci ulož jako hodnotu klíče globálního hashe }Tak za výše uvedené bych asi zasloužil oprátku, ale principiálně by to snad mělo být čisté. No ale taky je možné, že jsem jenom nepochopil jak je to s platností lokálních proměnných a lokálních referencí po opuštění bloku a princip chování garbage kolektoru v souvislosti s lokálnímy a globálnímy odkazy na anonymní pole vytvořené v rámci lokálního kontextu.
Tiskni Sdílej: