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)"
<kenaan>
antocuni vmprof-0.4.10 5cc71a3d3d71 /rpython/rlib/rvmprof/test/test_rvmprof.py: apparently, gc='minimark' is not needed for this test. Not sure why it was written like that
<kenaan>
antocuni vmprof-0.4.10 1067112a9755 /rpython/rlib/rvmprof/test/test_rvmprof.py: refactor test_enable to use the new style of testing
<kenaan>
antocuni vmprof-0.4.10 2cc191d05d43 /rpython/rlib/rvmprof/test/test_rvmprof.py: make it possible to specify a name when you create MyCode()
<kenaan>
antocuni vmprof-0.4.10 70e2f742d15e /rpython/rlib/rvmprof/test/test_rvmprof.py: factor out some reusable logic from TestEnabled, which will be usable also from the upcoming TestNative
<kenaan>
antocuni vmprof-0.4.10 0944d36d3dda /rpython/rlib/rvmprof/test/test_rvmprof.py: apparently, we don't need this
<kenaan>
antocuni vmprof-0.4.10 6c26abf30648 /rpython/rlib/rvmprof/test/test_rvmprof.py: improve test_enable by: 1) make sure that it runs for approximately 0.5 seconds; 2) check that the number ...
<kenaan>
antocuni vmprof-0.4.10 e0fdd6a424df /rpython/rlib/rvmprof/test/test_rvmprof.py: rewrite test_native by reusing RVMProfSamplingTest. It still fails, obviously
<kenaan>
antocuni vmprof-0.4.10 49caf38340af /rpython/rlib/rvmprof/test/test_rvmprof.py: I claim that tests should never be skipped implicitly. If there is some platform on which vmprof doesn't w...
<kenaan>
stian math-improvements 7f48dd825978 /rpython/rlib/rbigint.py: Kill dead code, clean up normalization, and disable an assert that causes C code warnings. Its a helper f...
<kenaan>
stian math-improvements b9cf8efa4db1 /rpython/rlib/test/test_rbigint.py: Kill test for removed function
hubert0 has quit [Remote host closed the connection]
hubert0 has joined #pypy
hubert0 has quit [Ping timeout: 268 seconds]
ceridwen has quit [Remote host closed the connection]
tbodt has joined #pypy
tbodt has quit [Client Quit]
tbodt has joined #pypy
tbodt has quit [Ping timeout: 248 seconds]
<mattip>
antocuni: what is involved in resyncing rvmprof/src/shared from upstream?
<antocuni>
I'm just doing it
<mattip>
antocuni: there is a FreeBSD fix that it would be nice to have in PyPy to ease the pain of downstream packagers
<antocuni>
nothing, it's as simple as copying the files
<antocuni>
ah yes
kenaan_ has joined #pypy
<kenaan_>
antocuni vmprof-0.4.10 1b871922f356 /: close this branch to be merged
<kenaan_>
antocuni default 4b7ad9d4be0d /: merge the vmprof-0.4.10 branch: - copy the recent changes to the C part of vmprof from github - make sure that...
<kenaan_>
antocuni default b207c72d71ad /rpython/rlib/rvmprof/src/shared/: update vmprof up to github rev c8154361
<antocuni>
mattip: done
<mattip>
cool, thanks
<mattip>
maybe now it's time to get it working on win32
<antocuni>
as explained by the commit message of 4b7ad9d4be0d, I expect some tests to fail tomorrow
<mattip>
+1
<mattip>
interesting, upstream passes on all windows except win64, maybe there is hope
<kenaan_>
mattip default 7ba4c7f12fd5 /rpython/translator/platform/test/test_platform.py: the only possible non-host platform is arm, not sure it works
marky1991 has joined #pypy
<mattip>
ahh, a good day. Net lines of code added is negative
oberstet has quit [Ping timeout: 250 seconds]
oberstet has joined #pypy
<antocuni>
mattip: hooray
magniff has joined #pypy
<magniff>
Sup, chat. I have been messing around on VMSS playlist on youtube and learned about peculiar project named Mu Micro VMs.
<magniff>
Any ideas - rubbish? Turboawesome? Tldr?
<magniff>
So in short - it is a thin and lightweight (and also back-end agnostic) implementation of some extremely low level language runtime - IR similar to LLVMs one. So, because of the particular simplicity of this runtime it is astonishingly well tested and even formally verified, this can serve as a valid and robust substrate for language implementors.
<magniff>
*thus can surve...
<antocuni>
is there any actual language implemented on top of it?
<LarstiQ>
isn't there someone involved with mu posting to the mailing lists?
<magniff>
the reference implementation of the machine itself is in rather early state as far as i know
<magniff>
@LarstiQ have no idea
<fijal>
is it like an LLVM?
<antocuni>
yes, I think I have heard of mu before, probably here
hubert0 has quit [Remote host closed the connection]
<fijal>
right now we can compile PyPy interpreter with --no-allworkingmodules option.
<fijal>
cool
<magniff>
compile to mu?
<fijal>
yeah
<magniff>
wow
<fijal>
reading from the page anto linked
<magniff>
i should do that right now, then
<antocuni>
yes, but from what I understand there is only a reference implementation of mu (which is slow)
<antocuni>
I could not find any reference to an actual "real" fast implementation
hubert0 has quit [Ping timeout: 240 seconds]
<fijal>
antocuni: heh, the usual problem
<fijal>
antocuni: the reference implementation of rpython is python right?
<fijal>
it's "only" missing the fast part
<antocuni>
eh, you can look at it that way
<antocuni>
actually, one of the early goals of pypy was to have an easy-to-understand reference implementation of python
<fijal>
we failed
<antocuni>
not sure if it succeeded
<antocuni>
I claim that we failed because we wanted to be too clever with the interpreter/objspace separation. Without that (useless?) layer of abstraction, it could probably be simple enough as a reference impl
<magniff>
closing eyes on jit and stuff I can tell that pypy is way clearer then cpython
<magniff>
*closing eyes on pyjitpl5 ofc.*
<fijal>
the error message for mixing function and class can be improved over AttributeError
<magniff>
is it intended that some weirdo would implement its own objspace for pypy? objspace layer should serve for something, right?
<antocuni>
we, actually we do use it
<antocuni>
because we also have the FlowObjSpace, which is used by rpython
marr has quit [Ping timeout: 240 seconds]
<antocuni>
so you have rpython which compiles pypy by reusing a part of pypy
<antocuni>
also, historically the idea was to potentially have different/extended objspaces to tweak the language. There was also a LogicObjSpace at some point, although I am not sure what it did
<fijal>
antocuni: that's not the case for like 5 years
<fijal>
(the flow and regular objspace sharing anything)
<antocuni>
no, but they share the interpreter/, don't they?
<fijal>
nope
<antocuni>
"ah"
<antocuni>
cool
<magniff>
do they have to?
<fijal>
no imports of pypy from rpython
<antocuni>
how do the flow obj space work then?
<Alex_Gaynor>
that is a "recent" development though
<magniff>
yes, this actually sounds fair
<magniff>
@Alex didnt know that you still reading this chat
<antocuni>
ah, there is this "FlowContext" which is basically a stripped-down interpreter, from what I see
marr has joined #pypy
oberstet has quit [Ping timeout: 250 seconds]
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
magniff has quit [Quit: Page closed]
kipras`away is now known as kipras
<kenaan_>
mattip vmprof-win32 7aada6f7b5bb /: close outdated branch
<kenaan_>
mattip win32-vmprof edb8f85891e5 /rpython/rlib/rvmprof/: start to run tests on win32
hubert0 has joined #pypy
<mattip>
whoohooo! finally got a pull request merged to refactor out code that was running in ndarray.dealloc
<antocuni>
so it means that now we pass even more numpy tests?
<mattip>
njs: I'm just glad we got it done
<njs>
and I definitely am puzzled by Antoine's post to python-something last night claiming that pypy's lack of refcounting doesn't cause any problems :-)
<mattip>
antocuni: there is still another issue with nditers that IMO shows up in tests but no-one uses in real life
tbodt has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
hubert0 has quit [Remote host closed the connection]
<mattip>
bascially a continuation of the merge request above
hubert0 has joined #pypy
<antocuni>
I'm undecided whether I want to know more details or not :)