Skip to content

Instantly share code, notes, and snippets.

View erichocean's full-sized avatar

Erich Ocean erichocean

  • Xy Group Ltd
  • North Carolina
View GitHub Profile
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<title>Hub Demo</title>
<style type="text/css" media="screen">
</style>
Parsing this:
var x;
Produces this parse tree:
[true
,[0 Program
,6
,[[6 FormalParameterList
function p_ES5_Identifier(s, p) {
}
/* @license ========================================================================== SproutCore Costello -- Property Observing Library Copyright ©2006-2009, Sprout Systems, Inc. and contributors. Portions copyright ©2008-2009 Apple Inc. All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRI
function Program(str){
var tbl=[],pos=0,l=str.length+1;while(l--)tbl.push([]);l=str.length;
function Program(a){var x,p=pos,c;if(x=tbl[p][0]){pos=x[1];a.push([p,0]);return 1}if(x==false){return 0}c=[];return fin(c,p,0,_Program(c),a)}
function FunctionBody(a){var x,p=pos,c;if(x=tbl[p][1]){pos=x[1];a.push([p,1]);return 1}if(x==false){return 0}c=[];return fin(c,p,1,_FunctionBody(c),a)}
function FunctionDeclaration(a){var x,p=pos,c;if(x=tbl[p][2]){pos=x[1];a.push([p,2]);return 1}if(x==false){return 0}c=[];return fin(c,p,2,_FunctionDeclaration(c),a)}
function FunctionExpr(a){var x,p=pos,c;if(x=tbl[p][3]){pos=x[1];a.push([p,3]);return 1}if(x==false){return 0}c=[];return fin(c,p,3,_FunctionExpr(c),a)}
function FormalParameterList(a){var x,p=pos,c;if(x=tbl[p][4]){pos=x[1];a.push([p,4]);return 1}if(x==false){return 0}c=[];return fin(c,p,4,_FormalParameterList(c),a)}
function UseStrictDirective(a){var x,p=pos,c;if(x=tbl[p][5]){pos=x[1];a.push([p,5]);return 1}if(x==false){return 0}c=[];return fin(c,p,5,_UseStrict
function Program(str){
var tbl=[],pos=0,l=str.length+1;while(l--)tbl.push([]);l=str.length;
function Program(a){var x,p=pos,c;if(x=tbl[p][0]){pos=x[1];a.push([p,0]);return 1}if(x==false){return 0}c=[];return fin(c,p,0,_Program(c),a)}
function FunctionBody(a){var x,p=pos,c;if(x=tbl[p][1]){pos=x[1];a.push([p,1]);return 1}if(x==false){return 0}c=[];return fin(c,p,1,_FunctionBody(c),a)}
function FunctionDeclaration(a){var x,p=pos,c;if(x=tbl[p][2]){pos=x[1];a.push([p,2]);return 1}if(x==false){return 0}c=[];return fin(c,p,2,_FunctionDeclaration(c),a)}
function FunctionExpr(a){var x,p=pos,c;if(x=tbl[p][3]){pos=x[1];a.push([p,3]);return 1}if(x==false){return 0}c=[];return fin(c,p,3,_FunctionExpr(c),a)}
function FormalParameterList(a){var x,p=pos,c;if(x=tbl[p][4]){pos=x[1];a.push([p,4]);return 1}if(x==false){return 0}c=[];return fin(c,p,4,_FormalParameterList(c),a)}
function UseStrictDirective(a){var x,p=pos,c;if(x=tbl[p][5]){pos=x[1];a.push([p,5]);return 1}if(x==false){return 0}c=[];return fin(c,p,5,_UseStrict
/* @license
==========================================================================
SproutCore Costello -- Property Observing Library
Copyright ©2006-2009, Sprout Systems, Inc. and contributors.
Portions copyright ©2008-2009 Apple Inc. All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
[true,[0,161741,124,1456,120,1455,121,1455,-1,2,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112,1,,112
@erichocean
erichocean / client.js
Created January 24, 2010 08:30 — forked from felixge/client.js
node.js load testing client
var
PARALLEL_CONNECTS = 10,
http = require('http'),
sys = require('sys'),
connectionCount = 0,
messageCount = 0;
lastMessages = 0;
function addClient() {
r = Redis.new(opts)
r.lpush("srckey","bar")
r.rpoplpush("srckey","newkey")
# srckey is now an empty list
r = Redis.new(opts)
puts r.del("newkey")
# newkey no longer exists
puts r.rpoplpush("srckey","newkey").inspect
The buggy output is: