All blogs / Functional / PL theory
Bluish Coder
Programming Languages, Martials Arts and Computers. The Weblog of Chris Double.
Functional / PL theoryOther languagesLisp / Clojure / SchemeCompilers
- Posts
- 443 from 4 Nov 2005 to 23 Mar 2026
- Posting
- now and then (2 in the last year)
- Kind
- personal blog
- Feed
- https://bluishcoder.co.nz/atom.xml
2026 2
2020 2
2019 3
2018 6
2017 15
- Cross Compiling ATS Programs
- ZeroMe - Decentralized Microblogging on ZeroNet
- Using the J Foreign Function Interface
- Reference Capabilities, Consume and Recover in Pony
- Runtime typing and eval in Alice ML
- Distributed Wikipedia Mirrors in Freenet
- Installing GNAT and SPARK GPL Editions
- Shen Language Port for Wasp Lisp
- Exploring 3-Move - A LambdaMOO inspired environment
- Introduction to the Freenet API
- Relational Programming in Mozart/Oz
- Borrowing Internal Pointers in ATS
- Transitioning from ATS1 to ATS2
- 2017
- Running X11 apps in an rkt container
2016 10
2015 13
- Cross compile Pony programs for Android
- C linkable libraries with Pony
- Exporting Self objects to source files using the Transporter
- Demo of programming in Self
- A quick look at the Pony Programming Language
- Using Freenet for Static Websites
- Building Erlang for Android
- Contributing to Servo
- Firefox Media Source Extensions Update
- Spawning Windows Commands in Wasp Lisp and MOSREF
- Decentralized Websites with ZeroNet
- 2015
- Improving Linux Font Support in Self
2014 14
- Using Inferno OS on Linux
- Self Benchmarking
- Using Freenet
- Changing Attributes in Self objects
- Revisiting Alice ML
- Installing NixOS on Linode with Encrypted Partitions
- Update on Tor on Firefox Proof of Concept
- Using Tor with Firefox OS
- Dual Booting Android and Firefox OS on the Nexus 5
- PicoLisp on Android
- Firefox Development on NixOS
- Installing NixOS on a ThinkPad W540 with encrypted root
- 2014
- Preventing heartbleed bugs with safe programming languages
2013 17
- Multiple Users in a Self World
- Running the Self Programming Language on Android
- HTML Media support in Firefox
- Progress Towards Media Source Extensions in Firefox
- Phantom Types in Rust
- Linking and calling Rust functions from C
- Constructing Proofs with dataprop in ATS
- Editing remote files with Acme in Inferno OS
- Remote Shells with Inferno OS
- Building Wasp Lisp and MOSREF for Android
- Ranged integer types and bounds checking
- Social Engineering Attempt Warning
- Backing up Gmail messages with offlineimap
- Running Firefox OS on Nexus S
- Parts of this site temporarily down
- 2013
- An Introduction to using pointers in ATS
2012 17
- Inferno OS IRC client with persistent connections
- Authentication and Encryption in Inferno OS
- Sharing computer and phone resources using Inferno OS
- Implementing a stack with proofs in ATS
- Safer handling of C memory in ATS
- H.264/AAC/MP3 decoding support for Firefox for Android
- My mozilla-central git clone is stopping
- Lightweight Tasks Library for ATS
- Visiting the Pitcairn Island Petroglyphs
- Building Inferno OS for Android Phones
- ATS library reference
- H.264/AAC/MP3 decoding support for Boot To Gecko
- Pitcairn Island and Slow Internet
- Back from Pitcairn Island
- Travelling to Pitcairn Island
- 2012
- Building and Running Boot To Gecko on the Nexus S
2011 22
- Pattern Matching Against Linear Objects in ATS
- Using Records and C structs in ATS
- Performing Compatible Updates of Mozilla Central Git Forks
- Building Rust
- Overloading Functions in ATS
- WDCNZ HTML Media Presentation
- Temporal Media Fragment Support in Firefox
- Safe destruction in the presence of sharing in ATS
- Namecoin - A DNS alternative based on Bitcoin
- Building Mozart/Oz on Windows
- Sharing Linear Resources in ATS
- Converting C Programs to ATS
- My Git Workflow for Mozilla Development
- New Wave Audio Backend Landed
- A Quick Look at the Rust Programming Language
- Bitcoin continues to grow
- Linear Datatypes in ATS
- Reading data from a file in ATS
- Git Conversion of Mozilla Central
- WebM Decoder in Flash using Alchemy
- 2011
- Wasp Lisp Respository Moves to Github
2010 29
- Handling POST requests with Ur/Web
- Simple Ur/Web Example
- Firefox video scaling during YCbCr to RGB conversion
- More on type safety using C and ATS
- A Short Introduction to Bitcoin - A Peer to Peer Cryptocurrency
- Changes to Firefox Video Implementation
- Dependent Types in ATS
- Experimental Playback Statistics for HTML Video and Audio
- Concurrency in ATS
- lin and llam with closures
- Closures in ATS
- Functions in ATS
- Safer C Code Using ATS
- ATS Preforking Echo Server
- VP8, WebM and Firefox
- Building Firefox with WebM support
- ATS - Applied Type System Programming Language
- Fennec on Android
- HTML 5 Video Seeking and Redirects
- Changes to Firefox YCbCr Color Conversion Code
- Vorbis Player implemented in Pure
- HTML 5 Video Element for Internet Explorer
- Pure Preforking Echo Server Example
- Comparing Colour Space Conversion Libraries
- On2 Stockholders Approve Google Merger
- Dealing with my archived Blogger posts
- 2010
- Moving away from blogger
- LCA 2010 talk about implementing HTML 5 video in Firefox
2009 27
- Using the Wasp Lisp Secure Remote Injection Framework (MOSREF)
- Wasp Lisp - a Small Scheme-like Lisp
- Displaying images with Self
- Building and using Self on Linux
- Prototype Based Programming Languages
- Playing ogg files with audio and video
- Decoding vorbis files with libvorbis
- Decoding theora files using libtheora
- Reading ogg files using libogg
- Reading ogg files with javascript
- Video for everybody html 5 video
- Third party comment engines
- Theora encoder improvements
- Simple nanojit example
- Another tinyvidtv update
- Linux link tech show on html 5 audio
- Oggplayer simple ogg player using
- Very nice web technology demo
- Replacing controls using bookmarklet
- Tinyvidtv updates
- User authentication openid and facebook
- Testing facebook connect locally
- Fallback options for html5 video
- Daily motion olpc and theora
- Liboggplay playback performance
- 2009
- Open media stack video specification
2008 45
- File uploads with happs
- Random and binary io using iteratees
- Not tutorial on happs
- Firefogg extension to encode and upload
- Srt subtitles with html5 video
- Changes to git mirror of firefox
- Installing arch linux on asus eee pc
- Dynamic compilation and loading of
- Video audio and cross domain usage
- Tinyvidtv updates
- Radio new zealands open source web
- Html5 video and audio spec changes
- Recent video updates
- Video element update
- Playing blues on ukulele
- Html 5 video element examples
- Revisiting linear recursion combinator
- Left fold enumerator for io
- Factor web framework example
- New zealand open source awards
- Javascript space invaders emulator
- Theora video backend for firefox landed
- Video bling
- Video and audio element patch has
- Parsing javascript with factor
- Firefox html5 video and audio update
- Tamarin documentation
- Extending tamarin tracing with forth
- Quick introduction to tamarin tracing
- Implementing native methods in tamarin
- Svg animation update
- Firefox svg animation patch
- Seaside with xul
- Html5 video on n810
- Factor parsing dsl
- Collection of factor articles in pdf
- Firefox html5 video with gstreamer
- Building firefox video element backends
- Refactoring of firefox html video
- Building actionscript compiler for
- Linux support for video element patch
- Video element progress
- Bounty day 2008
- 2008
- Building firefox from git repository
2007 69
- Video element and ogg theora
- New enabled experimental firefox builds
- Ukulele revival
- Embedded grammars in factor
- Writing web applications in factor
- Opera has new video enabled build
- Ecmascript 4 reference implementation
- Ikarus scheme native code compiler for
- Javascript packrat parser
- Kapono international ukulele festival
- Cyclone safe dialect of c
- Ecmascript 4 overview paper
- Theora needs msvc compatible inline
- Javascript parser combinators
- Svg video demo
- Standard ml to javascript compiler
- Firefox video element patch version 5
- How to publish git repository
- Vodka interesting concurrent language
- Erlang on openmoko cellphone
- Distributed channels in factor
- Git binary files and cherry picking
- Concurrent channels for factor
- Dave winer visits mozilla
- Firefox video element patch version 4
- Using factory window manager on mac os
- Mozilla based browser for n800
- Firefox video element patch version 2
- Javascript on server
- Superhappydevhouse aotearoa
- Building video element enabled firefox
- Patch for video element support in
- Viewing firefox cvs changes via gitweb
- Using git to track firefox cvs
- Html 5 video javascript wrapper
- Ecmascript edition 4 reference
- Asynchronous javascript
- Wellington international ukulele
- New javascript features in firefox
- Google gears for offline web
- Support for html video element in
- Offline zimbra with firefox
- More on firefox offline web app
- Mix of many things
- Another offline web application
- Ogg theora support for factor
- Factor article manager source
- Factor space invaders updated
- Ogg vorbis support for factor
- Dynamic code generation and image
- Factor on windows mobile 5
- Factor to javascript compiler makeover
- Factor compiler transforms and shuffle
- Installing zimbra on ubuntu 610
- Concurrency via generators in
- Firefox 3 talk at kiwi foo camp
- Lunar rescue emulator
- Emulating other intel 8080 based
- Space invaders gets sound
- Openal library wrapper for factor
- Zimbra development with eclipse
- Article management system
- Parser combinators
- Json web services with factor
- Odbc interface for factor
- Erlang and mobile phones
- Implementing concatenative words with
- 2007
- Basic authentication added to factor
2006 133
- Factor pattern matching additions
- Search and replace with parser
- Cross domain json with fjsc
- Continuations added to fjsc
- Factor to javascript compiler updates
- Parser combinator enhancements
- Factor interface to google search
- Compiling factor to javascript
- Factor gets xml rpc
- Propeller forth
- Factor parser combinator example
- Ruby on symbian cellphones
- Gambit scheme on nintendo ds
- Factor 086 released
- Writing lisp interpreter in haskell
- Compilers and interpreters in factor
- Narrative javascript beta 1 released
- Factor 085 released
- Flapjax
- Online poker in jeopardy
- Futures and promises in javascript
- More on jwacs
- Lazy file reading in factor
- Factor code to upload to s1 mp3 player
- Writing your own mp3 player firmware
- Factor lazy lists revisited
- Javascript with advanced continuation
- Serializable gadgets
- Pattern matching in factor
- Factor 084 is out
- Distributed concurrency in factor
- Object serialization with factor
- Transterpreter source available
- Cells style gadget updating in factor
- Json parser for factor
- Factor web framework
- Factor libraries updated
- Slipwave javascript libraries
- Trapexit is back
- Scala futures and lazy evaluation
- Javascript continuation based
- Scala and actors
- Python implemented in common lisp
- Lightweight erlang with package
- Ocsigen ocaml based web framework
- Little smalltalk and javascript for
- Lightweight threads with narrative
- Html template languages
- Unenterprisey languages going strong
- More on ajax and server push
- Real time wiki
- Playing around with minix
- Unenterprisey languages meeting
- Migrating javascript threads
- Associative arrays and javascript
- Termite distributed scheme released
- Phobos available for download
- Mt vic dojo open day kyokushin karate
- Minix and haskell
- E4x with server side javascript
- More concurrency in narrative
- Javascript 17
- Partial continuations and narrative
- Narrative javascript
- Server side javascript
- Hop web application system
- Amazon s3
- Seaside for dolphin smalltalk
- Python to javascript
- Continuation based web servers
- Script c to javascript compiler
- Handling x forwarded for in yaws
- Icing scheme continuation based web
- Extending prototypes of built in
- Back in wellington
- Squeak morphic in browser
- Linspire to use haskell
- Continuations with mono
- Avi follows up on continuation debate
- Seaside for dolphin smalltalk coming
- Rhino in spring
- No continuations for jvm
- Google web toolkit
- Dojo and spidermonkey
- Melbourne bound
- Playing with happs
- Why scheme javascript jit doesnt work
- San francisco bound
- Lightweight threads in browser
- Scheme implementation in javascript
- Port seaside to vast
- Unifying events and threads in haskell
- Source for unify available
- Space invaders emulator in haskell
- Links web programming without tiers
- Javascript partial continuations
- Jack dempsey
- Building wxfruit and yampa with ghc
- Haskell gameboy emulator
- Zoomin nz mapping web application
- Jhc optimizing haskell compiler
- Siscweb v033 announced
- Pushing events from server to browser
- Haskell application server happs
- Haskell filesystem
- Icfp programming contest 2006
- Factor and computer language shootout
- Generators in common lisp
- Patent on continuation based web
- Factor partial continuation updates
- Dabbledb on techcrunch
- Augment
- Partial continuations and factor
- Io garbage collector
- Erlang smp benchmarks
- Erlang smp support
- Dabbledb under radar
- Rodney kings crazy monkey non
- Alan kay on lisp
- Blackdog competition winner
- Free hosting for seaside web
- Jaws erlang web framework
- Javascript and generators
- Concurrency
- Observers erlang and server push
- Uptick resurrected
- Gecode constraint development
- Blogger categories
- Polyphasic sleeping
- Backbase livegrid and datagrid
- 2006
- Haskell and erlang
- Collection of lisp articles
2005 19
- Real world haskell part 2
- Factor help system
- Delicious problems
- Porting duim to common lisp
- Factor website changes
- Where did my fitness go
- 64bit factor
- Rewriting reddit
- Code replacement in erlang
- Why rewrite reddit
- Solution watch reviews dabbledb
- Reddit rewritten in
- Obfuscated erlang
- 2005
- Trap exit
- Ivy programming language
- Goodbye radio userland
- Erlang and yaws on the blackdog
- Blackdog