Služba Dropbox Sign (původně HelloSign) pro elektronické podepisování smluv byla hacknuta.
Byla vydána nová major verze 8.0 textového editoru GNU nano (Wikipedie). Podrobný přehled novinek a oprav v oznámení v diskusním listu info-nano nebo v souboru ChangeLog na Savannah. Volbou --modernbindings (-/) lze povolit "moderní" klávesové zkratky: ^C kopírování, ^V vložení, ^Z vrácení zpět, … Tato volba je aktivována také pokud binárka s nano nebo link na ni začíná písmenem "e".
Před 60 lety, 1. května 1964, byl představen programovací jazyk BASIC (Beginners' All-purpose Symbolic Instruction Code).
Byla vydána nová verze 12.0 minimalistické linuxové distribuce (JeOS, Just enough Operating System) pro Kodi (dříve XBMC) a multimediálního centra LibreELEC (Libre Embedded Linux Entertainment Center). Jedná se o fork linuxové distribuce OpenELEC (Open Embedded Linux Entertainment Center). LibreELEC 12.0 přichází s Kodi 21.0 "Omega".
Microsoft vydal novou velkou aktualizaci 2404.23 v září 2019 pod licencí SIL Open Font License (OFL) zveřejněné rodiny písma Cascadia Code pro zobrazování textu v emulátorech terminálu a vývojových prostředích.
OpenTofu, tj. svobodný a otevřený fork Terraformu vzniknuvší jako reakce na přelicencování Terraformu z MPL na BSL (Business Source License) společností HashiCorp, bylo vydáno ve verzi 1.7.0. Přehled novinek v aktualizované dokumentaci. Vypíchnout lze State encryption.
Spouštět webový prohlížeč jenom kvůli nákupu kávy? Nestačí ssh? Stačí: ssh terminal.shop (𝕏).
Yocto Project byl vydán ve verzi 5.0. Její kódové jméno je Scarthgap. Yocto Project usnadňuje vývoj vestavěných (embedded) linuxových systémů na míru konkrétním zařízením. Cílem projektu je nabídnou vývojářům vše potřebné. Jedná se o projekt Linux Foundation.
Operační systém 9front, fork operačního systému Plan 9, byl vydán v nové verzi "do not install" (pdf). Více o 9front v FQA.
Svobodná webová platforma pro sdílení a přehrávání videí PeerTube (Wikipedie) byla vydána v nové verzi 6.1. Přehled novinek i s náhledy v oficiálním oznámení a na GitHubu. Řešeny jsou také 2 bezpečnostní chyby.
Pár poznámek ke kódu: Seznamy velmi často používáte jako pole, tj. snažil bych se vyhnout funkci lists:nth/2. Není třeba všude používat knihovní funkce viz třeba term:compare_strings/2, kterou by šlo napsat prakticky bez knihovních funkcí a byla by navíc efektivnější nebo napsat s knihovními funkcemi třeba takto (v Haskellu):
compareStrings as bs | as == bs = Nothing | otherwise = Just $ length $ takeWhile id $ zipWith (==) as bs
V Erlangu je potíž s funkcí lists:zipwith/3, která přijímá jen stejně dlouhé seznamy tj. musel byste řetězce oříznout na délku toho kratšího.
s mým učením se funkcionálnímu jazyku erlang
Je dobře, že se učíte funkcionální jazyk, a doufám, že po Erlangu bude následovat Haskell
Díky za připomínky. Doufám, že si nemusíme vykat Tu compare_strings/2 jsem přepsal, mě osobně se líbí mnohem víc
compare_strings(S1, S2) when S1 == S2 -> same; compare_strings(S1, S2) when (S1 == []) or (S2 == []) -> {different,0}; compare_strings(S1, S2) when length(S2) > length(S1) -> compare_strings(S2, S1); compare_strings(S1, S2) when length(S1) > length(S2) -> S1Part = lists:sublist(S1, length(S2)), compare_strings(S1Part, S2); compare_strings(S1, S2) when length(S1) == length(S2) -> Same = lists:zipwith(fun(X, Y) -> X == Y end, S1, S2), {different,length(lists:takewhile(fun(X) -> X end, Same))}.
Použil jsem tu funkci lists:zipwith/3, o které jsem předtím nevěděl (díky ).
Ta funkce byla opravdu ošklivě napsaná, asi jsem se moc nesoustředil a jen psal takovým tím C stylem (funguje to, je to dobře).
S haskellem nevím, zatím pro něj nemám praktické využití (možná v budoucnu na nějakou matematiku etc.). Cesty programátora jsou nevyzpytatelné
Takhle to vypadá lépe, ale zkus si zavolat compare_strings("auto","aut")
. Já bych to napsal asi takto (bez funkcí z knihovny):
compare_strings(XS, YS) -> compare_strings(0, XS, YS). compare_strings(I, [A|XS], [A|YS]) -> compare_strings(I+1, XS, YS); compare_strings(_, [] , [] ) -> {same}; compare_strings(I, _ , _ ) -> {different, I}.
Chtěl bych se ještě zeptat, jestli se Erlang učíte díky KSP?
backspace
, delete
…).
Tip na vylepšení: používat Jabber MUC jako „backend“ – udělat z toho telnetové rozhraní k místnosti v Jabberu. BTW: já teď zase pracuji na jednoduchém webovém rozhraní pro jabberové místnosti.
backspace
a delete
fungují. Teď ještě když nastavím kurzor na (ne za ale na) poslední písmenko řádku a snažím se něco napsat, chová se to „divně“ – jednou se přepíše, jindy se připíše před něj atd.
Tiskni Sdílej: