Byl vydán svobodný kancelářský balík OnlyOffice Docs 8.1. Vedle četných oprav přináší několik funkcí včetně podpory editace textu v PDF a vytváření formulářů v PDF.
Daniel Stenberg, autor nástroje curl, z databáze SteamDB zjistil, že aktuálně 22 734 her na Steamu používá curl.
Společnost Anthropic vydala Claude 3.5 Sonnet, tj. novou verzi své umělé inteligence Claude (Wikipedie). Videoukázky na YouTube. S Claude 3, stejně jak s GPT-3.5, Llama 3 a Mixtral, si lze pokecat bez přihlašování na DuckDuckGo AI Chat.
Byla vydána nová stabilní verze 6.8 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 126. Přehled novinek i s náhledy v příspěvku na blogu a na YouTube. Vypíchnuta jsou vylepšení v integrovaném poštovním klientu.
Příspěvek Aukce domén – měsíc po spuštění na blogu CZ.NIC shrnuje první měsíc provozu Aukce domén .CZ. Aukcemi prošlo celkem 18 174 domén, z toho na 742 z nich byl učiněn alespoň 1 příhoz. Nejdražší aukcí byla na doménu virtualnisidlo.cz s cenou 95 001 Kč, která však nebyla včas uhrazena. Nejdražší aukcí, která byla vydražena i zaplacena je praguecityline.cz s cenovkou 55 600 Kč.
Před 40 lety, 19. června 1984, Bob Scheifler představil první verzi okenního systému X (X Window System). Vycházela z okenního systému W (W Window System).
Desktopové prostředí MATE bylo vydáno ve verzi 1.28. V gitových repozitářích je sice už od února, ale oznámení vydání se na webu objevilo s několikaměsíčním zpožděním (únorové datum zveřejnění je nepravdivé). Jde o první velké vydání od roku 2021. Uživatelsky nejvýznamnější pokrok je v podpoře Waylandu.
Laboratoře CZ.NIC vydaly novou verzi 4.24.0 aplikace Datovka, tj. svobodné multiplatformní desktopové aplikace pro přístup k datovým schránkám a k trvalému uchovávání datových zpráv v lokální databázi. Přidány byly nové parametry do rozhraní příkazové řádky „export-msg“, „export-msgs“, „import-msg“ a „import-msgs“, které dovolují číst/zapisovat zprávy z/do databází. Veliký panel nástrojů byl nahrazen více nastavitelnými
… více »Mapnik (Wikipedie), tj. open source toolkit pro vykreslování map a vývoj mapových aplikací, byl vydán ve verzi 4.0.0. Přehled změn na GitHubu.
Mozilla koupila firmu Anonym, tj. průkopníka v "digitální reklamě chránící soukromí".
var fun = { "+": function (a) { return a.reduce(function (a, b) { return a + b; }); }, "-": function (a) { return a.reduce(function (a, b) { return a - b; }); }, "*": function (a) { return a.reduce(function (a, b) { return a * b; }); }, "/": function (a) { return a.reduce(function (a, b) { return a / b; }); } }; function lisp(aCode) { var i, fn, arg; if (Array.isArray(aCode)) { fn = aCode[0]; arg = aCode.slice(1); for (i = 0; i < arg.length; i++) { if (Array.isArray(arg[i])) { arg[i] = lisp(arg[i]); } } return fun[fn](arg); } return aCode; } console.log(lisp(["/", 22, ["-", 10, ["+", 1, 1, 1]]])); console.log(22 / (10 - (1 + 1 + 1)));Ale ta hlavna funkcia lisp() sa mi zda neelegantna, nevedeli by ste niekto napisat ju elegantnejsie? Myslim ze to ide zapisat este kratsie.
Řešení dotazu:
if
zbytečně. A možná bych raději testoval, kdy to není Array
, abych měl zanořený jen ten return aCode
a ne celý ten blok.
function lisp(aCode) { var i, fn, arg; if (!Array.isArray(aCode)) { return aCode; } fn = aCode[0]; arg = aCode.slice(1); for (i = 0; i < arg.length; i++) { arg[i] = lisp(arg[i]); } return fun[fn](arg); }
Tiskni Sdílej: