Category Archives: Scala

I ve Scale se dá psát rychlý generický kód za použití typeclass

Nedávno jsem tu psal o tom, jak se dá rychle vypočítat Jaccardova podobnost. Rychle bylo klíčové slova a jediná věc na které skutečně záleželo. Právě kvůli rychlosti jsem do knihovny sketches přidal verzi této rutiny (a pár dalších funkcí) specializovanou pro … Continue reading 

Posted in JVM, Scala, VM | Leave a comment

Jaccardovo tajemství – jak počítat podobnost množin pomalu, jak ji počítat rychle a jak při výpočtu podvádět

Jaccardův index podobnosti je jednoduchá funkce, která udává míru podobnosti mezi dvěma množinami. Je definována jako velikost průniku vydělená velikostí sjednocení dvou množin. J(A, B) = |A ∩ B| / |A ∪ B| Funkce je to jednoduchá. Otázka je, jak … Continue reading 

Posted in Algo, DS, Scala | 3 Comments

Generování kódu za běhu (ve Scale)

Někdy je zkrátka potřeba dynamicky generovat kód. Důvodů pro to může být mnoha: Například můžu mít nějakou formu externího doménového jazyka (DSL), který musí běžet rychle, nebo musí být staticky integrován do zbytku programu bez použití reflexe1, nebo chci provést … Continue reading 

Posted in Scala | 1 Comment

JVM: Epizoda V – Paměť vrací úder

Minule jsem psal, jak se podívat objektům pod sukně a přímo přečíst bajty v jejich hlavičkách. Už to samo o sobě jde daleko za hranice virtuálního stroje a narušuje jeho paměťovou bezpečnost. Takže komu se dělalo minule mdlo, by vůbec neměl číst … Continue reading 

Posted in Java, JVM, Paměť, Scala | Leave a comment

JVM – pohled objektům pod sukně

V poslední době jsem hodně psal o paměti a struktuře objektů na JVM. Abych skutečně ověřil, že to tak je, mám na výběr ze dvou možností: studovat zdrojáky JVM nebo zahodit bezpečnost a podívat se přímo na nahé bajty v paměti. Jsem dobrodruh … Continue reading 

Posted in Java, JVM, Paměť, Scala | Leave a comment