Get Homebrew installed on your mac if you don't already have it
Install highlight. "brew install highlight". (This brings down Lua and Boost as well)
function nestCollection(model, attributeName, nestedCollection) { | |
//setup nested references | |
for (var i = 0; i < nestedCollection.length; i++) { | |
model.attributes[attributeName][i] = nestedCollection.at(i).attributes; | |
} | |
//create empty arrays if none | |
nestedCollection.bind('add', function (initiative) { | |
if (!model.get(attributeName)) { | |
model.attributes[attributeName] = []; |
Get Homebrew installed on your mac if you don't already have it
Install highlight. "brew install highlight". (This brings down Lua and Boost as well)
var isPortTaken = function(port, fn) { | |
var net = require('net') | |
var tester = net.createServer() | |
.once('error', function (err) { | |
if (err.code != 'EADDRINUSE') return fn(err) | |
fn(null, true) | |
}) | |
.once('listening', function() { | |
tester.once('close', function() { fn(null, false) }) | |
.close() |
// Lack of tail call optimization in JS | |
var sum = function(x, y) { | |
return y > 0 ? sum(x + 1, y - 1) : | |
y < 0 ? sum(x - 1, y + 1) : | |
x | |
} | |
sum(20, 100000) // => RangeError: Maximum call stack size exceeded | |
// Using workaround |
<html><head><title>Genie Notes</title> | |
<link rel="stylesheet" href="../global.css"/> | |
</head><body><pre> | |
不知道学 Genie 什么用场, 也许学后 C 阴影可以小些 | |
教程地址 https://live.gnome.org/Genie | |
粗略的翻译可以看这里: | |
http://www.minghao.hk/bbs/read.php?tid=433 | |
编写 Gtk 图形界面的教程这里: | |
https://live.gnome.org/GtkGuiTutorial |
#include <stdio.h> | |
#include <libguile.h> | |
int main(int argc, char** argv) { | |
SCM func; | |
scm_init_guile(); | |
scm_c_primitive_load("c_call_guile.scm"); | |
func = scm_variable_ref(scm_c_lookup("show-me")); | |
scm_call_0(func); |
Ok, I geeked out, and this is probably more information than you need. But it completely answers the question. Sorry. ☺
Locally, I'm at this commit:
$ git show
commit d6cd1e2bd19e03a81132a23b2025920577f84e37
Author: jnthn <[email protected]>
Date: Sun Apr 15 16:35:03 2012 +0200
When I added FIRST/NEXT/LAST, it was idiomatic but not quite so fast. This makes it faster. Another little bit of masak++'s program.
digraph G { | |
ranksep=1.0; | |
ratio=0.6; | |
APL [color=Blue, shape=box]; | |
Simula [color=Blue, shape=box]; | |
LISP [color=Blue, shape=box]; | |
ALGOL [color=Blue, shape=box]; | |
Planner [color=Blue, shape=box]; | |
ACTOR [shape=hexagon]; |
// NEW VERSION AVAILABLE: Check out my GitHub repository at | |
// https://github.com/letorbi/smoothie for a new and improved version. | |
// Require() 0.3.4 unstable | |
// | |
// Copyright 2012,2013 Torben Haase <http://pixelsvsbytes.com/> | |
// | |
// Require() is free software: you can redistribute it and/or modify it under | |
// the terms of the GNU Lesser General Public License as published by the Free | |
// Software Foundation, either version 3 of the License, or (at your option) any |
(use '[clojure.core.match :only [match]]) | |
(defn evaluate [env [sym x y]] | |
(match [sym] | |
['Number] x | |
['Add] (+ (evaluate env x) (evaluate env y)) | |
['Multiply] (* (evaluate env x) (evaluate env y)) | |
['Variable] (env x))) | |
(def environment {"a" 3, "b" 4, "c" 5}) |