Morn!
Morn!
Morn!
Morn!
God morgen!
Mårn!
God morn! Takk for lunsj i går!
Morn
Morn
> ai-bruk Kva legg du i KI-bruk @slipset? Er det snakk om kun IT/koding? Eller snakkar ein om all mogleg KI-bruk?
Jeg er vel mest opptatt av min egen KI-bruk som er 99% for å generere kode.
(og analyse forut for kodegenerering)
En av tingene som jeg virkelig ikke liker med core/async er at en exception inne i en go-loop svelges og løkka dør. Ja jeg vet det, ja jeg glemmer det og ja, jeg vet tilogmed om thread.uncaughtExceptionHandler eller whatever.
Det värsta är när du har glömt det och sedan upptäcker det när det är i prod. Hade varit väldigt bra att veta vad som gick fel då 😛
Den er lei. Er vel samme greia med promises i js-land.
At det er samme greia i js-land gjør jo ikke saken bedre, vi er jo bedre enn det!
Skulle tro det. Det relevante spørsmålet da er: hvem kom først?
Promises kom til js i 2015 (i preview litt før det). core.async kom i 2013. Men hva bygger core.async på? go-routines, ikke sant? Og da er spørsmålet: har go den samme bagasjen? (det er viktig å slå fast at hverken core.async eller promises i js er nyskapende - men bygger på tidligere kunnskap)
Hukommelsen min er åpenbart veldig svak. Promises var jo ganske lenge i js-land før den ble del av spec'en. Dojo var tidlig ute med "deferred": https://dojotoolkit.org/reference-guide/1.10/dojo/Deferred.html
Go-rutiner som panicer krasjer hele programmet, men så brukes ikke panics som feilhåndtering i Go da, de sender tilbake feil som verdier. Som regel. Så litt mer i fleisen der. Om du tror det blir et problem har du typisk en wrapperfunksjon som unngår total krasj ved panics, og gjør noe fornuftig avhengig av kontekst. F.eks. sender 500-feil om det er en HTTP-handler.
Er det litt slik som Erlang også gjør det? Uansett, vet dere hva som er grunnen til at Hickey å gjøre valget sitt med core.async?
Erlang gjør det motsatte, noe som krasjer der dreper ikke hele programmet. Og jeg aner ikke hvorfor de valgte å gjøre som de gjorde med core.async 😅
Yeah! Det er ganske nice i Erlang. En koder for "happy path" og bruker prosesser (actors) for å lage "self-healing" systemer. "Let it crash" er mantraet en ofte hører i Erlang community.
Akkurat! Holdt jo litt på med Akka, men det er så fryktelig lenge siden at alt er glemt 🙈
Timothy Baldridge (som var med og designet core.async): > The position of core.async is to not specify how exceptions should be done (instead leaving it up to the user). https://groups.google.com/g/clojure/c/0tYJpG2dxFc Jeg mener å ha lest noe annet av ham seinere hvor han angrer på (eller var uenig i?) denne avgjørelsen, men kan ikke finne det.
Man kunne jo tenke seg at man hadde en konfigurerbar mekanisme som hadde en default som var bedre enn å gå stille ut i skogen og dø.