Skip to content

Instantly share code, notes, and snippets.

View akkartik's full-sized avatar

Kartik Agaram akkartik

View GitHub Profile
def create
@user = User.find_by_email(params[:user][:email]) || User.create(params[:user])
return render(:action => 'new') if @user.new_record? # redisplay form
log('Created', @user)
session[:user] = @user
end
@akkartik
akkartik / ac.scm
Created July 24, 2010 03:54
Bare-bones implementation to compile def and mac and list (http://arclanguage.org/item?id=12057).
(define (ac s env)
(cond ((string? s) (ac-string s env))
((literal? s) s)
((eqv? s 'nil) (list 'quote '()))
((symbol? s) (ac-var-ref s env))
((eq? (xcar s) 'quote) (list 'quote (cadr s)))
((eq? (xcar s) 'quasiquote) (ac-qq (cadr s) env))
((eq? (xcar s) 'if) (ac-if (cdr s) env))
((eq? (xcar s) 'fn) (ac-fn (cadr s) (cddr s) env))
((eq? (xcar s) 'assign) (ac-set (cdr s) env))
(require (lib "mzlib/pregexp"))
; Repeatedly run regexp-replace over a list of words.
(let ((words (call-with-input-file "ztmp.words2"
(lambda(f) (read f)))))
(letrec ((fn (lambda()
(print "iter") (newline)
(map (lambda(x) (regexp-replace (pregexp "b.*") x ""))
; You can replace b with any letter. The input doesn't
; even have any b's.
("aaaa://aaaaa.aaaaaaaaaaaa.aaa/aaaaaaaaaaaa" "aaa" "aaaaaaaaa" "aaaa://aaa.aaaaaaaaaaaa.aaa/" "aaaa" "aaa" "aaa" "aaaa" "aaa" "aaaaaaaaa," "aa" "aa" "aaaa" "aa" "aaaa" "aaaaaa," "aaa" "aaaaa" "aaaaaaa." "aaaa" "aaaa" "aaaaaaaaaa" "a" "aaaaaaaa" "aaaaaaaaaa," "aaa" "aaaaaa" "aa" "a" "aaaa." "aaaa://aaaaa.aaaaaaaaaa.aaa/aaaaaaaaaaaaaaaaaaaaaa" "aaa" "aaaaaaaa" "aaaaaaaaaaa" "aaaa://aaaaaa.aaaaaaaa.aaa/aaaaa/aaaaaaaa/aaaaaaa.aaaa" "<a>aaaaaaaa" "aaaaaaa" "aaaa" "aaaaa" "aa:a" "aaaaaaaaaaa" "aa" "aaaaaaaaaaaa" "aaa" "aaaaaaa" "aaaaa" "aaaaaaaaaaa" "aaa" "aaaa" "aaaaa" "aaaaa." "aaaa" "aaaa" "aaaaaaaa" "aaaaa" "aaaaaaaaa'a" "aaaaaaaa" "aaaaa" "aaa" "aa" "aaaa" "aaaaaa" "aaa" "&aaaa;aa&aaaa;" "aaaa" "aa" "aaaa" "aa:a" "aaaaa.</a><a" "aaaa=\"aaaa://aaaaaaaaaa.aaa/aaaaa?aaa=aaaaaaaaa&aaa;aaa=aaaa://aaaaa.aaaaaaaa.aaa/aaaaa/aaaaaaaa/aaaaaaa.aaaa\"><aa" "/>aaa" "aa" "aaaaaaaaaa" "aaaaaaaaa</a><aa" "/>" "<a" "aaaa=\"aaaa://aaa.aaaaaaaa.aaa/aaaaa/aaaaa-aaaaaaaaa/aaaaaaaaaaaa\">aaaaa" "aaaaaaaaa" "aa" "aaaaaaaa</a>" "aaa