Meditation on JavaScript’s SetTimeout(), Recursion, and Execution Context

JavaScript’s setTimout and setInterval functions are for scheduling future work. They provide a way to schedule either a single or recurring execution of a function. In this article, we’ll play around with some fun and interesting capabilities that can be had using setTimeout. To get going we’ll need a few examples in place. Here isContinue reading “Meditation on JavaScript’s SetTimeout(), Recursion, and Execution Context”

Making Parallax Animation Effects With JavaScript

The Term “Parallax” means a difference in the apparent position of an object viewed along two different lines of sight, and is measured by the angle of inclination between those two lines. The positional difference between objects creates a visual illusion that is specific to the position of the observer.  A simple everyday example ofContinue reading “Making Parallax Animation Effects With JavaScript”

XML Interoperability of Serialized Entities in Java and .NET

Abstract: In order to exchange structured data directly between the platforms, we must be able to easily take the marshalled or serialized definition of the object and turn it into an object in memory.  There are standard ways of marshalling of objects to XML in both Java and .NET.  I have found it a littleContinue reading “XML Interoperability of Serialized Entities in Java and .NET”

Dev flow with integrated SublimeREPL

Here is a short screencast that I made to demonstrate what I believe are some of the more useful features and techniques of working in Sublime Text 2 and the python repl.  Specifically, I wanted to show others who might need the dots connected to understand just what the intended usage flow of SublimeRepl is. TheContinue reading “Dev flow with integrated SublimeREPL”

Hacking C#’s Lambda Expressions Into Hash Rockets

As I move between C# and Ruby, I have found my brain’s internal syntax parser always needing to switch gears and repurpose its understanding of Fat Arrow, =>. In Ruby, it provides a visually salient means of expressing key => value pairing within a Hash. C# on the other hand uses it to indicate theContinue reading “Hacking C#’s Lambda Expressions Into Hash Rockets”

C# Deserves A Better Message Passing API

The structured programming model of C# is decisive and straightforward. There is generally one or only a handful of idiomatically correct ways to facilitate a particular design need. In the case of API design, the language’s conception of access modifiers is fundamental. Exposures of behaviors to client code are controlled by applying public, private, orContinue reading “C# Deserves A Better Message Passing API”

Introducing X DSL, A More Fluent XML Builder

A while back, I posted about using DynamicObjects to facilitate building Domain Specific Languages in C#. To the extent that we have to play within the syntactic sandbox that the language itself requires, we are still able to take advantage of what is available in the way of built in operators by changing their meaning.Continue reading “Introducing X DSL, A More Fluent XML Builder”

Dynamic Domain Specific Languages in C# and the Quine

Wikipedia defines a quine as “a computer program that takes no input and produces a copy of its own source code as its only output”.  Some standard terms for this category of program are “self-replicating”, “self-reproducing”, and “self-copying” programs.  Quines are possible in any programming language.  The term quine, itself, was first coined in DouglasContinue reading “Dynamic Domain Specific Languages in C# and the Quine”

C#-powered JavaScript Expression Evaluator

Here’s an interesting little class that I initially created to do dynamic arithmetic.  However, after getting the concept up and running, it turns out to be a lot more powerful.  The idea is to start up a hosted JavaScript runtime inside the CLR runtime and present it with string of JavaScript code for immediate inlineContinue reading “C#-powered JavaScript Expression Evaluator”