updated README.md

This commit is contained in:
FURUHASHI Sadayuki 2013-01-03 19:04:51 -08:00
parent df9fd047b4
commit 06ebdbfd37

View File

@ -1,42 +1,25 @@
MessagePack MessagePack
=========== ===========
Extremely efficient object serialization library. It's like JSON, but very fast and small.
MessagePack is an efficient binary serialization format. It's like JSON. but fast and small.
## What's MessagePack? This repository is divided to multiple implementation probjects on https://github.com/msgpack organization.
**MessagePack** is a binary-based efficient object serialization library. It enables to exchange structured objects between many languages like JSON. But unlike JSON, it is very fast and small. * Node.JS: https://github.com/msgpack/msgpack-node
* D: https://github.com/msgpack/msgpack-d
Typical small integer (like flags or error code) is saved only in 1 byte, and typical short string only needs 1 byte except the length of the string itself. \[1,2,3\] (3 elements array) is serialized in 4 bytes using MessagePack as follows: * Go: https://github.com/msgpack/msgpack-go
* Python: https://github.com/msgpack/msgpack-python
require 'msgpack' * Ruby: https://github.com/msgpack/msgpack-ruby
msg = [1,2,3].to_msgpack #=> "\x93\x01\x02\x03" * Java: https://github.com/msgpack/msgpack-java
MessagePack.unpack(msg) #=> [1,2,3] * Scala: https://github.com/msgpack/msgpack-scala
* CLI/C#: https://github.com/msgpack/msgpack-cli
**MessagePack-RPC** is cross-language RPC library for client, server and cluster applications. Because it releases you from complicated network programming completely and provides well-designed API, you can easily implement advanced network applications with MessagePack-RPC. * Objective-C: https://github.com/msgpack/msgpack-objectivec
* Perl: https://github.com/msgpack/msgpack-perl
require 'msgpack/rpc' * Haskell: https://github.com/msgpack/msgpack-haskell
class MyHandler * PHP: https://github.com/msgpack/msgpack-php
def add(x,y) return x+y end * OCaml: https://github.com/msgpack/msgpack-ocaml
end * C/C++: https://github.com/msgpack/msgpack-c
svr = MessagePack::RPC::Server.new * Erlang: https://github.com/msgpack/msgpack-erlang
svr.listen('0.0.0.0', 18800, MyHandler.new) * Smalltalk: https://github.com/msgpack/msgpack-smalltalk
svr.run * JavaScript: https://github.com/msgpack/msgpack-javascript
require 'msgpack/rpc'
c = MessagePack::RPC::Client.new('127.0.0.1',18800)
result = c.call(:add, 1, 2) #=> 3
## Getting Started
Usage and other documents about implementations in each language are found at [the web site.](http://msgpack.org/)
## Learn More
- [Web Site](http://msgpack.org/)
- [Wiki](http://wiki.msgpack.org/display/MSGPACK/Home)
- [Issues](http://jira.msgpack.org/browse/MSGPACK)
- [Sources](https://github.com/msgpack)