Společnost OpenAI představila svůj nejnovější AI model GPT-4o (o jako omni, tj. vše). Nově také "vidí" a "slyší". Videoukázky na 𝕏 nebo YouTube.
Ondřej Filip publikoval reportáž z ceremonie podpisu kořenové zóny DNS. Zhlédnout lze také jeho nedávnou přednášku Jak se podepisuje kořenová zóna Internetu v rámci cyklu Fyzikální čtvrtky FEL ČVUT.
Společnost BenQ uvádí na trh novou řadu monitorů RD určenou pro programátory. První z nich je RD240Q.
Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem nadále zůstává Frontier od HPE (Cray) s výkonem 1,206 exaFLOPS. Druhá Aurora má oproti loňsku přibližně dvojnásobný počet jader a dvojnásobný výkon: 1,012 exaFLOPS. Novým počítačem v první desítce je na 6. místě Alps. Novým českým počítačem v TOP500 je na 112. místě C24 ve Škoda Auto v Mladé Boleslavi. Ostravská Karolina, GPU
… více »GHC (Glasgow Haskell Compiler, Wikipedie), tj. překladač funkcionálního programovacího jazyka Haskell (Wikipedie), byl vydán ve verzi 9.10.1. Přehled novinek v poznámkách k vydání.
Po 9 týdnech vývoje od vydání Linuxu 6.8 oznámil Linus Torvalds vydání Linuxu 6.9. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna. Později také na Linux Kernel Newbies.
Byla vydána verze 0.2.0 v Rustu napsaného frameworku Pingora pro vytváření rychlých, spolehlivých a programovatelných síťových systémů. Společnost Cloudflare jej letos v únoru uvolnila pod licencí Apache 2.0.
Open source RDP (Remote Desktop Protocol) server xrdp (Wikipedie) byl vydán ve verzi 0.10.0. Z novinek je vypíchnuta podpora GFX (Graphic Pipeline Extension). Nová větev řeší také několik bezpečnostních chyb.
Rocky Linux byl vydán v nové stabilní verzi 9.4. Přehled novinek v poznámkách k vydání.
Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].
pull based přístupu scalaz-stream (následující články řetězu tahají data od předchozích)Ano, scalaz-stream je pull based. Push lze nasimulovat například pomocí fronty:
val p = (Process(1, 2, 3).toSource ++ eval_(Task.delay(println("print")))).repeat val processItem: Sink[Task, Int] = io.stdOutLines.contramap(_.toString) // Vytvorime frontu. val q = async.unboundedQueue[Int] // Prvky produkovane procesem p posleme do fronty. p.to(q.enqueue).run.runAsync(x => println("enqueue end")) // q.dequeue je proces prvku z fronty. // Prvky z fronty posilame do Sinku processItem, ktery prvky zpracovava. // Az jsou prvky zpracovany (nebo po vyhozeni vyjimky) frontu zavreme // -- zavreni fronty zajisti ukonceni procesu, jenz dava prvky do fronty // -- tj. ukonceni p.to(q.enqueue).run.runAsync(x => println("enqueue end")). (q.dequeue.to(processItem).take(2) onComplete eval_(q.close)).run.runKód obvykle několikrát vypíše řetězec print – počet vypsaných řetězců print závisí na tom, jak rychle se prvky produkované
p
posílají do fronty q
. Kromě neomezené fronty async.unboundedQueue
existuje i omezená fronta async.boundedQueue
.
A jaký je vlastně rozdíl mezi pull-based přístupem a obyčejnými streamy?Myslím, že obyčejné streamy jsou také pull based.
Tiskni Sdílej: