Hi! On Fri, Nov 13, 2009 at 10:17:13AM -0500, Jay Pipes wrote: > >1) How do you feel about Python as a language choice? Would Python be a > >good language to code a Drizzle client in? > > Yes, and no. :) I'm a huge Python fan.
Same here, I support Python as the language choice. > That said, it has a serious problem with its global interpreter lock > for threading. If the design of this new client is to allow a user > to take advantage of the non-blocking async IO libdrizzle API, this > could be a problem for Python. You don't need to worry about threads aith non-blocking I/O. That's actually one of the main reasons to use non-blocking I/O, so you don't need one thread/connection. :) This means you need to store a little more state if you have multiple non-blocking connections, but all very doable. > >2) Would you be unable to use a client written in Python 3? What is the > >oldest version of Python we should support? > > I would advise against it b/c of Monty's mentioned issues regarding > availability on platforms as well as the fact that there aren't many > modules ported to Python 3 at this time. Python 2.5+ or even 2.6+ > is a safer bet. Same here. I would love to be more forward facing and use Python 3, but it's just not quite there yet with the distros. > >3) How important a factor is performance in our language choice and > >design of the client? > > Well, this will depend on who is using the client and for what > purposes. It also depends on whether the view of the community is > that the client should focus on functionality, ease of use and > portablity over performance, and that performance-intensive tasks > like parallel bulk loading should be written as separate client > tools (in, say, C++). Yeah, we can develope separate tools for bulk loading based on the replication API if needed. With Python we also have the option or writing a module in C/C++ and loading that in instead too for performance gains (like what bzr has done with some parts). -Eric _______________________________________________ Mailing list: https://launchpad.net/~drizzle-discuss Post to : [email protected] Unsubscribe : https://launchpad.net/~drizzle-discuss More help : https://help.launchpad.net/ListHelp

