A C implementation of the Fudge message encoding specification. Full details of Fudge, including the specification can be found at the Fudge homepage. The C implementation is hosted on GitHub.
The GitHub Fudge-C repository has a wiki that contains more in depth information about the project, the Fudge specification and how to build the library.
What is Fudge?
To quote the Fudge homepage: Fudge is a hierarchical, typesafe, binary, self-describing message encoding specification.
Hierarchical:
Fudge messages aren't just a flat structure, they can be nested, creating larger, more complex data structures.
Typesafe:
Individual fields in a Fudge message are provided with their type data encoded, so that you can extract data safely.
Binary:
Fudge encoded data is binary, making it much smaller than text-based representations like XML or JSON.
Self-Describing:
Fudge messages contain metadata about the fields encoded (like a name or an ordinal), meaning that you can manipulate them without knowing the schema in advance.
Message:
Fudge was originally designed for encoding data to pass in a Message Oriented Middleware system, and so are more suited to the types of objects likely to be transmitted over a network connection than to a pure streaming mode.
More information, including the full specification, can be found on the Fudge homepage.
Downloading Fudge-C
As befits a project hosted on GitHub, the full source code is available there; along with per-release source packages on the downloads page. Copies of these packages are available from this site (see below).
License
Fudge-C is published under the Apache License. The full text of this can be found at http://www.apache.org/licenses/LICENSE-2.0.
Other Fudge implementation
| Version | File | Description | MD5 |
|---|---|---|---|
| 0.1.0 | fudgec-0.1.0.tar.bz2 | Packaged source code tarball | 07925b423ca6d713d44326560fd8b370 |
Assorted Scripts - things that don't warrant a whole project but might be useful to someone.
Site hosted by Linode: using Apache, PHP, MySQL and Propel.
Site created using Eclipse PDT and OS X.
Site design and original content Copyright © Vrai Stacey. Unless otherwise stated, source code contained on this site is published under the GNU Public License (GPL).