#jython IRC Log


IRC Log for 2014-06-18

Timestamps are in GMT/BST.

[0:00] * r0bby is now known as robbyoconnor
[1:51] * xemdetia (xemdetia@nat/ibm/x-skdemdxajrllhsps) Quit (Ping timeout: 272 seconds)
[3:28] * fwierzbicki (~Adium@99-106-170-162.lightspeed.sntcca.sbcglobal.net) Quit (Quit: Leaving.)
[3:29] * fwierzbicki (~Adium@99-106-170-162.lightspeed.sntcca.sbcglobal.net) has joined #jython
[3:50] * fwierzbicki (~Adium@99-106-170-162.lightspeed.sntcca.sbcglobal.net) Quit (Quit: Leaving.)
[3:53] * fwierzbicki (~Adium@99-106-170-162.lightspeed.sntcca.sbcglobal.net) has joined #jython
[6:19] * jimbaker (~jbaker@unaffiliated/jimbaker) Quit (*.net *.split)
[6:24] * jimbaker (~jbaker@unaffiliated/jimbaker) has joined #jython
[6:53] * lheuer (~Adium@unaffiliated/lheuer) has joined #jython
[7:18] * lheuer (~Adium@unaffiliated/lheuer) Quit (Ping timeout: 252 seconds)
[7:23] * lheuer (~Adium@unaffiliated/lheuer) has joined #jython
[7:31] * lheuer (~Adium@unaffiliated/lheuer) Quit (Quit: Leaving.)
[8:02] * lheuer (~Adium@unaffiliated/lheuer) has joined #jython
[9:10] * lheuer (~Adium@unaffiliated/lheuer) Quit (Quit: Leaving.)
[9:10] * lheuer (~Adium@unaffiliated/lheuer) has joined #jython
[10:25] * ebarrett (~edd@88-105-206-90.dynamic.dsl.as9105.com) Quit (Ping timeout: 244 seconds)
[10:30] * ebarrett (~edd@88-105-196-92.dynamic.dsl.as9105.com) has joined #jython
[10:47] * Arfrever (~Arfrever@apache/committer/Arfrever) has joined #jython
[11:05] * xemdetia (xemdetia@nat/ibm/x-ncxwmtrleifinahu) has joined #jython
[11:41] * xemdetia (xemdetia@nat/ibm/x-ncxwmtrleifinahu) Quit (Ping timeout: 255 seconds)
[12:11] * xemdetia (xemdetia@nat/ibm/x-mnwblnqgdsfdkwfb) has joined #jython
[12:47] * zz_whg is now known as whg
[12:58] * whg is now known as zz_whg
[13:07] * zz_whg is now known as whg
[14:05] * enebo (~enebo@c-75-73-8-169.hsd1.mn.comcast.net) has joined #jython
[15:46] * enebo (~enebo@c-75-73-8-169.hsd1.mn.comcast.net) Quit (Quit: enebo)
[16:30] * xemdetia (xemdetia@nat/ibm/x-mnwblnqgdsfdkwfb) Quit (Ping timeout: 240 seconds)
[17:10] * xemdetia (xemdetia@nat/ibm/x-dgusxhvxjwzvzuky) has joined #jython
[17:18] * enebo (~enebo@c-75-73-8-169.hsd1.mn.comcast.net) has joined #jython
[17:46] * xemdetia (xemdetia@nat/ibm/x-dgusxhvxjwzvzuky) Quit (Ping timeout: 240 seconds)
[17:51] * xemdetia (xemdetia@nat/ibm/x-yqxgjybjcbnemhqy) has joined #jython
[17:53] * xemdetia_ (xemdetia@nat/ibm/x-xexspdeikrhjuyfj) has joined #jython
[17:56] * xemdetia (xemdetia@nat/ibm/x-yqxgjybjcbnemhqy) Quit (Ping timeout: 255 seconds)
[18:00] * lheuer (~Adium@unaffiliated/lheuer) Quit (Quit: Leaving.)
[18:28] * lheuer (~Adium@unaffiliated/lheuer) has joined #jython
[18:46] * oscar_toro (~Thunderbi@80-62-162-242-static.dk.customer.tdc.net) Quit (Ping timeout: 240 seconds)
[19:18] * skinux (~skinux@68-113-7-47.dhcp.wlwl.wa.charter.com) has joined #jython
[19:19] <skinux> Is Jython literally written in Java or is it just that Java interpreter was used as a base for writing Jython interpreter?
[19:26] <whg> skinux: Jython is written in Java
[19:26] <whg> Check out hg.python.org/jython
[20:06] * xemdetia_ (xemdetia@nat/ibm/x-xexspdeikrhjuyfj) Quit (Ping timeout: 240 seconds)
[20:11] * xemdetia (xemdetia@nat/ibm/x-jvpptnmytjtpnwkn) has joined #jython
[20:18] * enebo (~enebo@c-75-73-8-169.hsd1.mn.comcast.net) Quit (Quit: enebo)
[20:39] <skinux> Doesn't being written in Java cause over-head as it's double-interpreted?
[20:40] <lopex> depends
[20:41] <lopex> java code ends up native at some point
[20:53] <whg> skinux: You'd be surprised at just how fast Jython can be, especially considering the insane amounts of locking it has to do to provide the thread safety guarantees that CPython delivers because of the GIL
[20:53] <whg> Plus, the core devs seem pretty optimistic there is plenty of headroom for optimizations
[20:54] <whg> skinux: It's all worth it when you just drop a crapload of actual threads into a pool and go hogwild in Jython, though
[20:57] <lopex> does jython use locks extensively in core libes ?
[20:58] <skinux> Jython is simply Python syntax with Java's libraries, etc. right?
[20:58] <lopex> it's also a runtime
[20:59] <lopex> syntax doesnt tell you much about the language
[20:59] * skinux (~skinux@68-113-7-47.dhcp.wlwl.wa.charter.com) Quit (Quit: skinux)
[21:09] * xemdetia_ (xemdetia@nat/ibm/x-crqboupgpntzhsef) has joined #jython
[21:12] * xemdetia (xemdetia@nat/ibm/x-jvpptnmytjtpnwkn) Quit (Ping timeout: 240 seconds)
[21:12] * xemdetia_ is now known as xemdetia
[21:20] * whg is now known as zz_whg
[21:31] * oscar_toro (~Thunderbi@80-62-162-242-static.dk.customer.tdc.net) has joined #jython
[21:44] <jimbaker> lopex, well we do use locking in places, but we try to use "lockfree" constructs where possible, such as ConcurrentHashMap. now CHM does uses some locking internally. perhaps more of what we see in jython's support of the python memory model, which is sequentially consistent, is a lot of fencing due to the use of volatiles
[21:45] <jimbaker> i summarized the issues here: http://www.jython.org/jythonbook/en/1.0/Concurrency.html#python-memory-model
[21:45] <lopex> yeah CHM is just a tree so it only locks for given nodes
[21:45] <lopex> not the entire structure
[21:45] <jimbaker> lopex, right, so it has good performance
[21:46] <lopex> jimbaker: at some point in jruby decision was mades that locking is not acceptable wrt perf so we just catch IAOOBs and NPEs and report them as concurrency errors
[21:46] <lopex> in ruby Array for example
[21:47] <lopex> jimbaker: do you know what's the state of zippy ?
[21:47] <jimbaker> lopex, interesting. in any event, cpython gave us substantially more guidance with respect to thread safety
[21:47] <lopex> python based on truffle
[21:48] <jimbaker> (and the notorious GIL that goes with it... ;)
[21:48] <jimbaker> lopex, yeah, i'm familiar with the students at uc irvine
[21:48] <pjenvey> lopex - most rails deployments don't use threads even to this day, right? i think rails defaults to not using them
[21:49] <lopex> pjenvey: actually I have no idea, been using sinatra a lot lately
[21:49] <jimbaker> so they are very quiet... i'm going to be in europe during the jvm lang summit, that would have been a good chance to catch up with them
[21:49] <lopex> pjenvey: I guess rails is just too big behemoth to make it work well, but I dont know
[21:50] <lopex> jimbaker: yeah, havent been able to find aything new
[21:50] <lopex> december is last news
[21:50] <jimbaker> seems like most threaded code just works fine on jython, including big projects like django which can use threading
[21:50] <jimbaker> i know they plan to do their PhDs on it...
[21:50] <jimbaker> certainly the group they are part of is well known
[21:51] <lopex> jimbaker: latest numbers were better than pypy
[21:51] <lopex> same for jruby/truffle
[21:51] <jimbaker> lopex, yeah, pretty sweet. post 2.7.0 will be a good time for us to revisit. they are using some of jython. i don't see why what they are doing would be incompatible with most of the existing runtime, especially complicated stuff like mro support
[21:53] <jimbaker> lopex, here's some code i thought you would enjoy seeing - this import should give you the flavor of what it takes to support the c api semantics of low level socket/select support, as exposed by python - https://bitbucket.org/jython/jython/src/c57ccfce510663b78fc2bb3138e34cf67acfd53e/Lib/_socket.py?at=default#cl-25
[21:54] <jimbaker> "enjoy"
[21:54] <jimbaker> i certainly "enjoyed" writing it
[21:54] <lopex> wowsers
[21:57] <lopex> jimbaker: we do COW in jruby strings/arrays but the amount of mutability in ruby is heinous
[21:58] <lopex> impossible to make is right and performant at the same point
[21:58] <jimbaker> lopex, that makes sense in terms of integration with java strings
[21:59] <lopex> jimbaker: jython saved my ass when I was implementing complex jira customization
[21:59] <lopex> you cannot find more enterprisey apis than there
[21:59] <jimbaker> interestingly, about 15 years ago, jython and cpython developers were physically seated together. guido van rossum even contributed a little bit to jython's development - in fact to this socket module
[21:59] <lopex> cool
[22:01] <jimbaker> lopex, yeah, we like those sort of stories :)
[22:02] <lopex> jimbaker: I even modified the scripting suite plugin to have php like experience, refresh and go
[22:02] <jimbaker> on my end, i'm at rackspace, and we will be running in production a major component of openstack (keystone) by the end of the year
[22:02] <jimbaker> on jython
[22:02] <lopex> jimbaker: compared to multiminute jira restarts
[22:02] <jimbaker> (we publicly committed to at least the v3 support, but our plan is to use jython. it has been working very well)
[22:03] <jimbaker> lopex, nice. btw, do people in jruby use jarless deploys on jetty?
[22:03] <jimbaker> similar to what play does?
[22:04] <lopex> jimbaker: I dont know, though I hear a lot about warbler
[22:04] <lopex> jimbaker: then there's torqbox
[22:04] <lopex> jimbaker: you might talk to the immutant/torqbox team
[22:06] <lopex> jimbaker: there's also mizuno/trinidad for jruby
[22:06] * Arfrever (~Arfrever@apache/committer/Arfrever) Quit (Ping timeout: 255 seconds)
[22:06] <jimbaker> lopex, probably a good idea at some point. we have started talking w/ redhat (and some other companies like lucent, ibm, hp) re openstack deployment options
[22:06] <lopex> these are all rack compatible afaik, like pythons wsgi
[22:07] <jimbaker> lopex, btw, will you be at javaone this year?
[22:07] <jimbaker> as for myself, i had a session accepted on "openstack on the jvm"
[22:07] <lopex> jimbaker: oh, no, I rarely travel, headius and enebo laugh at me that I must be in jail or something :)
[22:07] <jimbaker> lopex, ;)
[22:08] <jimbaker> i really should go hang out with/bother headius and enebo this august - i need to be in upstate minnesota to pick up my daughter from a (natural) language camp
[22:09] <jimbaker> i know they like hacking at some cabin
[22:09] <lopex> and I havent been helping for quite a long time, they must be mad at me
[22:09] <lopex> yeah, and a lake I heard
[22:10] <lopex> jimbaker: https://github.com/projectodd/wunderboss this might get you interested
[22:10] <jimbaker> hmmm, i really should look into this. pjenvey, fwierzbicki, and a few others had a great time hacking with them once at pycon when it was held in chicago
[22:10] <lopex> jython would be a perfect fit here too
[22:11] <jimbaker> good name. of course pjenvey is the dunderboss
[22:55] * oscar_toro (~Thunderbi@80-62-162-242-static.dk.customer.tdc.net) Quit (Quit: oscar_toro)
[22:58] * xymox (~xymox@s0.barwen.ch) has joined #jython
[23:36] * xemdetia (xemdetia@nat/ibm/x-crqboupgpntzhsef) Quit (Ping timeout: 255 seconds)
[23:50] * lheuer (~Adium@unaffiliated/lheuer) Quit (Ping timeout: 252 seconds)


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