cfbolz changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://botbot.me/freenode/pypy/ ) | use cffi for calling C | "nothing compares to the timeshifter, my personal polar expedition in software" - pedronis
oberstet has joined #pypy
tbodt has quit [Read error: Connection reset by peer]
tbodt has joined #pypy
jcea has quit [Remote host closed the connection]
demonimin has quit [Ping timeout: 240 seconds]
rokujyouhitoma has joined #pypy
marr has quit [Ping timeout: 240 seconds]
rokujyouhitoma has quit [Ping timeout: 240 seconds]
tav` has joined #pypy
tav has quit [Ping timeout: 240 seconds]
tav` is now known as tav
pilne has joined #pypy
aboudreault has quit [Excess Flood]
aboudreault has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
nimaje has quit [Killed (barjavel.freenode.net (Nickname regained by services))]
nimaje has joined #pypy
aboudreault has quit [Excess Flood]
aboudreault has joined #pypy
oberstet has quit [Ping timeout: 240 seconds]
jcea has joined #pypy
cloudyplain has joined #pypy
cloudyplain has quit [Remote host closed the connection]
cloudyplain has joined #pypy
demonimin has joined #pypy
rokujyouhitoma has joined #pypy
demonimin has quit [Ping timeout: 240 seconds]
cloudyplain has quit [Remote host closed the connection]
cloudyplain has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
cloudyplain has quit [Ping timeout: 240 seconds]
<kenaan> rlamy py3.5 5dd50480d9b7 /pypy/module/cpyext/: Add async slots to built-in types
jcea has quit [Ping timeout: 260 seconds]
jcea has joined #pypy
cloudyplain has joined #pypy
cloudyplain has quit [Ping timeout: 240 seconds]
demonimin has joined #pypy
ArneBab has joined #pypy
rokujyouhitoma has joined #pypy
ArneBab_ has quit [Ping timeout: 240 seconds]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
cloudyplain has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
demonimin has quit [Ping timeout: 240 seconds]
demonimin has joined #pypy
demonimin has joined #pypy
exarkun has quit [Ping timeout: 248 seconds]
exarkun has joined #pypy
demonimin has quit [Ping timeout: 240 seconds]
demonimin has joined #pypy
jcea has quit [Ping timeout: 240 seconds]
tbodt has joined #pypy
forgottenone has joined #pypy
tbodt has quit [Ping timeout: 240 seconds]
jcea has joined #pypy
lritter_ has joined #pypy
demonimin has quit [Ping timeout: 260 seconds]
lritter has quit [Ping timeout: 260 seconds]
cloudypl_ has joined #pypy
cloudypl_ has quit [Remote host closed the connection]
cloudyplain has quit [Ping timeout: 260 seconds]
cloudyplain has joined #pypy
demonimin has joined #pypy
demonimin has joined #pypy
pilne has quit [Quit: Quitting!]
rokujyouhitoma has joined #pypy
cloudyplain has quit [Ping timeout: 248 seconds]
rokujyouhitoma has quit [Ping timeout: 240 seconds]
demonimin has quit [Ping timeout: 240 seconds]
cloudyplain has joined #pypy
cloudyplain has quit [Ping timeout: 248 seconds]
aboudreault has quit [Excess Flood]
aboudreault has joined #pypy
exarkun has quit [Ping timeout: 248 seconds]
exarkun has joined #pypy
cloudyplain has joined #pypy
cloudyplain has quit [Ping timeout: 252 seconds]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
cloudyplain has joined #pypy
cloudyplain has quit [Ping timeout: 248 seconds]
cloudyplain has joined #pypy
raynold has joined #pypy
cloudyplain has quit [Remote host closed the connection]
lritter_ has quit [Ping timeout: 260 seconds]
realitix has joined #pypy
cloudyplain has joined #pypy
cloudyplain has quit [Remote host closed the connection]
cloudyplain has joined #pypy
aboudreault has quit [Excess Flood]
altendky has quit [Quit: Connection closed for inactivity]
realitix has quit [Ping timeout: 248 seconds]
aboudreault has joined #pypy
aboudreault has quit [Excess Flood]
aboudreault has joined #pypy
exarkun has quit [Ping timeout: 248 seconds]
exarkun has joined #pypy
aboudreault has quit [Excess Flood]
aboudreault has joined #pypy
realitix has joined #pypy
cloudyplain has quit [Remote host closed the connection]
aboudreault has quit [Excess Flood]
cloudyplain has joined #pypy
aboudreault has joined #pypy
aboudreault has quit [Excess Flood]
aboudreault has joined #pypy
aboudreault has quit [Changing host]
aboudreault has joined #pypy
cloudyplain has quit [Remote host closed the connection]
cloudyplain has joined #pypy
cloudyplain has quit [Read error: Connection reset by peer]
cloudyplain has joined #pypy
aboudreault has quit [Excess Flood]
cloudyplain has quit [Remote host closed the connection]
aboudreault has joined #pypy
cloudyplain has joined #pypy
Guest31391 has quit [Ping timeout: 264 seconds]
cloudyplain has quit [Remote host closed the connection]
marvin has joined #pypy
marvin is now known as Guest5059
tormoz has quit [Read error: Connection reset by peer]
cloudyplain has joined #pypy
cloudyplain has quit [Remote host closed the connection]
cloudyplain has joined #pypy
cloudyplain has quit [Remote host closed the connection]
antocuni has joined #pypy
cstratak has joined #pypy
exarkun has quit [Ping timeout: 248 seconds]
exarkun has joined #pypy
jamesaxl has joined #pypy
aboudreault has quit [Excess Flood]
cloudyplain has joined #pypy
aboudreault has joined #pypy
cloudyplain has quit [Read error: Connection reset by peer]
cloudyplain has joined #pypy
jamesaxl has quit [Read error: Connection reset by peer]
Ulfalizer has joined #pypy
jamesaxl has joined #pypy
arigato has joined #pypy
kenaan has quit [Read error: Connection reset by peer]
nimaje has quit [Read error: Connection reset by peer]
nimaje has joined #pypy
jacob22_ has quit [Ping timeout: 240 seconds]
jacob22 has joined #pypy
[0__0] has quit [Remote host closed the connection]
kolko has quit [Quit: ZNC - http://znc.in]
kolko has joined #pypy
Ulfalizer has quit [Ping timeout: 240 seconds]
pepesza has quit [Ping timeout: 240 seconds]
Ulfalize1 has joined #pypy
Ulfalize1 is now known as Ulfalizer
antocuni has quit [Ping timeout: 240 seconds]
plan_rich has quit [Ping timeout: 240 seconds]
danieljabailey has quit [Ping timeout: 240 seconds]
[0__0] has joined #pypy
rubdos has quit [Ping timeout: 255 seconds]
__main__ has quit [Ping timeout: 240 seconds]
cloudyplain has quit [Remote host closed the connection]
danieljabailey has joined #pypy
__main__ has joined #pypy
pepesza has joined #pypy
plan_rich has joined #pypy
cloudyplain has joined #pypy
inhahe_ has quit [Read error: Connection reset by peer]
inhahe_ has joined #pypy
antocuni has joined #pypy
rubdos has joined #pypy
Guest5059 has quit [Remote host closed the connection]
marvin has joined #pypy
marvin is now known as Guest20851
cloudyplain has quit [Remote host closed the connection]
18WAAKH6V has joined #pypy
forgottenone has quit [Quit: Konversation terminated!]
marr has joined #pypy
18WAAKH6V has quit [Remote host closed the connection]
cloudyplain has joined #pypy
cloudyplain has quit [Read error: Connection reset by peer]
cloudyplain has joined #pypy
arigato has quit [Quit: Leaving]
demonimin has joined #pypy
rokujyouhitoma has joined #pypy
rokujyou_ has joined #pypy
rokujyouhitoma has quit [Read error: Connection reset by peer]
asmeurer has quit [Quit: asmeurer]
exarkun has quit [Ping timeout: 252 seconds]
rokujyou_ has quit [Ping timeout: 240 seconds]
exarkun has joined #pypy
_whitelogger has joined #pypy
<cloudyplain> hi, why the memory usage is different between gc log(minor collect, total memory used: 213366728) and top RES(570M) ? thx
<cfbolz> cloudyplain: the gc log only counts GCed objects. a lot of things aren't managed by the GC
<cfbolz> eg machine code
dustinm- has quit [Quit: Leaving]
dustinm has joined #pypy
cloudyplain has quit [Remote host closed the connection]
cloudyplain has joined #pypy
oberstet has joined #pypy
cloudyplain has quit [Ping timeout: 255 seconds]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
antocuni has quit [Ping timeout: 260 seconds]
rokujyouhitoma has joined #pypy
cloudyplain has joined #pypy
forgottenone has joined #pypy
rokujyouhitoma has quit [Remote host closed the connection]
cloudyplain has quit [Ping timeout: 246 seconds]
exarkun has quit [Ping timeout: 260 seconds]
exarkun has joined #pypy
arigato has joined #pypy
<arigato> cfbolz: regarding cloudyplain's question: also, likely, the GC reports the memory used *after* a collection, whereas the top RES is the memory used *before* a collection, i.e. 1.82 times more
<cfbolz> right
raynold has quit [Quit: Connection closed for inactivity]
marr has quit [Remote host closed the connection]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
marky1991 has joined #pypy
oberstet has quit [Ping timeout: 260 seconds]
arigato has quit [Ping timeout: 240 seconds]
realitix has quit [Ping timeout: 252 seconds]
arigato has joined #pypy
realitix has joined #pypy
antocuni has joined #pypy
marky1991 has quit [Read error: Connection reset by peer]
oberstet has joined #pypy
Rhy0lite has joined #pypy
exarkun has quit [Ping timeout: 240 seconds]
exarkun has joined #pypy
kenaan has joined #pypy
<kenaan> arigo unicode-utf8 0f1073a0843b /rpython/rlib/: rutf8.codepoint_position_at_index() should also work for index == len(u)
marr has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
aboudreault has quit [Excess Flood]
jcea has quit [Remote host closed the connection]
jcea has joined #pypy
igitoor has quit [Ping timeout: 255 seconds]
aboudreault has joined #pypy
<kenaan> arigo py3.5 db294f23903a /pypy/module/itertools/: Test and fix for CPython's test_itertools (broken by accident in 17c8c1d27c41)
altendky has joined #pypy
yuyichao_ has quit [Ping timeout: 240 seconds]
forgottenone has quit [Quit: Konversation terminated!]
<krono> does samuele perdoni hang out here sometimes?
Joannah has joined #pypy
aboudreault has quit [Excess Flood]
jcea has quit [Remote host closed the connection]
aboudreault has joined #pypy
<kenaan> arigo py3.5 115c47f3c022 /lib-python/3/test/test_marshal.py: Skip one check on pypy
<kenaan> arigo py3.5 8246644e701d /lib-python/3/test/test_marshal.py: Skip more tests on pypy
kdas_ has joined #pypy
<kenaan> arigo py3.5 ea46b2e0a190 /lib-python/3/test/test_marshal.py: Fix the last test in test_marshal
yuyichao_ has joined #pypy
<cfbolz> krono: yes, pedronis
<krono> ah, stupid me
aboudreault has quit [Excess Flood]
adamholmberg has joined #pypy
kdas_ has quit [Quit: Leaving]
aboudreault has joined #pypy
forgottenone has joined #pypy
yuyichao_ has quit [Quit: Konversation terminated!]
aboudreault has quit [Excess Flood]
Joannah has quit [Ping timeout: 260 seconds]
aboudreault has joined #pypy
jcea has joined #pypy
aboudreault has quit [Excess Flood]
aboudreault has joined #pypy
realitix has quit [Ping timeout: 240 seconds]
<kenaan> arigo py3.5 1dbe3599b597 /pypy/module/_cffi_backend/test/test_recompiler.py: Fix this test, which might be confused by partially-initialized codecs
igitoor has joined #pypy
<kenaan> arigo default 5d1a2179a4b2 /pypy/module/test_lib_pypy/cffi_tests/: import cffi/19ab3ca30f71
<kenaan> arigo default 1e266d4f0472 /pypy/doc/cpython_differences.rst: Point to explanation for the missing '__builtins__' support in PyPy
aboudreault has quit [Excess Flood]
arigato has quit [Quit: Leaving]
<kenaan> arigo py3.5 f368583e1d76 /pypy/module/_cffi_backend/test/test_recompiler.py: Fix the leakfinder issues in test_recompiler
rokujyouhitoma has joined #pypy
aboudreault has joined #pypy
igitoor has quit [Changing host]
igitoor has joined #pypy
realitix has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
forgottenone has quit [Quit: Konversation terminated!]
aboudreault has quit [Excess Flood]
aboudreault has joined #pypy
exarkun has quit [Ping timeout: 248 seconds]
exarkun has joined #pypy
realitix has quit [Quit: Leaving]
<cfbolz> antocuni: you around?
<antocuni> cfbolz: yes
<cfbolz> I probably have a nice speedup for json decoding, do you have a benchmark json file that you were using?
<antocuni> for _pypyjson? Not really
<antocuni> I probably used some file, but no idea what was it :)
<cfbolz> Heh, OK
<antocuni> in case you didn't see it, there is also targetjson.py, which allows you to benchmark without having to run a full translation
<cfbolz> Yes, I've been using that
<antocuni> so, what is the speedup?
rokujyouhitoma has joined #pypy
aboudreault has quit [Excess Flood]
<cfbolz> On my random json file 15%, and 25% memory reduction
<antocuni> cool... how?
<cfbolz> antocuni: simply by memoizing the keys of the dictionaries. If the dicts are objects, the keys repeat a lot
<antocuni> ah, it makes a lot of sense, good idea
rokujyouhitoma has quit [Ping timeout: 240 seconds]
<cfbolz> antocuni: in theory we could even use map dicts, but not sure it's worth it
aboudreault has joined #pypy
<cfbolz> tos9: fijal mentioned you are doing json processing, do you have a benchmark I could use?
<antocuni> in that case we probably need some heuristics to check whether the json data is actually "objects", or random data whose keys vary a lot?
<cfbolz> antocuni: yes
<cfbolz> antocuni: but it would have the side effect of also speeding up the code that consumes the result of the json loads
<antocuni> yes, it sounds interesting. However, not sure how to do such a heuristic: you need a way to identify and distinguish the possibly many "types" of dicts in the json
arigato has joined #pypy
<antocuni> also, what would be VERY nice is to reuse the same map if you load two different json files
<antocuni> but it's even more complicated
<cfbolz> Yes
<cfbolz> antocuni: instance maps get this right, so maybe that part is not terrible
<antocuni> I admit that I don't know exactly how they work; do they use the class as a hint that two instances might have the same map, or they simply use the fields?
<cfbolz> I am wrong, anyway
<antocuni> in other words: if I have two classes with the same fields, do they share the map?
<cfbolz> Nope
<cfbolz> The map stores the class too
<cfbolz> So they have to be different
<antocuni> right
<antocuni> then with json it's harder, because you don't know the "class"
<cfbolz> Yes, you're right.
<antocuni> I suppose that as a first approximation you could use some sort of "xpath" inside the json; like, these are objects of class "root.students[*].address"
<cfbolz> Do people do json processing with pypy? Is it worth to think more about it?
<cfbolz> antocuni: ah, interesting idea!
<simpson> cfbolz: I do a little JSON. I could probably do medium amounts of JSON. I don't know if it's a thing to store Big Data in JSON.
<antocuni> cfbolz: this doesn't cover the case in which the "Address class" is used in two different places, but it might be good enough
<arigato> also, what occurs if you have a dict with tons of different keys
<cfbolz> antocuni: yes, we'd need to look at real json usages. But I suspect it gives a lot of the use cases
<antocuni> cfbolz: considering the amount of REST APIs around, I guess it's likely that someone somewhere is processing huge jsons
<cfbolz> arigato: yes, you aren't allowed to leak the keys then
<cfbolz> simpson: with pypy?
<simpson> cfbolz: Yeah. Storing homogenous graph and category structures, and querying them via comprehensions. I can pastebin a bit.
<antocuni> cfbolz: a quick googling shows that there are tons of python libraries to parse json, each of which claims to be faster than the previous ones
<antocuni> so this probably means that people are parsing huge files. Then of course they all talk about the speed of parsing because on CPython it's the only thing you can optimize
oberstet has quit [Ping timeout: 240 seconds]
<cfbolz> Of course
<antocuni> I wonder if it's possible to abuse the JIT to emit a parser which is optimized to parse a very specific schema
<cfbolz> antocuni: having to give the schema is boring ;-)
<antocuni> no, of course it would need to autodetect it somehow
<antocuni> "schema" in the sense of "file which has a recurrent structure"
<arigato> yes, with guards if the thing to parse no longer follows what we found so far
<simpson> cfbolz: I have data like https://bpaste.net/show/5c95d0af1c08 and (what I expect to be) a bottleneck here, where I validate as much structure as possible: https://bpaste.net/show/1b4d5b924062
<antocuni> arigato: yes, something like that
<antocuni> arigato: it sounds like a good topic for the sprint :)
<arigato> ...including things like "there is usually no spaces around semicolon here"
<cfbolz> It sounds like a nice thesis topic too
<cfbolz> arigato: heh, fun
<cfbolz> simpson: right. Basically any time there is an expression d[<constant string>] where d is a dict that comes out of the json parser we could do much better than CPython, given enough effort
<simpson> cfbolz: I wonder if my usecase is at all common. I'm encoding functions from strings to strings as JSON objects with string values. So I'm constantly reusing the data in an applicative fashion.
<simpson> WTB frozendict~
aboudreault has quit [Excess Flood]
<antocuni> simpson: to have an idea of the performance, you could manually transform the json-parsed dictionaries into "instance-based dictionaries": https://bpaste.net/show/d7621b8e4b76
<antocuni> after this transformation, things like d['category']['graph'] will be much faster
<antocuni> and basically, what cfbolz was proposing would give you this "transformation" for free
<cfbolz> Something like that. But maybe it's too much magic anyway
aboudreault has joined #pypy
<simpson> antocuni: Interesting. How would that interact with attrs?
<antocuni> cfbolz: not more magic than other things we do in PyPy :)
<antocuni> simpson: do you mean this? https://github.com/python-attrs/attrs
<simpson> Yes, that one.
<antocuni> I don't know how it's implemented internally
<simpson> Maybe the right answer is to more fully rip apart the parsed JSON into specialized structures. The instance-dict trick is pretty amazing.
<antocuni> it depends what kind of classes it generates
<ronan> there's a segfault in numpy tests on py3.5: https://paste.pound-python.org/show/piVlDAMcMfC7SkcTX2Hq/ Any ideas?
<cfbolz> antocuni: attrs is playing nice with pypy
<antocuni> good
<arigato> ronan: probably an infinite recursion
<cfbolz> It's a very nice library, can recommend. Only a little bit of magic, plus some code generation
<ronan> arigato: yes, it looks like it, thanks
* arigato off again
arigato has quit [Quit: Leaving]
brent_ has quit [Ping timeout: 240 seconds]
rokujyouhitoma has joined #pypy
tbodt has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
exarkun has quit [Ping timeout: 240 seconds]
exarkun has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
antocuni has quit [Ping timeout: 240 seconds]
brent_ has joined #pypy
aboudreault has quit [Excess Flood]
lritter_ has joined #pypy
aboudreault has joined #pypy
aboudreault has quit [Excess Flood]
aboudreault has joined #pypy
tbodt has joined #pypy
tbodt has quit [Client Quit]
aboudreault has quit [Excess Flood]
aboudreault has joined #pypy
aboudreault has quit [Excess Flood]
aboudreault has joined #pypy
aboudreault has quit [Excess Flood]
aboudreault has joined #pypy
rokujyouhitoma has joined #pypy
<ronan> turns out I wasted a few hours on a known issue: https://github.com/numpy/numpy/issues/9345
rokujyouhitoma has quit [Ping timeout: 240 seconds]
tbodt has joined #pypy
<ronan> but still, pypy should raise a RecursionError here, instead of crashing
cstratak has quit [Quit: Leaving]
<cfbolz> ronan: is that a recursion purely through cpyext functions?
<ronan> no
<ronan> there's some Python code involved
asmeurer_ has joined #pypy
<cfbolz> but there *is* a call via C code in the recursion?
<ronan> yes
<cfbolz> that probably means there is a real problem in the interaction of stack check insertion and C code
adamholm_ has joined #pypy
raynold has joined #pypy
adamholmberg has quit [Ping timeout: 240 seconds]
inhahe_ has quit [Ping timeout: 240 seconds]
exarkun has quit [Ping timeout: 248 seconds]
exarkun has joined #pypy
inhahe_ has joined #pypy
adamholm_ has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholm_ has joined #pypy
adamholmberg has quit [Ping timeout: 246 seconds]
<bbot2> Started: http://buildbot.pypy.org/builders/own-linux-x86-64/builds/6237 [ronan: force build, py3.5]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
forgottenone has joined #pypy
lewq has quit [Quit: Connection closed for inactivity]
Rhy0lite has quit [Quit: Leaving]
rokujyouhitoma has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
rokujyouhitoma has quit [Ping timeout: 248 seconds]
tbodt has joined #pypy
exarkun has quit [Ping timeout: 240 seconds]
exarkun has joined #pypy
<kenaan> cfbolz default 8aeaf30c80e8 /pypy/module/_pypyjson/: cache the string keys that occur in the json dicts, as they are likely to repeat this reduces both parsing time a...
<kenaan> cfbolz default 64e7df28f623 /pypy/: create a dict with the unicode strategy directly (also fix targetjson)
<bbot2> Failure: http://buildbot.pypy.org/builders/own-linux-x86-64/builds/6237 [ronan: force build, py3.5]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 264 seconds]
Arfrever has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
nanonyme has joined #pypy
rokujyouhitoma has joined #pypy
forgottenone has quit [Ping timeout: 260 seconds]
rokujyouhitoma has quit [Ping timeout: 240 seconds]
exarkun has quit [Ping timeout: 260 seconds]
exarkun has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
inhahe_ has quit []
adamholm_ has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 240 seconds]
inhahe_ has joined #pypy
<ronan> hrm, I'm wondering how to get "generator-based coroutine" supported in Cython
sophiya has joined #pypy
<ronan> should I expose CO_ITERABLE_COROUTINE and PyGenObject or implement _PyCoro_GetAwaitableIter?
<ronan> (PEP 492 is terrible)
rokujyouhitoma has joined #pypy
_whitelogger has joined #pypy
inhahe_ has quit []
Arfrever has quit [Quit: 御出で]
inhahe_ has joined #pypy
inhahe_ has quit [Client Quit]
nimaje has quit [Quit: WeeChat 1.9]
inhahe_ has joined #pypy
cloudyplain has joined #pypy
nimaje has joined #pypy
rokujyouhitoma has joined #pypy
cloudyplain has quit [Remote host closed the connection]
kipras is now known as kipras`away
cloudyplain has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
cloudyplain has quit [Ping timeout: 240 seconds]
nimaje has quit [Remote host closed the connection]
nimaje has joined #pypy
nimaje has quit [Remote host closed the connection]
nimaje has joined #pypy
nimaje has quit [Remote host closed the connection]
nimaje has joined #pypy
rokujyouhitoma has joined #pypy
jcea has quit [Ping timeout: 240 seconds]
rokujyouhitoma has quit [Ping timeout: 240 seconds]