I have released a byte vector backed, utf8 string library for Clojure. It exists because when doing lots of ASCII string processing, Java strings can be pretty hefty. Using byte arrays to represent strings can be annoying for various reasons (mutability, bad equality semantics). However, byte vectors are persistent data structures that store byte values efficiently. Some interesting points:
* these strings implement the CharSequence interface, so you can use most every clojure.string function with them, and you can match regular expressions against them, which is pretty cool. * in addition to the efficient storage, since they are persistent data structures you also get structure sharing * the library includes a "StringWriter" that will write directly to a utf8 string, so you don't even have to go through Java Strings if you don't want to * utf8 strings can be seq'ed and are lazily decoded as you traverse them * also because they are persistent data structures you can use conj and into with them I think that's most of the salient features. The README has more details and examples. https://github.com/pjstadig/utf8 Cheers, Paul -- -- 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.