2 releases

new 0.1.1 Mar 29, 2025
0.1.0 Mar 29, 2025

#107 in #dataset

MPL-2.0 license

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