Skip to content

Instantly share code, notes, and snippets.

@robkuz
robkuz / gist:5091870
Created March 5, 2013 17:04
just a bit of function movement ...
class A
foo: -> "foo"
bar: (cb)-> cb()
a = new A
b = a.bar
b a.foo #gets me "foo"
closure_creator = (value)->
-> value * value
result = []
for i in [1..3]
result.push closure_creator i
for f in result
console.log f()
result = []
for i in [1..3]
result.push -> i * i
for f in result
console.log f()
@robkuz
robkuz / main.rb
Created February 11, 2013 21:47
DataWriter::write is called but SensorData::save is never called. Why?
require "rubygems"
require "bundler/setup"
require 'celluloid'
require 'yaml'
require 'data_mapper'
require './src/config_reader.rb'
require './src/sensor.rb'
@robkuz
robkuz / mongoid_test.rb
Created February 11, 2013 20:22
A total crash of Rubinius when running this program
require 'mongoid'
class Data
include Mongoid::Document
field :text
end
Mongoid.configure do |config|
config.sessions = {
:default => {
:hosts => ["127.0.0.1:27017"],
@robkuz
robkuz / gist:4348478
Created December 20, 2012 20:54
console output of the instrumented code
######################## crafty.js:7740
avg drawing time: 6.5435869565217395 crafty.js:7741
avg drawing time cycle: 9.13 crafty.js:7742
avg dirty rects1: 29.44 crafty.js:7743
avg dirty rects2: 16.21 crafty.js:7744
avg objects: 367.2648913043478 crafty.js:7745
avg objects cycle: 399.8 crafty.js:7746
avg area cycle: 11206498.56 crafty.js:7747
-------------------- crafty.js:7758
100 Frame: 9242 crafty.js:7759
@robkuz
robkuz / gist:4348456
Created December 20, 2012 20:52
instrumented code for DrawManager.draw
draw: function draw() {
var s0 = new Date().getTime();
var len_dirty_rects1 = dirty_rects.length;
var drects1 = _.clone(dirty_rects);
//if nothing in dirty_rects, stop
if (!dirty_rects.length && !dom.length) return;
var i = 0, l = dirty_rects.length, k = dom.length, rect, q,
@robkuz
robkuz / gist:3907914
Created October 17, 2012 20:23
sweet.js error
macro lock {
case ($x) $block => {
locking($x, function);
}
}
lock ("A") {
console.log("foo");
};
@robkuz
robkuz / enum.coffee
Created August 9, 2012 14:56
DIY Enums & tests
#take care I am using requirejs for modules
define [], ->
Enum = (enumeration)->
check = (value)->
newval = null
for key, val of enumeration
if val == value
newval = value
break
@robkuz
robkuz / foobaz.coffee
Created May 18, 2012 10:30
easy adhoc package and dependency system using Coffeescripts destructuring assignment
class A
class B
# packages and their artifacts must be defined as object literals
window.foobaz = {
A
B
}