01/13/2012. From a lecture by Professor John Ousterhout at Stanford, class CS140
Here's today's thought for the weekend. A little bit of slope makes up for a lot of Y-intercept.
[Laughter]
// Diamond Kata | |
fn main() { | |
let character = &std::env::args().collect::<Vec<String>>()[1]; | |
diamond(character.chars().next().unwrap() as u8) | |
} | |
fn diamond(c: u8) { | |
let max_rows = c - b'A'; | |
let mut rows = Vec::with_capacity(max_rows as usize); |
// builds the tree for the secret stage for the binary bomb | |
// http://blog.carlosgaldino.com/defusing-a-binary-bomb-with-gdb.html | |
#include <stdio.h> | |
#include <stdlib.h> | |
struct node { | |
int data; | |
struct node *left; | |
struct node *right; | |
}; |
-module(msort). | |
-export([sort/1]). | |
sort([]) -> | |
[]; | |
sort([X]) -> | |
[X]; | |
sort(List) -> | |
{Xs, Ys} = split(List), | |
merge(sort(Xs), sort(Ys)). |
struct Person { | |
name: String, | |
age: u8 | |
} | |
fn main() { | |
// only works if compiled with `--test` flag. | |
// let p = Person::create_with(String::from("Carlos"), 26); | |
let p = Person { name: String::from("Carlos"), age: 26 }; | |
println!("{} {}", p.name, p.age); |
#include <stdio.h> | |
/* Bitwise integer addition */ | |
int plus(int x, int y) | |
{ | |
int result = x ^ y; | |
int carry = (x & y) << 1; | |
if (carry != 0) | |
return plus(result, carry); |
#include <stdio.h> | |
int bit_and(int x, int y) | |
{ | |
return ~(~x | ~y); | |
} | |
int main(int argc, char **argv) | |
{ | |
printf("%.8x\n", bit_and(6, 5)); |
def flatten(arr) | |
out = [] | |
arr.each do |a| | |
if a.is_a?(Array) | |
out += flatten(a) | |
else | |
out << a | |
end | |
end |
lengthOf x | |
| length x == 0 = "0" | |
| otherwise = length x | |
{-- | |
lengthOf.hs:3:17: | |
Couldn't match expected type `[Char]' with actual type `Int' | |
In the return type of a call of `length' | |
In the expression: length x | |
In an equation for `lengthOf': |
I hereby claim:
To claim this, I am signing this object: