arigato changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end ) | use cffi for calling C | mac OS and Fedora are not Windows
mattip has joined #pypy
lritter has quit [Ping timeout: 245 seconds]
lritter has joined #pypy
lritter has quit [Ping timeout: 245 seconds]
jcea has joined #pypy
tsaka__ has quit [Ping timeout: 248 seconds]
dansan has joined #pypy
jcea has quit [Quit: jcea]
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
dansan_ has joined #pypy
dansan has quit [Ping timeout: 272 seconds]
speeder39_ has quit [Quit: Connection closed for inactivity]
energizer has joined #pypy
dddddd has quit [Remote host closed the connection]
<energizer> I'd like to monkeypatch `object.__str__`. Normally this kind of thing isn't possible. Is there a trick I can use to do it?
_whitelogger has joined #pypy
_whitelogger has joined #pypy
dansan_ is now known as dansan
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
speeder39_ has joined #pypy
energizer has quit [Ping timeout: 256 seconds]
jacob22 has quit [Ping timeout: 245 seconds]
oberstet has joined #pypy
<cfbolz> energizer: you can build your own PyPy that allows it
<cfbolz> But not in standard PyPy, no
<cfbolz> There used to be a build option for it, not sure it's still around
jacob22 has joined #pypy
jacob22 has quit [Ping timeout: 258 seconds]
<arigato> mattip: oops, I can try to fix that
<kenaan> arigo default c82849260828 /rpython/jit/backend/arm/: fix translation on arm
* arigato starts a test run
themsay has quit [Read error: Connection reset by peer]
themsay has joined #pypy
themsay has quit [Ping timeout: 245 seconds]
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
jacob22 has joined #pypy
themsay has joined #pypy
themsay has quit [Ping timeout: 244 seconds]
themsay has joined #pypy
themsay has quit [Read error: Connection reset by peer]
themsay has joined #pypy
antocuni has joined #pypy
themsay has quit [Read error: Connection reset by peer]
themsay has joined #pypy
lritter has joined #pypy
antocuni has quit [Ping timeout: 268 seconds]
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
tsaka__ has joined #pypy
dddddd has joined #pypy
xcm is now known as Guest14307
Guest14307 has quit [Killed (card.freenode.net (Nickname regained by services))]
xcm has joined #pypy
marky1991 has joined #pypy
marky1991_2 has joined #pypy
speeder39_ has quit [Quit: Connection closed for inactivity]
marky1991 has quit [Ping timeout: 245 seconds]
_whitelogger has joined #pypy
marky1991_2 has quit [Ping timeout: 245 seconds]
jcea has joined #pypy
Rhy0lite has joined #pypy
<kenaan> fijal arm64 09bce457dc4b /rpython/jit/backend/aarch64/: start fighting with write barriers
<kenaan> fijal arm64 7a1bbf798839 /rpython/jit/backend/aarch64/: work more on write barrier
antocuni has quit [Ping timeout: 248 seconds]
jacob22 has quit [Ping timeout: 258 seconds]
antocuni has joined #pypy
speeder39_ has joined #pypy
Arfrever has joined #pypy
antocuni has quit [Ping timeout: 245 seconds]
oberstet has quit [Remote host closed the connection]
oberstet has joined #pypy
<kenaan> rlamy default cde3d214c398 /pypy/objspace/std/unicodeobject.py: Cleanup unicode_to_decimal_w() to make it more similar to pypy3
themsay has quit [Read error: Connection reset by peer]
themsay has joined #pypy
wallet42 has quit [Ping timeout: 252 seconds]
wallet42 has joined #pypy
niceplace has quit [Ping timeout: 245 seconds]
niceplace has joined #pypy
themsay has quit [Ping timeout: 272 seconds]
antocuni has joined #pypy
jcea has quit [Remote host closed the connection]
jcea has joined #pypy
agronholm has quit [Ping timeout: 252 seconds]
agronholm has joined #pypy
<kenaan> rlamy py3.6 102276149584 /pypy/objspace/std/unicodeobject.py: Optimise the common case for str to int conversion
agronholm has quit [Ping timeout: 252 seconds]
themsay has joined #pypy
agronholm has joined #pypy
marky1991 has joined #pypy
Rhy0lite has quit [Quit: Leaving]
quipa has joined #pypy
<quipa> hello! Checking out PyPy and RPython
<quipa> I was wondering is there a way of writing a interpreter in RPython but taking advantage of PyPy libraries (I'm interested in tkinter for PyPy).
<mattip> what would your interpreter do differently than the python wrappers for the c-based tkinter code?
<mattip> rpython has no builtins specifically for tkinter
<quipa> Well maybe I can give an example to explain a bit where I got the idea
<quipa> although I think it's unlikely to make sense
<quipa> hehe...
<quipa> I played a bit with the Parrot Virtual Machine and like the idea that purportedly you could write a library in one language in use it in another language. In parrot you are sharing a common virtual machine, so I guess it's different from the idea of RPython which is use to build new VMs from what I get..!
<quipa> I guess the same kind of logic wouldn't really apply
<quipa> Was looking at Pyrolog, but since it's a totally different VM there is no way of establishing such a common set of libraries
quipa_ has joined #pypy
quipa has quit [Ping timeout: 245 seconds]
marky1991 has quit [Ping timeout: 245 seconds]
dmalcolm has quit [Read error: Connection reset by peer]
marky1991 has joined #pypy
marky1991 has quit [Ping timeout: 245 seconds]
<arigato> quipa_: you're correct, but note that there are some experiments that try to "bridge" two languages or more by compiling several interpreters for several languages into the same VM
<quipa_> nice
<quipa_> is there one using RPython?
<arigato> it's still up to you (as the author of the bridge) to define explicitly what and how data should be exchanged
<arigato> yes, with RPython
<arigato> in some way, one example is the regular expression library of Python, which is its own specialized interpreter
<quipa_> I mean is there an existing project with a common VM and several languages coded in RPython?
<quipa_> ah yes, I've heard most languages work with regex in a very different way to optimize the process
<quipa_> most dynamic languages (Python, Perl, Ruby?)
<arigato> yes, but in our case we're using the same approach for both Python and regexps: we write an interpreter and let a JIT compiler be generated from it, and the two JITs we get at the end are not really completely separate but work together
<arigato> let me try to find another more explicit example (but more experimental too)
<cfbolz> quipa_: eg there was a very experimental php/python bridge vm using rpython, and a python/prolog one
<arigato> thanks
<quipa_> cool
<quipa_> are they on github?
<quipa_> I'm reading your dissertation on pyrolog right now ;)
<cfbolz> anyway, note that this is unmaintained "research quality"
<quipa_> sure, understandable
<quipa_> :)
<quipa_> it's not an easy task
<quipa_> cool be fun to make a port of Parrot to RPython instead of C
<cfbolz> quipa_: don't read my thesis, this paper is more succinct and more up-to-date: https://www3.hhu.de/stups/downloads/pdf/BoLeSch2010.pdf
<quipa_> nice let me see
<quipa_> thanks :)
<quipa_> started learning Prolog about a month ago
<quipa_> haven't had that much fun since I learned Lisp
<quipa_> but coming from Python as my very first language
<quipa_> I always feel homesick in terms of libraries hehe...
<cfbolz> yep, pretty much a "do everything yourself" language
<cfbolz> (but SWI is not so bad)
<quipa_> it's awesome
<quipa_> hehe
<quipa_> I mean compared to so many other languages
<quipa_> I've been looking at some 20 different ones
<quipa_> and it's by far in the top 5 (maybe top 2-3?) for my project
<quipa_> but I think I don't know enough logic programming yet to pull it off
<quipa_> so sticking to a functional like language maybe with some logic added to it somehow..?
<quipa_> working on a logo like implementation for simulation
<quipa_> along the lines of NetLogo
<quipa_> but a bit more flexible and extensible
<quipa_> By the way is there a nice way of dealing with tail calls in PyPy (the interpreter)? Or do you have to go done to RPython to that kind of functionality..?
<quipa_> to have that*
<cfbolz> tail calls are hard
<quipa_> I would like to have GUI (for turtle graphics and simulation), so think I'll have to stick to PyPy for now..
<quipa_> yeah, but the more I learn lisp/scheme and prolog, the more I am hooked hehe
<quipa_> I just love recursion
<cfbolz> sure, and both pycket and pyrolog implement efficient tail calls
<cfbolz> but both have to do a ton of hoop-jumping
<quipa_> yeah, can imagine
<quipa_> I still only kind of understand trampolines as a means for that, but I don't like it very much. I have a vague understanding that it's possible with continuations, but I still don't fully get continuations
<quipa_> I think the explanation of the former Parrot VM architect was the most enlightening I've heard of them
<quipa_> what's her name
<quipa_> anyways
<quipa_> sorry for spamming the channel hehe...
<arigato> :-)
<quipa_> still thinking of I go for Racket or Python for the implementation
<quipa_> thanks for answering my questions
<cfbolz> audrey tang?
<quipa_> Hum I've heard of him, but think it's Alison
<quipa_> let me pickup the book
<quipa_> I have
<quipa_> really old one
<quipa_> of Perl + Parrot, back when things were still okay between the projects
<quipa_> allison randal
<quipa_> somewhere in this talk
<njs> quipa_: fyi audrey is also a woman (but known for leading the pugs implementation of perl, not parrot)
<quipa_> hum ah yes? sorry my bad :P
<quipa_> ah ok gotcha ;)
<quipa_> I've actually read an article of hers I think
<quipa_> at least when typing her name in my browser history that popped up
<quipa_> for curious this is the book I was talking about https://books.google.pt/books?id=delHeXNUCOEC&dq=parrot+perl&lr=&source=gbs_navlinks_s
<cfbolz> ah, yes, pugs, not parott
<cfbolz> parrot
<cfbolz> all too long ago
<quipa_> I still don't quite understand if Parrot's failure was technical, social or if the Monty Python sketch origin just doomed it hehe...
<quipa_> by the way my background is non-CS (non math, non physics for the matter) so sorry for spelling out any obvious things xD...
<cfbolz> they were trying a super hard problem
<cfbolz> in some ways rpython is our attempt to solve the same problem
<quipa_> yeah I got that feeling too, that's what drew me towards it
<quipa_> I guess it's no surprise to have been looking at Parrot, Racket and RPython/PyPy (the last having Pycket :) )
<quipa_> What would the elevator pitch be to use Pycket instead of Racket? Is it mostly about speed?
<cfbolz> a bit unclear at this point
<cfbolz> in theory speed, but in practice it doesn't help that much
<cfbolz> one advantage is that it makes typed racket a lot faster (in the normal racket VM it slows down programs a lot if you add types to them)
glyph has quit [Quit: End of line.]
glyph has joined #pypy
dustinm- has joined #pypy
dustinm has quit [Ping timeout: 246 seconds]
<quipa_> Yeah I noticed that, it kind off turned my off from using Typed Racket
<quipa_> felt like more trouble
<quipa_> plus I got some type errors that felt very wierd
<quipa_> OCaml type errors felt easier to understand for example
<quipa_> and although I didn't learn enough so did Haskell's
<quipa_> but if it speeds up types that's already really cool
jacob22 has joined #pypy
jacob22 has quit [Ping timeout: 245 seconds]
tsaka__ has quit [Ping timeout: 272 seconds]
antocuni has quit [Ping timeout: 248 seconds]
jcea has quit [Remote host closed the connection]
jcea has joined #pypy
dddddd has quit [Read error: Connection reset by peer]
dddddd has joined #pypy