using OnlinePCA
using ArgParse:
    ArgParseSettings, parse_args, @add_arg_table!

# options
function parse_commandline()
    s = ArgParseSettings()

    @add_arg_table! s begin
        "--csvfile", "-c"
        help = "input file (Matrix Market format)"
        arg_type = AbstractString
        required = true
        "--binfile", "-b"
        help = "output file (Binary format)"
        arg_type = AbstractString
        required = true
    end

    return parse_args(s)
end

# main
function main()
    parsed_args = parse_commandline()
    println("Parsed args:")
    for (arg, val) in parsed_args
        println("  $arg  =>  $val")
    end

    OnlinePCA.csv2bin(csvfile=parsed_args["csvfile"],
        binfile=parsed_args["binfile"])
end

main()