#pypy IRC log for Saturday, 2012-01-07

ronnytilgovi: stackless usage will cancel tracing00:02
ronnytilgovi: so you can use jit, or stackless features00:02
nedbat (~nedbat@python/psf/nedbat) joined #pypy.00:03
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) left irc: Ping timeout: 240 seconds00:03
tilgovironny: ahh. so both are enabled in the build, but greenlet execution isn't traced?00:03
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) joined #pypy.00:05
Alex_Gaynortilgovi: more or less, yes00:07
tilgovithanks00:08
GoGithe documentation says that translated rpython uses normal C long variables to hold ints 00:08
GoGiso in translated and non-translated code ints behave differently00:09
GoGiwhy is this not a problem?00:09
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) left irc: Ping timeout: 240 seconds00:11
ronnyGoGi: non-translated is only ever usefull for testing, all serious computation is done on translated ones00:13
ronnyGoGi: non-translated is several orders of magnitude slower than translated00:13
GoGihow do you make sure that the integers are not too big00:14
GoGiwell actually I have always wondered about what standard C programs do00:15
GoGido they really silently fail if, say, you give them a command line argument that is too big to be put into whatever integer variable the C program wants to put it in00:15
ronnyc lacks overflow detection00:16
GoGiyes but you could manually implement it00:17
ronnybtw, why do you care, what do you do with the integers?00:17
GoGijust curious because I have read that section in the documentation00:18
GoGibut it is probably no big deal anyway00:18
ronnymy unpropperly informed oppinion is, that if you have numbers big enough to make that a deal, you might be in need of a bigint kind of thing anyway00:19
ronnyalso night00:19
dmalcolm (~david@c-24-61-12-82.hsd1.ma.comcast.net) left irc: Quit: Leaving00:24
nickik (~nick@217.150.234.222) left irc: Quit: Verlassend00:25
stakkars__ (~tismer@89.204.154.93) joined #pypy.00:50
stakkars_ (~tismer@i59F6B0A9.versanet.de) left irc: Ping timeout: 276 seconds00:51
setmeaway (setmeaway3@119.201.52.190) left irc: Quit: Leaving00:53
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) joined #pypy.00:54
fijal (~fijal@196-215-5-11.dynamic.isadsl.co.za) left irc: Ping timeout: 240 seconds00:54
setmeaway (~setmeaway@119.201.52.190) joined #pypy.00:55
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) left irc: Ping timeout: 240 seconds00:59
rekamso'This makes weak proxies (as returned by weakref.proxy()) somewhat less useful' <-- does this apply to weakref.ref() as well?01:02
hruske (~Gasper@188-230-156-183.dynamic.t-2.net) left irc: Remote host closed the connection01:03
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) joined #pypy.01:07
gtaylor (~gtaylor@108-196-160-156.lightspeed.tukrga.sbcglobal.net) left irc: Quit: Konversation terminated!01:11
stakkars__ (~tismer@89.204.154.93) left irc: Read error: Connection reset by peer01:16
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) left irc: Ping timeout: 240 seconds01:19
fijal (~fijal@196-215-5-11.dynamic.isadsl.co.za) joined #pypy.01:19
tilgovi (~randall@couchdb/developer/tilgovi) left irc: Remote host closed the connection01:22
etrepum (~bob@accessnat4.mochimedia.net) left irc: Ping timeout: 240 seconds01:27
bbot23Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/19601:29
jterrace (~Adium@dynamic-oit-vapornet-b-397.Princeton.EDU) joined #pypy.01:30
bbot23Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64-2/builds/2401:31
craigkerstiens (~craigkers@204.14.152.118) left irc: Ping timeout: 240 seconds01:31
fijaljterrace: hi01:32
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) joined #pypy.01:32
jterracehey01:32
fijaljterrace: can you brief me on your numpy branches?01:33
fijalwhat's their status01:33
jterraceoh i only have numpy-concatenate outstanding01:33
jterraceand it's fubar01:33
fijalok01:34
fijalwhich means?01:34
jterracei did it in app space, and it should be done in interp space instead01:35
jterraceand there is a failing test anyway01:35
jterraceso it's mostly just needs to be thrown away01:35
fijalok01:36
fijalcan I close it then?01:36
jterraceyeah i think it's fine to close01:37
fijalthanks01:37
kenaan12fijal numpy-concatenate 11c62c1d1837b7 15/: closed branch that went nowhere01:37
fijalcool, armin got a PSF award :)01:40
asmeurer__ (~asmeurer@c-174-56-21-245.hsd1.nm.comcast.net) joined #pypy.01:40
craigkerstiens (~craigkers@204.14.152.118) joined #pypy.01:43
Husio (husiatyn@oceanic.wsisiz.edu.pl) left irc: Ping timeout: 240 seconds01:45
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) left irc: Remote host closed the connection01:46
Husio (husiatyn@oceanic.wsisiz.edu.pl) joined #pypy.01:46
bbot24Failure: 15http://buildbot.pypy.org/builders/own-macosx-x86-32/builds/76801:47
rekamso (~textual@67.51.82.66) left irc: Quit: weekend = fun work, not work work01:50
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) joined #pypy.01:51
jterrace (~Adium@dynamic-oit-vapornet-b-397.Princeton.EDU) left irc: Quit: Leaving.01:54
etrepum (~bob@75-101-96-144.dsl.static.sonic.net) joined #pypy.01:57
bbot2Started: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/191502:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/66802:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-macosx-x86-64/builds/33002:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/31902:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-64/builds/66802:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-32/builds/118402:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-Ojit-no-jit-linux-x86-32/builds/85102:00
bbot2Started: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/150302:00
bbot2Started: 15http://buildbot.pypy.org/builders/own-linux-x86-64/builds/78002:00
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) left irc: Ping timeout: 240 seconds02:02
Arfrever (~Arfrever@apache/committer/Arfrever) left irc: Read error: Connection reset by peer02:04
Arfrever (~Arfrever@apache/committer/Arfrever) joined #pypy.02:15
fijal (~fijal@196-215-5-11.dynamic.isadsl.co.za) left irc: Ping timeout: 240 seconds02:15
craigkerstiens (~craigkers@204.14.152.118) left irc: Quit: craigkerstiens02:19
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) joined #pypy.02:28
Shanita (~John@osbk-4db16fe1.pool.mediaWays.net) left irc: Ping timeout: 240 seconds02:34
GoGii can not run the pypy interpreter from a translated pypy02:54
GoGiI get an AssertionError02:54
GoGi  File "/mnt/loc1/py/dev/pypy-pypy-ff4af8f31882/pypy/objspace/std/fake.py", line 53, in fake_type02:55
GoGi    assert type(cpy_type) is type02:55
GoGiI can however run pypy from cpython 02:55
bbot23Success: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/100503:08
dracman (~draco@212.255.40.176) left irc: Ping timeout: 252 seconds03:19
dracman (~draco@212.255.45.176) joined #pypy.03:25
exarkunYou have to pass some args03:26
exarkunI forget what they are03:26
ericflo (~ericflo@75.103.8.110) left irc: Quit: ericflo03:33
squiddy (~squiddy@g224197217.adsl.alicedsl.de) left irc: Quit: Leaving03:42
GoGi (~gogi@pippo.9.6.gogi.tv) left irc: Ping timeout: 260 seconds03:46
Shanita (~John@osbk-4d087254.pool.mediaWays.net) joined #pypy.03:51
Shanita (~John@osbk-4d087254.pool.mediaWays.net) left irc: Ping timeout: 240 seconds03:57
GoGi (~gogi@p5B105D6E.dip.t-dialin.net) joined #pypy.03:58
Shanita (~John@osbk-4d087254.pool.mediaWays.net) joined #pypy.04:03
bbot23Success: 15http://buildbot.pypy.org/builders/own-linux-x86-32/builds/191504:10
Shanita (~John@osbk-4d087254.pool.mediaWays.net) left irc: Ping timeout: 240 seconds04:12
magicblaze007 (~magicblaz@c-68-63-40-199.hsd1.fl.comcast.net) joined #pypy.04:21
magicblaze007I have never used pypy. On windows, when I unzipped pypy, and execute pypy.exe -- there is no output. Is this normal?04:23
nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 245 seconds04:43
mikefchttp://pyfound.blogspot.com/2012/01/armin-rigo-receives-psf-community.html04:52
mikefcwoo04:52
magicblaze007 (~magicblaz@c-68-63-40-199.hsd1.fl.comcast.net) left irc: Quit: Leaving.04:56
mikefcfijal: (for when you get back)  why rename interp level from numpypy to _numpypy?  04:59
mikefcis that because numpypy is going to be at applevel in lib_pypy/numpypy?  05:03
Action: mikefc isn't any good at module magic05:03
mikefcOK. I'm lost again. I have not idea how to make applevel code in lib_pypy/numpypy appear in the numpypy module.05:14
mikefc"no idea"05:14
mikefcanyone know what I should do?05:15
mikefcI've created pypy/lib_pypy/numpypy/__init__.py (empty)05:16
mikefcand a dummy fromnumeric.py in the same dir. that only contains "def std(a) return a"05:16
mikefcit's no fun being the only person in a timezone :(05:19
bbot23Success: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-32/builds/150305:21
bbot23Success: 15http://buildbot.pypy.org/builders/pypy-c-app-level-linux-x86-64/builds/66805:25
bbot23Success: 15http://buildbot.pypy.org/builders/pypy-c-Ojit-no-jit-linux-x86-32/builds/85105:32
xcombelle (~xcombelle@AToulouse-551-1-132-44.w86-201.abo.wanadoo.fr) joined #pypy.05:44
bbot23Success: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-64/builds/66805:47
bbot23Success: 15http://buildbot.pypy.org/builders/pypy-c-jit-linux-x86-32/builds/118405:50
hazmat (~hazmat@plone/hazmat) left irc: Read error: Operation timed out06:11
stakkars_ (~tismer@p5DDB7A14.dip.t-dialin.net) joined #pypy.06:11
pjenvey (~pjenvey@underboss.org) left irc: Read error: Operation timed out06:11
pjenvey (~pjenvey@underboss.org) joined #pypy.06:13
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) left irc: Ping timeout: 276 seconds06:13
Nick change: stakkars_ -> stakkars06:13
hazmat (~hazmat@204-232-198-49.static.cloud-ips.com) joined #pypy.06:18
hazmat (~hazmat@204-232-198-49.static.cloud-ips.com) left irc: Changing host06:18
hazmat (~hazmat@plone/hazmat) joined #pypy.06:18
timotimomikefc: are you still awake?06:27
mikefcyup. 06:27
Action: mikefc is trying to work out how to just reuse fromnumeric from numpy with minimal changes.06:27
timotimohm, i was about to tell you to put the applevel things into the micronumpy module06:27
timotimobut i'm not actually sure any more06:27
mikefctimotimo: fijal was talking about splitting it somehow so that micronumpy is _numpypy (still as a mixed module), but then there's applevel code in lib_pypy/numpy.06:28
mikefci don't know enough of what needs to be done.06:28
mikefci'm going to put another version of the fromnumeric patch up on bugs.pypy.  This time things are a little more split into files.06:30
timotimoi've done it once before, but it was at an unfortunate time and i ended up breaking things when merging in master06:32
CIA-5303mikefc 07roundup * 10#981/micronumpy 'fromnumeric' patch: 06:36
CIA-53This is v2 of the fromnumeric patch. (2 extra files are coming after this)06:36
CIA-53This version06:36
CIA-53* puts docstrings & adapted code from numpy/core/fromn ... * 14https://bugs.pypy.org/issue98106:36
CIA-5303mikefc 07roundup * 10#981/micronumpy 'fromnumeric' patch: file = pypy/module/micronumpy/app_fromnumeric.py * 14https://bugs.pypy.org/issue98106:37
CIA-5303mikefc 07roundup * 10#981/micronumpy 'fromnumeric' patch: file = pypy/module/micronumpy/test/test_fromnumeric.py * 14https://bugs.pypy.org/issue98106:37
mikefccouldn't figure out how to add multiple files to an issue06:37
CIA-5303mikefc 07roundup * 10#981/micronumpy 'fromnumeric' patch: patch for current default branch: * 14https://bugs.pypy.org/issue98106:39
espes (~espes@123-243-221-248.tpgi.com.au) left irc: Ping timeout: 240 seconds06:49
bbot23Success: 15http://buildbot.pypy.org/builders/own-linux-x86-64/builds/78006:50
espes (~espes@123-243-221-248.tpgi.com.au) joined #pypy.06:56
Husio (husiatyn@oceanic.wsisiz.edu.pl) left irc: Ping timeout: 240 seconds07:03
Husio (husiatyn@oceanic.wsisiz.edu.pl) joined #pypy.07:04
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-macosx-x86-64/builds/33007:04
asmeurer__ (~asmeurer@c-174-56-21-245.hsd1.nm.comcast.net) left irc: Quit: asmeurer__07:10
fermianyon (~lane@c-71-229-21-197.hsd1.al.comcast.net) left irc: Ping timeout: 240 seconds07:12
Arach (~arach@128-75-128-45.broadband.corbina.ru) left irc: Ping timeout: 260 seconds07:13
int3__ (~int3__@210.17.249.171) joined #pypy.07:22
craigkerstiens (~craigkers@c-76-126-162-38.hsd1.ca.comcast.net) joined #pypy.07:23
Arach (~arach@FTTB-Beeline-79.104.220.149.ranetka.ru) joined #pypy.07:25
mikefcnumpypy help needed again  (sorry)07:26
mikefchow would I setup a linalg directory (for example) underneath numpypy (which is a mixed module)07:27
xcombelle (~xcombelle@AToulouse-551-1-132-44.w86-201.abo.wanadoo.fr) left irc: Ping timeout: 252 seconds07:28
int3__ (~int3__@210.17.249.171) left irc: Read error: Connection reset by peer07:28
int3__ (~int3__@210.17.249.171) joined #pypy.07:28
int3__ (~int3__@210.17.249.171) left irc: Remote host closed the connection07:28
mikefcand all the numpy.polynomical stuff is pure python07:33
xcombelle (~xcombelle@AToulouse-551-1-132-44.w86-201.abo.wanadoo.fr) joined #pypy.07:34
bbot24Failure: 15http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/31907:39
amaury_ (~amaury_@46-127-23-192.dynamic.hispeed.ch) joined #pypy.08:00
Action: mikefc thinks an applevel implementation of cholesky could be interesting to time.08:14
Action: mikefc is also wondering about a purepython fft08:15
mikefci know we should just piggy back on blas/lapack, but that sounds boring :)08:15
asmeurer__ (~asmeurer@c-174-56-21-245.hsd1.nm.comcast.net) joined #pypy.08:24
ChrisMorgan (~ChrisMorg@unaffiliated/chrismorgan) joined #pypy.08:40
xcombelle (~xcombelle@AToulouse-551-1-132-44.w86-201.abo.wanadoo.fr) left irc: Quit: I am a manual virus, please copy me to your quit message.08:48
squiddy (~squiddy@g224197182.adsl.alicedsl.de) joined #pypy.08:51
ChrisMorganI'm trying to use PyPy to translate a trivial RPython script on Windows with mingw32, but it's failing when it gets to "make  in c:\docume~1\chris\locals~1\temp\usession-unknown-4\testing_1". This is because with mingw32-make, the executable is called mingw32-make.exe. I don't believe all users will have it called mingw32-make.exe, but many will.08:52
ChrisMorganIt seems to me that pypy.translator.platform.windows.MingwPlatform.make_cmd should be set to 'mingw32-make' first if it's in the PATH. I'm quite willing to fix this myself and submit the patch, but (a) it may be more convenient for someone else to and (b) is there anything already in pypy to simplify such path searching or does it need to be done entirely manually (but it wouldn't be bound by RPython, I think)?08:52
PiotrSikora (~none@nginx/adept/piotrsikora) left irc: Excess Flood08:56
PiotrSikora (~none@nginx/adept/piotrsikora) joined #pypy.08:57
mikefcChrisMorgan: I don't know if there is anything already for the path searching, but patches are always welcomed  -> bugs.pypy.org08:57
Action: ChrisMorgan should have actually tried finding such a thing first... py._path.local.LocalPath.sysfind08:59
ChrisMorganUgly and incomplete for Windows. It includes expansion for %SystemRoot%, but it's possible for the Windows path to include arbitrary environment variables. I presume there would be a reason it wouldn't use os.path.expandvars?09:01
mikefcChrisMorgan: if it's not commented, then the reasons may be lost to the mist of time...09:04
ChrisMorganIt's not. Other things in os are used, so I really can't say I know or understand. Is it possible it's meant to be RPython and os.path.expandvars isn't implemented yet in RPython?09:05
mikefcChrisMorgan: that is possible. I'm not an rpython person 09:06
ChrisMorganOK. I certainly don't know at this point. I'm just muddling my way along :-)09:06
ChrisMorganI can tell I need to compile something of a decent size. I haven't seen more than three lines of the mandelbrot yet.09:11
fijal (~fijal@196-215-5-11.dynamic.isadsl.co.za) joined #pypy.09:12
fijalmikefc: hey09:14
fijalChrisMorgan: hey09:15
amaury_ChrisMorgan: code in translator.platform does not need to be RPython09:15
fijalChrisMorgan: mingw is not quite supported09:15
mikefcfijal: morning. me is preping/eating dinner.09:15
amaury_fijal: actually, it used to work09:16
ChrisMorganWell, I've found what I wanted to know: 94KB for a basic "Hello world" with --gc=none on MinGW. (I'm trying to build it as small as I can.) Any tips on whether could be made smaller than that?09:16
fijalmikefc: you have to renamed numpypy to _numpypy because otherwise you'll have a conflict09:16
fijalyou can put numpypy/polynominal/whatever in lib_pypy no problem09:16
fijalamaury_: still unsupported09:16
fijalChrisMorgan: it contains a lot of boilerplate code09:16
amaury_ChrisMorgan: yes, some helper functions are compiled even when they are not used09:16
ChrisMorganWell, it's working fine for me on this trivial example. I tried it rather than MSVC because I had MinGW easily accessible but not t'other.09:16
fijalChrisMorgan: why do you need less?09:17
ChrisMorganfijal: I'm evaluating RPython as a potential replacement language for the PortableApps.com Launcher, a product currently written in NSIS (rather a mess!)09:18
fijalChrisMorgan: why not just pythn?09:18
fijalI would strongly recommend against using RPython as a general purpose language09:18
ChrisMorganfijal: too big. Each portable app that we distribute contains a launcher which we want to be as tiny as possible (currently with icon and some necessary plugins for such things as registry work included they're generally 100-150KB).09:19
fijalok, so what does the launcher do?09:20
ChrisMorganMakes apps portable; deals with things like command line arguments, environment variables, file modifications, registry stuff, file/directory backing up and restoring.09:20
fijalmaybe try go or some other compiled language?09:22
fijalseriously, RPython is not recommended09:22
ChrisMorganFor what reason? Because of the restrictions, the fluid nature of it, the lack of documentation, or some combination of these sorts of factors?09:22
fijalit's not that fluid any more (I even updated the docs!)09:23
fijalmostly because it was designed as a pypy internal tool09:24
fijalso for example error messages if something does not compile are obscure09:24
ChrisMorganI've noticed that!09:25
fijaldocumentation is not great either09:25
fijalrestrictions are livable09:26
whyking (~quassel@p4FFB6D9E.dip.t-dialin.net) joined #pypy.09:26
antocuni (~antocuni@host208-85-dynamic.7-79-r.retail.telecomitalia.it) joined #pypy.09:26
ChrisMorganI've evaluated a few other languages, but they all either compile too large or do things like depend on msvcr60.dll or other such DLLs, which strikes them off the list. Our executables need to be entirely self-contained. At least with this trivial example, RPython does that: the produced executable depends only on kernel32.dll and msvcrt.dll which are both standard Windows DLLs.09:28
fijalok09:28
fijalchances are it'll be better than NSIS09:28
fijalhave you considered just embedding a lua interpreter?09:29
ChrisMorganI haven't looked at Lua yet. I figured that as an interpreted language it would be too big... is it not?09:29
fijalI have no idea actually, but LUA interpreter is known to be smallish09:30
fijalChrisMorgan: you would need to evaluate09:31
ChrisMorganWhen going out language hunting, I've been figuring on about 100KB of overhead as about as much as we can stand (without very good reason). RPython matches that (though that's without a GC--the boehm one adds on 5KB to 42KB on Ubuntu, don't have it set up on Windows; not sure if having no GC would be a problem or not).09:35
amaury_ChrisMorgan: Shouldn't you use C for this?09:35
ChrisMorganQuick searching doesn't indicate Lua would cut it (DLL dependencies).09:36
ChrisMorganamaury_: a mortal fear of C ;-)09:36
ronnyhow about pascal09:36
Action: ronny runs09:36
ChrisMorganronny: dependencies problem or, going back far enough for that to vanish, lack of Unicode support.09:37
amaury_ChrisMorgan: for the gc, did you try --gc=semispace ?09:37
ChrisMorganamaury_: nothing in particular, really, it just happens that neither of us currently involved in the PortableApps.com Launcher development are familiar with C, while both of us are with Python... and it's a nicer language, anyway.09:37
ronnybtw, have you tried shedskin?09:38
amaury_doesn't it only build extension modules?09:38
fijalronny: it's an awful hack09:38
fijalronny: I would use RPython over sheskin always09:39
ronnyok09:39
ChrisMorganronny: I haven't yet. It was something that I was intending to evaluate next week, but without expecting success from my initial looking at it.09:39
fijalChrisMorgan: ok, one more word of warning - RPython will have some significant overhead over writing the same thing in C09:39
ronnyi never investigated it closely, i guess that wont be necessary anymore09:39
fijalChrisMorgan: I mean code will be slightly longer09:39
fijalbut you can probably live with that09:39
ChrisMorganfijal: NSIS doesn't do a terribly compact job of things itself, though it's not too bad... I'll see what it ends up like with some larger samples.09:41
fijalok09:41
fijalChrisMorgan: there are ways to make executable smaller, like disable or enabling some options09:42
ChrisMorganAnd we don't need to worry at all about performance, methinks... the degree of lousiness in NSIS's performance has to be seen to be believed.09:42
fijalboehm is your likely choice for the GC09:42
fijalalso you can disable inlining and such09:42
fijalor at least play with it09:42
ChrisMorganHey! Down to 69KB with UPX compression. Almost forgot to do that :-)09:44
ChrisMorganOh yes, one of the other requirements has just occurred to me: the executable will need to run in the window subsystem (rather than console) and have executable version info (icon, name, description, etc.) in it. I imagine I may need to get my hands quite dirty to get that in?09:46
fijalI have no idea09:47
fijalhow do you do that in C?09:47
ChrisMorganCompile an rc file to a res file and then during linking add the res file to the list of o files.09:50
fijalthat should not be overly hard to do09:51
ChrisMorganYeah, doesn't sound like it should be. Just insert a couple of extra bits into pypy... or subclass a class or two in my own code, perhaps.09:52
fijalthere is support for that already, since sometimes you need to add libs or whatnot09:52
fijalbut yeah, the precise usecase might need a tweak or two09:52
ChrisMorganamaury_: semispace adds 70KB -- 30KB less than minimark, but still too much. What would be the consequences of doing without a GC? Need to del things manually, or would it just never free the memory?09:55
fijalChrisMorgan: boehm09:56
amaury_never free memory09:56
fijalyou can't do anything with --gc=none09:56
aleksi (~aleksi@109-184-111-97.dynamic.mts-nn.ru) joined #pypy.09:56
fijalChrisMorgan: it's more complex than that btw, it also inlines mallocs which quite greatly increases executable size09:56
amaury_is refcounting still available?09:56
ChrisMorganfijal: I'll certainly be trying it.09:56
amaury_--gc=ref09:57
Action: ChrisMorgan goes afk for ten minutes or so09:57
fijalamaury_: no, it is, but does not work09:57
amaury_because of cycles?09:57
fijalI think it has bugs?09:57
fijalor something09:57
fijalI don't remember details09:58
fijalit also inserts tons and tons of increfs/decrefs09:58
amaury_sure09:58
arigato (~arigo@xdsl-188-154-144-172.adslplus.ch) joined #pypy.10:00
fijalarigato: hi10:02
arigatohi10:02
fijalarigato: do you think you can do your "merge closed branches" thing again?10:02
fijal;-)10:02
arigato:-)10:03
arigato15 new old branches...10:04
arigato<spam>10:05
kenaan12arigo concurrent-marksweep 11735c5da06f6c 15/pypy/rpython/memory/gc/concurrentgen.py: Redo the explicit collect(), at least the most useful case.10:06
kenaan12arigo closed-branches 11cf8c8221023a 15/: Merge closed head 0fe83ac4f0da on branch numpy-full-fromstring10:06
kenaan12arigo closed-branches 11fc8babbb0d49 15/: Merge closed head 10e52e09cda7 on branch windows-no-err-dlg10:06
kenaan12arigo closed-branches 11274493f9237a 15/: Merge closed head bae684cd82fb on branch counter-decay10:06
kenaan12arigo closed-branches 11907165accd25 15/: Merge closed head 6b116d5dea60 on branch numpy-faster-setslice10:06
kenaan12arigo closed-branches 1157ce7dbc2991 15/: Merge closed head 93bb4d305fdb on branch nedbat-sandbox-210:06
kenaan12arigo closed-branches 116ea46dc2c7b0 15/: Merge closed head cef73b42fc52 on branch numpypy-repr-fix10:06
kenaan12arigo closed-branches 115bfacfad4b18 15/: Merge closed head 2adf19881a7c on branch numpy-dtype-strings10:06
kenaan12arigo closed-branches 114c2484433848 15/: Merge closed head 51e67e28230a on branch numpy-ndim-size10:06
kenaan12arigo closed-branches 111b7c79d96aa3 15/: Merge closed head aaab53d723c0 on branch numpy-sort10:06
kenaan12arigo closed-branches 11cb83722c2596 15/: Merge closed head e1b50a7fd007 on branch numpy-dtype10:06
kenaan12arigo closed-branches 113efb35fc9cd7 15/: Merge closed head 1436740d3b9b on branch numpy-complex10:06
kenaan12arigo closed-branches 116da401a761cc 15/: Merge closed head c260a0d96e73 on branch jit-raw-array-of-struct10:06
kenaan12arigo closed-branches 117aae8a854792 15/: Merge closed head 16ea77edcb5e on branch separate-applevel-numpy10:06
kenaan12arigo closed-branches 118947a5d05606 15/: Merge closed head eb12a969ddf7 on branch import-numpy10:06
kenaan12arigo closed-branches 1184207b40e275 15/: Merge closed head c62c1d1837b7 on branch numpy-concatenate10:06
kenaan12arigo closed-branches 1177e727fe4df1 15/: re-close this branch10:06
arigato</spam>10:06
fijalthanks10:06
aleksi (~aleksi@109-184-111-97.dynamic.mts-nn.ru) left irc: Remote host closed the connection10:07
Action: fijal finds it obnouxious when people ask on pypy-dev "when pypy will do X"10:10
fijalarigato: are you aware that --fork-before completely does not work any more?10:13
ChrisMorganWhen will PyPy produce 5KB executables from full Python source code without RPython restrictions? ;-)10:13
arigatofijal: no, I'll look10:13
fijalChrisMorgan: never :)10:14
arigatoChrisMorgan: as an unsigned number of days: yesterday10:14
ChrisMorganNever? =-O10:14
fijalarigato: ok, but last time I looked it was unfixable10:14
fijalarigato: because modules pull rffi which pull rpython10:14
ChrisMorganAnd here was me thinking it would merely be in six to eight weeks.10:14
arigatofijal: fork-before=when?10:15
fijalfork-before=rtype10:15
fijalfork-before=annotation probably as well10:15
arigatoah, it's something I don't use any more10:15
fijalok10:15
fijalso what do you use10:15
fijalfork-before=pyjit10:15
fijal?10:15
arigatopyjitpl, yes10:15
fijalok10:16
fijalyou can check if this still works, I don't remember, but this one might10:16
espes (~espes@123-243-221-248.tpgi.com.au) left irc: Ping timeout: 268 seconds10:16
arigatoyes, only fork-before=rtype has special rules10:17
arigatoit can be fixed by making some imports more local, probably10:18
fijalI heavily doubt10:18
fijalarigato: note, I'm fine with saying "it's unsupported"10:20
arigatook10:21
espes (~espes@123-243-221-248.tpgi.com.au) joined #pypy.10:22
fijalbut maybe we should remove it from possibilities then :)10:22
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) left irc: Read error: Connection reset by peer10:31
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) joined #pypy.10:31
stakkars_ (~tismer@p5DDB7A14.dip.t-dialin.net) joined #pypy.10:32
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) left irc: Read error: Connection reset by peer10:32
Nick change: stakkars_ -> stakkars10:32
CIA-5303Chris Morgan 07roundup * 10#984/'make' can be 'mingw32-make' on MinGW platform: 10:33
CIA-53[new] On Windows when building with MinGW, the make command will sometimes be named10:33
CIA-53`mingw32-make.exe` instead of `make.exe`. This patch makes a ... * 14https://bugs.pypy.org/issue98410:33
ChrisMorgan:-)10:34
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) left irc: Read error: Connection reset by peer10:34
stakkars_ (~tismer@p5DDB7A14.dip.t-dialin.net) joined #pypy.10:34
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) joined #pypy.10:34
stakkars_ (~tismer@p5DDB7A14.dip.t-dialin.net) left irc: Read error: Connection reset by peer10:34
stakkars_ (~tismer@p5DDB7A14.dip.t-dialin.net) joined #pypy.10:37
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) left irc: Read error: Connection reset by peer10:37
Nick change: stakkars_ -> stakkars10:37
fijalarigato: now when I think about it10:37
fijalarigato: can't this model (with passing around GCREFs instead of pointers) be used as a simplified separate compilation approach?10:38
fijalto have a minimal subset of a typesystem that works10:38
fijaland automatically generate wrappers and unwrappers10:38
arigatomaaaybe10:39
arigatounclear to me how you solve issues caused by lists, for example10:40
fijalyou can strike some balance10:41
fijallike say lists that are exported are always modifiable-resizable10:41
Action: fijal is scared by py.test traceback size10:45
cpets (4f7588fa@gateway/web/freenode/ip.79.117.136.250) joined #pypy.11:01
cpets (4f7588fa@gateway/web/freenode/ip.79.117.136.250) left irc: Client Quit11:01
kenaan12hager ppc-jit-backend 115152aab1cfbb 15/pypy/jit/backend/test/runner_test.py: remove test_return_pointer because it is obsolete now11:01
fijalarigato: hm, ok, another issue11:04
fijalI have a list of boxes11:04
fijalwhich becomes an array of GCREFS on lower level11:04
fijalhow do I cast them to the correct type?11:05
arigatoI don't know11:05
fijalas far as rpython is concerned, it's AbstractValue11:05
fijal(for example)11:05
fijalbut it won't work untranslated if I cast it to abstract value11:06
fijalso cast_base_ptr_to_instance(AbstractValue, ptr) will work just fine translated11:06
fijalright?11:06
arigatoyes11:06
fijalok11:07
fijalcan I add a hack to cast_base_ptr_to_instance that will just fish the object?11:07
fijalif untranslated11:08
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) joined #pypy.11:08
fijaland check the isinstance11:08
arigatothere is such a hack already11:08
fijaloh?11:09
fijalso I can just do that?11:09
arigatoI don't know what exactly you're doing11:09
fijalok11:10
fijalI'll show you in a sec11:10
kenaan12fijal better-jit-hooks 114c1b9df9819d 15/pypy/: add some jit hooks, a bit ugly but works11:16
fijalarigato: can you look at the checkin?11:16
arigatoyes?11:17
fijal4c1b9df9819d11:18
fijalthis one11:18
arigatowell, what should I look for?11:18
fijaldoes it make any sense to you11:18
fijalthe approach11:18
arigatoI fear the question is just "does it work"11:19
fijalor if this is precisely what we discussed than looking at the checkin is just confirming that :)11:19
fijalseems so11:19
fijalI'll write a ztest11:19
xcombelle (~xcombelle@AToulouse-551-1-132-44.w86-201.abo.wanadoo.fr) joined #pypy.11:21
fijalarigato: this is more or less what's in llgraph/llimpl.py11:21
kenaan12fijal better-jit-hooks 116c698de2d866 15/pypy/: simplify and remove dead code11:23
fijalarigato: no it does not :)11:28
fijalpbc ends up as SomeBuiltin11:28
fijalSomeBuiltin(analyser=<pypy.tool.descriptor.InstanceMethod object at 0x3a88590>, const=<function boxint_new at 0x2e907d0>, methodname='boxint_new', s_self=None)11:28
fijaldoes not sound quite right11:29
fijalarigato: any idea?11:32
fijalI can commit the test11:32
mikefcfijal: i did try adding some code to lib_pypy/numpy, but i must not have had all the init or import stuff correct as it just plain didn't work.  I'll try again tomorrow. off to take over the world now....11:35
fijaloh11:35
fijalmikefc: sounds right not to add it11:35
fijalpom pom pom11:36
fijalarigato: it's in extregistry :/11:36
fijalarigato: do you have a hack in mind?11:36
fijalmake a copy I guess11:37
Action: arigato not really there11:37
fijalarigato: ok :)11:38
fijalarigato: seems to work though :)11:45
arigato:-)11:46
kenaan12fijal better-jit-hooks 1176c53cca9b18 15/pypy/: add stuff to test_ztranslation and make it pass11:49
fijalI don't even want to know how to pass exceptions around for now...11:49
fijalarigato: or this should work?11:49
GoGii can not run the pypy interpreter from a translated pypy11:49
GoGiI get an AssertionError11:49
GoGi  File "/mnt/loc1/py/dev/pypy-pypy-ff4af8f31882/pypy/objspace/std/fake.py", line 53, in fake_type11:49
GoGi    assert type(cpy_type) is type11:49
GoGiI can however run pypy from cpython 11:50
fijalGoGi: pass --nofaking to the command line11:50
fijalor --allworkingmodules11:50
fijalthis is a bug :)11:50
GoGiwhat is "faking"?11:51
fijalgood question11:52
fijalI don't actually know :)11:52
amaury_it's a way to steal a module from CPython11:52
amaury_and expose it to the interpreted pypy11:52
amaury_works for _socket, at least11:52
kenaan12fijal better-jit-hooks 1151d2eea00745 15/pypy/module/pypyjit/: an attempt to use the new interface11:53
fijalgetting closer :)11:54
xcombelle (~xcombelle@AToulouse-551-1-132-44.w86-201.abo.wanadoo.fr) left irc: Ping timeout: 244 seconds11:56
kenaan12fijal better-jit-hooks 1180d78ac9430f 15/pypy/module/pypyjit/: what's untested is broken12:02
ChrisMorganWell, on a trivial example, --gc=ref is only about 1.5KB larger on Win32 than --gc=none. But does it work properly?12:05
fijalref should work if you don't care about speed12:06
fijalit's used for tests12:06
fijalI have no clue if it handles circular refs though12:06
kenaan12fijal better-jit-hooks 11ac3f9f68d10e 15/pypy/module/pypyjit/interp_resop.py: bah12:07
xcombelle (~xcombelle@AToulouse-551-1-132-44.w86-201.abo.wanadoo.fr) joined #pypy.12:12
kenaan12fijal better-jit-hooks 114e244fe6f3f8 15/pypy/jit/metainterp/warmspot.py: run those in a slightly different order, so we rewrite them before jitcodes12:30
kenaan12fijal translation-time-measurments 116c5f73bd4ec9 15/pypy/annotation/annrpython.py: add some measurments12:45
kenaan12fijal better-jit-hooks 1141fea5d51df6 15/pypy/module/pypyjit/: for what is worth, don't look into interp_resop for now. It's hard enough to get this working.12:53
nedbat (~nedbat@python/psf/nedbat) joined #pypy.12:57
kenaan12fijal translation-time-measurments 11cd2fd844ad80 15/pypy/annotation/annrpython.py: style13:07
kenaan12fijal better-jit-hooks 115ca484324ef7 15/pypy/jit/backend/x86/assembler.py: I believe this is an actual problem13:12
EnCuKou (~encukou@ip-94-113-220-25.net.upcbroadband.cz) left irc: Remote host closed the connection13:13
arigato (~arigo@xdsl-188-154-144-172.adslplus.ch) left irc: Read error: Connection reset by peer13:14
JaredW (~JaredW@118.142.17.238) left irc: Ping timeout: 240 seconds13:17
Kaskuka (~John@osbk-4d087254.pool.mediaWays.net) joined #pypy.13:25
fijalpypy.module.sys.hook:3)displayhook takes 14s to trace13:26
fijalnice13:26
aleksi (~aleksi@109-184-47-33.dynamic.mts-nn.ru) joined #pypy.13:27
fijalto annotate13:27
fijaler sorry13:27
fijalwhy????13:27
arigato (~arigo@xdsl-188-154-144-172.adslplus.ch) joined #pypy.13:31
arigatofijal: 5ca484324ef7: uh?13:31
fijalarigato: can it happen?13:32
arigatoyes, in rare cases13:32
fijallike what?13:32
fijalwell, shouldn't we raise something?13:33
fijalValueError maybe not13:33
fijalbut something like AlreadyCompiledException13:33
fijaland catch it13:33
arigatowhy?13:34
fijalbecause people assume compile_bridge would return some meaningful data13:34
arigatoit should not return anything13:34
fijalit returns ops_offset on default13:34
arigatofor debugging13:34
fijaland a bunch of other stuff on better-jit-hooks13:34
fijalwell13:35
fijalyou still log the bridge13:35
fijaland you say it got compiled13:35
arigatoI would be more happy if the situation was checked for in the front-end13:35
arigatojust before calling compile_bridge13:35
fijalyes13:35
fijalprecisely because everyone assumes bridge got compiled13:35
fijalit might work by accident13:36
fijalbut then it'll stop working one day13:36
arigatook, but 5ca484324ef7 precisely would be rather high on my "don't do that" list13:36
fijalok13:37
fijalwell, feel free to do something saner13:37
fijalbut right now it returns a tuple so returning a None won't work13:37
fijaland this is precisely a thing that would break one day :)13:37
arigatoyes, I agree13:38
fijalI broke it and by chance annotator caught it13:38
fijalbut really by chance13:38
Action: fijal investigates why annotating sys.hook.displayhook takes 14s13:38
antocuniAlex_Gaynor: https://bitbucket.org/eliben/pyelftools13:38
arigatojust saying that this checkin without tests adds a rare "fatal rpython error: ValueError" to the translated pypy, which sounds to me like a very bad idea13:38
antocuniAlex_Gaynor: maybe it can be useful for your better-ffi project13:39
fijalarigato: if None were allowed for a tuple, it would segfault instead of erroring13:39
antocuni(which I still would like to know more about, btw :-))13:39
arigatofijal: which is even worse, I agree13:39
nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 255 seconds13:39
fijalarigato: installing multimethods seems to take ~1/3-1/2 of the annotation time btw13:44
fijalhttp://paste.pocoo.org/show/531313/13:47
fijaltop few graphs by annotation time13:47
fijal(measuring time around processblock, summarized for all blocks)13:47
fijalalso, for the tightest loop possible, pypy without thread and signal is 30% faster13:51
fijal1.0s vs 1.5s13:51
ChrisMorganfijal: thanks for your help. And thank you to you all!13:51
fijalChrisMorgan: np13:51
kenaan12amauryfa default 11416009084c6f 15/pypy/module/cpyext/: cpyext: Add support for PyInterpreterState.next. Always NULL, since there is only one interpreter...13:51
kenaan12amauryfa default 11e8a394c064fd 15/pypy/: Fix checkmodule.py for almost all modules13:51
kenaan12amauryfa default 114bace20eef15 15/pypy/module/cpyext/api.py: cpyext: export Py_ByteArrayType and Py_MemoryViewType13:51
ChrisMorgan (ChrisMorg@unaffiliated/chrismorgan) left #pypy.13:51
kenaan12amauryfa default 1175b3dbc7d326 15/pypy/module/cpyext/: Add stubs for PyObject_GetBuffer: pypy does not yet implement the new buffer interface.13:51
aleksi (~aleksi@109-184-47-33.dynamic.mts-nn.ru) left irc: Remote host closed the connection13:57
kenaan12fijal better-jit-hooks 116249a65d583e 15/pypy/module/pypyjit/: oops, a test and a fix13:58
Kaskuka (~John@osbk-4d087254.pool.mediaWays.net) left irc: Remote host closed the connection13:59
lesshaste (~lesshaste@87-194-206-189.bethere.co.uk) joined #pypy.13:59
Kaskuka (~John@osbk-4d087254.pool.mediaWays.net) joined #pypy.14:01
derdon (~derdon@pD9E1DC23.dip.t-dialin.net) joined #pypy.14:05
fijal (~fijal@196-215-5-11.dynamic.isadsl.co.za) left irc: Ping timeout: 240 seconds14:10
GoGi (~gogi@p5B105D6E.dip.t-dialin.net) got netsplit.14:25
Arfrever (~Arfrever@apache/committer/Arfrever) got netsplit.14:25
Taggnostr2 (~quassel@host224-64-dynamic.116-80-r.retail.telecomitalia.it) got netsplit.14:25
unbit (~unbit@93-58-162-185.ip159.fastwebnet.it) got netsplit.14:25
MostAwesomeDude (JuTorzalS0@osuosl/staff/mostawesomedude) got netsplit.14:25
htoothrot (~mux@unaffiliated/htoothrot) got netsplit.14:25
timotimo (~timo@gallifrey.wybt.net) got netsplit.14:25
Arnar (~arnarb@li187-148.members.linode.com) got netsplit.14:25
GoGi (~gogi@p5B105D6E.dip.t-dialin.net) returned to #pypy.14:25
Taggnostr2 (~quassel@host224-64-dynamic.116-80-r.retail.telecomitalia.it) returned to #pypy.14:25
unbit (~unbit@93-58-162-185.ip159.fastwebnet.it) returned to #pypy.14:25
MostAwesomeDude (JuTorzalS0@osuosl/staff/mostawesomedude) returned to #pypy.14:25
htoothrot (~mux@unaffiliated/htoothrot) returned to #pypy.14:25
timotimo (~timo@gallifrey.wybt.net) returned to #pypy.14:25
Arnar (~arnarb@li187-148.members.linode.com) returned to #pypy.14:25
fijal (~fijal@196-215-5-11.dynamic.isadsl.co.za) joined #pypy.14:27
fijalcool14:27
fijalhow cool is that - http://paste.pocoo.org/show/531325/14:27
fijalarigato, Alex_Gaynor: ^^^^^14:27
htoothrot (~mux@unaffiliated/htoothrot) left irc: Excess Flood14:27
exarkun:O14:28
antocunifijal: scaring :-)14:28
fijalexarkun: I think I opened the gate of hell :)14:28
exarkunI don't know about "cool"14:28
exarkunMaybe "terrifying", yea14:28
arigato:-)14:29
fijalantocuni: well, you can have an assembler backend working on that level14:29
antocuniyep14:29
fijalantocuni: you also have the list of ops14:29
antocuniit's very cool14:29
arigatoI fear it's a cool place to put an llvm backend14:29
fijalso you can say hook stuff up so you can test new register allocation14:30
antocunibut still scaring :-)14:30
fijal(for example)14:30
fijalarigato: what do you mean?14:30
fijalantocuni: resops list is not modifyable yet14:30
fijalantocuni: but I'm near that :)14:30
htoothrot (~mux@unaffiliated/htoothrot) joined #pypy.14:31
arigatofijal: just that someone with enough free time can save the ops lists around and later produce code with llvm14:31
fijalarigato: yes, but it has scary connections14:32
fijallike it'll keep up stuff alive etc.14:32
arigatosure14:32
fijalbut yeah14:32
fijalit's a first step14:32
fijalI'm seriously looking forward to not having recompile pypy because I tweaked some optimization14:32
fijalanyway, it has huge cool factor :)14:33
arigatoyes :-)14:33
Da_Blitzthis dosent mean the JIT will be able to JIT itself one day soon does it?14:35
Arfrever (~Arfrever@apache/committer/Arfrever) got lost in the net-split.14:36
fijalDa_Blitz: in a way it does14:36
Action: Da_Blitz needs a very strong drink then14:36
fijalantocuni: note that we now can simply not use subprocess at all in test_pypy_c14:42
antocunifijal: because we can get the resops directly from the hooks? That's cool, indeed14:42
fijalyes14:42
fijaland also you get real code objects as arguments14:43
fijalwhich is of unclear gain :)14:45
Action: fijal surf break14:45
GoGiis cpyext support enabled automatically?14:47
GoGishouldn't this create some sort of shared library?14:47
exarkunmaybe it does, I don't remember, but shouldn't you be more interested in a header file?14:49
arigato (~arigo@xdsl-188-154-144-172.adslplus.ch) left irc: Read error: Connection reset by peer14:49
exarkuncpyext is for supporting CPython C extension modules, not for embedding PyPy in a C program14:50
GoGiah yes a header file14:50
GoGiand the compiled C extension module then can be loaded somehow14:51
GoGiin pypy14:51
exarkunyes14:51
exarkunit all works the same way on PyPy as it does on CPython14:51
exarkunjust replace "/usr/bin/python" with "/path/to/pypy-c" in all the steps14:51
exarkuneg "pypy-c setup.py install"14:51
GoGiI see14:52
GoGihow well does this work?14:53
EnCuKou (~encukou@ip-94-113-220-25.net.upcbroadband.cz) joined #pypy.14:54
bfirsh (u1308@gateway/web/irccloud.com/x-gzhrnkvowxanlbxp) joined #pypy.14:55
exarkunwell, there's like 80 million C APIs exposed by CPython14:55
exarkunand PyPy supports like 40 million of them exactly correctly14:55
exarkunand maybe another 20 million of them sort of correctly but not quite14:55
exarkunand doesn't support the rest at all14:55
exarkunif you're using an extension module that uses all exactly correctly supported APIs, then you'll have no problem :)14:56
exarkunotherwise you might run into some snags14:56
GoGiif a C-extension module does not install with pypy-c setup.py install then it will be because one of those problems?14:57
lucian (~lucian@cpc1-newc15-2-0-cust84.gate.cable.virginmedia.com) joined #pypy.14:57
tumbleweedor because it uses a bit of the C API that hasn't been implemented in pypy yet14:58
exarkunpossibly, but there could be other problems14:58
exarkuneg some distutils incompatiblity14:58
exarkunor perhaps some entirely different category of problems I know nothing about14:58
exarkunit's usually easier to try and see than to predict :)14:58
GoGiok14:58
arigato (~arigo@xdsl-188-154-144-172.adslplus.ch) joined #pypy.15:05
lucian (~lucian@cpc1-newc15-2-0-cust84.gate.cable.virginmedia.com) left irc: Ping timeout: 240 seconds15:09
stakkars_ (~tismer@p5DDB7A14.dip.t-dialin.net) joined #pypy.15:11
stakkars_ (~tismer@p5DDB7A14.dip.t-dialin.net) left irc: Client Quit15:15
jterrace (~Adium@dynamic-oit-vapornet-b-397.Princeton.EDU) joined #pypy.15:51
hruske (~Gasper@2001:15c0:66e9:14:2851:ddff:fea5:5896) joined #pypy.16:00
jterrace (~Adium@dynamic-oit-vapornet-b-397.Princeton.EDU) left irc: Quit: Leaving.16:05
xcombelle (~xcombelle@AToulouse-551-1-132-44.w86-201.abo.wanadoo.fr) left irc: Quit: I am a manual virus, please copy me to your quit message.16:05
nedbat (~nedbat@python/psf/nedbat) joined #pypy.16:16
Arfrever (~Arfrever@apache/committer/Arfrever) joined #pypy.16:20
jterrace (~Adium@dynamic-oit-vapornet-b-397.Princeton.EDU) joined #pypy.16:24
`fox` (~fox@host142-107-dynamic.45-79-r.retail.telecomitalia.it) joined #pypy.16:28
jterrace (~Adium@dynamic-oit-vapornet-b-397.Princeton.EDU) left irc: Quit: Leaving.16:30
JaRoel|4d (~jaroel|4d@sink.jaroel.nl) left irc: Remote host closed the connection16:33
hruske (~Gasper@2001:15c0:66e9:14:2851:ddff:fea5:5896) left irc: Ping timeout: 268 seconds16:34
fermianyon (~lane@c-71-229-21-197.hsd1.al.comcast.net) joined #pypy.16:42
nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 255 seconds16:46
hruske (~Gasper@2001:15c0:66e9:14:c0ce:6eff:fe02:7878) joined #pypy.16:46
derdon (~derdon@pD9E1DC23.dip.t-dialin.net) left irc: Remote host closed the connection16:55
nedbat (~nedbat@python/psf/nedbat) joined #pypy.16:55
kenaan12antocuni extradoc 11218b3a396820 15/sprintinfo/leysin-winter-2012/people.txt: my dates17:01
arigatoantocuni: thank you :-)17:03
antocuniyou're welcome :-)17:03
antocuniI am of course willing to share the room with someone else17:03
antocunialso, I *might* decide to arrive on the 15th evening instead of the 16th, but I'll know only few days before. Would that be a problem?17:04
arigatono17:04
antocunigood :-)17:04
derdon (~derdon@p5DE89AD0.dip.t-dialin.net) joined #pypy.17:07
arigatoantocuni: just, please write it down in people.txt, too17:13
antocuniok17:13
arigatothanks17:13
EnCuKou (~encukou@ip-94-113-220-25.net.upcbroadband.cz) left irc: Read error: Connection reset by peer17:15
kenaan12antocuni extradoc 114f9fc086064f 15/sprintinfo/leysin-winter-2012/people.txt: add a note about my dates17:15
`fox` (~fox@host142-107-dynamic.45-79-r.retail.telecomitalia.it) left irc: Ping timeout: 244 seconds17:20
derdon (~derdon@p5DE89AD0.dip.t-dialin.net) left irc: Remote host closed the connection17:23
kenaan12rguillebert extradoc 1109006ec5a359 15/sprintinfo/leysin-winter-2012/people.txt: Add myself17:28
kenaan12rguillebert extradoc 119601f2597df0 15/sprintinfo/leysin-winter-2012/people.txt: Merge heads17:28
asmeurer__ (~asmeurer@c-174-56-21-245.hsd1.nm.comcast.net) left irc: Quit: asmeurer__17:33
nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 276 seconds17:33
durin42 (~durin@adium/durin42) left irc: Ping timeout: 248 seconds17:34
durin42 (~durin@adium/durin42) joined #pypy.17:36
JaRoel|4d (~jaroel|4d@178-85-196-53.dynamic.upc.nl) joined #pypy.17:50
`fox` (~fox@host142-107-dynamic.45-79-r.retail.telecomitalia.it) joined #pypy.17:50
craigkerstiens (~craigkers@c-76-126-162-38.hsd1.ca.comcast.net) left irc: Quit: craigkerstiens18:02
craigkerstiens (~craigkers@c-76-126-162-38.hsd1.ca.comcast.net) joined #pypy.18:02
kushal (~kdas@114.143.162.106) joined #pypy.18:04
kushal (~kdas@114.143.162.106) left irc: Changing host18:04
kushal (~kdas@fedora/kushal) joined #pypy.18:04
kushal (~kdas@fedora/kushal) left irc: Read error: Connection reset by peer18:06
kenaan12arigo concurrent-marksweep 1138b03b6eef08 15/pypy/rpython/memory/gc/concurrentgen.py: Random progress.18:08
kenaan12arigo concurrent-marksweep 1173514c0443a5 15/pypy/rpython/memory/gc/concurrentgen.py: Tweak tweak tweak.18:08
kenaan12arigo concurrent-marksweep 112a11fde484ba 15/pypy/rpython/memory/gc/concurrentgen.py: fix.  now test_direct passes18:08
EnCuKou (~encukou@ip-94-113-220-25.net.upcbroadband.cz) joined #pypy.18:08
`fox` (~fox@host142-107-dynamic.45-79-r.retail.telecomitalia.it) left irc: Ping timeout: 240 seconds18:09
rguillebertarigato, I'm definitely coming but I was waiting to order my train tickets before writing any dates :)18:20
arigatorguillebert: thanks for adding yourself :-)18:20
espes (~espes@123-243-221-248.tpgi.com.au) left irc: Ping timeout: 240 seconds18:20
arigatoaaaaaaargh18:22
rguillebertarigato, can I buy tickets at train stations ? (I can't order Aigle-Leysin tickets on the SNCF website)18:22
arigato"pypy translate.py" misbehaves obscurely with pypy 1.7.0 release18:22
arigatorguillebert: :-(18:22
arigatoyes18:22
rguillebertthx18:23
arigatoif you really want you can also order it online18:23
arigatohttp://www.cff.ch18:23
arigatobut it's easy at the station's machines18:23
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) left irc: Quit: stakkars18:23
rguillebertI don't trust French trains so I prefer not to pick a specific train :)18:24
arigato:-)18:24
arigato:-( :-( :-(  it stops misbehaving if I print local variables in the loop, of course18:25
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) joined #pypy.18:26
arigatobut not if I try a more recent pypy18:26
espes (~espes@123-243-221-248.tpgi.com.au) joined #pypy.18:27
rguillebertI had an assertion error the last time I tried18:27
arigato:-(18:27
arigatothat's at least better, somehow18:27
Alex_Gaynorfijal: very cool18:31
Alex_Gaynorantocuni: sorry I haven't been working on my ffi much lately, I got stuck in a "what should the type system be like" issue :/18:31
antocuniAlex_Gaynor: good question18:33
antocuniAlex_Gaynor: do you have a repo, btw?18:34
Alex_Gaynorantocuni: let me put it online, it's just docs ATM18:34
Alex_Gaynorantocuni: https://github.com/alex/yaffi18:36
antocuniYet Another FFI, I suppose :-)18:36
Alex_Gaynoryes :)18:36
antocuniok, I'll read it18:37
CIA-5303arigo 07roundup * 10#985/jit bug: 18:39
CIA-53[new] Running "pypy x.py" on the attached x.py throws it into an infinite loop.18:39
CIA-53Tested on linux32, both the release 1.7.0 and the latest nightly ... * 14https://bugs.pypy.org/issue98518:39
Alex_Gaynorantocuni: I can give you commit so you can update it18:40
antocuniyes please, although I don't promise anything :-)18:42
antocunisurely not tomorrow, as I'm going skiing18:42
Alex_Gaynorantocuni: sounds much more fun than finding how to bolt C's type system on top of Python18:43
antocunidefinitely :-)18:43
CIA-5303danchr 07roundup * 10#986/Problems with timezones in datetime.datetime: (log message trimmed)18:48
CIA-53[new] Try running the following little script:18:48
CIA-53=========18:48
CIA-53import datetime, os, time18:48
CIA-53os.putenv('TZ', 'GMT') * 14https://bugs.pypy.org/issue98618:48
danchr^^^ seen in Mercurial18:49
lucian (~lucian@cpc1-newc15-2-0-cust84.gate.cable.virginmedia.com) joined #pypy.18:51
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) left irc: Quit: stakkars18:53
CIA-5303arigo 07roundup * 10#986/Problems with timezones in datetime.datetime: 18:53
CIA-53[chatting] This is (partly?) due to differences between datetime.py and the built-in18:53
CIA-53datetime of CPython. If I replace "import datetime" with "i ... * 14https://bugs.pypy.org/issue98618:53
exarkunThat looks familiar.18:53
exarkunA rounding difference18:53
exarkunhttps://bugs.pypy.org/issue97218:54
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) joined #pypy.18:55
arigatoyes18:55
arigatoAlex_Gaynor: reading yaffi's docs:18:56
JaRoel|4d (~jaroel|4d@178-85-196-53.dynamic.upc.nl) left irc: Remote host closed the connection18:57
arigatodo we really need Types at all?18:57
arigatoin the public API of yaffi I mean18:57
Alex_Gaynorarigato: well, you need something that results are an instance of, and you need something to expose as function.result_type/arg_types18:58
Alex_Gaynorarigato: are do you suggest to use int/float/etc. and widen all things?18:58
arigatono18:58
arigatoI'm just wondering if we need to expose the function.result_type/arg_types at all, but maybe it's convenient18:58
Alex_GaynorI think it's convenient18:59
Alex_GaynorI have some idea about allowing "upcasting rules" or something, so you can't change the result type's lowl leve, but you can have a rule. e.g. some libraries use char for bool, allowing some sort of CharBool auto conversion or such18:59
Alex_Gaynoralso, for tests :)19:00
Alex_GaynorAnyway, even if you don't expose those, what type is x(*args)19:00
arigatowhat is x?19:00
Alex_Gaynorx is some library function19:01
arigatohum, sorry, I'm confused19:02
fijalarigato: want me to look into your JIT bug?19:02
Alex_Gaynorlet's say you do yaffi.Library("m").sqrt(3), what type is the result?19:02
Alex_Gaynoris it just float, or yaffi.c_types.double19:02
arigatoPrimitiveType(42) represents what?  the value 42?  or the type int?19:02
Alex_GaynorPrimitiveType would be a superclass of Integer, which is a superclass of say Int{8,16,32,64}19:03
Alex_Gaynorso Int8(42) is an instance19:03
Alex_Gaynorwith the value 4219:03
nettok (~quassel@190.148.27.164) joined #pypy.19:04
arigatoso Type is not at all the class of types, confusingly19:04
Alex_GaynorPrimitiveType would be a subclass of Type19:04
arigatoyes19:04
fijalAlex_Gaynor: let me add to "why not ctypes"19:04
fijalAPI is very inconsistent19:04
Alex_Gaynorfijal: do you have a github account?19:05
arigatoI'm just a bit confused by a class called "Type" whose instances are not types at all19:05
fijalI think so19:05
fijalAlex_Gaynor: what's wrong with lltype typesystem btw?19:05
Alex_Gaynorfijal: it doesn't support value structs, for one.  plus it's not really nice in terms of type heirarchy19:06
Alex_Gaynorfijal: I just gave someone named fijal commit, please tell me it was you :)19:06
fijalwhat are value structs?19:06
fijalseems it's me19:07
Alex_Gaynorstruct c { int x; int y; }  int main() { struct c x; x.x = 3; }19:07
Alex_Gaynorfijal: feel free to add whatever to the docs, try to keep them organized though19:07
fijalyou mean stack allocs?19:07
Alex_Gaynoryes19:08
fijalhow would you use it?19:08
antocuni (~antocuni@host208-85-dynamic.7-79-r.retail.telecomitalia.it) left irc: Ping timeout: 252 seconds19:08
fijallike with scoped_alloc?19:08
Alex_Gaynorsome sort of API that gives you the address19:08
fijalwith scoped alloc would do that19:09
fijalin the presence of JIT19:09
fijalif you don't have a JIT you have no scoping, so you need to malloc19:10
fijalanyway, I'm kinda happy with lltype/rffi19:10
fijalmaybe with a bit brushed API19:10
Alex_Gaynoryes, that's the whole point :)19:10
fijalok19:10
fijalanyway, I would keep it more or less 1-1 with lltype/rffi19:10
Alex_Gaynorlltype/rffi are designed for RPython, so you don't need to worry about type heirarchies, because you don't have that at runtime19:10
fijalyes19:10
fijalalso rffi_platform is kinda cool19:11
fijalit can also check your declarations19:11
fijalif they make sense19:11
fijalthat's another thing that's wrong with ctypes19:11
arigatoNB: it may not be a bad idea to not have all primitive types Int8,16,etc.19:11
nedbat (~nedbat@python/psf/nedbat) joined #pypy.19:11
arigatoat least I can think of a minimal API were this is not needed19:12
fijalarigato: how would you declare a function that accepts 16bit int?19:12
arigatoand the point is that in C you don't usually worry about casting between the various integer sizes19:12
fijalyou still need to know precise structure layout and function args19:13
fijalmaybe you don't need values of those types19:13
fijalbut you need to be able to specify it19:13
arigatofijal: not if that is gotten for you from debug data19:13
fijalyes ok19:13
fijalbut I would at least leave the explicit way of specifying it19:14
arigatoafter all, when you run gdb you expect to be able to write lines of C code and they work without predeclaring anything19:14
arigatoin particular, you can't explicitly declare stuff19:14
fijaltrue19:14
arigato(not saying it's the ultimate solution)19:14
Alex_GaynorMy idea for part 2 of the tutorial is to reimplement bits of the resource module19:14
fijalI kind of like the idea of having C-like declarations19:15
Alex_Gaynor?19:15
fijalso you can copy-paste (almost) a line from .h file19:15
fijaldeclaring a function19:15
Alex_Gaynorlike luajit's ffi?19:15
fijalyes19:15
Alex_Gaynorit's a total mess when you have extra fields based on the preprocessor19:15
fijalthis has the advantage that if API is more complex, you can still generate C and compile .so19:15
fijalthat's the whole point19:16
fijalif preprocessor is heavily used, you *don't* want to specify all the details19:16
Alex_Gaynorthat's why I prefer the DWARF data, it's known to be correct19:16
fijalgdb is useless19:16
fijalfor such stuff19:16
fijalAlex_Gaynor: how will you deal with macro-based APIs?19:16
Alex_Gaynorthat's a problem with the API.19:16
Alex_GaynorIf it's not in the ABI, it's broken for *any* FFI.19:16
Alex_Gaynorit's not like ctypes handles them19:17
exarkunBut how will you deal with them? :)19:17
fijalno19:17
Alex_Gaynorexarkun: I won't.19:17
fijalbut I would like to be able to deal with it19:17
exarkun:(19:17
fijalsame with unspecified structs19:17
fijalI would19:17
fijalAlex_Gaynor: we have support for that in RPython btw19:17
Alex_Gaynorfijal: you can't deal with it without a compiler at runtime19:17
fijalat least partial and unfinished19:17
fijalso?19:17
Alex_Gaynorand the stdlib can't assume one of those19:17
Alex_Gaynorso it's not appropriate for this lib19:17
exarkunWhy not?19:17
fijalyou can have a compiler at runtime and generate pieces of C that you can ship19:17
fijaler19:18
fijalpieces of .so that are more regular19:18
exarkunAlex_Gaynor: Either you have a compiler at runtime, in which case you can use it, hooray19:18
exarkunAlex_Gaynor: Or you don't, and it won't work19:18
Alex_Gaynoryes, you can write a tool that generates a C lib for macros, that's orthagonal to this lib19:18
fijalno it's not19:18
exarkunHow is that worse than never working?19:18
fijalI would like to use a single API for both19:18
fijalI don't really want to care about whether stuff is using macros or not19:18
fijalAlex_Gaynor: real world is complex19:18
fijalI want a reasonable alternative to CPython C API19:19
fijalnot to ctypes19:19
fijala thing that does not deal with macros is not19:19
fijalAlex_Gaynor: note that we have the same problem in RPython and we dealt with it, it's not impossible19:19
Alex_GaynorRPython invokes a compiler whenever it feels like it19:19
fijalyes19:19
fijalbut you can be in the same position as CPython C API19:20
fijaleither you have a compiler or if you don't you need a .so generated by the compiler19:20
fijalthat is fair19:20
Alex_GaynorI'm not aware of any other dynamic language FFI that supports macros19:21
exarkunSo what?19:21
exarkunIt's clearly a useful thing to support.19:21
fijalAlex_Gaynor: that does not answer my question :)19:21
Alex_Gaynorit's not clearly a necessary thing to support.19:21
exarkunNothing is necessary19:21
exarkunPyPy isn't necessary19:21
exarkunPython isn't necessary19:21
exarkunSo what?  It's _useful_.19:21
Alex_Gaynornecessary for anyone to use this as a real library19:22
exarkunI want to rewrite pyOpenSSL, not in C19:22
Alex_GaynorI'd maybe consider optionally invoking a compiler, but for now simpler is better.19:22
exarkunHalf of OpenSSL is macros19:22
Alex_Gaynorhas anyone suggested to the OpenSSL devs that the universe of people not writing C hate them ;)19:22
exarkunThat's irrelevant.19:22
exarkunIf you don't want to support macros - whatever, that's obviously up to you, it's not like I'm going to do any work to help you19:23
CIA-5303stefanor 07roundup * 10#987/AppTestSocket.test_unix_socket_connect can fail when TMPDIR is long: 19:23
CIA-53[new] module/_socket/test/test_sock_app.py:19:23
CIA-53def test_unix_socket_connect(self):19:23
CIA-53import _socket, os19:23
CIA-53if not hasattr(_socket ... * 14https://bugs.pypy.org/issue98719:23
exarkunBut you're leaving out _useful_ functionality19:23
exarkunDon't pretend otherwise19:23
Alex_GaynorI'll consider macros, but solving that is totally orthagonal to all the other API decisions that need to be solved.19:23
fijalAlex_Gaynor: no, simpler is not better now19:25
fijaland it's not orthogonal19:25
fijalyou have to have a story19:25
fijalsuch a lib without macros is as useful as ctypes - noone uses it unless he has to19:25
Alex_Gaynormacros are not the reason I don't use ctypes much19:26
fijallet me put it otherwise19:26
fijalwe need a good story for making modules in pypy19:26
fijalnow we have none19:26
fijala better ffi that does not attack macros/errno and such is not a good story19:27
fijaleven if it's better than a current one19:27
Alex_GaynorI'm saying if you build this good FFI, a macro tool can be built on top of it/next to it.19:27
fijaland ctypes without ctypes_configure is completely useless19:27
arigato (~arigo@xdsl-188-154-144-172.adslplus.ch) left irc: Read error: Connection reset by peer19:28
fijalI'm with exarkun on that - I want a good story19:29
fijaland your API might depend on using vs non-using macros19:29
espes (~espes@123-243-221-248.tpgi.com.au) left irc: Ping timeout: 252 seconds19:29
fijalAlex_Gaynor: anyway, back to better-jit-hooks19:31
fijalwhat do you want?19:31
Alex_Gaynorfijal: on_compile with resops (introspectable), asm, code.  on_abort hopefully.  JIT/GC flags.19:32
Alex_GaynorThose are the most important ones19:33
Alex_Gaynorafter that, some sort of events/timeline thing19:33
Alex_Gaynorone at a time though :)19:33
fijalah, you want summary data19:33
fijalwell, resops kinda work19:33
fijalthey don't have all attrs19:33
Alex_Gaynordo they have name, offset and a way to get the repr?19:35
fijalthey have a number, an offset and __repr__19:35
espes (~espes@123-243-221-248.tpgi.com.au) joined #pypy.19:35
Alex_Gaynordo debug merge points have their metadata?19:37
fijalno19:39
fijalwhat do you want?19:39
fijalthere is code though19:39
Alex_Gaynorthe codeobject I guess19:39
fijaland for other merge points?19:39
Alex_Gaynornot sure what for regex, ideally something that can get me the pattern, but I don't know if that' s possible19:39
Alex_Gaynorfor numpy I'd love either something I can call debug_repr on, or the debug_repr directly if that's easier19:40
Alex_Gaynorit would be cool if you would calculate the opcode idx on python merge points, but I guess that's something I can fish for19:40
fijaldebug_repr is in location_str these days19:40
fijalyou can get opcode_idx as well19:40
Alex_Gaynorah, good enough19:40
Alex_GaynorI want opcode_idx for each python merge point, is that exposed, or do I need to fihs?19:41
fijalit's easy to expose19:41
fijal(it's not yet)19:41
fijalwe have a function that fishes this stuff from boxes of debug_merge_point19:41
Alex_Gaynorcool, basically I want all the things :)  once I finish with the current display I'll start working on tracebin.py + upload view19:41
fijalok19:42
fijaldid you get my concerns about CSS??19:42
Alex_Gaynorno19:42
fijalso, I like the current jitviewer more19:43
fijalfor few reasons19:43
Alex_Gaynorpersonally, once the width issues are fixed I think it's much more readabl19:43
fijalwhat are width issues?19:43
Alex_Gaynoryou get a horizontal scrollbar on resops quite a bit19:44
arigato (~arigo@xdsl-188-154-144-172.adslplus.ch) joined #pypy.19:44
fijalyes, this sucks a lot19:44
fijalalso, I like the indentation quite a bit more19:44
fijaland opcode specs instead of debug_merge_points19:44
fijalso the 3-level-indent thingie is quite cool19:44
nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 248 seconds19:44
fijaland line number should be slightly less prominent19:45
Alex_Gaynoryes, I plan to do opcode spec, and have highlighting vars, and everything else19:45
fijalcool19:46
Alex_Gaynorthe design definitely isn't final, but I think overall it looks nicer this way19:46
fijalok so "that way" being which part?19:47
fijalthe resops themselves or everything else?19:47
Alex_Gaynor?19:47
fijaleverything around or the list of resops19:47
fijalor which part is final and I can complain about :)19:47
Alex_Gaynorthe list of resops is worse ATM, because no highlighting, scrolling, and no debug merge point things19:47
fijalah ok19:47
Alex_Gaynorbut I think the way we show python vs. resops is better19:47
fijalI can't say :)19:48
fijalbut I think colors, line numbers, indentation is worse19:48
Alex_GaynorI still have to work on inlining and bridges as well, but for now, it's a start19:48
fijalbut maybe once we do everything I can really tell you19:48
Alex_Gaynorbtw we need to start tutorial soon19:48
fijaloh yes19:49
fijalAlex_Gaynor: can you review better-jit-hooks btw>?19:49
fijalit should work and be mergeable19:49
Alex_Gaynori'll review in a few minutes19:49
fijalcool19:49
Alex_Gaynorgoing to make myself some hot chocolate first19:49
fijalok19:50
fijalI think I should sleep19:50
fijalAlex_Gaynor: I overflowed todo list19:50
fijalbut I guess I need to start closing tickets regarding numpy19:50
fijalwrite a blog post19:50
Alex_Gaynorfijal: yes, blog post20:00
Alex_Gaynorfijal: I'll review now and leave a REVIEW.txt20:00
fermianyon (~lane@c-71-229-21-197.hsd1.al.comcast.net) left irc: Ping timeout: 240 seconds20:01
kenaan12fijal default 11cc8f110fc52d 15/pypy/module/micronumpy/: merge import-numpy, rename numpypy to _numpypy20:01
kenaan12fijal default 117bb8b38d8563 15/lib_pypy/numpypy/__init__.py: create applevel part here20:01
fijalAlex_Gaynor: ^^^20:02
Alex_Gaynorcool20:02
CIA-5303fijal 07roundup * 10#981/micronumpy 'fromnumeric' patch: 20:03
CIA-53Hey. I created lib_pypy/numpypy which imports stuff from _numpypy that is a mixed20:03
CIA-53module. Can you provide patch against the current trunk and mo ... * 14https://bugs.pypy.org/issue98120:03
fijalthat "reviews" one ticket ;-)20:04
kenaan12alex_gaynor better-jit-hooks 11ae6912658a2f 15/: merged default in20:21
kenaan12alex_gaynor better-jit-hooks 111c83e7759323 15/REVIEW.rst: review notes20:21
fijalAlex_Gaynor: why we should not use locals()?20:24
Alex_Gaynorfijal: I find it super hard to read, and the JIT doesn't like it20:25
fijalit's as hard to read as using normal variables no?20:25
Alex_GaynorI find it harder than just doing {"jumpdescr": jumpdescr}20:25
fijallike what's the difference20:25
fijalbetween20:25
fijalResOp('int_add', descr=descr)20:25
fijaland20:26
fijal"int_add(descr=descr)"20:26
fijalwhy is it harder to read?20:26
Alex_GaynorI don't understand20:26
Alex_Gaynor(does int_add even have a descr?)20:26
fijalone is withing """ the other is a normal local usage20:26
fijalwhy do we have to be specific in one case and not the other?20:26
Alex_GaynorI don't understand teh question, where do we write int_add() instead of ResOp('int_add')?20:27
fijalif we parse we do int_add inside a string20:27
fijalotherwise we write ResOperation20:27
fijalright?20:27
Alex_Gaynoroh, because that's a DSL, not python20:27
fijalyes20:28
Alex_Gaynorlocals() is called in the python code though :)20:28
Alex_Gaynorwhatever, it isn't worth this much effort to discuss20:28
fijalok, I would leave it20:28
fijalportal - I think we don't20:28
fijal* ``interp_reso.pyp:wrap_greenkey()`` should do something useful on non-pypyjit jds.20:29
fijalyes it should20:29
fijalit's however hard :/20:29
Alex_Gaynorcan you just respond to the REVIEW.rst, I'm going to go walk around20:29
fijalI would leave it for now as there is not really much we can do20:29
fijalI think all your points are bogus :)20:29
fijalor to-be-implemented-after merge20:29
fijalAlex_Gaynor: I'm going to sleep, chat tomorrow20:30
fijalAlex_Gaynor: also IMO locals can be fast20:39
fijalin some cases :)20:39
fijalnot this one I guess20:39
fijalwell no20:39
fijalit can be fast in all cases20:39
fijalthere is no reason to force it20:39
fijalarigato: ping20:39
Alex_Gaynorthe only way you can not force is if you unroll it20:40
fijaland?20:44
fijalis it bad?20:44
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) left irc: Ping timeout: 244 seconds20:51
mattip (~chatzilla@bzq-79-180-115-39.red.bezeqint.net) joined #pypy.21:04
kenaan12mattip numpypy-axisops 11f3a9a6a5871d 15/pypy/module/micronumpy/: add jit_merge_point21:04
kenaan12mattip numpypy-axisops 11579c843af22b 15/pypy/module/micronumpy/: jit_merge_point translates, zjit test for sum() of 2d array fails21:04
CIA-5303fijal 07roundup * 10#982/micronumpy std()/var() patch: Same as 981, please have a look at my addition to the discussion. * 14https://bugs.pypy.org/issue98221:04
fijalmattip: hi21:04
mattiphi21:04
mattipI'm trying to do my own homework, getting the zjit test into place.21:05
nirbheek (~nirbheek@gentoo/developer/flyingspaghettimonster/nirbheek) joined #pypy.21:05
fijalcool21:05
fijalwant some feedback?21:05
mattipI'm wondering what the third argument in this error statement means:21:06
mattipdebug_merge_point(0, 'numpy ReduceSig(add. Scalar. Array) [2 dims.reduce]')21:06
mattip"2 dims.reduce"?21:06
fijal2 dims is the length of array shape21:07
fijal(we compile different assembler per different dimension)21:07
fijalreduce is the name of jitpoint21:07
mattipAhh, so this is printed by the last known jitpoint, with the arguments to the jitpoint?21:08
fijal"the last known"?21:08
fijaldebug_merge_point is emitted each time you see a jit_merge_point while tracing21:09
mattipnow I understand, that's why it starts with "merge_point"!21:09
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) left irc: Read error: Connection reset by peer21:09
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) joined #pypy.21:09
mattipOK, last merge_point traversed.21:09
mattipthanks. 21:12
Dulak (~michael@unaffiliated/dulak) left irc: Quit: Leaving21:16
CIA-5303fijal 07roundup * 10#985/jit bug: 21:18
CIA-53[chatting] For what is worth, it looks like it'll finish just very slowly. It's tracing with21:18
CIA-53some absymal speed (and only tracing). We never rea ... * 14https://bugs.pypy.org/issue98521:18
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) left irc: Read error: Connection reset by peer21:20
stakkars (~tismer@p5DDB7A14.dip.t-dialin.net) joined #pypy.21:20
CIA-5303agaynor 07roundup * 10#985/jit bug: (log message trimmed)21:25
CIA-53The opcodes:21:25
CIA-53>>>> import dis21:25
CIA-53>>>> def f():21:25
CIA-53.... for c in x: * 14https://bugs.pypy.org/issue98521:25
fijalAlex_Gaynor: it does not miss the backjump21:26
fijalthat's not the point21:26
fijaleverything is working fine21:26
Alex_Gaynorfijal: why does it trace forever then?21:26
fijalI don't know21:26
fijalbesides the trace ends on jit_merge_point21:26
fijalso at any bytecode21:26
fijalAlex_Gaynor: I think it does not close because some stuff does not match or so21:34
fijalit's a question for hakan21:34
fijalhakanardo: 21:34
fijalAlex_Gaynor: can I merge the better-jit-hooks branch?21:35
fijalI can explain you other points21:35
Alex_Gaynorlet me think about it until tomorrow21:35
fijalok21:36
fijalmattip: do you want any specific feedback?21:37
mattipIf you're bored :) I would be happy if you could take a look.21:39
mattipin test_zjit I added a axissum test, it currently creates a 2d array and calls sum()21:40
mattipeventually it will call sum(0)21:40
mattipbut test_zjit is failing with "negative list getitem index out of bound"21:41
fijaloh that is bad21:41
mattipthat's test_zjit -k axissum21:41
fijaldid you try identical test in test_compile/test_numarray?21:42
mattipyup. Passes21:42
fijalbecause that means the implementation is probably buggy and your tests are not good enough, no?21:42
mattipBut I am trying to just test the current (non-axis) implementation.21:42
mattipin interp_ufunc.py21:43
fijalok21:44
fijallet me have a look21:44
fijal_ (~fijal@196-215-5-11.dynamic.isadsl.co.za) joined #pypy.21:45
mattiphmm. trying the test in a pypy running over python works too.21:47
fijal_ah21:47
fijal_mattip: obviously you need a value21:47
fijal_otherwise tests explode21:47
fijal (~fijal@196-215-5-11.dynamic.isadsl.co.za) left irc: Ping timeout: 240 seconds21:48
Nick change: fijal_ -> fijal21:48
kenaan12fijal numpypy-axisops 11a65f5ec8c18b 15/pypy/module/micronumpy/test/test_zjit.py: improve the error message21:49
fijalmattip: I hope this will clarify21:49
mattipdid I write the zjit test improperly?21:49
fijalwell "yes" in a way21:49
fijalit must return some value21:49
fijallike last operation has to have some value21:50
fijallike read element21:50
fijalI improved the exception though21:50
mattipI think I see the problem. Thanks.21:50
mattipfijal : that test now runs, thanks.21:56
mikefcfijal: I tried doing the lib_pypy/numpy thing yesterday. but obviously I don't know module stuff.    If I add a file under lib_pypy/numpypy, the methods in that file aren't being added to numpypy.  Do I need to add something extra to tell it?22:09
mikefce.g. I added fromnumeric.py with just "def std(a)  return a"22:09
mikefcbut std() isn't added to numpypy22:10
fijalmikefc: no :)22:10
fijalthat's the whole point22:10
fijalnumpypy in lib_pypy behaves like a normal python module22:10
mikefcOK.  I know I don't understand modules well enough, but do i need to add "from fromnumeric import *" to the __init__.py in lib_pypy/numpypy?  I thought modules automatically pulled in all the function defs?  22:14
Action: mikefc is stoopid22:14
fijalmikefc: read about python modules22:15
fijalreally, you can't guess it and me explaining misses the point quite a bit22:16
fijalit's nicely documented :)22:16
mikefcok. sorry. i gotta go read hg docs as well. need to start doing stuff in local branches.22:20
mattipfijal: as long as you're still around, here http://paste.pocoo.org/show/531502/ is what the check_simple_loop is reporting.22:21
mattipfor my jit_merge_point, after modifying compile and test_zjit22:22
mattipthat's it for now. It's late22:25
kenaan12mattip numpypy-axisops 11834eda1cb2d7 15/pypy/module/micronumpy/: add optional arguments to sum in compile, axissum test now runs in test_zjit22:26
mattip (~chatzilla@bzq-79-180-115-39.red.bezeqint.net) left irc: Quit: ChatZilla 0.9.88 [Firefox 8.0/20111115183158]22:26
fijalmattip: that's not bad22:30
fijalAlex_Gaynor: what you think?22:30
Alex_Gaynorfijal: about what?22:30
fijalthe matti's paste22:31
Alex_Gaynorfijal: this is for a sum on an axis?22:31
espes (~espes@123-243-221-248.tpgi.com.au) left irc: Ping timeout: 255 seconds22:32
fijalyes22:34
Alex_Gaynorno, it doesn't look right.  why is there a call?  that's the guard class?22:35
Alex_GaynorI'd like to see the log itself22:35
espes (~espes@123-243-221-248.tpgi.com.au) joined #pypy.22:38
fijal_ (~fijal@196-215-5-11.dynamic.isadsl.co.za) joined #pypy.22:41
fijal_Alex_Gaynor: of course it's wrong22:42
fijal_but "not too bad for the first jit exposure"22:42
fijal_:)22:42
fijal (~fijal@196-215-5-11.dynamic.isadsl.co.za) left irc: Ping timeout: 240 seconds22:43
Alex_Gaynorfijal_: write the blog post so we can show off how nice our "fast ndarry library is"22:45
Nick change: fijal_ -> fijal22:45
fijalpeople will piss on us because we don't beat C :/22:45
fijalbut ok22:45
Alex_Gaynorfijal: we somke numpy's ndarray :)22:46
fijalprobably not carefully tweaked cython22:52
mikefcfijal: i see you created a branch to "import numpy's pure python".   How did that go?22:55
fijalmikefc: not very good, whatever was useful is merged22:55
arigato (~arigo@xdsl-188-154-144-172.adslplus.ch) left irc: Quit: See you22:56
nedbat (~nedbat@python/psf/nedbat) joined #pypy.22:57
bbot2Started: 15http://buildbot.pypy.org/builders/own-macosx-x86-32/builds/76923:00
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64/builds/19723:00
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-32/builds/100623:00
bbot2Started: 15http://buildbot.pypy.org/builders/jit-benchmark-linux-x86-64-2/builds/2523:00
nedbat (~nedbat@python/psf/nedbat) left irc: Ping timeout: 255 seconds23:20
squiddy (~squiddy@g224197182.adsl.alicedsl.de) left irc: Quit: Leaving23:23
tilgovi (~randall@couchdb/developer/tilgovi) joined #pypy.23:25
amaury_ (~amaury_@46-127-23-192.dynamic.hispeed.ch) left irc: Ping timeout: 268 seconds23:26
CIA-5303mikefc 07roundup * 10#982/micronumpy std()/var() patch: 23:35
CIA-53This patch (v2) now only adds code for the ndarray var() and std() methods at the23:35
CIA-53interp level. * 14https://bugs.pypy.org/issue98223:35
nettok (~quassel@190.148.27.164) left irc: Ping timeout: 268 seconds23:41
fermianyon (~lane@c-71-229-21-197.hsd1.al.comcast.net) joined #pypy.23:49
Unhelpfultheir gralloc though23:51
Unhelpfulgr.23:52
Unhelpfulsorry that was for an android dev channel. touchpad bump. :/23:52
--- Sun Jan 8 201200:00

Generated by irclog2html.py 2.9.2 by Marius Gedminas - find it at mg.pov.lt!