Elon Musk na akci We, Robot (YouTube, 𝕏) představil Robotaxi, Robovan a vylepšeného Tesla Bota (Optimus).
Internet Archive je offline (𝕏, Bluesky, Mastodon). Unikly údaje 31 milionů uživatelů. Probíhal / probíhá na něj DDoS útok.
Alyssa Rosenzweig se v příspěvku na svém blogu rozepsala o hraní AAA her na Asahi Linuxu. Na YouTube je záznam její včerejší přednášky na XDC 2024 (X.Org Developer's Conference).
Vláda schválila Národní polovodičovou strategii: Česká republika má velký potenciál stát se významným hráčem v oblasti výroby čipů, zejména v evropském měřítku. Využít tento potenciál je cílem Národní polovodičové strategie, kterou připravilo Ministerstvo průmyslu a obchodu ve spolupráci s experty, a která navazuje na evropský Akt o čipech.
V lete vyšiel Aeonwave 4.0, ktorý niekoľkonásobne menej vyťažuje procesor pri interpretácií priestorového zvuku než OpenAL Soft. Autor hľadá prispievateľov do knižnice libaaxopenal za účelom pridania ALC_EXT_EFX rozšírení využívaných napr. v hre Doom 3 cez port Dhewm3 v Linuxe.
Linuxová distribuce Ubuntu 24.10 „Oracular Oriole“ byla vydána. Jde o průběžné vydání s podporou 9 měsíců. Obsahuje mj. Linux 6.11 či GNOME 47 s několika odkazy na první vydání Ubuntu (4.10 „Warty Warthog“) před 20 lety. K dispozici jsou také oficiální deriváty s odlišnými výchozími desktopovými prostředími anebo balíky aplikací.
Deno (Wikipedie), běhové prostředí (runtime) pro JavaScript, TypeScript a WebAssembly, bylo vydáno v nové major verzi 2.0 (YouTube). Důležité změny v Migration Guide.
Apache Tomcat (Wikipedie) slaví 25 let. Při té příležitosti byla vydána nová verze 11.0. Přehled novinek v poznámkách k vydání.
Open source 3D herní a simulační engine Open 3D Engine (O3DE) byl vydán v nové verzi 24.09.0. Přehled novinek v poznámkách k vydání. O3DE má nového maskota: Odie.
Kdo chce podpořit společnost Nintendo v jejím boji proti open source softwaru (Ryujinx, yuzu, …), může si koupit Nintendo budík Alarmo za 100 dolarů. Za jak dlouho bude na budík naportován Doom?
sub check_pkgname($) { ($_[0] =~ m/^\w+(|(\-|\w)*\w)(|\/\w+(|(\-|\w)*\w))$/) ? $pkg = $_[0] : die "Not a valid package name: $_[0]!"; }a teď když spustím
check_pkgname("něco")
, tak to proběhne. Když to regexpu neodpovídá, tak vypíše:
Not a valid package name: (whatever)! at ./test.pl line 7.Proč tam píše "at ./test.pl line 7"? To nechci. Ovšem horší je tohle: jakmile se pokusím o
check_pkgname($_[0])
, tak hodí:
Use of uninitialized value in pattern match (m//) at ./test.pl line 7. Use of uninitialized value in concatenation (.) or string at ./test.pl line 7. Not a valid package name: ! at ./test.pl line 7.Napadlo mě zkusit ještě
check_pkgname(int $_[0])
, to hodí:
Use of uninitialized value in int at ./test.pl line 12.Co dělám špatně?
Když to regexpu neodpovídá, tak vypíše:Sorry, nevěděl jsem, že je to běžný chování funkceNot a valid package name: (whatever)! at ./test.pl line 7.Proč tam píše "at ./test.pl line 7"? To nechci.
die()
, jsem trouba
die "Not a valid package name: (whatever)!\n";
shift
u, že?
Pokud volam $pkgname="nazev-1-2/balicku-xyz-321"; check_pkgname($pkgname);
, tak mi to probehne korektne.
Btw. moc jsem nepochopil proc je v tom regularnim vyrazu ^\w+(|(\-|\w)*\w)(|\/\w+(|(\-|\w)*\w))$
to \w za (\-|\w)*
Btw. moc jsem nepochopil proc je v tom regularnim vyrazu ^\w+(|(\-|\w)*\w)(|\/\w+(|(\-|\w)*\w))$
to \w za (\-|\w)*
Protože chci aby to prošlo jen tehdy, když string bude končit na '\w
' a ne '-
'.
/^\w(?:[-\w]*\w)?(?:\/\w(?:[-\w]*\w)?)?$/To
(?:)
místo ()
je jen kvůli rychlosti - neplní se $n
registry. Pokud by ty slova nikdy nebyli méně než dvouznakové, tak by se dokonce dalo napsat/^\w[-\w]*\w(?:\/\w[-\w]*\w)?$/
$n
registr?
perlvar
$<digits> Contains the subpattern from the corresponding set of capturing parentheses from the last pattern match, not counting patterns matched in nested blocks that have been exited already. (Mnemonic: like \digits.) These variables are all read-only and dynamically scoped to the current BLOCK.Jinak \1..\9 by se mělo používat jen v m-regexpu nebo na levé straně (první parametr) s-regexpu.
Tiskni Sdílej: