A collection of material that accumulated over time, mostly during my high school and undergraduate studies can be found under Archived Material.

Additionally, there are a couple of projects hosted here, which are not directly integrated in this page:

Recent Blog Posts


Posts By Year

Tags used for Blog Posts

abstract interpretation Abstraction Actors ADL AFUP agents Agere algorithms AmbientTalk Announcement AOP approximation architecture Are-We-Fast-Yet Assertions AST automatic parallelization award AWFY barriers behavior Benchmarking BigData bounds brussels Bugs Bytecode Bytecode Transformation Canterbury Case Study CFA Chapel CLBG clips Clojure Cloud code completion Collections Command-line communicating event loops comparison compilation Compiler Compilers complex event processing composition Computer Concurrency Concurrency Issues Concurrency Models concurrent Concurrent Programming Concurrent Reads conference Consistency Containers Corpus Correctness course work CPS CPython Cross-Language CSOM CSP Cycling Dagstuhl Data races data structures data-flow Deadlocks Debugger Debugging Design dissertation distributed memory DLS Doctoral Symposium domains Dynamic Dynamic Languages ECOOP editing eJSVM Embedded Systems emergence Empirical Encapsulation Enforcement Espresso Evaluation Event Loop Concurrency Event Loops Event-Loop Actors events Experience Report FastR Fibonacci Fine-grained parallelism FOP Fork/Join Formal Semantics formalisms Fortress FOSDEM FPGA Framework free lunch garbage collection Generator gesture recognition Git GitHub Golo Graal Graal.js GraalPy GraalVM Grace Graphs Guarantees Hardware Haskell Hera Hidden Classes Hiring HotSpot How to HPCC'10 HPI HTML5 IBM Research Idea IDEs IGV implementation Inference Inline Cache Instruction Sets Integration Interaction Intercession Intermediate Language Interpreters Interviews IoT Isolation Java JavaScript JIT Data Structures Job JSON just-in-time just-in-time compilation JVM Keynote KnitR Language Design Language Guarantees Language Implementation language server protocol Language Servers Language Shootout languages LaTeX Lecture Linz Locality locks loops LSP Ly Mandelbrot ManLang Manycore MDSoC Memory memory model Memory Wall message passing meta-tracing Metacompilation MetaLevel Metaobject Protocol Metaprogramming Metrics MISS Workshop Models Modularity Monitoring MOP MoVES multicore Multicore Programming Multilanguage multimodal interaction mutation Newspeak Node.js nonblocking Nondeterminism Nondeterministic Notes Object Shapes OmniVM OMOP OMR Online OOPSLA Opal Open Source Optimization Ownership paper parallel Parallelism Parallelization Paris parser Parte partial evaluation partitioned global address space patch Pattern Detection Patterns pauseless pecha kucha Performance Personal PGAS Pharo phasers PhD php PLDI PLISS pointer analysis Position Paper Postdoc poster Power Wall PPoPP preprint Presentation Probability Processes Processors Product lines Profile Guided Optimization Profilers Profiling Programming Properties public PX/18 PyPy Python R Race And Repair race-free RACES random ReBench Recommendations Record&Replay Reflection Related Downloads Release Reno repeatability Replay reporting reproducibility Research Rete reviews RoarVM rock RPySOM RPython Ruby Ruby on Rails Runtime Safety Sampling Scalability Scheme Science script Self Self-optimizing Interpreters separation logic Shacl shared memory shared state Sharing Slides Sly Smalltalk Smalltalks 2012 Snapshotting soft real-time guarantees software languages lab Software Transactional Memory SOM SOMns SPLASH Squeak stack State Statistics STM Strategies Study summer school Survey synchronization synthesis Teaching testing threads Threads and Locks TiC'10 TILE64 Tilera Titanium Tooling TPLI Tracing Traffic traits transactional memory transactions trees Truffle TruffleMate TruffleRuby TruffleSOM Tutorial Unifying Substrate Viewer Virtual Machine Virtual Machines Visualization VMADL VMIL VMs vscode vub Web workshop Writing X10