Melakarta Workshop for Children at Brhaddhvani

Workshop at Brhaddhvani for children this summer on melakarta system.


Closures All the Way Through

In A Mental Model for Variables and Closures in Javascript, I described an allocation based model that I’d used with some success to teach and understand the intricacies of closures, as implemented in Javascript engines. While we have plenty of tutorials on closures that describe what results are gotten under various conditions, with variables being magically “captured”, I’ve not seen many work through a mechanistic explanation of closures. To that end, here is the slide deck of a session I recently conducted which walked the participants through a mechanistic understanding of closures and objects, using the Chrome debugger. Read on to find out how to follow the deck and the rationale behind it.

Read on →

Talk: Mathemusicking With Children

I gave a talk titled “Mathemusicking with children: Doing math and music without telling them apart” at the C. R. Rao Advanced Institute for Mathematics Statistics and Computer Science on 14 March 2015, as part of a workshop on Math, music and nature.

Slides of my talk (PDF)

The talk was about the summer of 2014 workshop on music and math for children that I co-conducted along with Mrs. Usha Narasimhan, at Brhaddhvani, Chennai.

There was a request from the audience for the “Melakarta pathways” picture. Here is a PDF you can print out. There are exactly 72 ways to traverse from the S at the left to the S at the right. Each path you take corresponds to a scale of the Melakarta system.

Why I’m a Vegetarian

Some years ago, I had a change of perspective on being vegetarian. The fact that I am a vegetarian was not the thing that changed, but it was the why that did.

Read on →

Errors, Recovery and Async Code Flow

try-catch-finally style error management is common in many programming languages. Though the underlying mechanism of propagating errors up a “call stack” is alright from a development perspective, the common syntax ends up invariably mangling the code flow. In cspjs, a macro library presenting an easy-to-use syntax for working with async Javascript code, I attempted what felt to me to be a better way to fit error handling and recovery code into the statement-by-statement sequential flow of activity.

In Bye Bye Javascript Promises, I intended to present this key reason why I wrote cspjs - error handling and recovery specification that respects code flow - but I didn’t do a good job of presenting it. I attempt that in this post.

Read on →
comments powered by Disqus