glazer started as a blazing-fast NIF JSON codec (single-pass, straight to/from native terms - no AST). In 0.3.0, the same engine now parses and encodes YAML and CSV too.
The numbers:
-
JSON: faster encoding than everything I tried -
jason,thoas,euneus,torque,jiffy,simdjsone, OTPjson- and neck-and-neck withtorque(Rustsonic-rs) on decoding -
YAML: 10x faster than
yaml_rustler/fast_yaml, up to 100x faster thanyamerl/ymlr -
CSV: 2-20x faster than
nimble_csv, andcsv/erl_csvdon’t even finish on large files (timeout) while glazer is done
Plus: streaming decode for JSON/CSV, bignums support, configurable null, zero external C++ deps.
def deps do
[
{:glazer, "~> 0.3"}
]
end
Charts and full benchmarks: https://github.com/saleyn/glazer#performance
Hex: https://hex.pm/packages/glazer
Break it, measure it, tell me what’s slow.
Best,
Serge






















