Bluish Coder

Programming Languages, Martials Arts and Computers. The Weblog of Chris Double.

Changes to Firefox Video Implementation

I mentioned in my previous post about the Firefox video implementation that some changes were going to be made to make our implementation more spec compliant. These have now landed and will be in Firefox 4. The relevant bugs are: more →

Dependent Types in ATS

Dependent types are types that depend on the values of expressions. ATS uses dependent types and in this post I hope to go through some basic usage that I've learnt as I worked my way through the documentation, examples and various papers. While learning about dependent types in ATS I used the following resources: more →

Experimental Playback Statistics for HTML Video and Audio

Now that HTML video is getting more usage there have been requests for statistics during playback so performance can be measured from JavaScript. This has come up a few times on the WHATWG mailing list. I raised bug 580531 to add some additional data to media and video DOM elements to provide this information. The patch in that bug adds... more →

Concurrency in ATS

ATS uses native operating system threads for concurrency. It provides a wrapper around pthreads and a higher level API for creating worker threads and using them for parallel computation called 'parworkshop. 'parworkshop' is described in a mailing list announcement about it as: more →

lin and llam with closures

While using the ATS wrapper for pthreads I noticed the use of a couple things related to closures that I hadn't seen before and therefore didn't get mentioned in my post on ATS closures. The signature for the function to spawn a closure in a thread is: fun pthread_create_detached_cloptr (f: () -<lin,cloptr1> void): void // end of [pthread_create_detached_cloptr] more →