cfbolz changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://botbot.me/freenode/pypy/ ) | use cffi for calling C | "the modern world where network packets and compiler optimizations are effectively hostile"
lritter has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 246 seconds]
tilgovi has quit [Ping timeout: 240 seconds]
tilgovi has joined #pypy
TheAdversary has quit [Read error: Connection reset by peer]
TheAdversary has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
marr has quit [Ping timeout: 240 seconds]
jcea has quit [Quit: jcea]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 268 seconds]
yuyichao_ has joined #pypy
yuyichao has quit [Read error: Connection reset by peer]
tilgovi has quit [Ping timeout: 276 seconds]
lritter has quit [Quit: Leaving]
tilgovi has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
tilgovi has quit [Ping timeout: 246 seconds]
ArneBab has joined #pypy
ArneBab_ has quit [Ping timeout: 260 seconds]
pilne has quit [Quit: Quitting!]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 260 seconds]
kipras`away is now known as kipras
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
asmeurer has joined #pypy
vkirilichev has joined #pypy
rokujyouhitoma has joined #pypy
asmeurer has quit [Quit: asmeurer]
rokujyouhitoma has quit [Ping timeout: 260 seconds]
vkirilichev has quit [Remote host closed the connection]
realitix has joined #pypy
Remi_M has joined #pypy
<fijal> njs: for what is worth, if we ever managed to move numpy, we'll be able to kill C API
<fijal> since vast majority of others have some form of plan to use just cython
<njs> fijal: you mean if the "cythonvm" plan works out?
<fijal> yeah
<fijal> if numpy, cffi and cython all are moved to a place where it's thinkable to do something else than C API
<fijal> then it's feasible to move away from C API entirely
<fijal> there is a long list of libraries that are the long tail, but all of them are movable
<fijal> while numpy is not, not really right now
<njs> fijal: I think we should probably not worry about that as a goal initially, since (a) treating the "cythonvm" bytecode as something that you use alongside the C API simplifies a bunch of things for the initial support, and (b) lots of existing cython code won't be compatible with this anyway
<fijal> right, but maybe it would be a good point to start promoting that
<njs> fijal: but I agree that if we pull that off then we're in a much better position to start thinking about how to move to "native" cythonvm support
<simpson> After all, nobody *likes* C API, right?
<fijal> njs: you are aware we have the shittiest runtime of all the languages you would actually consider using in 2017?
<fijal> (assuming pypy and numba are still fringe and niche technologies)
<njs> simpson: eh. maybe maybe not, but if you say that then all kinds of folks are going to get all defensive about the precious C API
<njs> fijal: don't know that I'd consider numba really a python runtime either
<fijal> njs: well, is cython an acceptable alternative for numeric folks
<fijal> right
<fijal> there was a missing "?"
<fijal> at the end
<njs> fijal: it's certainly popular
<njs> also a lot of its popularity is because of cpython's limitations :-)
<fijal> so if we told numeric folks "5 years from now there will be no C API, only cython", how many people would be defensive?
<njs> there's a million long tail things to deal with. at some point f2py will need to be dealt with, that will be a fun one.
<njs> that is probably more aggressive than I would phrase it :-). If only b/c if someone wants to argue about what will make sensein 5 years, that's just a boring argument that no-one can win because none of us have a crystal ball
<njs> but if we emphasize that this plan makes a huge amount of sense right now incrementally, and then mention that hey in the long run it might also turn out to give us a way out of the C API trap... wouldn't that be neat?
<njs> whereas if you say (or are perceived to say) "we're going to take away your C API haha" then people will get pissed off
<fijal> right
<fijal> we can't even say that
<fijal> but if we tell cpython devs "this is how you get rid of cpython api" they might be happier
<fijal> anyway, let's see how it goes
<fijal> njs: so you say that "subset of cython" is a good thing?
<njs> yeah, python-dev will absolutely scream about how wonderful the C API is to have gotten us this far (and ... they're kind of right), but even they want to have a way out going forward
<njs> there was a whole discussion at the language summit and thread on the list a few weeks ago about if there's any way they can pull back how much surface area they expose there
<njs> b/c it's also screwing up things like larry's GIL removal work etc etc
<fijal> yeah
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
<fijal> We just found out PyEval_EvalFrameEx is nearly 3000 LOC
<fijal> wow
<njs> well, yeah, the entire bytecode interpreter is one function so it can use goto :-)
<fijal> lovely
<fijal> goto error mostly
vkirilichev has joined #pypy
vkirilichev has quit [Ping timeout: 260 seconds]
vkirilichev has joined #pypy
<njs> fijal: no, they use computed gotos to jump between opcode labels
<njs> fijal: or alternatively a switch statement
<njs> it's hidden behind macros
<njs> but either way all the opcode implementations need to be in the same function
yuyichao_ has quit [Ping timeout: 276 seconds]
oberstet has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 255 seconds]
glyph has quit [Quit: End of line.]
glyph has joined #pypy
marr has joined #pypy
antocuni has joined #pypy
marr has quit [Ping timeout: 246 seconds]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 260 seconds]
<kenaan> tobweber stmgc[c8-tcp-style-trx-length] 3868dfdf70fd /c8/stm/: Update from efficient serial execution master with starvation fix
<kenaan> tobweber stmgc[c8-efficient-serial-execution-master] b5c1dadb9699 /c8/stm/: Fix commit signal was not reset on transaction start
<kenaan> tobweber stmgc[c8-efficient-serial-execution-master] 88ffffe69ad8 /c8/stm/nursery.c: Fix syntax error
<kenaan> tobweber stmgc[c8-overheads-instrumentation] 683f252182e3 /c8/stm/: Merge latest changes from master
<kenaan> tobweber stmgc[c8-overheads-instrumentation] 364f9fb71d3e /c8/stm/: Fix some timings that could be lost when aborting by publishing and resetting timer ...
<kenaan> tobweber stmgc[c8-overheads-instrumentation] 00fa92be3c0f /c8/stm/nursery.c: Instrument more of the major GC
<kenaan> tobweber stmgc[c8-tcp-style-trx-length] 003bd8a738d7 /c8/stm/: Merge fix of commit signalling fix
<kenaan> tobweber stmgc[c8-tcp-style-trx-length] 7b939c8fa0b0 /c8/stm/core.c: Move transaction length update on abort
<kenaan> tobweber stmgc[c8-tcp-style-trx-length] 47ae8bbc2b7e /c8/stm/: Merge latest instrumentation fixes
<kenaan> tobweber stmgc[c8-overheads-instrumentation] 59e0bec0fd9b /c8/stm/timing.h: Fix redefinition of payload data when using stop timer macro more than once in a fun...
<kenaan> tobweber stmgc[c8-tcp-style-trx-length] 93461fbaabd1 /c8/stm/timing.h: Merge fix for stop timer macro
<kenaan> tobweber stmgc[c8-tcp-style-trx-length] e912698faa40 /c8/stm/timing.h: Fix missing type definitions for custom payload
<kenaan> tobweber stmgc[c8-tcp-style-trx-length] dbea548c4c6e /c8/stm/core.c: Move transaction length update for aborts to validation
<kenaan> tobweber stmgc[c8-tcp-style-trx-length] adf35813ae8d /c8/stm/: Fix and refactor backoff mechanism
<kenaan> tobweber stmgc[c8-tcp-style-trx-length] de7da0f0b0ad /c8/stm/nursery.c: Improve backoff computation
<kenaan> tobweber stmgc[c8-tcp-style-trx-length] f6be3fc14929 /c8/stm/nursery.c: Introduce slow start mechanism
<kenaan> tobweber stmgc[c8-tcp-style-trx-length] d62e76b278bd /c8/stm/nursery.c: Optimize min/max trx length
<kenaan> tobweber stmgc[c8-adaptive-trx-length-per-thread] 2f4291869a47 /c8/stm/core.c: Update trx length on commit and abort only
<kenaan> tobweber stmgc[c8-adaptive-trx-length-per-thread] c1b97c862a98 /c8/stm/: Merge commit signalling fix
<kenaan> tobweber stmgc[c8-adaptive-trx-length-per-thread] ff769635407d /c8/stm/nursery.c: Merge fix for syntax error
<kenaan> tobweber stmgc[c8-adaptive-trx-length-per-thread] 77cbbb3d1a97 /c8/stm/core.c: Move transaction length update on abort
<kenaan> tobweber stmgc[c8-adaptive-trx-length-per-thread] de8f34537c9b /c8/stm/: Merge latest instrumentation fixes
jcea has joined #pypy
cstratak has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 260 seconds]
catalinf has joined #pypy
catalinf has quit [Client Quit]
nimaje1 has joined #pypy
nimaje1 is now known as nimaje
nimaje is now known as Guest6599
catalinf has joined #pypy
catalinf has quit [Client Quit]
marr has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 260 seconds]
vkirilichev has quit [Remote host closed the connection]
vkirilichev has joined #pypy
vkirilichev has quit [Ping timeout: 260 seconds]
palecsan has joined #pypy
lritter has joined #pypy
vkirilichev has joined #pypy
Rhy0lite has joined #pypy
marvin_ has quit [Ping timeout: 240 seconds]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 246 seconds]
marky1991 has joined #pypy
catalinf has joined #pypy
<palecsan> hello, I have a question about space.appexec. I saw it in a commit in https://bitbucket.org/pypy/pypy/commits/6159e89116af. From the online docs I see that it is recommended to be used with app level testing, but here it's used in RPython. What does space.appexec actually do and where it is recommended to be used?
marvin_ has joined #pypy
<antocuni> palecsan: it lets you to run some app-level code from interp-level (i.e., rpython) code
<palecsan> so it allows you to mix Python and RPython code?
<antocuni> it is ROUGHLY equivalent of CPython's PyRun_SimpleString
<antocuni> which allows you to run python from C
<palecsan> but how can RPython know that the code needed to run that small snippet of code has been translated?
<antocuni> palecsan: yes, but only if you are hacking the pypy python interpreter itself (i.e., the code which lives under the pypy/ directory)
<LarstiQ> and in both cases C/Rpython is more tedious to write/get the benefits of the rest of the interpreter?
<LarstiQ> antocuni: and bytearray.extend is written in rpython because Cpython writes it in C, or?
<palecsan> don't get me wrong, I have nothing with that commit, I'm just trying to understand it
<antocuni> LarstiQ: I don't know exactly why bytearray.extend is written in rpython, but it has nothing to do with the fact that cpython writes it in C
<antocuni> palecsan: what is your precise question? :)
<palecsan> how it is possible to use Python features in RPython, which ends up in C code?
<palecsan> it seems like a chicken and egg problem
<antocuni> palecsan: space.appexec is not a general RPython feature
yuyichao_ has joined #pypy
<antocuni> it exists only in the Python interpreter written in RPython
<palecsan> aaaa
<palecsan> ok
<palecsan> you answered my next question, what about other languages written over rpython
<antocuni> in particular, "space" must be an instance of pypy.objspace.std.objspace.StdObjSpace
<dash> palecsan: yeah, this is a pypy feature not an rpython feature
<antocuni> yes exactly, for other languages you cannot use space.appexec (although they might offer an equivalent for their own language)
<palecsan> oh, I see now :)
<palecsan> thanks for the clariffications!
<antocuni> you're welcome
jcea has quit [Ping timeout: 240 seconds]
jcea has joined #pypy
raynold has quit [Quit: Connection closed for inactivity]
adamholmberg has joined #pypy
catalinf has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
<kenaan> fijal extradoc 3af5b24e411a /talk/pyconru-2017/: add the pdf too
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
mattip has joined #pypy
palecsan has quit [Quit: http://www.kiwiirc.com/ - A hand crafted IRC client]
Ryanar has joined #pypy
yuyichao_ has quit [Ping timeout: 248 seconds]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
yuyichao_ has joined #pypy
cataf has joined #pypy
<cataf> hello, regardng the issue 2387/ctypes.c_longdouble is not usable- what's the reason to trigger an assert when the data type is float or double in push_arg_as_ffiptr function
yuyichao has joined #pypy
yuyichao_ has quit [Read error: Connection reset by peer]
yuyichao has quit [Remote host closed the connection]
yuyichao has joined #pypy
rokujyouhitoma has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
rokujyouhitoma has quit [Ping timeout: 248 seconds]
antocuni has quit [Ping timeout: 258 seconds]
cstratak has quit [Quit: Leaving]
dmalcolm has quit [Remote host closed the connection]
chelz has quit [Ping timeout: 240 seconds]
dmalcolm has joined #pypy
vkirilichev has quit [Remote host closed the connection]
Ryanar has quit [Quit: Ryanar]
ronan_ has joined #pypy
ronan_ has quit [Read error: Connection reset by peer]
ronan_ has joined #pypy
Ryanar has joined #pypy
realitix has quit [Ping timeout: 246 seconds]
chelz has joined #pypy
ronan_ has quit [Ping timeout: 246 seconds]
rokujyouhitoma has joined #pypy
ronan_ has joined #pypy
rokujyouhitoma has quit [Ping timeout: 260 seconds]
raynold has joined #pypy
kornerr has joined #pypy
<kornerr> hey
<kornerr> is it possible to build pypy on android/ios/emscripten?
ronan_ is now known as ronan
ColdHeat has quit [Ping timeout: 240 seconds]
<ronan> kornerr: yes for emscripten, that's how pypy.js is built
<ronan> AFAIK nobody ever reported success for android or ios
<kornerr> I'm searching for a scripting language/engine. so I was wondering if pypy can do the hard work for me
ColdHeat has joined #pypy
ronan has quit [Ping timeout: 246 seconds]
antocuni has joined #pypy
adamholm_ has joined #pypy
adamholmberg has quit [Ping timeout: 248 seconds]
ronan has joined #pypy
ronan has quit [Client Quit]
bendlas has quit [Ping timeout: 255 seconds]
ColdHeat has quit [Ping timeout: 260 seconds]
ColdHeat has joined #pypy
adamholm_ has quit [Remote host closed the connection]
adamholmberg has joined #pypy
bendlas has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 246 seconds]
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
gclawes has quit [Ping timeout: 248 seconds]
kornerr has quit [Quit: Leaving.]
adamholm_ has joined #pypy
adamholmberg has quit [Ping timeout: 246 seconds]
Ryanar has quit [Quit: Ryanar]
ronan has joined #pypy
Ryanar has joined #pypy
ronan has quit [Ping timeout: 276 seconds]
Ryanar has quit [Client Quit]
Ryanar has joined #pypy
[Arfrever] has quit [Quit: leaving]
asmeurer__ has joined #pypy
[Arfrever] has joined #pypy
oberstet has quit [Ping timeout: 260 seconds]
jcea has quit [Remote host closed the connection]
asmeurer__ has quit [Quit: asmeurer__]
jcea has joined #pypy
Tiberium has joined #pypy
Tiberium has quit [Remote host closed the connection]
rokujyouhitoma has joined #pypy
Ryanar has quit [Quit: Ryanar]
rokujyouhitoma has quit [Ping timeout: 260 seconds]
vkirilichev has joined #pypy
realitix has joined #pypy
Ryanar has joined #pypy
lritter has quit [Remote host closed the connection]
<kenaan> mjacob py3.6 73c89dbe9896 /pypy/objspace/std/bytesobject.py: hg merge py3.5
<mjacob> ronny: how hard would it be to hook into the pytest assert rewrite logic and make it put "if not we_are_translated()" around each rewritten assert?
antocuni has quit [Ping timeout: 255 seconds]
realitix has quit [Quit: Leaving]
redj has quit [Remote host closed the connection]
redj has joined #pypy
rokujyouhitoma has joined #pypy
Ryanar has quit [Quit: Ryanar]
Rhy0lite has quit [Quit: Leaving]
rokujyouhitoma has quit [Ping timeout: 246 seconds]
Ryanar has joined #pypy
benbange1 has joined #pypy
tmarkovich has quit [Ping timeout: 260 seconds]
benbangert has quit [Read error: Connection reset by peer]
tmarkovich has joined #pypy
mattip has left #pypy ["bye"]
vkirilichev has quit [Remote host closed the connection]
vkirilichev has joined #pypy
pilne has joined #pypy
rmariano has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 268 seconds]
benbange1 is now known as benbangert
vkirilichev has quit [Remote host closed the connection]
Rotonen has quit [Quit: reboot]
Rotonen has joined #pypy
Rotonen has left #pypy [#pypy]
Rotonen has joined #pypy
Rotonen has left #pypy [#pypy]
Rotonen has joined #pypy
rmariano has quit [Ping timeout: 268 seconds]
marky1991 has quit [Ping timeout: 240 seconds]
yuyichao has quit [Read error: Connection reset by peer]
yuyichao has joined #pypy
jcea has quit [Ping timeout: 260 seconds]
marky1991 has joined #pypy
rmariano has joined #pypy
rokujyouhitoma has joined #pypy
vkirilichev has joined #pypy
rokujyouhitoma has quit [Ping timeout: 260 seconds]
adamholm_ has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 240 seconds]
gclawes has joined #pypy
jcea has joined #pypy
jcea has quit [Remote host closed the connection]
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 240 seconds]
vkirilichev has quit [Remote host closed the connection]
infernix has quit [Ping timeout: 246 seconds]
infernix has joined #pypy
asmeurer has joined #pypy
rokujyouhitoma has joined #pypy
rokujyouhitoma has quit [Ping timeout: 260 seconds]
asmeurer has quit [Quit: asmeurer]
rmariano has quit [Ping timeout: 240 seconds]
rmariano has joined #pypy
asmeurer_ has joined #pypy