Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za březen (YouTube).
ESP-IDF (Espressif IoT Development Framework), tj. oficiální vývojový framework pro vývoj aplikací na mikrokontrolérech řady ESP32, byl vydán v nové verzi 6.0. Detaily na portálu pro vývojáře.
DeepMind (Alphabet) představila novou verzi svého multimodálního modelu, Gemma 4. Modely jsou volně k dispozici (Ollama, Hugging Face a další) ve velikostech 5-31 miliard parametrů, s kontextovým oknem 128k až 256k a v dense i MoE variantách. Modely zvládají text, obrázky a u menších verzí i audio. Modely jsou optimalizované pro běh na desktopových GPU i mobilních zařízeních, váhy všech těchto modelů jsou uvolněny pod licencí Apache 2.0. Návod na spuštění je už i na Unsloth.
Cursor (Wikipedie) od společnosti Anysphere byl vydán ve verzi 3. Jedná se o multiplatformní proprietární editor kódů s podporou AI (vibe coding).
Průkopnická firma FingerWorks kolem roku 2000 vyvinula vícedotykové trackpady s gesty a klávesnice jako TouchStream LP. V roce 2005 ji koupil Apple, výrobu těchto produktů ukončil a dotykové technologie využil při vývoji iPhone. Multiplatformní projekt Apple Magic TouchstreamLP nyní implementuje funkcionalitu TouchStream LP na současném Apple Magic Trackpad, resp. jejich dvojici. Diskuze k vydání probíhá na Redditu.
Byla vydána nová verze 10.3 sady aplikací pro SSH komunikaci OpenSSH. Přináší řadu bezpečnostních oprav, vylepšení funkcí a oprav chyb.
Cloudflare představil open source redakční systém EmDash. Jedná se o moderní náhradu WordPressu, která řeší bezpečnost pluginů. Administrátorské rozhraní lze vyzkoušet na EmDash Playground.
Bratislava OpenCamp 2026 zverejnil program a spustil registráciu. Štvrtý ročník komunitnej konferencie o otvorených technológiách prinesie 19 prednášok na rôzne technologické témy. Konferencia sa uskutoční v sobotu 25. apríla 2026 v priestoroch FIIT STU v Bratislave.
Na iVysílání lze zhlédnout všechny díly kultovního sci-fi seriálu Červený trpaslík.
Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl v březnu 5,33 % (Windows -4,28 %, OSX +1,19 %, Linux +3,10 %). Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 24,48 %. Procesor AMD používá 67,48 % hráčů na Linuxu.
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";
shiftu, ž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 vyrazuProtože chci aby to prošlo jen tehdy, když string bude končit na '^\w+(|(\-|\w)*\w)(|\/\w+(|(\-|\w)*\w))$to \w za (\-|\w)*
\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: