četvrtak, 31. svibnja 2007.

Lijena evaluacija u F#

let rec fibs = Seq.delay (fun() -> fibs |> Seq.cons 0I |> Seq.cons 1I |> Seq.pairwise |> Seq.map (fun (x,y) -> x+y))

Ovo je inače prijevod u F# Haskell onelinera:

fibs = 1 : 1 : zipWith (+) fibs (tail fibs)

seq<_> je inače tipni sinonim za CLR IEnumerable<T>, i sve su mu metode (osim nekoliko njih koji se ticu konverzija u striktno reducirane liste i nizove) lijeno (po potrebi) evaluirane:

> Seq.take 10 fibs;;
val it : bigint list = [1I; 1I; 2I; 3I; 5I; 8I; 13I; 21I; 34I; 55I]

Verzija koristeći ireffutable as-pattern:

let fib@(1:tfib) = 1 : 1 : [ a+b (a,b) <- zip fib tfib ]

Nije toliko trivijalno translatabilna, s obzirom da nije moguce napraviti strukturalni pattern-matching na seq<_> i njegove konstrutore tipa kojih (koliko vidim) - nema.

srijeda, 30. svibnja 2007.

Phrack #64

Nakon duge i teške bolesti, izašao je Phrack 64, ovaj put pod novim, razmlađenim uredništvom koji se naslovljavaju kao The Circle of Lost Hackers.

Phrack degradira već više od dekade, kako kvalitetom članaka tako i nedostatkom duha undergrounda, koji se u moru industrijski-certificiranih InfoSec profija raspršio na kojekakve anonimuse koje više zanima kako da zajebu Warcraftov Warden nego ganjaju pikanterije libc-ovog alokatora.

Preseravanja o povijesti scene, međunarodnim scenama (vraćanje u prošlost uvijek dobro dođe za prebjeg iz tmurne svakodnevice), freudovsko pretakanje iz šupljeg u prazno o "hakiranju svijesti" (..is but a dream within a dream) i novim revolucijama, začinjenim dozlaboga isfuranim paranojama o orwellovskom svevidećem oku koje jedva čeka analizirati što je h4k3r_17zg nasrao na ICQ bareći neku masnu kozurinu. Kako funkcionira DMA i mmaped IO je više mjestu OS udžbeniku opće namjene, a ne nečemu što pretendira na tron najelitnijeg haxorskog zinea. Hello World primjer spremanja podataka u GPU memoriju koji je maltene copy/pasted iz NVIDIA-inog CUDA SDKA da i ne spominjemo.

Na razini su jedino papiri Attacking the Core: Kernel Exploitation Notes (tehnički ekscelira) i Blind TCP/IP hijacking is still alive (originalnost - rabeći prethodnika ove tehnike je Shimomura uhvatio Mitnicka! :) Ostalo sve već viđeno/reciklirano na ovaj ili onaj način.

U međuvremenu, dok se vodstvo phracka reorganiziralo i pohvatalo izmakle konce, svi koji nešto znaju su prešli u komercijalne vode i za objavljivanje članaka u nekim 31337 zineovima pod pseudonimima im je stalo koliko je i crno pod noktom. Koga briga za "ugled" u zajednici anonimusa kad puno veći (a usto i financijski blagoslovljen) ugled donosi održavanje predavanja/radionice na konferencijama klase BlackHat ili CanSecWest.