Jesper Louis Andersens billede

Jesper Louis Andersen

Funktionel programmør. Ekspert i distribution og samtidighed (concurrency).

Kommentarer

Kommentar til Hvilken kodeeditor bruger du?

acme(1) og sam(1)

Acme er Sam er to gamle plan9-editorer. De kan fås til typiske unix-systemer via plan9port, og det er efterhånden en del år jeg har brugt dem til at skrive kode med. De glimrer ved at være totalt funktionalitetsløse, men de har et rimeligt stærkt kommandosprog og deres samspil med et unix-system...

Go viste vejen

Da Robert Griesemer arbejdede på Go-sproget for Google var han godt og grundigt træt af code-style guidelines. Google's Java og C++ style guidelines er kæmpestore og en ret stor del af alle codereviews kommer tilbage med steder for style-guiden ikke er fulgt. Løsningen var hvad der i dag...
Kommentar til Min bedste laptop

Re: Bloated cores

Jeg se umiddelbar to problemer som JIT compileren har som en klassisk ahead-of-time compiler ikke har JIT-compilere har det med at være mange faktorer mere komplekse end traditionelle compilere. Det er ikke uvæsentligt i forbindelse med at vedligehold. Mit bud er at Java og C# har 10-20 g...
Kommentar til Undgå faldgruberne i "Teknisk gæld"

Dårlig formulering

Et af problemerne med gæld som begreb er at du i finansverdenen kan optage gæld midlertidigt mod at du har en mulighed for at operere her og nu. Et bedre begreb er at det er en "unhedged call option." Ideen er at hvis jeg laver en hurtig løsning nu, så har det muligvis den konsekvens i...

Re: Honeypot?

Hvorfor ikke? Voksne mennesker må tage ansvar for deres egne handlinger. Hvis den kriminalitet som efterforskes er tilstrækkelig grov (her børneporno) og hvis staten ikke gør noget der er usædvanligt (her fortsatte de blot en allerede eksisterende service), så kan jeg ikke se der er et problem....
Kommentar til Skats nye system til ejendomsvurderinger bliver dobbelt så dyrt

Re: Man føler endnu engang trang til at udbryde....

I øvrigt: Når systemer af denne størrelsesorden i følge Nikolaj Brinch Jørgensens kommentar (han har sikkert ret, men det kan jeg ikke vurdere) er så umulig at få til at fungere tilfredsstillende, hvordan kan Watson så fungere? Den skal jo, hvis jeg forstår det rigtigt, indsamle, behandle og vu...
Kommentar til X86-instruktionssæt er måske mindre strømslugende end deres rygte

Er ISA egentlig vigtigt i forhold til power?

x86-64 er, set i forhold til ARM, et ultragrimt design med masser af klodser om benet. Men de fleste CPUer med x86-64 som instruktionssæt oversætter det jo tidligt til "mikro-ops" der til forveksling er tættere på dem ARM har. Og så kører de internt som en RISC-lignende CPU. Hvis du...
Kommentar til Kodning: Lækkende abstraktioner og deres evne til at holde vand

Re: Hvad foregår der?

Min pointe var (er), at "man" gennemgående ikke kan tillade sig at være ligeglad med de performancemæssige aspekter af de abstraktioner, man betjener sig af. Kun hvis abstraktionen er en del af din beregningskerne. Uhyggeligt meget kode har det med at falde udenfor det behov i...
Kommentar til Kodning: Lækkende abstraktioner og deres evne til at holde vand

Alle abstraktioner lækker

Der er altid et sted en abstraktion ender med at knække: Den rene Haskell-funktion tager ikke højde for hukommelsesforbrug Du kan skrive klassehierarkier der bryder med Liskov's substitutionsprincip Du kan definere en instans af Functor eller Monad som ikke er det i Haskell Og så...

Re: Som talt ud af mit hjerte...

Men det er der nok ikke - vi er tilsyneladende allerede ved at lægge sundhedsdata ind i Watson Health - uden at nogen bliver spurgt. Herfra er der direkte adgang fra hele verden. Og diverse apps er også på vej til at loade direkte i Watsons gab. Der er en hovedtese jeg har omkring anvende...

Re: Forskellen på "kan" og "vil"

Mht. Big data og forskermaskiner så er det mit indtryk at politikerne allerede er ved at sælge os til stanglakrids på det felt. Ingen tid til overvejelser - ingen tid til, at befolkningen kan nå at opdage, hvad der sker, før det er for sent. Ingen åben debat om, om befolkningen faktisk synes, a...

Re: Der er noget vi mangler at snakke om

Hvad i alverden er en "forskermaskine"? Det er en ikke-teknisk forklaring på et system hvor forskere kan få adgang til fortrolige data på en måde, så uvedkommende ikke har adgang til data. Typisk er implementationen en VPN-forbindelse, og maskinen selv er virtualiseret og står...
Kommentar til 5 programmeringssprog jeg gerne ville lære - hvis jeg havde tid

Re: Ingen Scala buffs?

Tak til ham der nævnte F*. Den står nu på min liste over ting jeg skal lære en dag :-). Ikke at jeg tror jeg kommer til at kode i det, men jeg er lidt fascineret af konceptet med at kunne bevise egenskaber i programmet. Vil godt udforske hvor tæt man kan komme på programmer der er garanteret ti...
Kommentar til 5 programmeringssprog jeg gerne ville lære - hvis jeg havde tid

Re: En sprogliste:

Og lidt ironisk, at jeg for tiden er interesseret i SMLs modulsystem netop fordi det ikke er det samme - det garanterer nemlig at funktorer og funktorapplikation kan oversættes væk, hvilket har nogle interessante konsekvenser hvis man gerne vil generere hurtig kode. Stratification er virk...
Kommentar til 5 programmeringssprog jeg gerne ville lære - hvis jeg havde tid

En sprogliste:

Elm, Julia, Idris, 1ML. Jeg skal lige skrive en ordentlig compiler til det sidste sprog, eller vente på at det bliver standardiseret, men det kan jo også lade sig gøre :)
Kommentar til 5 programmeringssprog jeg gerne ville lære - hvis jeg havde tid

Re: Elixir

Har du nogensinde set et erlang stacktrace? Hvis du har og stadigvæk er interesseret i elixir, er du enten meget modig eller også kender du erlang i forvejen. Det er ikke fair overfor Elixir, fordi de omskriver Erlang stack-traces så de i højere grad ligner stack traces fra andre sprog. ...
Kommentar til Her er de 21 mest populære programmeringssprog lige nu

Re: JavaScript

For at være god til Javascript skal man forstå funktionelle, dynamiske 1.ordens sprog uden statiske typer - gør man det 'klikker det' og man kan så betragte Javascript som LISP med C syntax - på én gang mystisk og farlig! ;) Det jeg synes det er sværest ved Javascript når...
Kommentar til Hvem kæmper Apple for?

Re: Marketing b/s

Jeg forstår sgu ikke alt det snak med super sikre chips, fuld seperation af super sikkerhedschip fra applikations processoren og så at man bare kan putte telefonen i recovery mode og så har man adgang til data igen? Der rodes en del i det, men så vidt jeg ved så er den telefon det d...
Kommentar til Er automatiseret tilknytning af tråde til CPU-kerner mulig?

Re: CPU cache

Du skal ikke tælle clockcycles, men nanosekunder. Og picosekunder. Og endnu bedre: parallelisme. Du har så mange steder hvor en moderne CPU er i stand til at køre uafhængige instruktioner i parallel at man i praksis er nødt til at bruge de performancecounters der i CPUen og måle på hvor ...
Kommentar til Er automatiseret tilknytning af tråde til CPU-kerner mulig?

Re: CPU cache

En ting, som undrer mig, er hvordan HP's PA-RISC 8700+ kunne have 1.5MB L1 I-cache og 1.5MB L1 D-cache, med en latency på 2 clockcycles. Og så 32MB L2-cache oveni. Alt dette tilbage i 2002. En moderne xeon har circa 64KB L1 cache, hvor et L1-cache hit koster circa det samme som 4...