cfbolz 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 | if a pep adds a mere 25-30 [C-API] functions or so, it's a drop in the ocean (cough) - Armin
<arigato>
a strange effect I finally understood: if you run "screen" for a long while, with 15 screens inside, you should rather avoid setting "defscrollback 500000"
<arigato>
because that requires 1.5GB of memory
<arigato>
even though none of these screens contain 500'000 lines, it seems the memory buffer is allocated anyway
<arigato>
moreover, if the machine swaps out most of this 1.5GB, then it needs to swap back in every complete 500'000-lines buffer before it can display the last 25 lines
<arigato>
I guess that "screen" is not meant to be used with large scrollback buffers at all
<LarstiQ>
my default is 5000 and I increase it for specific windows where I expect a lot of scrollback
<LarstiQ>
and I thought that was high, so your use case indeed sounds like it might not be what the design is for :)
<LarstiQ>
100 seems to be the bundled defscrollback
<arigato>
I've been annoyed by "small" values like 5000 occasionally, and I thought that these tiny numbers made sense 20 years ago
tsaka__ has joined #pypy
<arigato>
but maybe 500000 is still on the high side
<arigato>
every server process I run in one of these 15 screen windows probably takes less memory than the scrollback buffer :-(
<dstufft>
almost feels like that use case is better off handled by teeing to a file and keeping a smaller scollback
<jacob22>
arigato: It seems like a prime case for dynamic memory allocation.
Dejan has joined #pypy
dddddd has joined #pypy
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 250 seconds]
CrazyPython has joined #pypy
<simpson>
Hey, uh, I have just tripped over a Rita Repulsa of a bug that I totally forgot existed. I have float("inf") and float("-inf") used as literals in my code. It seems that, if I prebuild one of these floats, then all is fine; if I try to build one at runtime, though, I get a cryptic traceback.
rubdos has joined #pypy
<simpson>
Untranslated, the bug doesn't happen; translated, I get a ValueError with a frame like File "rpython_rlib.c", line 3786, in strtod__SomeString
<simpson>
I figure that float("inf") is being translated and called, but what I want is prebuilts. Is there an official rule on how to do this, or do I just need to always ensure that I prebuild everything made with float()?
<simpson>
...It is not at all a big deal. I will update the comments and hope to figure things out sooner in the future.
CrazyPython has quit [Read error: Connection reset by peer]
<mattip>
does float('3.0') work as expected?
CrazyPython has joined #pypy
CrazyPython has quit [Remote host closed the connection]
CrazyPython has joined #pypy
zmt00 has quit [Quit: Leaving]
CrazyPython has quit [Read error: Connection reset by peer]
ronan_ is now known as ronan
jiffe has quit [Ping timeout: 240 seconds]
jiffe has joined #pypy
<cfbolz>
simpson: probably translated float doesn't accept the string 'inf' as an input
<ronan>
simpson: RPython float() only supports numeric string inputs
<ronan>
however rpython.rlib.rfloat.string_to_float() does what you'd expect
<arigato>
simpson: I guess what you mean is that in an RPython program, you can't call float(s) at runtime if s is the string "inf", but it works if you write literally float("inf")?
<ronan>
I'm not sure why we have string_to_float() TBH. Why can't float() just work as in Python?
<arigato>
I guess it could, but then we'd likely still need something else to do a "quick conversion" that doesn't special-case many strings like string_to_float does
CrazyPython has joined #pypy
<arigato>
OK it's obscure
<arigato>
string_to_float(s) does s.strip(), checks for special strings, and eventually calls rstring_to_float()
<arigato>
float(s) does s.strip() too and then calls rstring_to_float()
<arigato>
rstring_to_float() is the low-level operation that I had in mind
<arigato>
string_to_float() doesn't raise ValueError but a custom exception, too
<arigato>
it's all obscure
<ronan>
hmm, why do we even reimplement strtod() instead of using libc?
<arigato>
CPython does it too, I think because on platforms like Windows the libc strtod() doesn't behave correctly in all cases
<cfbolz>
ronan: that strtod is maybe also faster. at least that's very much the case for dtoa
marky1991 has quit [Ping timeout: 246 seconds]
_whitelogger has joined #pypy
CrazyPython has quit [Read error: Connection reset by peer]
adamholmberg has joined #pypy
adamholmberg has quit [Ping timeout: 240 seconds]
CrazyPython has joined #pypy
CrazyPython has quit [Remote host closed the connection]
CrazyPython has joined #pypy
CrazyPython has quit [Ping timeout: 246 seconds]
<kenaan>
mattip py3.6 a56889d5df88 /lib_pypy/_cffi_ssl/: handle OpenSSL v1.1, in _ssl, add post_handshake_auth for TLSv1_3
<kenaan>
mattip default 826708d0c629 /lib_pypy/_cffi_ssl/: handle OpenSSL v1.1, in _ssl, add post_handshake_auth for TLSv1_3 (grafted from a56889d5df88dc57c7385151b1f54f644c...
CrazyPython has joined #pypy
lritter has quit [Ping timeout: 250 seconds]
CrazyPython has quit [Read error: Connection reset by peer]