Skip to content

Instantly share code, notes, and snippets.

View talentdeficit's full-sized avatar

alisdair sullivan talentdeficit

View GitHub Profile
tanga:jsx alisdair$ ./rebar compile
==> jsx (compile)
Compiled src/jsx_to_term.erl
Compiled src/jsx_to_json.erl
Compiled src/jsx_verify.erl
Compiled src/jsx_utils.erl
Compiled src/jsx_decoder.erl
Compiled src/jsx_decoder.erl
use std;
import std::io;
fn map(list: [str], f: fn(str)) {
for name in list { f(name); }
}
fn main() {
let ask_about = fn@(name: str) -> () { alt name {
"talentdeficit" { io::print(#fmt("%s is right\n", name)) }
case foo() of
X when X > 1 -> ...;
_ -> ...
end.
case foo() of
X when X > 1 -> ...;
_ -> ...
end.
try foo()
catch
error:_ -> ...;
throw:_ -> ...
end.
some_random_function
(X) when X > 1 -> ...;
(X) -> ...;
(X, Y) when X > 1 -> ...;
(X, Y) -> ...
end.
Error: #<NativeException: org.virtualbox_4_1.VBoxException: The function "powerDown" returned an error condition: "Invalid machine state: RestoringSnapshot (must be Running, Paused or Stuck)" (0x80bb0002)>
handle_cast(Msg, State) ->
some_logging_function(Msg, State),
erlang:error(function_clause).
@talentdeficit
talentdeficit / gist:5298374
Created April 3, 2013 04:07
closest possible to a clean shell start
#!/usr/bin/env escript
%% -*- erlang -*-
%%! -noshell
main(_) ->
error_logger:tty(false),
user_drv:start(),
shell:server(false, false).
Erlang R16B (erts-5.10.1) [source] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false]
@talentdeficit
talentdeficit / gist:5298385
Created April 3, 2013 04:09
clean shell take 2
#!/usr/bin/env escript
%% -*- erlang -*-
%%! -nouser
main(_) ->
error_logger:tty(false),
user_drv:start(),
shell:server(false, false).
iex(4)> f = fn
...(4)> nil -> :null
...(4)> x -> x
...(4)> end
#Function<erl_eval.6.17052888>
iex(5)> JSEX.Customize.defdecoder(MyDecoder, f)
iex:5: redefining module MyDecoder
** (CompileError) iex:5: function f/0 undefined