VaxData
VaxData.jl is a direct port to Julia from libvaxdata [^1]. See this report for an in-depth review of the underlying structure and differences between VAX data types and IEEE types.
There are 5 Vax datatypes implemented by this package:
primitive type VaxInt16 <: VaxInt 16 end
primitive type VaxInt32 <: VaxInt 32 end
primitive type VaxFloatF <: VaxFloat 32 end
primitive type VaxFloatG <: VaxFloat 64 end
primitive type VaxFloatD <: VaxFloat 64 end
Conversion to and from each type is defined; Vax types are promoted to the next appropriately sized type supporting math operations:
promote_type(VaxFloatF, Float32)
Float32
promote_type(VaxFloatF, VaxFloatF)
Float32
promote_type(VaxFloatF, Float64)
Float64
[^1]: Baker, L.M., 2005, libvaxdata: VAX Data Format Conversion Routines: U.S. Geological Survey Open-File Report 2005-1424 (http://pubs.usgs.gov/of/2005/1424/).