Skip to content

Instantly share code, notes, and snippets.

datatype MetasyntacticVariable = foo | bar | baz | quux;
interface MetasyntacticVariable {}
interface foo implements MetasyntacticVariable {}
interface bar ...
$ rvm info
jruby-1.6.7@iopro:
system:
uname: "Linux phantasmagoria 2.6.32-5-amd64 #1 SMP Sun May 6 04:00:17 UTC 2012 x86_64 GNU/Linux"
bash: "/bin/bash => GNU bash, version 4.1.5(1)-release (x86_64-pc-linux-gnu)"
zsh: "/usr/bin/zsh => zsh 4.3.10 (x86_64-unknown-linux-gnu)"
rvm:
@tsmacdonald
tsmacdonald / gist:7328178
Last active December 27, 2015 12:48
Wizard-Professor Setup
  • git clone https://github.com/tsmacdonald/wizard-professor.git or copy it from the turnin directory
  • Create ~/.sbclrc and paste in the following:
(let ((quicklisp-init "/homes/tim.macdonald/quicklisp/setup.lisp"))
	(when (probe-file quicklisp-init)
	(load quicklisp-init)))
  • Create .config/common-lisp/source-registry.conf.d/projects.conf and paste in the following, changing the path as necessary:
X:1
T:The Edinburgh Fire Brigade
C:David M. Gardner
M:C|
L:1/8
K:Dmix =c
A2 AB ABdf | edef edBd | A2 AB ABdf | edef a2 a2 |
A2 AB ABdf | edef edBd | AFDF AFDF | GECE D2 D2 :|
|: DEFG ABAF | GECE GECE | DEFG ABAF | GECE G2 G2 |
DEFG ABAF | GECE GECE | AFDF AFDF | GECE D2 D2 :|
(* Iterative approach; O(1) memory *)
fun factorial n =
let
val tally = ref 1
val i = ref 1
in
while !i < n do
tally := !tally * i
i := !i + 1;
end;
def fib(n, i=1, a=0, b=1):
if i == n: return b
return fib(n, i + 1, b, a + b)
(defun fib (n &optional (i 1) (a 0) (b 1))
(if (= i n)
b
(fib n (1+ i) b (+ a b))))
;;Results on an 8-year old laptop:
CL-USER> (time (fib 100000))
Evaluation took:
(defun fib (n &optional (a 0) (b 1))
(if (zerop n)
a
(fib (1- n) b (+ a b))))
[{"category":"Leisure Offer / Activities","division":"dealbook","service":"Zoo / Animal Park","options":[{"price_max":20.0,"price_min":10.0,"discount_max":0.6,"discount_min":0.5,"components":[],"option_titles":[{"title":"Admission for Two People"}]},{"price_max":40.0,"price_min":20.0,"discount_max":0.6,"discount_min":0.5,"components":[],"option_titles":[{"title":"Admission for Four People"}]},{"price_max":60.0,"price_min":30.0,"discount_max":0.6,"discount_min":0.5,"components":[],"option_titles":[{"title":"Admission for Six People"}]},{"price_max":80.0,"price_min":40.0,"discount_max":0.6,"discount_min":0.5,"components":[],"option_titles":[{"title":"Admission for Eight People"}]},{"price_max":20.0,"price_min":10.0,"discount_max":0.8,"discount_min":0.5,"components":[],"option_titles":[{"title":"Two Full-Day Admissions"}]},{"price_max":40.0,"price_min":20.0,"discount_max":0.8,"discount_min":0.5,"components":[],"option_titles":[{"title":"Four Full-Day Admissions"}]},{"price_max":60.0,"price_min":30.0,"discount_ma
X: 1
T: The Emperor of Germany's Favourite Air
T: With Nine New Variations for the Piano Forte
T: Composed by Robert Mackintosh
M: 3/8
L: 1/8
K: Fmaj
V: 1
A2 G | !turn!FBA | G/>A/B/G/A/F/ | (A/G/)(F/E/)(D/C/) | A2 G | !turn!FBA | G/B/A/d/c/E/ | [A,CF]3 :|: +p+ !turn!f/>e/f/g/a/f/ | +f+ (a/g/)(f/e/)(d/c/) | +p+ !turn!d/>^c/d/e/f/d/ | +f+ (f/e/)(d/c/)(B/A/) | +p+ !turn!B/>A/B/c/d/B/ | +f+ (d/c/)(B/A/)(G/F/) | G/>A/B/G/A/F/ | (A/G/)(F/E/)(D/C/) | +p+ A2 G | !turn!FBA | G/>A/B/G/A/F/ | (A/G/)(F/E/)(D/C/) | +f+ A2 G | !turn!FBA | G/B/A/d/c/E/ | [A,CF]3 :|
%