antocuni changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://botbot.me/freenode/pypy/ ) | use cffi for calling C | "PyPy: the Gradual Reduction of Magic (tm)"
adamholmberg has quit [Remote host closed the connection]
adamholm_ has joined #pypy
Hotpot33 has quit [Ping timeout: 240 seconds]
Nizumzen has joined #pypy
pulkitg has joined #pypy
adamholm_ has quit [Remote host closed the connection]
adamholmberg has joined #pypy
oberstet has quit [Ping timeout: 240 seconds]
adamholmberg has quit [Ping timeout: 260 seconds]
bendlas has joined #pypy
abvi[m]1 has joined #pypy
yuvipanda has joined #pypy
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 240 seconds]
gefarion has joined #pypy
<gefarion> Hi!
marr has quit [Ping timeout: 264 seconds]
Nizumzen has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
<gefarion> I am working on a reflective VM based on https://github.com/SOM-st/RTruffleSOM and i am having performance issues with one particular benchmark when use the reflective features. I need some advice about how to analize the traces..
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 240 seconds]
slacky has joined #pypy
gefarion has quit [Ping timeout: 248 seconds]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 248 seconds]
pilne has quit [Quit: Quitting!]
lritter has joined #pypy
dddddd has quit [Remote host closed the connection]
adamholmberg has joined #pypy
ArneBab_ has joined #pypy
ArneBab has quit [Ping timeout: 248 seconds]
adamholmberg has quit [Ping timeout: 240 seconds]
tbodt has joined #pypy
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
adamholmberg has quit [Ping timeout: 248 seconds]
tbodt has joined #pypy
Hotpot33 has joined #pypy
slackyy has joined #pypy
slacky has quit [Ping timeout: 248 seconds]
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 255 seconds]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
realitix has joined #pypy
realitix has quit [Client Quit]
realitix has joined #pypy
tayfun has joined #pypy
zmt00 has quit [Quit: Leaving]
jneen has joined #pypy
<jneen> i am really excited that macropy works with rpython
<jneen> just thought yall should know
realitix has quit [Quit: realitix]
<simpson> jneen: Really?
<simpson> So you generate your code from macros and then run it through the translator?
<jneen> yep
<jneen> as long as the generated code conforms to rpython it seems to work
<jneen> (the square bracket notation is macropy's "expr macro" invocation syntax)
<simpson> We do this sort of thing in Typhon, but without macros, just raw metaclasses and decorators: https://github.com/monte-language/typhon/blob/master/typhon/autohelp.py
<simpson> I've been thinking about how to improve the metaprogramming here.
<jneen> oh dang
<jneen> yeah macropy might help
<simpson> I would prefer to just generate RPython from Monte, but that requires answering some bootstrap questions, and also writing Yet Another Python Writer, which I'm kind of tired of doing.
<jneen> they also have "decorator macros" which i think would practically be more useful
<jneen> heh yeah
realitix has joined #pypy
realitix has quit [Client Quit]
realitix has joined #pypy
Alex_Gaynor has quit [Read error: Connection reset by peer]
krono has quit [Read error: Connection reset by peer]
Alex_Gaynor has joined #pypy
krono has joined #pypy
pdox has quit [Quit: ...]
ssbr has quit [Ping timeout: 246 seconds]
ssbr has joined #pypy
yuvipanda has quit [Ping timeout: 252 seconds]
pulkitg has quit [Ping timeout: 252 seconds]
bendlas has quit [Ping timeout: 255 seconds]
abvi[m]1 has quit [Ping timeout: 264 seconds]
john51 has quit [Read error: Connection reset by peer]
john51 has joined #pypy
SunDwarf has quit [Ping timeout: 260 seconds]
SunDwarf has joined #pypy
cjwelborn has quit [Remote host closed the connection]
<realitix> Hi arigato, I finally managed to compile the API extension with an ABI dependancy but when I import the module, I got an error: while loading _pyvmamodule: failed to import ffi, lib from vulkan._vulkancache. Of course, it's just a cdef cache so no lib inside :-(. I will try to customize the cffi code to import only ffi
Hotpot33 has quit [Ping timeout: 240 seconds]
cjwelborn has joined #pypy
Hotpot33 has joined #pypy
jacob22__ has joined #pypy
dddddd has joined #pypy
Hotpot33 has quit [Max SendQ exceeded]
Hotpot33 has joined #pypy
<fijal> ronan: ping (whatever timezone you might be in)
Hotpot33 has quit [Max SendQ exceeded]
Hotpot33 has joined #pypy
Hotpot33 has quit [Max SendQ exceeded]
Hotpot33 has joined #pypy
Hotpot33 has quit [Max SendQ exceeded]
Hotpot33 has joined #pypy
Hotpot33 has quit [Max SendQ exceeded]
Hotpot33 has joined #pypy
oberstet has joined #pypy
mattip has joined #pypy
asmeurer__ has quit [Quit: asmeurer__]
pulkitg has joined #pypy
marr has joined #pypy
Jellyg00se has joined #pypy
grepwood has quit [Ping timeout: 276 seconds]
grepwood has joined #pypy
abvi[m]1 has joined #pypy
bendlas has joined #pypy
yuvipanda has joined #pypy
jimbaker_ has quit [Ping timeout: 240 seconds]
jimbaker_ has joined #pypy
Hotpot33 has quit [Ping timeout: 246 seconds]
Hotpot33 has joined #pypy
antocuni has joined #pypy
<kenaan> arigo unicode-utf8-re cb5b89596a2f /rpython/rlib/rsre/: in-progress
<kenaan> arigo unicode-utf8-re 0fd38947b59e /pypy/module/_sre/: in-progress
<kenaan> arigo unicode-utf8-re be4b4c164598 /: hg merge unicode-utf8
<mattip> hi. any thoughts about 5.10? Should we merge cpyext-avoid-roundtrip ? Can we release win32, linux32, macos py3.5?
<mattip> (and if bivab fixes ARM build issue, maybe ARM py3.5 as well)
<arigato> hi! sorry, I guess I need to review cpyext-avoid-roundtrip is nobody else is
<mattip> if I remember, there was some exchange about objecte lifetimes in that branch on IRC that I was not involved in
<mattip> but IMO the branch is ready for merging
<ronan> fijal: pong
<fijal> ronan: I was looking at _io
<fijal> we need more Utf8StringBuilder I think
<fijal> as opposed to StringBuilder
<fijal> ronan: do you feel like helping with whacking some other modules?
<ronan> yes
<ronan> to whacking some other modules
<ronan> Utf8StringBuilder wasn't so easy to use IIRC
<ronan> I did notice a hard issue in array though:
dddddd has quit [Remote host closed the connection]
<ronan> what to do about oversized unicode characters?
<ronan> oversized as in ord(ch) > 0x10ffff
<fijal> we raise ValueError
<fijal> (like python3)
<ronan> hmm, that might be bad for compatibility
* fijal pushes the rest
<fijal> ronan: yes, we had this discussion and we decided it's ok and python array module accepts it by accident
<fijal> (we can revisit it for weird UTF8 at some later stage)
<kenaan> fijal unicode-utf8 a50930e1db6b /pypy/: whack the slowpath too
<kenaan> fijal unicode-utf8 eb61e553bfd4 /pypy/module/_codecs/interp_codecs.py: kill dead code
<ronan> ok
<kenaan> fijal unicode-utf8 bf4ecad403eb /pypy/interpreter/unicodehelper.py: fix _codecs
<kenaan> fijal unicode-utf8 7ffcfc6493e6 /pypy/: whack at _io module
<kenaan> fijal unicode-utf8 affb72fc7cf7 /pypy/module/_multibytecodec/: fix _multibytecodec
<kenaan> fijal unicode-utf8 e4ed73204961 /pypy/module/array/interp_array.py: more fixes
<fijal> ronan: I killed the flag btw completely
<ronan> good, that's less complexity
<fijal> armin convinced me at the end :)
antocuni has quit [Ping timeout: 260 seconds]
<ronan> so what do we still need to do?
<fijal> fix all the other modules
<fijal> then look at bigger benchmarks
<fijal> I fixed the first half till _rawffi
<fijal> and the bottom (objspace/)
<fijal> ronan: a good goal would be to get full translation to succeed and all tests to pass?
<ronan> obviously ;-)
<kenaan> arigo unicode-utf8-re 336fb075d139 /: in-progress
<fijal> ;-)
<arigato> still trying to figure out how to adapt the tests for rlib/rsre
<arigato> there are no tests checking non-ascii unicode strings
<fijal> *cough*
<arigato> maybe do something obscure like take the pattern and string, and replace all letters with non-ascii letters?
<arigato> I guess there are some unit tests actually, like \w matching some non-ascii letter, but not of the kind:
<arigato> "check that the reported position of the match is correct" for example
<arigato> because previously, it would be enough to test that with plain strings
<ronan> arigato: maybe it's enough to add a few hypothesis tests?
<arigato> I think hypothesis is not good at that
<ronan> not good at what? There is a from_regex() strategy
<arigato> ah
<arigato> worth looking then
<kenaan> arigo unicode-utf8-re b58a53172e21 /rpython/rlib/rsre/: Remove slowly_convert_byte_pos_to_index
<ronan> fijal: I'll fight with cpyext
<fijal> brave man
<kenaan> arigo unicode-utf8-re 68c926785f51 /rpython/rlib/rsre/rsre_utf8.py: duh
<cfbolz> jneen: wow, cool, thanks for letting us know
<mattip> doesn't PEP 557 Data classes https://www.python.org/dev/peps/pep-0557 kind of duplicate macropy, at least the first example?
<mattip> well, totally different method but same result for data classes
<kenaan> arigo unicode-utf8-re 80ff594175dc /rpython/rlib/rsre/rsre_utf8.py: Fix test_search
<kenaan> arigo unicode-utf8-re e2017b23843a /rpython/rlib/rsre/: Fix test_match
lritter has quit [Remote host closed the connection]
<arigato> PEP 557 looks like "we have too many standard, let's make one more"
<fijal> heh
gefarion has joined #pypy
<kenaan> rlamy unicode-utf8 8cc0253e1ece /pypy/: Some unicode>utf8 conversions in cpyext/unicodeobject.py
realitix has quit [Ping timeout: 240 seconds]
<dw> arigato: the joyful thing is that the first activity will involve backporting it and throwing it up on pypi -- resulting in a data classes backport, attr.ib, and the one in the stdlib
<dw> (and probably someone comes along and makes an 'anyattrib' package like anyjson hehe)
<dw> guido seems to relish reimplementing glyph's projects :(
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
Rhy0lite has joined #pypy
antocuni has joined #pypy
mattip has left #pypy ["bye"]
realitix has joined #pypy
realitix has quit [Client Quit]
realitix has joined #pypy
Nizumzen has joined #pypy
adamholmberg has joined #pypy
realitix_ has joined #pypy
realitix has quit [Read error: Connection reset by peer]
realitix_ is now known as realitix
<kenaan> rlamy unicode-utf8 5677dc1909e9 /pypy/module/cpyext/: fixes
realitix has quit [Client Quit]
realitix has joined #pypy
<fijal> ronan: when I have a second I'll look into other module, let me know which ones you're attaking
oberstet has quit [Ping timeout: 246 seconds]
jamesaxl has joined #pypy
jacob22__ has quit [Ping timeout: 250 seconds]
dcrosta has joined #pypy
tayfun has quit [Quit: tayfun]
oberstet has joined #pypy
realitix has quit [Ping timeout: 240 seconds]
nunatak has joined #pypy
tbodt has joined #pypy
grepwood has quit [Ping timeout: 248 seconds]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
Jellyg00se has quit [Quit: Leaving]
ronan has quit [Ping timeout: 264 seconds]
grepwood has joined #pypy
<kenaan> rlamy unicode-utf8 d53d8f486841 /pypy/module/cpyext/unicodeobject.py: Fix PyUnicode_DecodeUTF16/32
zmt00 has joined #pypy
grepwood has quit [Ping timeout: 260 seconds]
ronan has joined #pypy
tbodt has joined #pypy
jacob22__ has joined #pypy
jacob22__ has quit [Ping timeout: 250 seconds]
dddddd has joined #pypy
asmeurer_ has joined #pypy
asmeurer_ has quit [Client Quit]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
asmeurer__ has joined #pypy
antocuni has quit [Ping timeout: 240 seconds]
asmeurer__ has quit [Ping timeout: 268 seconds]
tbodt has joined #pypy
<jneen> macropy is a generic macro system, it looks like pep 557 is just about data classes? macropy also ships with "case classes" but afaict they're not rpython
<jneen> but macropy is totally capable of generating rpython during the rpython build (i.e. full-python load environment)
<jneen> i'm working on a visitor generator so i don't have to rewrite that mechanism from scratch every time i want a dang tree
<jneen> but it's 3am and i need to go to bed soooooooooo
marr has quit [Ping timeout: 255 seconds]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
marr has joined #pypy
jamesaxl has quit [Read error: Connection reset by peer]
jamesaxl has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
<gefarion> Hi!
<gefarion> I am working on a reflective VM based on https://github.com/SOM-st/RTruffleSOM and i am having performance issues with one particular benchmark when use the reflective features. I need some advice about how to analize the traces.
<cfbolz> hello
<simpson> gefarion: Do you have a pastebin with an example trace, by chance? What have you tried so far?
<gefarion> simpson yes, give me a second.
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
<gefarion> this is the trace that works fine, https://pastebin.com/HzvkWnsW
<gefarion> The method Counter>>#addMethodCall is empty.
jamesaxl has quit [Quit: WeeChat 1.9.1]
<fijal> gefarion: which of the loops is slow?
<fijal> gefarion: or what do you want from us, maybe that's a better question
<fijal> ronan: well, I didn't :)
<cfbolz> arigato: snow snow!
<gefarion> fijal, that trace works fine. But when i add another method call in Counter>>#addMethodCall the performance is about 50x slower.
<fijal> gefarion: maybe your trace becomes too long or something?
<fijal> gefarion: run PYPYLOG=jit-summary:- and see the difference
<gefarion> I am calling an empty method (foo) inside of Counter>>#addMethodCall
<gefarion> that is what i am thinkg
<cfbolz> gefarion: yes, but even calling an empty method costs operations in the trace, particularly the unoptimized one
<gefarion> that is what i am thinking
Guest29891 has quit [Remote host closed the connection]
<gefarion> "abort: trace too long:1"
<cfbolz> there you go
marvin has joined #pypy
<fijal> gefarion: and before that was 0?
<gefarion> yes
<fijal> yes well, that's bound to produce bad effects
<fijal> gefarion: now the call becomes call_assembler
marvin is now known as Guest22643
<gefarion> is there a way to increase the threshold?
<fijal> yes, by a bit
<fijal> jit.set_param I think?
Guest22643 has quit [Ping timeout: 240 seconds]
drolando has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<simpson> gefarion: For Monte, we need extra-long traces too. We default to long traces with a string like this: https://github.com/monte-language/typhon/blob/master/typhon/arguments.py#L58
<simpson> And we give that to the JIT builder like this: https://github.com/monte-language/typhon/blob/master/main.py#L185
drolando has joined #pypy
windy_ has joined #pypy
<gefarion> Thanks!, i will try that.
<simpson> To figure out how long a trace should be, we looked at the trace lengths generated by a few of our benchmarks, as well as our compiler and test suite. We tried to find trace sizes that would comfortably fit about 80% of our loops.
<windy_> hi folks, I want to add a new builtin function to pypy that takes variable amount of arguments. I couldn't find examples in pypy repo that does "def func(*args)". Is there any suggestions?
windy_ has quit [Quit: Page closed]
Rhy0lite has quit [Quit: Leaving]
marvin has joined #pypy
marvin is now known as Guest77097
<cfbolz> windy_: *args are mostly not rpython
<cfbolz> Look for something taking 'args_w' or so
dcrosta has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
nunatak has quit [Quit: Leaving]
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
drolando has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
tbodt has joined #pypy
tbodt has quit [Client Quit]
tbodt has joined #pypy
drolando has joined #pypy
marr has quit [Ping timeout: 255 seconds]
glyph has quit [Quit: End of line.]
glyph has joined #pypy
marr has joined #pypy
drolando has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
jacob22__ has joined #pypy
slackyy has quit [Ping timeout: 248 seconds]
drolando has joined #pypy
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]