2 releases
new 0.1.1 | Mar 29, 2025 |
---|---|
0.1.0 | Mar 29, 2025 |
#107 in #dataset
13KB
287 lines
Wave Serialization Object Notation
WSON (Wave Serialized Object Notation) is the default data serialization format for the Wave programming language, designed to overcome the limitations of traditional JSON while providing enhanced functionality and efficiency. WSON maximizes performance while maintaining a human-readable and writable structure, enabling faster and safer data exchange across various environments.
Features
1. Strict Type System
WSON maintains clear data types, eliminating the unpredictability caused by JSON's dynamic typing. This ensures type safety during serialization and deserialization.
2. High Performance
WSON is designed with minimal overhead, offering fast data processing speeds. This is particularly effective when serializing large amounts of data.
3. Wave-Friendly Design
WSON is designed to integrate seamlessly with the Wave programming language and is natively supported by the standard Wave library.
4. Readability and Easy Parsing
While maintaining a syntax similar to JSON, WSON allows for more concise expressions, making it easier for humans to read and modify. Additionally, it has been optimized for efficient parsing.
5. Support for Various Data Structures
WSON supports not only simple key-value pairs but also complex data structures like native arrays, structs, and tuples, enabling more flexible data representation.
Use Cases
- Data storage and transmission for Wave-based applications
- Network communication and API data formats
- File storage and configuration file formats
- Serialization and deserialization of large datasets
Conclusion
WSON reflects the philosophy of the Wave language by aiming for more efficient and powerful data serialization. It addresses the shortcomings of traditional JSON while retaining an intuitive syntax, making it easier for developers to adopt. Going forward, WSON will establish itself as the standard data format within the Wave ecosystem, delivering strong performance across various environments.
Dependencies
~3–4.5MB
~71K SLoC