[Thrift] Allo, and other fun stuff
Mark Slee
mslee at facebook.com
Mon Jul 30 15:06:15 PDT 2007
Hi Matt,
Sorry for the very slow reply. The list has been quiet, yes, but lots of
things have been going on.
Java tutorials and samples were accidentally omitted from the first
release. Fortunately, we now have a public SVN repository hosting our
trunk code. It is available at http://svn.facebook.com/thrift/ complete
with Java tutorials etc. It also includes a new "binary" type to fix the
Java encoding issue you mentioned.
Some other recent developments include:
1/ Perl bindings written by Jake Luciani
2/ Major Ruby/IPv6 improvements from Powerset developers
3/ Implementations in Erlang, Haskell, and OCaml
Plus various other things in the pipeline.
Regarding compilers, we'd prefer not to have multiple compiler
implementations until there's a really clear benefit. We picked lex/yacc
because it's generally the easiest compiler environment to install and
use across *nix environments. It enables the project to be built using
standard autoconf/automake scripts, whereas most other nice compiler
environments (i.e. ocamlyacc, PLY) are a bit hairier to install and
build. What features would you like to see in the compiler that aren't
available?
We'd also love to see an nio implementation of
TNonblockingServer/TSocket in Java. Unfortunately it's not incredibly
high on our list as we have relatively fewer Java services deployed
internally, but it'd be great to see this come out of the open source
community, and implementation shouldn't be too difficult using the
libevent based C++ code as a reference.
Cheers,
Mark
-----Original Message-----
From: thrift-bounces at publists.facebook.com
[mailto:thrift-bounces at publists.facebook.com] On Behalf Of Matt Reynolds
Sent: Wednesday, July 18, 2007 10:51 PM
To: thrift at publists.facebook.com
Subject: [Thrift] Allo, and other fun stuff
Hi there,
I stumbled across this project from a blog I read and I'm pretty
intrigued. I'm interested in both helping out and using the code
base, both at work and at home. To this end, I wanted to ask a few
things and offer a few suggestions (for adoption and otherwise).
* I noticed that the list has been quiet, and the the forums have
some updates, but nothing like a new code drop, or Java sample code
(I'm a Java dev by trade). How's it coming on getting the remote SVN
server up, or at least a new code drop?
* In the forum, there was mention of adding a "binary" type... any
idea when we can start taking a look at that code/impl?
* Any way to get the mailing list to at least get a copy of the posts
made in the forum? Facebook isn't exactly allowed by our wonderous
corporate internet policy, while email lists are perfectly fine.
Either that or make the Facebook forum not require a login to read it?
I'd love to contribute to this project, and may get work time to do
so, but I a fearful of using the code at this point given the lack of
recent traction (last code drop, mailing list silence, lack of follow-
up with forum posts). I'd love to help, but at this point there's no
entry point to start (beyond what is, admittedly, older code). This
looks like a really cool project and I'd hate to see it starve
(externally, I'm sure you have internal support) due to lack of
community involvement.
As to a few suggestions :
* It looks like your mailman installation doesn't require a follow-up
registration email. In the past, that's helped to lower future
(inevitable) list spam, and I think it's fairly easy to setup.
* Have you guys looked at allowing or fostering having a compiler per
target language, in that target language? While it's a bit wasteful
in terms of overall code, it would allow people to modify the
compiler they're using in target language-safe and -friendly ways
that might not make it into the C++ version. The CPP may be the
official compiler, but a spec + alternate implementations +
regression tests would go a long way towards removing acceptance due
to client language barriers (I noticed the Java client code doesn't
compile out of the box, and the compiler lacks some options I'm used
to with other standard tools). It would also allow for us to submit
target language code. I would love to get an NIO based TSocket class
in there, and compare performance, etc.
Anyway, I look forward to hearing back from you all soon. Since it's
a small list, and this is an early project, do people want to
announce themselves, so we can get a feel for what people are using
thrift for, or might be in the future?
Thanks,
Matt
_______________________________________________
Thrift mailing list
Thrift at publists.facebook.com
http://lists.pub.facebook.com/mailman/listinfo/thrift
More information about the Thrift
mailing list