2012-07

Working with large integers in JavaScript

[2012-07-05] numbers, dev, javascript, jsint, jslang
In JavaScript, one has at most 53 bits for integers. This blog post explains how to work with large integers, by encoding them in strings.

amdefine: use AMD modules on Node.js

[2012-07-04] dev, nodejs, javascript, amdefine, jsmodules, clientjs, jslang
James Burke’s npm module amdefine lets you write AMD modules [1] that also work on Node.js. To do so, you need to perform the following steps:

Text message lengths

[2012-07-02] psychology, computers
Several text messaging technologies impose character limits on messages. This blog post describes those limits and their advantages.

2012-06

Mozilla’s next-generation web browser Servo is making progress

[2012-06-27] browser, computers, servo, mozilla
Servo is Mozilla’s next-generation web browser [1], with a focus on parallelism and security. It’s not much more than a technology demo and will remain so for a while, but it’s making progress nonetheless. Quoting Patrick Walton in a thread on Google Groups:

Asynchronous programming and continuation-passing style in JavaScript

[2012-06-22] async, dev, javascript, advancedjs, jslang
In this blog post, we give a name to JavaScript’s callback-based asynchronous programming style: continuation-passing style (CPS). We explain how CPS works and give tips for using it.

JavaScript: sparse arrays vs. dense arrays

[2012-06-13] underscorejs, dev, javascript, jslang, jsarrays
In general, arrays in JavaScript are sparse – they can have holes in them, because an array is simply a map from indices to values. This blog post explains how to create dense arrays, arrays without holes.

ECMAScript.next: for-of, iterators, generators

[2012-06-11] esnext, dev, javascript
[2015-02-26] New version of this blog post: “Iterables and iterators in ECMAScript 6

ECMAScript.next’s for-of loop will provide a new and quirk-free way of iterating over all kinds of data. This blog post explains how it works and how you can try out a prototype implementation in Firefox 13 and later.

A closer look at Underscore templates

[2012-06-07] underscorejs, dev, javascript, jslang
Underscore.js is a highly useful complement to JavaScript’s rather sparse standard library. In a pinch, Underscore gives you simple templating, too. This post explains how it works and gives tips.

Notes from the Fluent JavaScript conference

[2012-06-05] fluentconf, dev, javascript
Technical publisher O’Reilly organized their first JavaScript conference, called “Fluent”, May 29-31 in San Francisco. This blog post collects random impressions of mine from that conference. They should be interesting even if you haven’t attended Fluent (hint: links to videos).

2012-04

Declaring module exports (Node.js, AMD)

[2012-04-24] dev, nodejs, javascript, jsmodules, clientjs, jslang
Modules are mostly the same in Node.js and AMD [1]: A sequence of statements that assign internal values to variables and exported values to an object. This blog post shows several patterns for doing the latter. It also explains how ECMAScript.next handles exports.