Skip to content

Instantly share code, notes, and snippets.

View gvinter's full-sized avatar

Galen Vinter gvinter

View GitHub Profile
@gvinter
gvinter / sicp2.17.scm
Created June 16, 2011 14:52 — forked from klandergren/sicp2.17.scm
SunnyCloud: 2.17 and 2.18
;; 2.17
(define (last-pair list)
(if (= (cdr list) ()
(car list) ;; if statement parens fixed
(last-pair (cdr list)) ;; now it's called last-pair recursively
;; 2.18
(define (reverse list)
(if (= (cdr list) ()) ;; if statement inserted
(= new-list (cons (car list) ()))) ;; extra paren added for if statement
@gvinter
gvinter / gist:1029936
Created June 16, 2011 18:45
SICP Exercise 2.2
;; SICP Exercise 2.2
(define (make-segment (start-segment end-segment))
(define (start-segment (x y))
(= (cons (x y)) start-segment)
(print-point start-segment))
(define (end-segment (x y))
@gvinter
gvinter / gist:1031897
Created June 17, 2011 17:52
JS Form and Output Excercise
<script type="text/javascript">
var person = document.getElementsByName ();
person["name"] = document.form.name.value;
person["age"] = document.form.age.value;
person["location"] = document.form.location.value;
function printPerson(data) {
document.getElementById("demo").innerHTML = person.age;
@gvinter
gvinter / sicp_2.2.scm
Created June 20, 2011 00:23 — forked from klandergren/sicp_2.2.scm
SICP Exercise 2.2
;; 2.2
;; SICP Exercise 2.2
;; takes x and y coordinates to create a point
(define (make-point x y)
(cons x y))
(define (make-segment x1 y1 x2 y2)
;; needs implementation
(let
@gvinter
gvinter / gist:1034982
Created June 20, 2011 01:16
Does alist contain x?
(define (contains x alist)
(define (foldl f(x accum) alist)
(null? alist)
#false
(if (= (car alist) x)
#true
(foldl f(x accum) (cdr alist))
@gvinter
gvinter / gist:1036932
Created June 21, 2011 00:09
Javascript Form
<form>
Name: <Input type="textbox" name="name" /> <br />
Check box if you're alive: <Input type="checkbox" name="alive" /> <br />
<Input type="submit" name="submit" value="we win click!" onClick="pulse(form)" />
</form>
<script type="text/javascript">
function pulse(data){
@gvinter
gvinter / gist:1038207
Created June 21, 2011 16:12
Simple Javascript Function
function increment(x) {
return x + 1;
}
increment(2);
@gvinter
gvinter / gist:1042629
Created June 23, 2011 14:23
BubbleSort
function bubble_sort(an_array){
var n = an_array.length;
var found_inversion = true;
while(found_inversion){
found_inversion = false;
for (var i=1;i<n;i++){
if(an_array[i-1] > an_array[i]) {
found_inversion = true;
@gvinter
gvinter / gist:1049091
Created June 27, 2011 15:26
Merge Sort
function merge_sort(a_array) {
if (a_array.length < 2) {
return a_array;
}
var mid = parseInt(a_array.length / 2);
var left = a_array.slice(0, mid);
var right = a_array.slice(mid, a_array.length);
return merge(merge_sort(left), merge_sort(right));
}
@gvinter
gvinter / gist:1056493
Created June 30, 2011 15:36
Doubly linked lists - linknode
function make_listnode(prev_list, x, next_list) {
var node = new Object();
node["prev"] = prev_list;
node["value"] = x;
node["next"] = next_list;
return node;
}
var alist = make_listnode (blist, 1, null)