Finanční skupina Partners se stala minulou neděli obětí kybernetického útoku, při kterém se útočníci dostali k některým osobním údajům klientů. Společnost o tom informovala ve čtvrtek. Ujišťuje, že peníze klientů nejsou v ohrožení. „Kybernetický útok zasáhl část IT infrastruktury naší společnosti. Ihned po zjištění útoku jsme s pomocí externích bezpečnostních odborníků začali intenzivně pracovat na minimalizaci škod. Útočníci se
… více »Americká technologická společnost Meta Platforms se dohodla, že zaplatí až zhruba 18 miliard dolarů (asi 373 miliard Kč) za mimosoudní urovnání sporu o závislosti dětí na sociálních sítích a provede významné změny pro jejich používání mladistvými. Téměř tři desítky států USA firmu v roce 2023 obvinily z toho, že sítě Facebook a Instagram vědomě navrhla tak, aby u dětí vyvolávaly závislost, a zatajovala tyto dopady před veřejností. Firma se
… více »Byl publikován aktuální přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Blíží se vydání podporující čipy M3. Vývojáře lze podpořit na GitHub Sponsors a Open Collective.
Kancelářský balík LibreOffice byl vydán ve verzi 26.8. Mimo jiné vylepšuje typografii a kompatibilitu s formáty MS Office, více v poznámkách k vydání.
Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 26.8. Přehled novinek v poznámkách k vydání.
Byla vydána nová verze 23.1.0, tj. první stabilní verze z nové řady 23.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools, Libc++, Polly a Flang.
Google Chrome 152 byl prohlášen za stabilní. Nejnovější stabilní verze 152.0.7977.64 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Opraveno bylo 327 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Před 35 lety, 25. srpna 1991, oznámil Linus Benedict Torvalds v diskusní skupině comp.os.minix, že vyvíjí (svobodný) operační systém (jako koníček, nebude tak velký a profesionální jako GNU) pro klony 386 (486), že začal v dubnu a během několika měsíců by mohl mít něco použitelného.
Apple představil čipy M6 a M5 Ultra, Mac mini s M6 nebo M5 Pro a Mac Studio s M5 Max nebo M5 Ultra. Fedora Asahi Remix zatím podporuje jenom M1 a M2.
Firefox 157 přinese zapnutou podporu rastrového grafického formátu JPEG XL. Založena je na v Rustu napsané implementaci jxl-rs používané i v Chrome a Chromiu.
Ako som v poslednom blogposte uviedol, tak sem-tam programujem do školy nejaké veci, ktoré mi príde ľúto zmazať. Možno sa niekomu niekedy zídu a tak ich radšej zverejním. Tentokrát to bude jednoduchý interpreter príkazov "zápalkového počítača".
Zadanie prémiovej úlohy z Programovacích paradigiem bolo celkom jednoduché pochopiť - cieľom bolo napísať interpreter programov pre Minského registrový počítač. Na prednáške nám bol tento počítač vysvetlený pomocou zápalkových krabičiek, čo mi prišlo celkom jednoduché, takže to skúsim zopakovať.
Máme nekonečne veľa krabičiek (pomenovaných registrov), do ktorých môžeme dať nekonečne veľa zápaliek (nejaké číslo). Vieme zahrkať krabičkou a zistiť, či tam sú alebo nie sú zápalky a pridať alebo odobrať jednu zápalku (pričítať/odčítať jednotku). Vcelku jednoducho podané, no v skutočnosti je to trošku zložitejšie.
Už máme predstavu čo je to za počítač, takže späť k úlohe. Podmienkou bolo aby ten daný programovací jazyk na ovládanie toho stroja vedel:
Druhou časťou úlohy, podľa mňa tou ťažšou, bolo napísať v tom jazyku program, ktorý vypočíta faktoriál nejakého čísla. Napísať faktoriál v nejakom C++, Jave, či inom jazyku nie je problém. Ťažšie je to v nejakom tom Brainfuck-u, či Whitespace, kde sa ten kód číta a najmä píše menej priamočiaro ako pri prvých dvoch zmieňovaných. Návrh môjho jazyku si môžete pozrieť nižšie, no nečíta sa najľahšie. Ak by to bolo poodsadzované, tak by to bolo samozrejme lepšie...
$n++++++++$fakt+$n![$fakt![-$n![-$temp+$mult+]$temp![-$n+]]$n-$mult![-$fakt+]]
Keďže nepoznáte syntax toho jazyka, tak sa vám to bude pravdepodobne horšie čítať, no v balíku (viď. prvý komentár) je aj popis, čo ktorá inštrukcia robí, takže ak by ste boli veľmi zvedaví, môžete si to pozrieť. Avšak mená registrov jasne naznačujú, že to počíta faktoriál čísla, v tomto konkrétnom prípade je to 8!. Je tam ešte priestor na optimalizácie, no aby bol kód prehľadnejší (áno, toto je už prehľadná forma :) ), tak som ich tam nedával.
UPDATE: Zabudol som spomenúť, že interpreter je písaný v Jave a kód je opäť pod GNU/GPLv3.
Tiskni
Sdílej: