Skip to content

Latest commit

 

History

History
36 lines (29 loc) · 1.65 KB

File metadata and controls

36 lines (29 loc) · 1.65 KB

Binary Data

The binary data library provides a domain-specific language for manipulation of binary data, or structured byte sequences, as they appear in everyday software such as networking tools or graphics file manipulation. The binary data domain-specific language uses the metaprogramming features of Dylan to a large extent.

The design goals are manifold: concise expressive syntax, efficient conversion between byte vectors and high level objects (in both directions, by using zerocopy and lazy parsing technology). The source code of this library is available under a MIT license at GitHub. A large body of implemented binary data formats using this library is also available at GitHub.

Inspiration for this library is taken among others from the defstorage system available as part of the Genera Common Lisp operating system and the swiss-army knife for interactive packet manipulation scapy (Web archive).

For further information, you might want to read our published papers about a TCP/IP stack written entirely in Dylan:

.. toctree::
   :maxdepth: 3

   usage
   reference
   internals