Skip to content

Instantly share code, notes, and snippets.

View sanxiyn's full-sized avatar

Seo Sanghyeon sanxiyn

  • Seoul, South Korea
View GitHub Profile
@sanxiyn
sanxiyn / lt.idr
Last active December 10, 2015 03:58
Idris
module lt
data lt : Nat -> Nat -> Set where
succ : lt x (S x)
widen : lt x y -> lt x (S y)
next : lt x y -> lt (S x) (S y)
next succ = succ
next (widen p) = widen (next p)
@sanxiyn
sanxiyn / db.c
Created January 15, 2013 12:26
DB
typedef unsigned int sz;
typedef unsigned short ix;
int compare(const char* a, const char* b, sz n) {
while (n) {
if (*a != *b) {
return (unsigned char)*a - (unsigned char)*b;
}
if (*a == 0) {
return 0;
@sanxiyn
sanxiyn / calc.rs
Created January 29, 2013 05:38
Calc
pure fn to_number(byte: u8) -> int {
(byte - '0' as u8) as int
}
pure fn to_byte(number: int) -> u8 {
(number + '0' as int) as u8
}
pure fn lt(a: &[u8], b: &[u8]) -> bool {
let alen = a.len(), blen = b.len();
@sanxiyn
sanxiyn / count.rs
Last active December 13, 2015 21:18
Count
extern mod core;
use core::comm;
use core::task;
fn find_max_and_count(list: ~[int]) -> (int, uint) {
let min = list.min();
let max = list.max();
let range = (max - min) as uint;
let mut count = vec::from_elem(range + 1, 0);
@sanxiyn
sanxiyn / minmax.rs
Created March 5, 2013 18:12
Minimum and Maximum
extern mod std;
fn lt<T: Ord>(a: Option<T>, b: Option<T>) -> bool {
match (a, b) {
(None, None) => false,
(None, Some(_)) => true,
(Some(_), None) => false,
(Some(a), Some(b)) => a < b
}
}
@sanxiyn
sanxiyn / BTC
Created March 9, 2013 06:22
Bitcoin address
1MEVAAwyyrBvmBe5PTVGLePWnZN7D5VrGY
@sanxiyn
sanxiyn / Makefile
Created March 22, 2013 08:26
JSVal and ABI
ifndef ARM
run: libjsval.so js.x64
LD_LIBRARY_PATH=. ./js.x64
else
run: libjsval.so js.arm
endif
clean:
rm -f *.ll *.s *.so *.x64 *.arm
@sanxiyn
sanxiyn / simd_sum.rs
Created July 19, 2013 17:29
SIMD sum
extern mod extra;
fn test_vector() -> ~[f32] {
let mut v = ~[];
for std::uint::range(0, 64) |i| {
v.push(i as f32);
}
v
}
@sanxiyn
sanxiyn / SSH
Created September 23, 2013 15:34
SSH public key
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDlMgzbZiFoYZAG12L4yTLyijOgu65mhOGWzTen+PfEDuL17/iYw49YOqd/T80z5dEVG6/E26in/Xkamr9NwYs6exxL3nKmRkDUbud8YJFZNwNQQY1UWUo12oRy0aoioBZAU0FJhWMsUFFyna7bgFO/MKxiHBFGiNERpl7iRR8RQ+oO84jZrlgrNX0klwMUFEskUbWFvjMSxpCePbsr9zu2xOiRyDbP8dF8tWnqU8tSJ7f4YzVXBYcjOUV1tBYZwtb5XSS6Oex4uyFOXyLyan/MkHHiY9lFE/qmO3ZVQibGK+OrKdN7QtHXsuOHaUW9kRLTP5k1BLsPSFSKF4RNTMlP [email protected]
@sanxiyn
sanxiyn / host.sh
Created October 4, 2013 07:38
Weak symbol
#!/bin/sh
gcc -shared -fPIC sub.c -o libhost.so
gcc main.c -L. -lhost -o host
LD_LIBRARY_PATH=. ./host