found drama

get oblique

Danielewski.js

by Rob Friesel

Inspired by @fat’s @angustweets’1 “If Hemingway wrote JavaScript”: if Mark Z. Danielewski (author of House of Leaves) wrote JavaScript:


// The narrator leaks globals but we cannot know if he intends this; we are
// forced to trust him. There is no going back.
stairs =
  this['stairs'] ||
    {};
      stairs['0'] = null,
        stairs['1'] = [
            1
              ],
                stairs['2'] = [ 1, 1
                                                                              ];

function theSequence(depth){
  var zero0e = 'House',
      X =
          zero0e.toLowerCase().length * 2,
              I =// The narrator's methods obfuscate his intent.
                (function(i){
                  return Math.round(
                    i[00]
                      .charCodeAt(0) / 13) - (X/2);
                }(zero0e));
//
//
//
//
//
//
//
//
// parseInt(1010, 2) / parseInt(0x0e, 16)
        /* The narrator leaves cryptic messages; we fear their erasure will only
           complicate advancements of our discoveries.                        */
                                                           return hallway(depth)


  function hallway(echo){
    echo = Math.abs(                    echo                    );
    
    return !!echo && echo in stairs ?
      stairs[echo] :
        (labyrinth(echo),
                                                                  hallway(echo))
  }

  function labyrinth(){
    var no_ = parseInt(arguments[0x01], X) || I;

    return stairs[parseInt(arguments[0x00], X)] ||
      (Minotaur(no_),
        labyrinth(parseInt(arguments[0x00], X), ++no_))
  }

  function Minotaur(o){
    'use strict';

    ;;

    if (!!!stairs[o]) {
      var maw =
        [].concat(stairs[o - I]);

        maw.push(maw[o - 3] + maw[o - 2]);


          stairs[o] = maw;
            // Lude's dead.
    }
  }

}

I don’t think I want him on my team.

Update: (10/3/2012) Turns out that Mr. Croll has made the library available in Github. And Danielewski has been canonized.2

  1. An honest mistake: Angus Croll wrote the post, but it appeared on @fat’s blog. And I guess I didn’t read the byline closely enough. Sorry about that. []
  2. Following a correction, pursuant to how the Fibonacci sequence actually “works”. []

About Rob Friesel

Software engineer by day, science fiction writer by night. Author of The PhantomJS Cookbook and a short story in Please Do Not Remove. View all posts by Rob Friesel →

3 Responses to Danielewski.js

Leave a Reply

Your email address will not be published. Required fields are marked *

*

*