I've added a missing option for wrapped buffers: https://github.com/clojurewerkz/buffy#buffer-types
On Wed, Dec 4, 2013 at 9:28 AM, Ulises <ulises.cerv...@gmail.com> wrote: > 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. > -- alex p -- -- 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.