Down the Wabbit Hole
summary
Haskell bindings for Vowpal Wabbit use inline-c and Template Haskell plus FFI, custom antiquoters and IO buffers to pass VW pointers without copying; a withPointer antiquoters pattern wires VW examples and contexts into Haskell while a bracket-based resource management pattern guarantees cleanup. Resulting bindings run ~20% slower than the optimized CLI, support concurrent prediction via thread pools, but still allow segfaults from lazy user code or wrong getter choices unless callers use the strict APIs.
AI-written summary · about
chapters (10)
- 0:00Start
- 2:06Interface
- 11:35Exception Handling
- 16:06Unsafe Api
- 17:45Pointer
- 18:29Custom Width Pointer Type Class
- 20:00Typical Use Case
- 21:51Create a New Context
- 30:01Create a Context
- 31:25Read an Example
related talks
42mDown the Wabbit Hole
39mA Lazy Scheme In Haskell
34mOnline learning, Vowpal Wabbit and Hadoop #bbuzz
27mEffectful
21mA Pointer-Ownership Model for C Inspired by Rust
01h 20mA Practical Introduction to Haskell GADTs
42mDeveloping the Wolfram Language Compiler
51mPragmatism, Puritanism and Functional Programming
