#jython IRC Log (v0.9)


IRC Log for 2011-12-05

Timestamps are in GMT/BST.

[7:29] -hubbard.freenode.net- *** Looking up your hostname...
[7:29] -hubbard.freenode.net- *** Checking Ident
[7:29] -hubbard.freenode.net- *** No Ident response
[7:29] -hubbard.freenode.net- *** Couldn't look up your hostname
[7:29] * JythonLogBot (~PircBot@ has joined #jython
[7:29] * Topic is 'O t?pico do canal ?: [Jython 2.5.2 at http://tinyurl.com/jython252 | This channel is logged: http://jython.extreme.st/irclogs/ | Please update the wiki: http://wiki.python.org/jython/ | Pastebin: http://pylonshq.com/pasties | Jython Book: http://jythonbook.com | Podcast: http://www.jythonpodcast.com'
[7:29] * Set by plankton on Fri Aug 19 02:03:29 UTC 2011
[7:31] * ohumbel (5390f2dc@gateway/web/freenode/ip. has joined #jython
[7:38] * subhodip (48a3d969@gateway/web/freenode/ip. has joined #jython
[7:41] <subhodip> Hi all, anybody used jython and xmlbeans?
[7:41] * robbyoconnor (~wakawaka@guifications/user/r0bby) Quit (Read error: Connection reset by peer)
[7:41] * robbyoconnor (~wakawaka@guifications/user/r0bby) has joined #jython
[7:42] * subhodip (48a3d969@gateway/web/freenode/ip. Quit (Changing host)
[7:42] * subhodip (48a3d969@fedora/subhodip) has joined #jython
[7:47] <subhodip> anyone?
[7:47] <agronholm> xmlbeans?
[7:48] * shashank (~shashank@65-101-219-90.hlrn.qwest.net) Quit (Ping timeout: 240 seconds)
[8:01] <subhodip> agronholm: yes
[8:01] <agronholm> no idea what that is.
[8:02] <subhodip> umm ..its a java library that maps xsd and xmls with java binding
[8:02] <subhodip> I read it here http://wiki.python.org/jython/LearningJython#xmlbeans
[8:03] <subhodip> but somehow it is not working for me
[8:03] <agronholm> not working? meaning?
[8:04] <agronholm> subhodip: are you using any other java libs in your project?
[8:04] <subhodip> I get a error like this TypeError: parse(): 1st arg can't be coerced to org.apache.xmlbeans.xml.stream.XMLInputStream
[8:04] <subhodip> where parse() is a xmlbeans method
[8:04] <subhodip> yes
[8:05] <subhodip> I am using java.sql
[8:05] <subhodip> for DB connections
[8:09] <subhodip> I guess this meand My lib didnot load properly right?
[8:09] <subhodip> s/meand/means
[8:09] <agronholm> um wouldn't you get an ImportError or ClassNotFoundException then?
[8:11] <subhodip> I thought so.. but google search reveals that if I am trying to load a jar in fly then this errors comes
[8:12] <subhodip> even though I am not trying to do so
[8:14] <agronholm> what google search?
[8:14] <agronholm> that error is just trying to say you're giving a method arguments of the wrong type
[8:14] <agronholm> that's all
[8:15] <agronholm> has nothing to do with loading jars or anything
[8:21] * fwierzbicki (~frank@ has joined #jython
[8:22] <subhodip> ok
[8:24] <subhodip> agronholm: Thanks for explaining the error to me.. I solved it :-)
[9:16] * robbyoconnor (~wakawaka@guifications/user/r0bby) Quit (Read error: Connection reset by peer)
[9:17] * robbyoconnor (~wakawaka@guifications/user/r0bby) has joined #jython
[9:58] * Bootvis (~bob@baltar.lan.endoria.net) has joined #jython
[10:07] * stakkars_ (~tismer@i59F7379D.versanet.de) has joined #jython
[11:09] * juneau001 (~juneau@50-103-54-252.dklb.il.frontiernet.net) Quit (Quit: juneau001)
[11:16] * wainersm (~wainersm@ has joined #jython
[11:29] * SinZ is now known as SinZ|offline
[11:45] * stakkars_ (~tismer@i59F7379D.versanet.de) Quit (Quit: schnarch)
[12:10] * juneau001 (~juneau@ has joined #jython
[12:11] * robbyoconnor (~wakawaka@guifications/user/r0bby) Quit (Ping timeout: 240 seconds)
[12:23] * fwierzbicki (~frank@ Quit (Ping timeout: 252 seconds)
[12:29] * subhodip (48a3d969@fedora/subhodip) Quit (Quit: Page closed)
[12:41] * stakkars_ (~tismer@i59F7379D.versanet.de) has joined #jython
[13:07] * ohumbel (5390f2dc@gateway/web/freenode/ip. Quit (Ping timeout: 265 seconds)
[14:12] * xranby (~xranby@labb.zafena.se) has joined #jython
[14:13] <xranby> hi i was starting to experiment if it would be possible to improve distribution user space performance by using jython instead of python
[14:13] <xranby> mainly to get around lock sluggyness in gui applications like the ubuntu software centre
[14:13] <xranby> but unfortunally im hitting this http://paste.ubuntu.com/760459/
[14:13] <xranby> when uning jython instead of pythion
[14:14] <xranby> have anyone here tested to run a lot of python gtk applications using jython?
[14:15] <xranby> jimbaker: hi! last time we chatted was in the elevator at uds-o
[14:16] <agronholm> xranby: uh...
[14:16] <agronholm> improving performance by using jython?
[14:16] <xranby> to get around GIL
[14:16] <agronholm> jython is many times slower
[14:16] <xranby> well locking in jython are way faster than python
[14:16] <agronholm> xranby: better use multiprocessing instead, and PyPy instead of CPython
[14:16] <agronholm> or jython
[14:17] <xranby> http://blogs.warwick.ac.uk/dwatkins/entry/benchmarking_parallel_python_1_2/
[14:17] <xranby> hmm ok i take a look at pypy
[14:17] <agronholm> 2007? lol
[14:18] <agronholm> much has changed since then
[14:18] <xranby> personally i usually are found maintaining the JVM on arm platforms
[14:18] <xranby> and here some python applications are behaving odd from time to time
[14:18] <xranby> so jython might be an alternative on arm
[14:18] <agronholm> the multiprocessing module didn't even exist back in 2007 if memory serves
[14:19] <agronholm> I think it was introduced in 2008 with python 2.6
[14:19] <xranby> so.. when are jython used nowdays?
[14:19] <agronholm> when intermixing with java is required
[14:20] <xranby> i thought threading was its strenght
[14:20] <xranby> ok
[14:20] <agronholm> jython has plenty of compatibility issues and certainly is no speed demon
[14:20] <agronholm> and it's still stuck in the 2.5 era
[14:20] <agronholm> while PyPy is up to 2.7 already
[14:22] <xranby> hmm odd no pypy package in ubuntu
[14:23] <agronholm> just download the tarball from their site
[14:25] <agronholm> wow, I didn't realize they had 1.7 out already
[14:25] <agronholm> last I checked it was 1.6
[14:26] <agronholm> and the next version will have a JIT backend for ARM, isn't that what you were after?
[14:27] <xranby> yes
[14:27] <xranby> thats what i am after
[14:27] <agronholm> well looks like you'll have to wait a while to take advantage of PyPy
[14:28] <xranby> well i will try it on x86 now
[14:28] <xranby> to see what the technology delivers there
[14:29] <xranby> if it are good on x86 then it probably can get good on arm as well
[14:29] <agronholm> PyPy does still have a GIL so you'll have to use multiprocessing
[14:29] <xranby> still if pypy delives 4.5x performance gain
[14:29] <xranby> its still good :)
[14:29] <agronholm> let me know
[14:29] * xranby are compiling the source
[14:30] <agronholm> there are binary packages available
[14:30] <xranby> i prefer source
[14:30] <agronholm> suit yourself
[14:30] <xranby> so that i know if it can be packaged
[14:32] * fwierzbicki (~frank@ has joined #jython
[14:39] <xranby> it do generate nice ascii mandelbroth fractals during compilation :)
[15:25] <jimbaker> xranby, hi, nice to hear from you. what's your name?
[15:26] <xranby> jimbaker: xerxes
[15:26] <jimbaker> xranby, ah yes, i can place your face now!
[15:28] <xranby> jimbaker: do you know off hand packages in ubuntu that depend on jython? im looking for interesting testcases to qa the arm java jvm
[15:28] <jimbaker> agronholm is quite correct that we haven't kept up with pypy at all. we have some encouraging experiments in applying invokedynamic however (gradual.colorado.edu documents some of them)
[15:30] <jimbaker> xranby, i know there's a vm test suite out there that uses jython as part of it. not certain if you haven't come across it
[15:30] <xranby> ah yes unfortunally invoke dynamic on arm are still quite slow sbe a speed regression on arm untill the faster jits have implemented it
[15:31] <xranby> i have used the dacapo benchmark but in this case it would be interesting to see some real user application
[15:31] <xranby> preferable some multithreaded ones
[15:32] <jimbaker> exactly, dacapo is the one i'm thinking of. in terms of multithreaded ones, juergen brendel is a probably good source for a real user app
[15:36] <jimbaker> http://blogs.mulesoft.org/easily-optimizing-python-extending-with-java/ documents the common pattern: if you're going to do something intensive like that, you are going to write it in java. but the point is the easy integration w/ python. in particular, python has a memory model that implies it will be slow (w/o the user specifying additional information, that is, if we were to add typing. which we are experimenting with as well)
[15:49] <jimbaker> xranby, just to be clear, performance was never a focus for 2.5.x. we focused on compatibility and later java integration. we did get some performance fixes in, however notably the context manager support, which shows the potential of inlining, see http://journal.thobe.org/2009/07/improving-performance-in-jython.html
[15:50] <xranby> juergen brendel odd name for an app
[15:50] <xranby> which nick does he use?
[15:50] <jimbaker> xranby, i think it's jbrendel. he's at mulesoft
[15:51] <xranby> ok
[15:51] <xranby> is his work packaged in ubuntu?
[15:52] <xranby> btw, thank you for the link to his blog
[15:52] <jimbaker> xranby, i don't think it's packaged, packaging java apps is challenging
[15:53] <jimbaker> to clear, although i work on ubuntu server, it's not something i have been involved in except peripherally
[15:55] <jimbaker> one nice aspect of the juju project that i work on is that it allows for a more flexible deployment model that can better match the needs of java apps (or python or ruby...)
[15:55] <xranby> wow, if muse are using jython then its a quite imressive use case
[15:55] <xranby> mule
[15:57] <jimbaker> xranby, exactly, i'm always impressed by what people build above the layers i have worked on. it's very cool!
[15:57] * stakkars_ (~tismer@i59F7379D.versanet.de) Quit (Quit: schnarch)
[16:01] * stakkars_ (~tismer@i59F7379D.versanet.de) has joined #jython
[16:03] * xranby are totally blown away and starts to wonder why he have not seen the mule project before
[16:04] <xranby> im actually sitting and writing small message parsers and stuff for my day to day work.. if mulse was used inside the hospital healthcare then.. all the hospital standards would simply click and reduced maintance for hospital information connectivity experts
[16:10] <jimbaker> xranby, agreed. it makes a lot of sense to do this type of integration with mule. i have seen a similar ESB setup from oracle, but it was crazy how complicated it was up to do this work. so much time wasted on working around the deficiencies of XSLT and BPEL. whereas jython would have made it much easier
[16:11] * shashank (~shashank@65-101-219-90.hlrn.qwest.net) has joined #jython
[16:20] <jimbaker> shashank, how is the work on global constants going?
[16:21] <shashank> jimbaker: Hi, actually not quite well.. I have been focusing on course work
[16:21] <shashank> jimbaker: it's kinda the last week of the semester
[16:21] <jimbaker> shashank, no worries! that's very understandable
[16:22] <shashank> jimbaker: and I find myself completing a lot of projects and preparing presentations right now
[16:22] * robbyoconnor (~wakawaka@guifications/user/r0bby) has joined #jython
[16:25] <jimbaker> shashank, still it feels much closer after the discussion with headius earlier. in looking at the juju codebase for example, there are exactly two uses of the global keyword
[16:25] <jimbaker> (juju is the python code i work on for canonical)
[16:26] <shashank> jimbaker: yes, I remember juju and it's charms :)
[16:28] <shashank> jimbaker: so these writes to global variables are going to be in the slow-path going via the fall-back. By default though we would have a fast path of cached values for the global variables (since they would be read-only)
[16:32] <jimbaker> shashank, just to be clear: we should never attempt a fast path on variables that are marked as writable inside of a function via global
[16:32] <jimbaker> so they will still use getglobal/setglobal
[16:33] <shashank> jimbaker: yes I understand
[16:33] * stakkars_ (~tismer@i59F7379D.versanet.de) Quit (Quit: schnarch)
[16:34] <jimbaker> one thing we could also try is not attempt fast path until the top-level script of the module has finished executing
[16:36] <jimbaker> shashank, then maybe a switchpoint per name as a first pass. i don't know if that will be excessive, but let's get some data on that before further refinement
[16:37] <shashank> jimbaker: yes, that makes sense. I can do that and run some experiments to measure it's performance.
[16:37] <jimbaker> shashank, cool!
[16:48] * stakkars_ (~tismer@i59F7379D.versanet.de) has joined #jython
[16:48] <jimbaker> shashank, i also just took a look at django trunk with grep to find global variables. there are not many (maybe 20). in django.core, where i did take a more detailed look, not only are they rare, but in most cases unnecessary
[16:48] <shashank> jimbaker: oh this is exciting
[16:48] <jimbaker> shashank, worth taking a look at a large codebase like that to see yourself what i mean
[16:49] <shashank> jimbaker: sure, I'll do that.
[16:58] * robbyoconnor (~wakawaka@guifications/user/r0bby) Quit (Read error: Connection reset by peer)
[16:58] * robbyoconnor (~wakawaka@guifications/user/r0bby) has joined #jython
[17:16] * robbyoconnor (~wakawaka@guifications/user/r0bby) Quit (Max SendQ exceeded)
[17:16] * robbyoconnor (~wakawaka@ has joined #jython
[17:16] * robbyoconnor (~wakawaka@ Quit (Changing host)
[17:16] * robbyoconnor (~wakawaka@guifications/user/r0bby) has joined #jython
[17:20] * robbyoconnor (~wakawaka@guifications/user/r0bby) Quit (Excess Flood)
[17:21] * robbyoconnor (~wakawaka@guifications/user/r0bby) has joined #jython
[17:34] * fwierzbicki (~frank@ Quit (Ping timeout: 252 seconds)
[17:45] * stakkars_ (~tismer@i59F7379D.versanet.de) Quit (Quit: schnarch)
[18:01] * shashank (~shashank@65-101-219-90.hlrn.qwest.net) Quit (Ping timeout: 244 seconds)
[18:03] * shashank (~shashank@65-101-219-90.hlrn.qwest.net) has joined #jython
[18:06] * robbyoconnor (~wakawaka@guifications/user/r0bby) Quit (Ping timeout: 244 seconds)
[18:14] * stakkars_ (~tismer@f052069108.adsl.alicedsl.de) has joined #jython
[18:22] * shashank (~shashank@65-101-219-90.hlrn.qwest.net) Quit (Ping timeout: 240 seconds)
[19:22] * shashank (~shashank@ucb-np2-181.colorado.edu) has joined #jython
[19:39] * stakkars_ (~tismer@f052069108.adsl.alicedsl.de) Quit (Quit: schnarch)
[21:05] * juneau001 (~juneau@ Quit (Quit: juneau001)
[21:15] * wainersm (~wainersm@ Quit (Quit: Ex-Chat)
[22:11] * shashank (~shashank@ucb-np2-181.colorado.edu) Quit (Ping timeout: 252 seconds)
[22:15] * shashank (~shashank@ucb-np2-181.colorado.edu) has joined #jython
[23:03] * shashank (~shashank@ucb-np2-181.colorado.edu) Quit (Ping timeout: 252 seconds)
[23:31] * juneau001 (~juneau@50-103-54-252.dklb.il.frontiernet.net) has joined #jython


These logs were automatically created by JythonLogBot_ on irc.freenode.net using a slightly modified version of the Java IRC LogBot (github).