While we're on the subject, I found no way of decoding/interpreting an
already existing sequence (ByteBuffer) of bytes, but only one that had
been created with compose-buff. Am I missing something?

On 4 December 2013 07:28, Cesar Canassa <cesar.cana...@gmail.com> wrote:
> Hi,
>
> I see that the repeated-type requires a constant repeat count. Are you
> planning to include a more dynamic version à la Gloss prefixes/headers?
>
> The lib looks really nice. Binary handling libraries are really helpful.
>
> Thanks,
> Cesar Canassa
>
>
>
> On Mon, Dec 2, 2013 at 7:09 PM, Alex P <oleksandr.pet...@gmail.com> wrote:
>>
>> It's different in a way we manipulate the data:
>>
>> We've opted out for default-lazy way (you're getting and setting separate
>> values instead of serialising/deserialising an entire payload).
>>
>> Another difference is that we don't have Lamina as a loaded artifact
>> (which may not be an issue for majority of people, but was for us
>> because of an internal version conflict with some other library).
>> Obviously, there are ways around it, but we tried to bring in minimum
>> possible amount of dependencies, and be able to use it with Netty4 (which
>> is currently underrepresented in Clojure world).
>>
>> There are other subtle difference, but I don't think they're worth
>> mentioning, Gloss is a great library, but Buffy is doing things in a subtly
>> different way. Main purpose (as we're using it) - for off-heap storage /
>> data structures, and for binary protocol implementations in Clojure
>> (right now, we have a sketch of Cassandra binary protocol implemented on
>> top of Buffy, although I'm not sure wether it's going to be
>> production-ready any time soon).
>>
>>
>> Thanks for props!
>>
>> On Saturday, November 30, 2013 10:33:31 PM UTC+1, Thomas wrote:
>>>
>>> Looks really really great and could you please explain how it differs
>>> from gloss [1]. Any advantages? Disadvantages?
>>>
>>> Thanks
>>> Thomas
>>>
>>> [1] https://github.com/ztellman/gloss
>>>
>>> On Friday, November 29, 2013 10:15:45 PM UTC, Alex P wrote:
>>>>
>>>> Buffy [1] is a Clojure library to work with Binary Data, write complete
>>>> binary protocol implementations
>>>> in clojure, store your complex data structures in an off-heap chache,
>>>> read binary files and do
>>>> everything you would usually do `ByteBuffer`.
>>>>
>>>> Main features & motivation to write it
>>>>
>>>>   * partial deserialization (read and deserialise parts of a byte
>>>> buffer)
>>>>   * named access (access parts of your buffer by names)
>>>>   * composing/decomposing from key/value pairs
>>>>   * pretty hexdump
>>>>   * many useful default types that you can combine and extend easily
>>>>
>>>> Data types include:
>>>>
>>>>   * primitives, such as `int32`, `boolean`, `byte`, `short`, `medium`,
>>>> `float`, `long`
>>>>   * arbitrary-length `string`
>>>>   * byte arrays
>>>>   * composite types (combine any of primitives together)
>>>>   * repeated type (repeat any primitive arbitrary amount of times in
>>>> payload)
>>>>   * enum type (for mapping between human-readable and binary
>>>> representation of constants)
>>>>
>>>> Buffy has been serving us well for recent time, and no major issues were
>>>> revealed. However, until
>>>> it reaches GA, we can't guarantee 100% backward compatibility, although
>>>> we're thought it through
>>>> very well and used our best knowledge to make it right.
>>>>
>>>> Buffy is a ClojureWerkz project, same as Monger, Elastisch, Cassaforte,
>>>> Neocons, Meltdown and
>>>> many others.
>>>>
>>>> [1] https://github.com/clojurewerkz/buffy
>>>> [2] http://clojurewerkz.org
>>>>
>>>> --
>>>>
>>>> Alex P
>>>>
>>>> http://clojurewerkz.org
>>>>
>>>> http://twitter.com/ifesdjeen
>>
>> --
>> --
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to clojure@googlegroups.com
>> Note that posts from new members are moderated - please be patient with
>> your first post.
>> To unsubscribe from this group, send email to
>> clojure+unsubscr...@googlegroups.com
>> For more options, visit this group at
>> http://groups.google.com/group/clojure?hl=en
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "Clojure" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to clojure+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/groups/opt_out.
>
>
> --
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with your
> first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to