Let's write β

プログラミング中にできたことか、思ったこととか

Juliaで引数にアクセスするには

昨日のncursesの件はなんだかFFI関連のややこしい事のようなので、すこし経過をみまもるとして
Juliaから引数にアクセスする方法をしらべてみました。だいたいargsやらの名称だろうとおもい
ソースの中から検索するとひっかかりました。

find . -name "*.j" -type f | xargs grep 'ARG' 

./j/linalg_suitesparse.j:const _jl_CHOLMOD_TOO_LARGE     = int32(-3)   # failure: integer overflow occured 
./j/client.j:            global ARGS
./j/client.j:            ARGS = ARGS[i:end]
./j/client.j:        if !anyp(a->(a=="--worker"), ARGS)
./j/client.j:        (quiet,repl) = process_options(ARGS)

このようにARGSというものでアクセスできるようです。
そこで、

println(ARGS)

というスクリプトをshow-args.jとして実行してみると

./julia/julia show-args.j 34 Hoge
{"show-args.j", "34", "Hoge"}

このように引数がとれている事がわかります。