<sthalik>
why is it that llvm port failed? i recall one of you, fijal or arigato, saying it was very hard
jamesaxl has joined #pypy
<arigato>
which one? we tries 5-6 times to use llvm for various things
<sthalik>
arigato, it was... a longer time ago. is there a particular reason the attempts failed?
<sthalik>
i haven't been here in a longer while
<arigato>
the firs was as a translation target, generating llvm instead of C
<sthalik>
that was a good idea IMO, given LLVM has jit and AOT
<arigato>
it was long ago, there were various problems, and then clang became mature and there was no point any more
<sthalik>
also, libclang has its own IR
<sthalik>
oh... yes, you generate C syntax
<sthalik>
i'm working right now on win64 but it's all interesting
<arigato>
if you're talking about the JIT, it's a different attempt
<LarstiQ>
sthalik: LLVM has traditionally not been a good fit for dynamic languages iirc
<LarstiQ>
but surely arigato can answer any questions better than I can
<arigato>
yes, llvm has grown only recently some real support that we could use
<arigato>
things like stackmaps
<arigato>
and patch points
<sthalik>
LarstiQ, there's some barebones impl of stack walking, and it has many useful attributes like no-aliasing, that could be good as an extension decorator. also, it very likely has a better register allocator and control flow strategies...
<arigato>
however, based on the previous 5 experiences, we're unlikely to invest time in trying it out and only later find out that something essential is still missing
<LarstiQ>
sthalik: theory met practice, and it didn't work
<arigato>
at this point, anyone is welcome to try to do it
<arigato>
just not us :-)
<arigato>
there's a good reason for why we're wary, too
<realitix>
Hello arigato, is it your job to work on pypy ? or in your sparse time ?
<arigato>
hi. it's my job
<arigato>
(as a freelancer)
<realitix>
nice! I though you were working in an university as a researcher. How are you making money with Pypy ? Are you selling support ?
<arigato>
no, this year it's Mozilla paying for Python 3.x
<arigato>
in general, we're funded by big companies paying some money
<realitix>
You must be proud to live from your own opensource software, it's not easy !
<arigato>
plus the donations from everybody, which more or less works (but it's also big companies making the biggest donations...)
<arigato>
yes :-)
<sthalik>
how hard is dealing with pyqt/pyside?
<arigato>
sthalik: you need to try it again. last time we did, cpyext was not up to the task, but that may well have changed
<arigato>
(as far as I remember, and I may be wrong in any part of that sentence)
amaury has quit [Ping timeout: 240 seconds]
<realitix>
arigato: just to signal you, on your website (http://baroquesoftware.com), in the Service section, the "subscription plans" link is not working (tested on firefox and chrome)
<sthalik>
it's not hard in itself to write compatible bindings -- qt has an API for dynamic parsing of UI designer, et al
<sthalik>
i expect it comparable to gobject
<arigato>
fijal: ^^ broken link in baroquesoftware.com
amaury has joined #pypy
jamesaxl has quit [Read error: Connection reset by peer]
jamesaxl has joined #pypy
arigato has quit [Read error: Connection reset by peer]
lritter has quit [Remote host closed the connection]
ArneBab_ has quit [Remote host closed the connection]
adamholmberg has joined #pypy
ArneBab has joined #pypy
ArneBab has joined #pypy
ArneBab has quit [Changing host]
yuyichao has joined #pypy
altendky has joined #pypy
Kronuz has quit [Quit: I'll be back...]
Kronuz has joined #pypy
vkirilic_ has joined #pypy
vkirilichev has quit [Ping timeout: 255 seconds]
sthalik has quit [Quit: Lost terminal]
sthalik has joined #pypy
<kenaan>
antocuni faster-rstruct-2 bc449c2983bb /: polish things a bit: rename rlist.make_LIST into LIST_OF, and use it everywhere instead of the ugly _Re...
arigato has joined #pypy
Kronuz has quit [Quit: I'll be back...]
Kronuz has joined #pypy
Tiberium has joined #pypy
Kronuz has quit [Quit: I'll be back...]
Tiberium has quit [Remote host closed the connection]
Tiberium has joined #pypy
Kronuz has joined #pypy
cstratak has quit [Ping timeout: 240 seconds]
Tiberium has quit [Remote host closed the connection]
<kenaan>
arigo cffi/cffi cc66a9e5ae92 /: Issue 314 Fix the line numbers by discovering that ``# NUMBER "LINE"`` is supported by pycparser and using it.
cstratak has joined #pypy
Tiberium has joined #pypy
Tiberium has quit [Remote host closed the connection]
Tiberium has joined #pypy
Tiberium has quit [Remote host closed the connection]
Tiberium has joined #pypy
Tiberium has quit [Remote host closed the connection]
Tiberium has joined #pypy
cstratak_ has joined #pypy
cstratak has quit [Ping timeout: 240 seconds]
q4 has joined #pypy
<kenaan>
arigo cffi/cffi a772dd1ab09f /: Try to systematically include the line number
<mattip>
hi
<arigato>
hi
<mattip>
arigato: as a cherry on top, it would be nice if ffi.compile(verbose=True) would print the directory used for compilation
<arigato>
hum
<Cheery>
what are you working on?
<arigato>
mattip: ffi.compile() should not issue any os.chdir()
<mattip>
on windows it is not clear which TEMP, TMP, or pwd() is being used always
<arigato>
ok, wrong, it does
<arigato>
mattip: note that ffi.compile(verbose=True) without any more arguments does not do os.chdir()
<arigato>
ffi.compile(tmpdir='foo') will issue os.chdir('foo')
<mattip>
right, so without verbose it is os.getcwd(), which may not be next to the build script at all, depending on
<mattip>
how python was run
vkirilic_ has quit [Remote host closed the connection]
<arigato>
ok, I can do that
<mattip>
esp if it is run in a Popen(sys.executable, ...)
<mattip>
s/verbose/tmpdir/
<mattip>
sorry
<arigato>
well, without verbose=True, it will not print anything anyway
<mattip>
:)
<kenaan>
arigo cffi/cffi f1bd1d88c018 /cffi/recompiler.py: Print the current directory (or the value tmpdir if explicit) in ffi.compile(verbose=True).
<mattip>
thanks
<arigato>
np
<arigato>
I had a fight with cffi embedding on Windows the other day
<arigato>
it's hard to get started because stderr goes nowhere
<mattip>
anything that should be added to the docs?
<arigato>
about f1bd1d88c018? not sure
jcea1 has joined #pypy
adamholmberg has quit [Remote host closed the connection]
jcea has quit [Read error: Connection reset by peer]
jcea1 is now known as jcea
adamholmberg has joined #pypy
realitix has quit [Ping timeout: 255 seconds]
<mattip>
about embedding on windows, stderr, and more examples of real life code
<kenaan>
antocuni faster-rstruct-2 f01cd8ba4297 /rpython/rlib/: add rlib.buffer.RawBuffer, which automatically implements typed_read in terms of get_raw_address
<kenaan>
antocuni faster-rstruct-2 a5ddf413daad /pypy/module/: use the new RawBuffer as a base class for ArrayBuffer: as a consequence, now it automatically gets the ...
<kenaan>
antocuni faster-rstruct-2 5bd9b59fb003 /pypy/module/: use RawBuffer for all the various raw-memory backed buffers we have
<kenaan>
mattip default 90fb9edb78c5 /: back out b48484eba9d0, readthedocs is messed up
realitix has quit [Quit: Leaving]
vkirilichev has quit [Remote host closed the connection]
<o11c>
sthalik: there's nothing special about LLVM at *all*
<o11c>
sthalik: it just has Apple's marketing team behind it, so everyone is convinced it's something special
antocuni has joined #pypy
antocuni has quit [Ping timeout: 264 seconds]
cstratak has joined #pypy
vkirilichev has joined #pypy
vkirilichev has quit [Ping timeout: 260 seconds]
Rhy0lite has quit [Quit: Leaving]
arigo has quit [Read error: Connection reset by peer]
antocuni has joined #pypy
<kenaan>
antocuni faster-rstruct-2 7a021235c44a /rpython/: kill rlib/strstorage.py since it is no longer needed: the only place where it was still used was in the...
<simpson>
stryngs: PyPy isn't binary-compatible with CPython, so you won't be able to reused native modules that way. Instead, make a virtualenv with PyPy and then install those packages into the virtualenv.
<stryngs>
simpson: what's the diff between virtualenv and non virtualenv if i install them the same way
<stryngs>
Or are you saying something like pypy setup.py build
<simpson>
stryngs: I'm saying $(virtualenv -p path/to/your/pypy your-awesome-pypy-virtualenv) and then $(your-awesome-pypy-virtualenv/bin/pip install Twisted) or whatever.
<stryngs>
Hmm, ok
antocuni has joined #pypy
<stryngs>
simpson: heh, it worked
<stryngs>
simpson: Not the virtualenv, but my workaround
<stryngs>
simpson: Not familiar with virtualenv per se =)
<stryngs>
simpson: Definitely gunna have to learn it though
<simpson>
stryngs: It's pretty essential for Python development at this point.
<stryngs>
simpson: Yeah, considering the bulk of my work revolves around Python I definitely need to learn it
<stryngs>
For now, i'm just trying to get this workaround done.
<stryngs>
simpson: Any good recommended tutorials on virtualenv?
<simpson>
stryngs: Their docs are pretty good. You make a virtualenv, and then you only call binaries from that virtualenv.
<stryngs>
Alright, I'll check out their docs and proceed from there =)
<kenaan>
antocuni faster-rstruct-2 1bb9b4819612 /rpython/rlib/: add rlib.Buffer.typed_read, and implement it for RawBuffer
<kenaan>
antocuni faster-rstruct-2 ac79316e004f /rpython/rlib/: add MutableStringBuffer, which will be used by struct.pack to incrementally build the desired string