Sigrid Solveig Haflínudóttirrename u?int{8,16,32,64} → {u,s}{8,16,32,64}4b22ab11 year agoHistory
48 lines · 830 B · C
RawDownload
#include "sl.h"#include "cvalues.h"#include "mt19937-64.h"#include "timefuncs.h"#include "random.h" static mt19937_64 ctx; voidrandomize(void){	unsigned long long tm = sec_realtime() * 1000.0;	init_by_array64(&ctx, &tm, 1);} BUILTIN("rand", rand){	USED(args); USED(nargs);#ifdef BITS64	return fixnum(genrand64_int64(&ctx) >> 3);#else	return fixnum(genrand64_int64(&ctx) >> (32+3));#endif} BUILTIN("rand-u32", rand_u32){	USED(args); USED(nargs);	return mk_u32(genrand64_int64(&ctx) >> 32);} BUILTIN("rand-u64", rand_u64){	USED(args); USED(nargs);	return mk_u64(genrand64_int64(&ctx));} BUILTIN("rand-double", rand_double){	USED(args); USED(nargs);	return mk_double(genrand64_real1(&ctx));} BUILTIN("rand-float", rand_float){	USED(args); USED(nargs);	return mk_float(genrand64_real1(&ctx));}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t