»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend! Set by moritz on 25 December 2014. |
|||
grondilu | the difficulty is not with the sum (addition), but with infinity. | 00:00 | |
colomon | here’s the author’s TL;DR on the second link I posted: | 00:01 | |
“First: the “series” 1+2+3+4+\ldots does not have any finite sum in the normal sense of the word “sum.” Second: there are ways, however, to assign a finite “sum” to such divergent series in a mathematically consistent way, though we stress again that this is not a “sum” in the usual sense of the word. Third: The generalized sum of a divergent series has use in physics problems, as a way to incorporate unknown dam | |||
factors into a problem that seemingly has a divergent solution. Fourth: the original video does not note any of these points.” | |||
grondilu | this guy raises interisting epistemologic points about it: youtube.com/watch?v=0Oazb7IWzbA | ||
00:01
vendethiel left
|
|||
grondilu | he compares this issue with the invention of complex numbers and irrational numbers, for instance. | 00:02 | |
raydiak | m: say 1-(1+1) == (1-1)+1 # I know this is mostly beside the point, but /me still doesn't understand why parens can be inserted at arbitrary points in such a construction | ||
camelia | rakudo-moar 127c99: OUTPUT«False» | ||
grondilu | raydiak: I don't know if they can. I think they do but probably not. | 00:03 | |
I suppose associativity does not survive infinite sums. | |||
oh hang on | 00:04 | ||
you can not write 1 - 1 + 1 - 1 + ... as 1-(1+1)-(1+1)-(1+1)... That's just incorrect. | 00:05 | ||
00:06
gfldex left
|
|||
grondilu | 1-(1+1)-(1+1)-(1+1)... is 1 - 1 - 1 - 1 - 1 .... | 00:06 | |
associativity works with +, not - | 00:07 | ||
raydiak | yep | ||
so (1-1)+(1-1)+... is invalid also | |||
grondilu | no, this one is correct (assuming it can be extended to infinite sums) | 00:08 | |
1 - 1 + 1 - 1 + ... == (1 - 1) + (1 - 1) + ... | |||
raydiak | m: say 1-2+3-4 == (1-2)+(3-4) | ||
camelia | rakudo-moar 127c99: OUTPUT«True» | ||
raydiak | m: say 1-2+3-4+5-6 == (1-2)+(3-4)+(5-6) | 00:09 | |
camelia | rakudo-moar 127c99: OUTPUT«True» | ||
raydiak | it feels wrong but I guess it's not :) | ||
grondilu | just remember that a - b == a + (-b) | ||
00:10
BenGoldberg joined
|
|||
grondilu | and think in terms of associativity of '+' | 00:10 | |
I could also write 1 + (-1 + 1) + (-1 + 1) + ... == 1 + 0 + 0 + ... == 1 | 00:12 | ||
so basically I could make it equal to any integer, as colomon said. | 00:13 | ||
but Ramanujan and Euler thought it still makes some sense if we do it properly. They probably knew what they were doing. | 00:14 | ||
00:15
rurban left
|
|||
colomon | there is a meaningful number you can assign to the series, yes. it’s just not a sum, and calling it the sum is wildly misleading | 00:22 | |
en.wikipedia.org/wiki/Ces%C3%A0ro_summation | 00:24 | ||
00:24
adu joined
|
|||
raydiak | couldn't help but mis-read C3 mro in that url :) | 00:24 | |
colomon | or en.wikipedia.org/wiki/Divergent_ser..._summation | 00:25 | |
raydiak | and thanks grondilu, that makes sense | ||
adu | hi raydiak | 00:26 | |
grondilu | colomon: I'm not sure why the limit of the partial sum of the series would deserve more the appellation "sum" than the Ceraro sum. | 00:27 | |
raydiak | hey adu | 00:28 | |
grondilu | (or the Ramanujan sum, or *) | ||
I mean, if I was tought both sums on an equal footing and was asked which one makes more sense, I'm not sure I would know what to say. | 00:30 | ||
00:32
virtualsue joined
|
|||
lizmat is back | 00:36 | ||
and finds a multitude of .trans functionality that isn't in the synopsis | |||
but which break the 20x speed up simplification | |||
so I will sleep on it and look at it tomorrow | 00:37 | ||
good night, #perl6! | |||
colomon | o/ | ||
grondilu: I don’t think I have enough brainpower to explain it properly. But I’m pretty sure the “normal” sum of an infinite series is well-defined wrt doing normal math on it, and the Cesàro sum very much isn’t. Like that stuff you were doing where you could rearrange 1-1+1-1+1… to equal any integer. You should be able to do that sort of stuff with a normal sum of an inifinite series and have the answer always be th | 00:40 | ||
same. | |||
colomon meant to say “brainpower currently”, but what he wrote may be more accurate. | |||
00:41
BenGoldberg left
|
|||
grondilu | I don't know about the Cesaro sum, but as far as Ramanujan/Euler sum is concerned, it seems to make sense considering it shows up in physics. | 00:41 | |
00:41
BenGoldberg joined
|
|||
grondilu | plus apparently it was made rigorous by Rieman if I understand correctly. | 00:42 | |
grondilu does not know the details at all, though. This is way above his competence level. | |||
still, from what I can grasp it seems that calling it "non-sense" is unfair. | 00:43 | ||
colomon | I stand by it. | 00:44 | |
It has a meaning, but the meaning is not what people mean when they say sum. | |||
grondilu | by definition that means it's not "nonsense" but "some other sense". | 00:45 | |
it's like saying "calling sqrt(-1) an number is misleading because it's not what people have in mind when they think about numbers". | 00:47 | ||
TimToady | .oO(for sum definition of number) |
||
colomon | The entire point of saying 1 + 2 + 3 + 4 + .. = -1/12 is that it’s pretending it is the normal understanding of summation. if you defined Cesàro sum as C() and said C(1 + 2 + 3 + 4 + …) = -1/12, you’d be 100% accurate (if clumsily notated), but no one would be in the least surprised. | 00:51 | |
or impressed. | 00:52 | ||
grondilu | what is the "normal understanding of summation"? To me there is a normal understanding, one that no one can disagree about, only *with a finite number of operands*. Again, the issue is not with the definition of summation, but with the extension of the concept to an infinity of numbers. | 00:54 | |
colomon | Let me give you an example. In the sum 1 + 2 + 3 + 4 + … it is patently OBVIOUS to anyone with a basic understanding of mathematics that the sum cannot be negative. That’s a normal undertanding, yes, with a finite number of of operands. | 00:56 | |
grondilu | no it's not obvious because you can not apply an axiom an infinite number of times. 1 + 2 + ... + n is always positive for any finite n, but that does not tell you anything about an infinite n, if that concept is even defined. | 00:58 | |
TimToady | yeah, it might get tired partway there... | 00:59 | |
and that would be a negative | |||
colomon | grondilu: if you take that approach, you cannot say anything meaningful about it at all. | 01:01 | |
Mouq | m: my \term:<…> = -121/12; say 1 + 2 + 3 + 4 + … | ||
camelia | rakudo-moar 127c99: OUTPUT«-0.083333» | ||
Mouq | m: my \term:<…> = -121/12; say (1 + 2 + 3 + 4 + …).perl | ||
camelia | rakudo-moar 127c99: OUTPUT«<-1/12>» | ||
grondilu | colomon: well, mathematicians usually don't talk about "infinity" as an object. Saying a sum is infinite is usually nothing but abbreviation of "this series tends towards infinity". In rigor, inifinity is not an element of any set. | 01:03 | |
colomon | grondilu: the sum in question diverges. It is not equal to infinity; it is not equal to anything. | 01:04 | |
grondilu | according to a particular conception of an infinite sum. | ||
the one that is based as the limit of the partial sum. | |||
colomon throws up his hands and leaves | |||
01:04
colomon left
|
|||
japhb | When I was rather young, my father tried to explain to me that there was a very real sense that, just like you can say a tree "flowers", you could likewise say it "leaves", "caterpillars", and "moths". | 01:07 | |
grondilu | you say 1 + 2 + 3 + ... is obviously positive, so it can't be equal to -1/12, but by the same reasoning I coul notice that 1 > [+] 2 X** (-1, -2 ... $n) for any $n, and yet 1 == [+] 2 X** (-1, -2 ... *) | 01:08 | |
japhb | grondilu: Those are not the same reasoning. | ||
grondilu | there is no reasoning anyway, because you can't apply an axiom an infinite amount of times. | 01:10 | |
Mouq | I'm getting something like, 1 + 2 + 3 + 4 + … doesn't mean (A + B) + C, because "…" isn't a mathematical object. It's really a "sugar" for Sum(1, Inf) (I don't have the unicode for sigma and inf on my keyboard yet). A reasonable definition of Sum(i, Inf) is one that is similar to Sum(i, j), but as Inf is not a number in the way i and j are, but is a mathematical concept, Sum(i, Inf) can't necessarily be defined unambiguously just becau | 01:11 | |
japhb | grondilu: I don't know what axiom you are saying is being applied an infinite number of times. | ||
Mouq: cut off at "unabiguously just becau" | 01:12 | ||
Mouq | …se Sum(i, j) is | 01:13 | |
grondilu | japhb: basically: if I add a positive number to an other positive number, I get a positive number. | ||
Mouq | Sum(i, Inf) isn't even the correct way to write it, because Inf isn't considered an object. It'd be more like InfiniteSumFrom(i) | 01:14 | |
BenGoldberg | m: say inf; | ||
camelia | rakudo-moar 127c99: OUTPUT«===SORRY!=== Error while compiling /tmp/fy4Fq1iFgCUndeclared routine: inf used at line 1» | ||
BenGoldberg | m: say Inf; | ||
camelia | rakudo-moar 127c99: OUTPUT«Inf» | ||
BenGoldberg | m: say Inf - Inf; | ||
camelia | rakudo-moar 127c99: OUTPUT«NaN» | ||
Mouq | (If we're being "mathematically rigorous") | ||
BenGoldberg wonders whether this discussion ought be moved to ##math. | 01:15 | ||
japhb | grondilu: If you're suggesting that moving continually to the right on a (Euclidean) number line can't be assumed to not end me up to the left of my starting point, I have to call BS. | 01:16 | |
Mouq thinks the discussion has been beaten to a pulp, but has homework to put off | |||
japhb: My (devil's advocate) argument is that moving continually right can be assumed to end up to the right, but moving right "to infinity" isn't something with an intristicly meaningful physical analogy | 01:18 | ||
japhb | Mouq: Sure. Doesn't mean nothing can be said. :-) | 01:19 | |
Mouq | japhb: But certain basically arbitrary postulates have to be defined first. And I think that's grondilu's point | 01:20 | |
japhb | That sounds rather like axe-grinding, but OK, fair enough. | 01:24 | |
.oO( Mathematicians. Odd bunch. ) |
01:25 | ||
Mouq | heh | ||
01:26
virtualsue left,
grondilu left
|
|||
japhb goes back to attempting to break his writer's block | 01:26 | ||
timotimo | japhb: can you break your writer's block by trying on a new project just for funsies without pressure? maybe an opengl binding generator? :) | 01:27 | |
japhb | timotimo: :-D | 01:30 | |
timotimo: Port the one I wrote for Parrot? It's written in Perl 5 IIRC ... | 01:31 | ||
It takes advantage of the very limited subset of C found in the system OpenGL headers. | 01:33 | ||
(Simple regex and such) | |||
01:37
echowuhao joined
01:53
adu left
01:57
kaare_ left
02:00
Humbedooh left
02:02
kaare_ joined
02:10
kurahaupo1 joined
02:12
chenryn joined
02:14
chenryn left,
chenryn joined
02:18
raiph left
02:24
dolmen joined
|
|||
ruoso posted his sudoku solver in the rosetta code page... rosettacode.org/wiki/Sudoku#Perl_6 -- as a second solution... | 02:25 | ||
02:29
yeahnoob joined
|
|||
Mouq | ruoso++: s/ellaborate/elaborate ? | 02:35 | |
m: my @a := lol 1, 2; my @b = [1,2,3],[4,5,6],[7,8,9]; say @b[@a] | 02:39 | ||
camelia | rakudo-moar 127c99: OUTPUT«6» | ||
Mouq | ruoso: ^^ potentially useful for all those $sudoku[$_[0]][$_[1]] | ||
(but then maybe not) | 02:40 | ||
BenGoldberg | For a couple of generalized exact-cover-problem solvers written in perl5, see members.inode.at/w.laun/backtrack/backtrack.html | 02:54 | |
It might be interesting to port the bitset based version, using perl6's Set type. | 02:55 | ||
03:06
noganex joined
03:08
noganex_ left
03:18
Psyche^ joined
03:22
Patterner left
03:24
dolmen left
|
|||
dalek | rl6-roast-data: d388542 | coke++ | / (5 files): today (automated commit) |
03:24 | |
kudo-star-daily: 1a420fb | coke++ | log/ (14 files): today (automated commit) |
|||
cxreg | I've found very little description of what NSA actually entails, is there a summary anywhere? | 03:29 | |
TimToady | the final goal is my int @matrix[3][3] taking exactly 9 integers spots in memory | ||
not counting external bookkeeping, of course | 03:31 | ||
cxreg | oh I see. does that share anything with REPR? and does it have ordinary GC? | ||
TimToady | er, my int @matrix[3;3] | ||
it would have GC as a whole | |||
cxreg | thinking of what node.js does with Buffer | 03:32 | |
TimToady | and the native part is what jnthn++ has been hacking in, but he's probably going to tackle NFG before going after the "shaped" part | ||
of course, not just int, but also num and complex, in any dimensionality | 03:33 | ||
cxreg | seems a little like an optimization, honestly. not sure that I'd personally block a dot-oh on it, as long as the syntax works in some reasonable fashion | ||
TimToady | we want to make sure our semantics are up to it before .0 | 03:34 | |
cxreg | fairy nuff | ||
TimToady | likewise for NFG | ||
the GLR is mostly optimization, but may also have semantic changes in addition to the ones we've noticed | |||
we just want to avoid a Big Oops before we get to most of what's designed in the synopses | 03:35 | ||
03:37
dolmen joined
|
|||
cxreg | yeah the semantics in that work seemed significant enough to do now | 03:38 | |
Mouq | TimToady: What's the type for "my int @matrix[3][3]" ? | 03:39 | |
TimToady | I dunno, NativeArray[int,:shape(Int where ^3; Int where ^3)] or some such, only with more smarts about the actual size of each dimension than 'where' provides | 03:42 | |
Mouq | m: say (^3,^3).perl | 03:45 | |
camelia | rakudo-moar 127c99: OUTPUT«(0..^3, 0..^3)» | ||
TimToady | probably :shape(3,3) is adequate, since we don't support non-0 origin | 03:47 | |
except via .{} indexing, which is not a target for 6.0 unless someone gets inspired | 03:48 | ||
I'd be happy with just multidimensional numeric arrays for 6.0, and not worry too much about mixing in hash indices | 03:49 | ||
Mouq | m: role Foo[::T1, :$shape] { method bar (T1 $) { say $shape } }; class Baz does Foo[Str, :shape(3)] { }; Baz.bar("test"); | ||
camelia | rakudo-moar 127c99: OUTPUT«3» | ||
Mouq | m: role Foo[::T1, :$shape] { method bar (T1 $) { say $shape } }; class Baz does Foo[Str] { }; Baz.bar("test"); | 03:50 | |
camelia | rakudo-moar 127c99: OUTPUT«(Mu)» | ||
Mouq | That's really cool | ||
TimToady | if you wanna whack on that while jnthn shifts focus to NFG, that'd be cool | ||
certainly lots of prior art in other languages... | 03:52 | ||
03:54
dj_goku left
|
|||
TimToady | on the subject of en.wikipedia.org/wiki/Row-major_order I think we'd be row major, not column major, by preference | 03:55 | |
04:00
dj_goku joined,
dj_goku left,
dj_goku joined
|
|||
Mouq | TimToady: I'll consider it… :P | 04:15 | |
04:31
rmgk_ joined,
rmgk is now known as Guest63823,
Guest63823 left,
rmgk_ is now known as rmgk
04:32
yepyep joined
04:34
yepyep left,
adu joined
04:57
Mouq left
05:02
BenGoldberg left
05:18
chenryn left
05:29
kurahaupo1 left
05:32
telex left
|
|||
moritz | avuserow: where can I find your pgp pubkey? | 05:33 | |
05:34
diana_olhovik_ joined,
telex joined
05:53
chenryn joined
|
|||
avuserow | I don't think it's online any longer. I used to have it on my university webhost account | 05:59 | |
I could upload it to a keyserver, but I really should generate a new one first since this one should expire this year I think | |||
are there any better solutions than keyservers these days? | 06:02 | ||
is hack.p6c.org's ssh pubkey available anywhere? | 06:03 | ||
moritz | ssh-dss AAAAB3NzaC1kc3MAAACBAMN5DrzzwalGzxwm2gZYP+LAjxWKsMGBrtCY+i6nomYKFMFn4R5POK5tb2c8rd1NKFJXyAntYN5hAi8w+87SR8YuEUr5f2Sef9xgyCI4wbBJjLIvEmS3bqRCpwf538qrlQfQur0b16rUtJL0JJYIjLMaXoyNc74CsKzys+NrUa0jAAAAFQC7af1E7rEHyy2uyOo0tkq8Bky+ZwAAAIAvl0ox80VQQr/c5rGJHS5iaDOV/p8H67Du1+X2naCBC5rEFgJ66xXoT7cR0BvzBW0FwB3IjGCdTEiOQRpl/Wwf6f1YPMqd3Gxa2Ah6bvDKFS3ZT2DEya7q57R6BxnajBpFZVCPg2RdptEi2LlYfZX0/i2lK/Won8bY4ZnJdED16QAAAIA5PUb0k7RLuiRWnYDv4J0rhzb+zM5hcSqbELzy5LyQGL/7gi1fD | 06:07 | |
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDRuG1UeAoT1vLsUW1l99qEjyGIJfVR+j2vjqGqL0O7vuV5uL5ueTqDgg+F7jfJwN7fEAKR3xGvc6ZJV5NTTLcLKrIwMIzIhLgxS6bt0gs0JAt+Uggy8qmoT8POQ4J7pAlFK7k1C1lvqjtbG/e5f9evZm6/2XIVrkBzq+O2QWxEosnIeCjOnfsfEMlAJbXZcUKbaRwxa72jdkuVUKGlvoBmWAUYr8PgIkwK5TgihTHA15v3lbSZoy3CBco3IW/BElzSPSGmlCxURlXYCuy4rvW++d9ofXT9lYgoTAqUHiK56PFUoog6D5b2xREZvNHnP5GFx0Jx1rqcS26zuEpkjYbL | |||
avuserow | thanks | 06:08 | |
06:14
Mouq joined
06:16
mr-foobar left
06:18
bjz joined
06:24
dolmen left
06:29
bjz left
|
|||
dalek | frastructure-doc: 6b36c60 | Adrian++ | hosts/hack.p6c.org.pod: Add SSH host key fingerprints |
06:32 | |
06:32
diana_olhovik_ left
06:40
fhelmberger joined
06:45
fhelmberger left
|
|||
ugexe | i have a grammar that seems to be stuck in an infinite loop unless i run it with Grammar::Debugger or Grammar::Tracer. what do those change that would have such an effect? | 06:52 | |
Mouq | ugexe: Hmm. Mind gisting your grammar? | 06:57 | |
moritz | ugexe: an infinite loop usually comes from quantifying a rule or subgroup that might match zero characters | 06:58 | |
07:01
vendethiel joined
07:08
diana_olhovik_ joined,
adu left
07:09
Mouq left
07:12
Rounin joined
07:26
bjz joined
07:30
risou is now known as risou_awy
07:31
echowuhao left
07:34
risou_awy is now known as risou
07:35
yeahnoob left
07:37
gaussblurinc_ joined
07:44
rurban joined
07:45
Humbedooh joined,
FROGGS joined
|
|||
dalek | p: ead7622 | raydiak++ | src/vm/jvm/runtime/org/perl6/nqp/sixmodel/reprs/CArrayInstance.java: Zero-fill memory allocated for CArrays |
07:46 | |
p: 95a965d | FROGGS++ | src/vm/jvm/runtime/org/perl6/nqp/sixmodel/reprs/CArrayInstance.java: Merge pull request #222 from raydiak/master Zero-fill memory allocated for CArrays |
|||
07:51
alini left
07:57
zakharyas joined
07:58
darutoko joined
|
|||
moritz | raydiak: I've given you a commit bit for nqp | 08:01 | |
raydiak | thank you moritz | 08:03 | |
08:04
prime left,
prime- joined
08:06
broquaint left
08:08
rurban left
08:09
larion left
08:32
pdcawley joined
08:40
alini joined
08:41
fhelmberger joined
08:42
ecocode joined
08:43
kjs_ joined
08:45
fhelmberger left
08:53
pdcawley left
08:57
fhelmberger joined
08:58
abraxxa joined
09:01
zacts joined,
wicope joined
|
|||
raydiak | good night o/ | 09:03 | |
09:04
yeahnoob joined
09:10
broquaint joined
|
|||
avuserow | I managed to wire up pygments, Inline::Python, and the htmlify script from the docs repo. On my machine, it takes about 22 minutes to run it without using inline, and 6 minutes with inline. | 09:12 | |
moritz | \o/ | ||
avuserow | Inline::Python wasn't the easiest to build, so that's a downside | ||
(but that seems solvable) | 09:13 | ||
moritz | eeks, I can't even build nativecall | ||
FROGGS | moritz: what? O.o | ||
moritz | ===SORRY!=== Error while compiling lib/NativeCall.pm6 | ||
'long' cannot inherit from 'ctype' because it is unknown. | |||
FROGGS | moritz: upgrade your rakudo | 09:14 | |
m: sub foo is ctype("long") { } | |||
camelia | rakudo-moar 127c99: OUTPUT«===SORRY!=== Error while compiling /tmp/yK3eSziA4xCan't use unknown trait 'is ctype' in a sub declaration.at /tmp/yK3eSziA4x:1------>  expecting any of: rw parcel hidden_from_backtrace hidden_from_USAGE …» | ||
FROGGS | eww | ||
moritz | doesn't seem to help :( | ||
rakudo on camelia is up-to-date | 09:15 | ||
FROGGS | but I commited it: github.com/rakudo/rakudo/commit/49...6def282217 | ||
09:16
pdcawley joined
|
|||
FROGGS | m: sub foo is nativesize(42) { } | 09:16 | |
camelia | rakudo-moar 127c99: OUTPUT«===SORRY!=== Error while compiling /tmp/wv3RQ5_nwqCan't use unknown trait 'is nativesize' in a sub declaration.at /tmp/wv3RQ5_nwq:1------>  expecting any of: rw parcel hidden_from_backtrace hidden_from_USAGE …» | ||
FROGGS | traits are busted? | ||
09:17
sven_123_ left
|
|||
FROGGS | m: say &trait_mod:<is>.candidates».signature | 09:18 | |
camelia | rakudo-moar 127c99: OUTPUT«:(Mu:U $child, Mu:U $parent) :(Mu:U $child, Any :DEPRECATED($DEPRECATED)!) :(Mu:U $type, Any :rw($rw)!) :(Mu:U $type, Any :nativesize($nativesize)!) :(Mu:U $type, Any :ctype($ctype)!) :(Mu:U $type, Any :unsigned($unsigned)!) :(Mu:U $type, Any :hidden($hidd…» | ||
FROGGS | there it is! | ||
09:18
sven_123 joined
|
|||
moritz | $type, Any :ctype($ctype)! | 09:18 | |
hm, that's not wrong, is it? | 09:19 | ||
FROGGS | looks good to me | ||
p: sub foo is ctype("long") { } | |||
camelia | rakudo-parrot 127c99: OUTPUT«===SORRY!=== Error while compiling /tmp/txQ9fbBHEaCan't use unknown trait 'is ctype' in a sub declaration.at /tmp/txQ9fbBHEa:1------>  expecting any of: rw parcel hidden_from_backtrace hidden_from_USAGE …» | ||
moritz | Mu:U vs. Sub:D | 09:20 | |
FROGGS: there seems to be a default trait for Mu:U that catches inheritance from non-existing types | |||
FROGGS | ohh, wait | 09:21 | |
moritz | FROGGS: it seems to take precedence over the 'ctypes' one | ||
FROGGS | m: my native long is repr("P6int") is Int is ctype("long") { }; | ||
camelia | ( no output ) | ||
FROGGS | there you go | ||
subs are perhaps not Mu:U | |||
dalek | c/inline-pygments: b060886 | (Adrian Kreher)++ | htmlify.p6: Use Inline::Python to interact with pygments This is significantly faster when syntax highlighting but requires Inline::Python which is currently difficult to build. On my machine, htmlify with an external pygments takes around 22:20, while using it via Inline::Python took only 6:25. |
09:22 | |
FROGGS | however, that works here, and so should NativeCall | ||
moritz: can you run that one liner please? | |||
09:22
dolmen joined
|
|||
avuserow | I put the inline version as a branch. It still wants some better detection of Inline::Python | 09:23 | |
and I don't know how people feel about having it as a direct dependency | |||
moritz | FROGGS: doesn't work here | ||
avuserow | Plus Inline::Python needs some build work to be better. I couldn't get it to build on my machine or hack.p6c without some changes | ||
moritz | avuserow: thanks, putting it in a branch is a good choice | 09:24 | |
FROGGS | moritz: then you need to pull I'd say | ||
moritz | FROGGS: maybe | ||
09:25
yeahnoob left
09:27
kjs_ left
09:28
larion joined
09:41
rurban joined
09:43
virtualsue joined
|
|||
avuserow | okay, so it looks like Inline::Python only has one problem building, not two as I thought before. I filed an issue, so hopefully we can consider Inline-based pygments use seriously in the near future :) | 09:44 | |
09:54
dolmen left
09:55
pdcawley left
10:01
rindolf joined
10:03
dakkar joined,
pdcawley joined
10:08
zacts left,
_mg_ joined
10:10
pecastro joined
10:12
rindolf left
10:14
khisanth__ joined
10:16
khisanth_ left
10:19
virtualsue left,
Ven joined,
Kristien joined
10:23
_mg_ left
|
|||
Kristien | can you have a Failure that's an aggregation of other Failures? | 10:28 | |
like a FailureSet | 10:29 | ||
masak | good antenoon, #perl6 | 10:30 | |
Kristien | m: say [] === [] | 10:31 | |
camelia | rakudo-moar 127c99: OUTPUT«False» | ||
Kristien | m: say [] eqv [] | ||
camelia | rakudo-moar 127c99: OUTPUT«True» | ||
10:32
virtualsue joined
|
|||
Kristien | m: say 1 == 1.0 | 10:33 | |
camelia | rakudo-moar 127c99: OUTPUT«True» | 10:34 | |
Kristien | very nice | ||
10:35
Kristien left
10:44
_mg_ joined
10:45
larion left
10:46
larion joined
10:55
espadrine_ joined
11:04
Ven left
11:06
_mg_ left
11:10
silug left
11:15
Ven joined
11:23
silug joined
|
|||
lizmat | good *, #perl6! | 11:24 | |
sjn | \o | 11:28 | |
11:29
kjs_ joined
|
|||
psch | \o | 11:30 | |
lizmat: re: undesigned .trans features: S05-transliteration/trans.t has much more content than S05 itself. there's also a PR of mine passing all but one of the tests in there, but i suspect that might break your envisioned opt | 11:32 | ||
dalek | kudo/nom: 506855b | lizmat++ | src/core/Str.pm: Make simple .trans about 20x faster There's some more room here, but at least this works and passes all the tests |
11:33 | |
lizmat | psch: you can judge for yourself :-) | ||
what is the PR ? | |||
psch | github.com/rakudo/rakudo/pull/317 | ||
11:33
spider-mario left
|
|||
psch | oh, the opt is just the single-pair call | 11:35 | |
lizmat | yes, the most common case | ||
it should make rosettacode.org/wiki/Textonyms#Perl_6 about 15x faster, I would think | 11:36 | ||
psch | yeah, that should work out fine. adverbs go the slow path as well if i see that right, so my PR shouldn't need more adjustment, if it still merges | ||
11:37
rindolf joined
|
|||
psch | iirc tr/// gets that opt for free too. lizmat++ | 11:38 | |
dalek | ast: 6f3ec3b | lizmat++ | S05-transliteration/trans.t: Unfudge now passing test |
||
11:40
alini left
11:46
coffee` joined
11:53
alini joined
12:00
chenryn left
|
|||
dalek | kudo/nom: c3da857 | lizmat++ | src/core/Str.pm: Improve simple .trans by another 15% Also fix handling on non-ranges (like B..A) |
12:18 | |
12:18
colomon joined
|
|||
dalek | kudo/nom: e86659b | paultcochrane++ | lib/Test.pm: Add tentative implementations of like() and unlike() It is possible that the implementations could/should be generalised. The string handling of Regexes could also be better. Nevertheless, it's a start. |
12:19 | |
kudo/nom: 69c1dc7 | lizmat++ | lib/Test.pm: Merge pull request #365 from paultcochrane/pr/add_like_unlike_to_test Add tentative implementations of like() and unlike() |
|||
[ptc] | lizmat++ | 12:20 | |
Ven | [ptc]++ | 12:21 | |
dalek | ast: 36978a5 | lizmat++ | integration/advent2012-day10.t: Replace locally grown like() by Test::like |
12:26 | |
psch | i wonder if the tr/// adverbs warrant discussion. not having them designed but still having tests did seem curious | 12:29 | |
...but in the end, roast should be right, right? | |||
lizmat | yeah, that's the idea | 12:32 | |
ab5tract | lizmat: did you see my messages about github.com/rakudo/rakudo/pull/362 ? | 12:33 | |
yoleaux | 14 Feb 2015 19:30Z <lizmat> ab5tract: re github.com/rakudo/rakudo/pull/362 , I think colomon / TimToady should shine their light on that | ||
14 Feb 2015 19:31Z <lizmat> ab5tract: I have merely implemented what colomon implemented in niecza | |||
ab5tract | oh, heehe | ||
lizmat | but getting burnt by them while doing this opt, was not so nice | ||
ab5tract | lizmat: the weirdest part is definitely the broken parsing when trying to use (^+) from a file (or when arguments are (...).Bag (^+) (...).Bag in the repl) | 12:34 | |
i wondered if it might have something to do with our subtle precomp bugs | |||
lizmat | perhaps you should rakudobug it | 12:35 | |
timotimo: ping ? | |||
ab5tract | yeah, i considered that. unfortunately it's kind of tricky to introduce/reproduce, so i thought going through the branch which makes it visible was a good plan | 12:36 | |
dalek | kudo/newio: 7d49693 | FROGGS++ | src/Perl6/Metamodel/NativeHOW.nqp: handle C type names in "is nativesize" trait |
12:37 | |
rakudo/newio: e4811fe | FROGGS++ | / (9 files): | |||
rakudo/newio: Merge branch 'nom' of github.com:rakudo/rakudo into longer | |||
12:37
dalek left
|
|||
lizmat | sorry dalek | 12:37 | |
12:37
dalek joined,
ChanServ sets mode: +v dalek
|
|||
dalek | kudo/nom: daa4a2e | lizmat++ | docs/ChangeLog: Add some ChangeLog entries |
12:41 | |
lizmat | PSA: I'll be doing the Rakudo compiler release this Thursday (19 Fenruary) | ||
Please add appropriate entries to ChangeLog that you feel are missing for some reason | |||
.tell jnthn could you add rakudo ChangeLog entries for the work you've done in the past month? | 12:42 | ||
yoleaux | lizmat: I'll pass your message to jnthn. | ||
lizmat | can we actually already return unboxed items from a sub / method ??? | 12:43 | |
moritz | from a sub, yes | 12:44 | |
and it has worked for quite some time | |||
lizmat | also from a method ? | ||
moritz | m: sub f() returns int { 42 }; my int $x = f; say $x | ||
camelia | rakudo-moar 506855: OUTPUT«42» | ||
moritz | lizmat: I don't know; it doesn't statically know that a native will be returned | ||
lizmat | while looking at github.com/rakudo/rakudo/pull/317/files | 12:45 | |
moritz | nqp::unbox_s($result) as a return value looks suspicious | 12:46 | |
lizmat | I was wondering whether returning an unboxed strf from get_next_substitution_result would make sense | ||
psch | iirc that came about because i moved code to that method, and the code had the unbox | 12:47 | |
lizmat | and my $result = self.get_next_substitution_result; will only box it again | ||
psch | $!substituted_text in the pre of the diff has that unbox i was refering to | 12:49 | |
dalek | kudo/nom: cb01e8a | moritz++ | docs/ChangeLog: Add four more changelog entries |
12:51 | |
psch | tbh, i wasn't sure i understood how exactly LSM works anyway, so if the PR seems confused, that's probably why :s | ||
lizmat | looks like moritz was the original architect of that code | 12:52 | |
moritz | nope | ||
I think masak++ did it | 12:53 | ||
I just touched most of it while trying to make it faster | |||
lizmat | aha ok | ||
12:57
kaleem joined
|
|||
dalek | kudo/nom: 34fea9a | FROGGS++ | / (26 files): pull NativeCall into compiler codebase In the past we often had Rakudo<>NativeCall version mismatched that made clear how tight the compiler (vm) is coupled to NativeCall. |
13:01 | |
lizmat | FROGGS++ | ||
FROGGS | :o) | 13:02 | |
moritz | FROGGS++ | ||
FROGGS: now make the zavolaj repo mostly empty | |||
dalek | kudo/nom: f45dfa7 | FROGGS++ | docs/ChangeLog: add more changes |
13:03 | |
colomon | woah! | ||
FROGGS | moritz: shall I? hmmm... | ||
moritz | FROGGS: well yes, all those projects in the ecosystem that depend on NativeCall shouldn't try to install a NativeCall.pm over the one shipped with rakudo | 13:04 | |
FROGGS: and having the code base twice has only negative effects | |||
13:04
grondilu joined
|
|||
FROGGS | I was thinking about making it work with 2015.01... but there is no way to do everything right it seems | 13:05 | |
grondilu | what's going on here? NativeCall is integrated in rakudo? That's a big deal. | ||
FROGGS | grondilu: it is a mess otherwise | ||
grondilu | can I reasonably hope it is a step towards 'use nativelib <mylib>;' ? | 13:06 | |
FROGGS | it is very hard to sync a module and a compiler/vm... and NativeCall certainly wants a very specific version of rakudo/nqp/vm | ||
grondilu: it is unrelated | |||
grondilu: this would also imply that we ship C::Parser... | |||
grondilu | sure, but integrating NativeCall suggest you guys are thinking about doing something like that. | 13:07 | |
(which is awesome) | |||
FROGGS | well no, it is really just about what I said... | ||
grondilu | ok ok | 13:08 | |
FROGGS | we allow passing Bufs in the backends, so you need a certain version of the vm *and* nativecall | ||
we fix the C long problem, and again you need very specific revisions of both sides | |||
arnsholt | use nativelib would (should?) probably require shared object parsing, rather than header parsing | ||
FROGGS | you you install NativeCall on an older rakudo (star), it won't work out | 13:09 | |
arnsholt: how does that work on windows? | |||
grondilu | not sure. doesn't gcc needs the headers in order to link and compile code to a library? | ||
arnsholt | No idea how to do it either on Linux or Windows | ||
FROGGS | grondilu: often you just install a lib via apt, without the headers | 13:10 | |
arnsholt | True, we need the headers for the signatures | ||
FROGGS | gobject introspection is nice but is not there of every platform so to say | ||
on every* | |||
arnsholt | We can get the names of the symbols via the lib, but not the types. That's true | ||
grondilu | not when compiling. I often have to install the -dev package, which contain headers. | ||
FROGGS | grondilu: but we dont compile anything ehre | ||
here* | |||
grondilu | well, I suppose we don't indeed. | 13:11 | |
13:12
dwarring left
|
|||
masak | yes, I wrote LSM. | 13:12 | |
FROGGS | at least that would be the ideal world... often you want to load the lib provides by your package provider | ||
masak | I remember evolving it tests-first. | ||
FROGGS | provided* | ||
I cannot type today :o( | |||
grondilu | FROGGS: does that mean I should remove NativeCall from the panda install now? | 13:13 | |
FROGGS | grondilu: what does that mean 'removing it from panda install'? | ||
it will already be there from now on | 13:14 | ||
grondilu | I thought there could be duplicates or something. | ||
grondilu has no idea where panda does install modules and if they can collide with those inside the rakudo tree | 13:15 | ||
FROGGS | right now you could install it via panda and it would work "by accident" | ||
but when NativeCall gets patched in rakudo you certainly would miss the patches in the zavolaj repository | |||
grondilu | isn't it a subrepo (in the git sense)? | 13:16 | |
lizmat | FROGGS: I see failures in make test on parrot | ||
FROGGS | ewww | 13:17 | |
grondilu: no | |||
lizmat: I'll look into that | |||
lizmat | gist.github.com/lizmat/243be8a85efba7bbd614 | 13:18 | |
FROGGS | I'll care about that | ||
lizmat | also on jvm :-( | 13:19 | |
FROGGS | O.o | ||
I did know about the callbacks problem on parrot, but jvm was clean on all of my boxes | |||
lizmat | gist.github.com/lizmat/a4f4646711a72d4c4211 | 13:20 | |
FROGGS | ohh | ||
lizmat | $ perl6-j t/04-nativecall/01-argless.t | 13:21 | |
1..3 | |||
java.lang.UnsatisfiedLinkError: Unable to load library './01-argless.so': Native library (darwin/lib./01-argless.so.dylib) not found in resource path ([file:/Users/liz/Github/rakudo.jvm/, file:/Users/liz/Github/rakudo.jvm/install/languages/perl6/runtime/, file:/Users/liz/Github/rakudo.jvm/install/languages/perl6/lib/, file:/Users/liz/Github/rakudo.jvm/install/languages/nqp/lib/]) | |||
in method postcircumfix:<( )> at lib/NativeCall.pm:142 | |||
in any at gen/jvm/BOOTSTRAP.nqp:1697 | |||
in block <unit> at t/04-nativecall/01-argless.t:15 | |||
FROGGS | lizmat: that's an osx 10.8.something problem... this is introduced by an update to osx | ||
ohh damn | |||
there is an ./01-argless.dylib? | |||
ohh I guess it was not built at all | 13:22 | ||
13:22
kjs_ left
|
|||
FROGGS | that make sense and should be fairly easy to fix | 13:22 | |
lizmat | ok, just being the messenger here... | ||
let me know if I need to test something | |||
FROGGS | lizmat++ | ||
dalek | kudo/newio: daa4a2e | lizmat++ | docs/ChangeLog: Add some ChangeLog entries |
13:23 | |
kudo/newio: cb01e8a | moritz++ | docs/ChangeLog: Add four more changelog entries |
|||
kudo/newio: 34fea9a | FROGGS++ | / (26 files): pull NativeCall into compiler codebase In the past we often had Rakudo<>NativeCall version mismatched that made clear how tight the compiler (vm) is coupled to NativeCall. |
|||
kudo/newio: f45dfa7 | FROGGS++ | docs/ChangeLog: add more changes |
|||
kudo/newio: cff15ff | lizmat++ | / (27 files): Merge branch 'nom' into newio |
|||
13:23
alini left,
alini_ joined
|
|||
dalek | kudo/nom: 0095545 | FROGGS++ | t/04-nativecall/ (7 files): include string.h to please latest osx |
13:25 | |
FROGGS | lizmat: that should make it work on the jvm | 13:26 | |
lizmat | testing | 13:31 | |
same, reconfiguring and building from scratch | 13:32 | ||
FROGGS | hmmmm | ||
13:32
DarkLoord joined
|
|||
FROGGS | lizmat: what's the output of perl6-j t/04-nativecall/01-argless.t ? | 13:33 | |
lizmat | rebuilding atm, will tell you in a (bit longer) mo | 13:34 | |
13:34
skids left
|
|||
FROGGS | yeah, no hurry | 13:34 | |
13:36
DarkLoord left
|
|||
lizmat wonders whether we'll see more people online from the US today, or less (as it's President's Day today :-) | 13:37 | ||
FROGGS: $ perl6-j t/04-nativecall/01-argless.t | 13:38 | ||
1..3 | |||
java.lang.UnsatisfiedLinkError: Unable to load library './01-argless.so': Native library (darwin/lib./01-argless.so.dylib) not found in resource path ([file:/Users/liz/Github/rakudo.jvm/, file:/Users/liz/Github/rakudo.jvm/install/languages/perl6/runtime/, file:/Users/liz/Github/rakudo.jvm/install/languages/perl6/lib/, file:/Users/liz/Github/rakudo.jvm/install/languages/nqp/lib/]) | |||
in method postcircumfix:<( )> at lib/NativeCall.pm:142 | |||
FROGGS wonders if we hit the 250 ppl mark in Feb and when we'll hit the 300 ppl mark... | |||
lizmat: but is there a 01-argless.* in your build directory? | |||
I wonder how nativecall could have worked on osx | 13:39 | ||
lizmat | $ ls -ls 01-argless.* | ||
24 -rwxr-xr-x 1 liz macports 8460 Feb 16 14:37 01-argless.dylib | |||
8 -rw-r--r-- 1 liz macports 1260 Feb 16 14:37 01-argless.o | |||
FROGGS: fwiw, it works fine with moar | 13:40 | ||
13:40
alini_ left
|
|||
FROGGS | okay, so nativecall does not get the fileextension right for osx | 13:40 | |
13:41
alini joined
|
|||
FROGGS | m: say $*VM.config<load_ext> | 13:42 | |
camelia | rakudo-moar f45dfa: OUTPUT«(Any)» | ||
FROGGS | m: say $*VM.config<dll> | ||
camelia | rakudo-moar f45dfa: OUTPUT«lib%s.so» | ||
lizmat | FROGGS: I get (any) on both here for perl6-j | 13:43 | |
*Any | |||
FROGGS | me too on linux | ||
muraiki | me too on freebsd | 13:45 | |
FROGGS | $ perl6-j -e 'say $*VM.config<nativecall.so>' # "so" | ||
that's what we need to use I think | 13:46 | ||
lizmat | $ perl6-j -e 'say $*VM.config<nativecall.so>' | ||
dylib | |||
FROGGS | k | ||
p: say $*VM.config<load_ext> | 13:47 | ||
camelia | rakudo-parrot f45dfa: OUTPUT«.so» | ||
13:47
xfix joined
|
|||
dalek | kudo/nom: bbe942f | FROGGS++ | lib/NativeCall.pm: consider lib file extension info on jvm backend |
13:48 | |
FROGGS | I hope that helps | ||
though, I still wonder why it concats the file this way in the paste: darwin/lib./01-argless.so.dylib | |||
13:49
_mg_ joined
|
|||
lizmat | darwin/lib ~ ./01-argless.so.dylib ? | 13:49 | |
13:49
DarkLoord joined
|
|||
dalek | kudo/newio: 0553859 | lizmat++ | src/core/io_operators.pm: chdir() returns new $*CWD also |
13:51 | |
kudo/newio: fb94d3f | lizmat++ | t/01-sanity/51-filetest.t: Hopefully last IO.i/.v -> .inode/.device refactor |
|||
13:52
mrf left
|
|||
FROGGS | lizmat: aye, but where does that come from? ./ clearly indicates a path one does not just prepend stuff to | 13:52 | |
13:52
mrf joined
|
|||
lizmat | are those .o .dylib files only needed for the tests ? | 13:53 | |
FROGGS | yes | 13:54 | |
lizmat | alas, still the same error | ||
FROGGS | but the text should at least change slightly... | ||
13:55
kaleem left
|
|||
lizmat | $ perl6-j t/04-nativecall/01-argless.t | 13:55 | |
1..3 | |||
java.lang.UnsatisfiedLinkError: Unable to load library './01-argless.dylib': Native library (darwin/lib./01-argless.dylib.dylib) not found in resource path ([file:/Users/liz/Github/rakudo.jvm/, file:/Users/liz/Github/rakudo.jvm/install/languages/perl6/runtime/, file:/Users/liz/Github/rakudo.jvm/install/languages/perl6/lib/, file:/Users/liz/Github/rakudo.jvm/install/languages/nqp/lib/]) | |||
in method postcircumfix:<( )> at lib/NativeCall.pm:143 | |||
FROGGS | ahh | ||
13:55
sqirrel_ joined
|
|||
FROGGS | interesting | 13:55 | |
13:55
Mouq joined
|
|||
FROGGS | now I'd need an osx box :o( | 13:56 | |
13:57
xfix left,
crux left,
xfix joined
13:58
alini_ joined
13:59
alini left,
alini_ is now known as alini,
kaleem joined
14:01
yeahnoob joined
14:03
Mouq left
|
|||
grondilu | the word "octet" is used a few times in the specs. Can I replace it with "bytes"? | 14:06 | |
("octet" is French for "byte") | |||
huf | octet is also a more specific word for "byte of 8 bits" | 14:07 | |
moritz | what huf said | ||
huf | from the days of N-bit bytes (7? 6? 9?) | ||
moritz | there are some contexts (mostly ancient machines, but also ancient programmers) where bytes aren't automatically 8 bit | ||
grondilu | isn't a byte necessarily 8 bits? | ||
oh, ok | |||
huf | _now_ it is. but i think c would be happy with some other size | ||
dalek | kudo/nom: d42e171 | lizmat++ | src/RESTRICTED.setting: Disallow use of NativeCall in restricted setting timotimo++ for reminding me |
14:08 | |
14:09
kaare_ left
|
|||
lizmat | FROGGS: would that be enough to stop NativeCall ? ^^^ | 14:15 | |
grondilu | $ perl6 -e 'say uint.Range.max.log / log(2);' | ||
lizmat | or would I need to de-activate "is native" trait ? | ||
grondilu | ^ 64 | ||
grondilu would have expected 32 on his machine | 14:16 | ||
moritz | m: say uint.Range.max.log(2) | 14:17 | |
camelia | rakudo-moar f45dfa: OUTPUT«64» | ||
14:17
Ven left
|
|||
FROGGS | lizmat: NativeCall is not a class, so your patch is a noop | 14:17 | |
lizmat | m: use NativeCall | ||
camelia | ( no output ) | ||
FROGGS | also, the restricted setting overwrites stuff from the setting... but nativecall is not part of the setting | 14:18 | |
lizmat | duh :-) | ||
hmmm... | |||
FROGGS | as I mentioned a few times already I think the only way to really have a restricted setting is to redefine the problematic nqp:: ops | 14:19 | |
m: use NativeCall; sub malloc(int32) is native { }; malloc(1024) | |||
camelia | ( no output ) | ||
FROGGS | m: nqp::bindhllsym('nqp', 'nativecallbuild', Mu); use NativeCall; sub malloc(int32) is native { }; malloc(1024) | 14:20 | |
camelia | ( no output ) | ||
FROGGS | hmmm | ||
jnthn | I also think if we want real security we'd better be solving it at a deeper level | 14:21 | |
yoleaux | 14 Feb 2015 11:47Z <lizmat> jnthn: the PIO role is consumed by IO::Handle / IO::Socket / IO::Dup (the class handling $*IN and friends) | ||
14 Feb 2015 11:47Z <lizmat> jnthn: fwiw, as I stated before, I'm fine with PIO, as it is the Perl Io Object | |||
FROGGS | I thought I somehow managed to redefine an op... | ||
yoleaux | 12:42Z <lizmat> jnthn: could you add rakudo ChangeLog entries for the work you've done in the past month? | ||
14:21
crux joined
|
|||
FROGGS | ahh, I start to remember | 14:23 | |
14:23
molaf joined
14:24
noganex left,
noganex_ joined
|
|||
FROGGS | m: nqp::getcomp('QAST').operations.add_hll_op('nqp', 'buildnativecall', Mu); use NativeCall; sub malloc(int32) is native { }; malloc(1024) | 14:25 | |
camelia | ( no output ) | ||
FROGGS | :o8 | ||
:o( | |||
m: BEGIN nqp::getcomp('QAST').operations.add_hll_op('nqp', 'buildnativecall', Mu); use NativeCall; sub malloc(int32) is native { }; malloc(1024) | |||
camelia | ( no output ) | ||
FROGGS | damn | ||
moritz | anybody with enough knowledge to abuse nqp:: ops could probably obtain a commit bit, and sneak some nastiness into some build script or another | 14:26 | |
FROGGS | true, but here are quite some code reviewers :o) | ||
dalek | kudo/nom: e7a00b0 | lizmat++ | lib/NativeCall.pm: Fix deprecated use of $*OS |
14:27 | |
timotimo | o/ | 14:28 | |
FROGGS | hi timotimo | 14:29 | |
14:30
telex left
|
|||
dalek | kudo/nom: 5812978 | lizmat++ | src/RESTRICTED.setting: Hopefully better temp fix disallowing "is native" |
14:32 | |
14:32
telex joined
|
|||
FROGGS | hmmm | 14:33 | |
14:33
kaleem left
|
|||
lizmat | m: use NativeCall | 14:33 | |
camelia | ( no output ) | ||
FROGGS | lizmat: did you test it? | ||
lizmat | not sure how | ||
FROGGS | use NativeCall; sub malloc(int32) is native { }; malloc(1024) | ||
that should fail ideally | |||
but I think it does not | |||
lizmat | not sure how I can run restricted setting locally | 14:34 | |
moritz | perl6-m --setting=RESTRICTED or something | ||
you can always look into how camelia does it | |||
github.com/perl6/evalbot/blob/mast...ot.pl#L130 | |||
FROGGS | moritz: perl6-m --help does not list it | ||
lizmat | indeed, that doesn't stop it :-( | 14:35 | |
moritz | stop this nonesense already | 14:36 | |
timotimo | at least you need to "use nqp" in order to use nqp ops directly | ||
moritz | star-m has had nativecall available for years now | ||
FROGGS | lizmat: the problem is that 'use NativeCall' export the trait into your namespace and scribbles over the candidates of the restricted setting | ||
timotimo: is that so? | |||
timotimo | i think so? | ||
m: nqp::say("hi") | 14:37 | ||
camelia | rakudo-moar bbe942: OUTPUT«hi» | ||
timotimo | er ... apparently not :) | ||
FROGGS | :o) | ||
moritz | no, but 'use nqp;' has been made available | ||
dalek | kudo/nom: 6a647ed | lizmat++ | src/RESTRICTED.setting: Revert "Hopefully better temp fix disallowing "is native"" Stopping the nonsense, moritz++ |
||
moritz | m: use nqp; say 'alive' | ||
camelia | rakudo-moar bbe942: OUTPUT«alive» | ||
moritz | sorry if tha was rude | ||
FROGGS | yes, now we just need to properly fiddle with nqp ops... | ||
well, "now" | |||
moritz | FROGGS: I have a branch for that | ||
lizmat | moritz: no offense taken :-) | 14:38 | |
moritz | FROGGS: branch use-nqp | ||
FROGGS | then we can also disable the socket ops, and can export the socket classes again... | ||
moritz | FROGGS: the forbidding part works, the allowing-in-core doesn't work :-) | ||
14:38
yeahnoob left
|
|||
FROGGS | ahh :o) | 14:38 | |
14:39
yeahnoob joined
|
|||
FROGGS | hmmm | 14:39 | |
that would mean that we just not enable "allow-nqp" for camelia somehow | 14:40 | ||
so that a 'use nqp' would not work here | |||
moritz++ # github.com/rakudo/rakudo/compare/use-nqp | |||
14:41
kjs_ joined
|
|||
moritz | well, then somebody could still add 'use nqp;' on the command line | 14:42 | |
FROGGS | right | ||
but not here perhaps | |||
moritz | otoh, nqp ops here are really handy | ||
FROGGS | perl6-m -e 'nqp::say("42")' # NOK | 14:43 | |
perl6-m -e 'use nqp; nqp::say("42")' # OK | |||
perl6-m --allow-nqp -e 'nqp::say("42")' # OK | |||
perl6-m --disallow-nqp -e 'nqp::say("42")' # NOK | |||
perl6-m --disallow-nqp -e 'use nqp; nqp::say("42")' # NOK | |||
or so | |||
but I am just musing... | 14:44 | ||
dalek | kudo/nom: 5899abe | lizmat++ | t/04-nativecall/CompileTestLib.pm: Look up $*VM only once |
||
14:55
kaleem joined,
molaf_ joined
14:58
molaf left,
TgMts joined
14:59
sqirrel_ left
|
|||
dalek | kudo/nom: f4379c6 | lizmat++ | t/04-nativecall/CompileTestLib.pm: Cleanup files created for testing |
15:00 | |
FROGGS | m: unlink "barbazboo"; say "alive" | 15:02 | |
camelia | rakudo-moar bbe942: OUTPUT«unlink is disallowed in restricted setting in sub restricted at src/RESTRICTED.setting:1 in sub unlink at src/RESTRICTED.setting:19 in block <unit> at /tmp/bV71St9pbg:1» | ||
FROGGS | ahh, does not die (anymore?) | ||
lizmat | m: "barbazboo".IO.unlink; say "alive" | ||
camelia | rakudo-moar bbe942: OUTPUT«alive» | ||
lizmat | :-( | 15:03 | |
FROGGS | no, that's good IMO | ||
15:03
mrf left
|
|||
FROGGS | at least, it is good for your patch | 15:03 | |
lizmat | ?? | ||
15:04
Rounin left
|
|||
FROGGS | if we were unable to create a file, and we would explode only complaining about the fact that we cannot delete a non-existing file that would be annoying | 15:04 | |
I just wanted to check that we don't need a 'try unlink $file' there | |||
lizmat | ah, ok | ||
m: say "barbazboo".IO.unlink | 15:05 | ||
camelia | rakudo-moar bbe942: OUTPUT«True» | ||
lizmat | so much for that idea :-( | ||
15:05
mrf joined
|
|||
lizmat | p: say "barbazboo".IO.unlink | 15:05 | |
camelia | rakudo-parrot bbe942: OUTPUT«True» | ||
moritz | it unlinked successfully? | 15:06 | |
lizmat | no, it just returns true | ||
ruoso | Do we have a BNF/EBNF grammar implementation already? I just came across the Grammar Zoo, and it would be nice if we could just use those.. slps.github.io/zoo/ | 15:08 | |
colomon | I was messing around with one at one point, let me see what I can find | 15:10 | |
lizmat | FROGGS: hmmm.. double .dylib? Unable to load library './01-argless.dylib': Native library (darwin/lib./01-argless.dylib.dylib) | 15:11 | |
FROGGS | lizmat: something pre-/appends path information | 15:13 | |
I'd need a osx box to play around... | |||
it is hard to guess a fix | |||
lizmat | but the c_line and l_line are correct in CompileTestLib.pm | ||
FROGGS | yes, we compile correctly | ||
15:13
Ven joined
|
|||
FROGGS | the "is native('./argless')" is the problematic bit | 15:14 | |
lizmat | if I copy the file to .dylib.dylib, it still fails | ||
so maybe the error message is (also) wrong | 15:15 | ||
FROGGS | we pass "./01-argless.dylib" to the library loader, and that does not seems to understand it | ||
colomon | ruoso: not quite a module, and not quite BNF: github.com/colomon/perl6-WSN | ||
and also not functional at the moment, it seems | 15:16 | ||
pmichaud | good morning, #perl6 | 15:17 | |
FROGGS | hi pmichaud | ||
lizmat | pmichaud o/ | ||
ruoso | ^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H[D[C | ||
colomon | \o | ||
ruoso | I guess I'll start writing the grammar to parse EBNF, then I'll figure out how to make it into a meta-grammar | 15:20 | |
FROGGS | ruoso: like you can create classes using the MOP you can perhaps create a Grammar that way... | 15:21 | |
timotimo | should be possible | ||
15:22
atta joined
|
|||
atta | hi. what's the most up-to-date emacs mode for perl 6? | 15:23 | |
15:24
TgMts left,
Ven left
|
|||
FROGGS is not an emacs user | 15:24 | ||
15:25
raiph joined
|
|||
timotimo | i admire emacs from afar | 15:25 | |
15:26
_mg_ left
|
|||
atta | i checked the 'whatever' section in perl6.org, but wanted to know if someone used some other version or something | 15:34 | |
moritz | atta: there are few emacs users around here, so you might need to hang out longer to get an answer | 15:35 | |
lizmat | .tell jnthn on MoarVM, delete_f does not return any value, this makes nqp::unlink flaky afaics. Is there a reason for that ? | ||
yoleaux | lizmat: I'll pass your message to jnthn. | ||
15:36
adu joined
|
|||
colomon | ruoso: I’ve just pushed a version of wsn2p6 that works again, at least somewhat. | 15:36 | |
atta | moritz: thanks. i will be around | 15:37 | |
15:38
Mouq joined
|
|||
colomon | Is p6 supposed to complain if you have a non-optional named argument to MAIN and that argument is not actually given on the command-line? | 15:39 | |
moritz | colomon: yes | ||
colomon | it’s not | ||
moritz | m: sub MAIN(:$named!) { say 42 } | ||
camelia | rakudo-moar f4379c: OUTPUT«Usage: /tmp/aY1MntNsBk --named=<Any> » | ||
moritz | it is, here | ||
colomon: you realize that named args are optional by default? | 15:40 | ||
colomon | moritz: apparently I didn't | ||
colomon fixes his code | 15:41 | ||
Mouq | atta: I don't know how good it is, but there's github.com/lue/p6mode | 15:46 | |
pmichaud | now posted: pmthium.com/2015/02/suspending-rakudo-parrot/ | 15:50 | |
btyler | reminder ping about GSoC: mdk said they had a week to flesh out the ideas page, that was three days ago: blogs.perl.org/users/shadowcat_mdk/...ideas.html | ||
idea/mentor pairs can be submitted to this google doc: docs.google.com/document/d/120zZBQ...ca6ls/edit | 15:51 | ||
pmichaud | I have other errands to run this morning -- bbl. | ||
lizmat | pmichaud++ | 15:52 | |
15:53
alini left
15:54
rurban1 joined
|
|||
dalek | kudo/nom: 95ef1af | Mouq++ | docs/ChangeLog: Add a ChangeLog entry |
15:54 | |
15:56
gaussblurinc_ left
|
|||
PerlJam | could some of the Rakudo-on-Parrot changes work for the Google Summer of Code? | 15:57 | |
lizmat | I guess technically, that could work | ||
but GSoC is for talented newbies, right? | 15:58 | ||
btyler | yes | ||
15:58
kjs_ left
|
|||
lizmat | feels like a steep curve a newbie would need to climb up against | 15:58 | |
btyler | peanut gallery here, but I think "fix up compatibility with the semi-deprecated backend" is not the most exciting sounding thing | 15:59 | |
dalek | kudo/newio: 0095545 | FROGGS++ | t/04-nativecall/ (7 files): include string.h to please latest osx |
||
kudo/newio: bbe942f | FROGGS++ | lib/NativeCall.pm: consider lib file extension info on jvm backend Replace :check with :dontcheck flag |
|||
15:59
dalek left
|
|||
lizmat | sorry dalek | 15:59 | |
timotimo | i'm with btyler on this one | ||
15:59
Ven joined
|
|||
timotimo | if rurban has cool stuff to offer, that'd be all right | 15:59 | |
hoelzro | o/ #perl6 | ||
15:59
dalek joined,
ChanServ sets mode: +v dalek
|
|||
PerlJam | we (or someone) could add it to the list of potential projects and see if anyone bites | 16:00 | |
timotimo | but if it's the rakudo people who'd offer a project based on parrot, that could end up not so nice | ||
PerlJam | (particularly if rurban is willing to mentor) | ||
FROGGS | btyler: I added our ideas | 16:01 | |
16:01
adu left
|
|||
btyler | woo, FROGGS++ | 16:01 | |
16:01
skids joined
|
|||
FROGGS | moritz / brrt / jnthn / timotimo: I added you as potential mentors for: docs.google.com/document/d/120zZBQ...ca6ls/edit | 16:03 | |
timotimo | i just saw | ||
FROGGS | moritz / brrt / jnthn / timotimo: shout at me (or remove yourself) if that's not what you want :o) | 16:04 | |
16:05
abraxxa left
|
|||
atta | Mouq: i was in lue's gihutb, but had not tried. checking it. github's /jrockway/cperl-mode/blob/mxd-perl6-merge/cperl-mode.el seems to have some errors | 16:05 | |
FROGGS | lizmat: you have to keep in mind that sergot and brrt were also gsoc students (and tadzik too IIRC) | 16:06 | |
lizmat: it will works well with the right ppl | |||
tadzik | yep, I was | ||
16:07
rurban1 left
|
|||
FROGGS .oO( When I was your age, Pluto was a planet! ) | 16:09 | ||
16:10
larion left
|
|||
moritz | it's still is, in a corner of my heart | 16:11 | |
FROGGS | aye | ||
16:12
diana_olhovik_ left
|
|||
PerlJam | pluto is still a planet depending on your definition of "planet" too :) | 16:13 | |
tadzik | next thing they'll say that greenland is not a continent | ||
huf | common speech drifts away from jargon? shocking, truly. | 16:14 | |
16:19
sqirrel_ joined
16:21
yeahnoob left
|
|||
ruoso | what is a nice way to print out the structure of the match? something that returns a simpler output than .gist | 16:24 | |
masak | ruoso: custom multi? | 16:25 | |
ruoso | hmm... good point | ||
timotimo | yeah, it's a bit annoying that matches show the original string for every single submatch :) | ||
16:28
eternaleye joined
|
|||
ruoso | hmm.. i translated the ebnf grammar from the grammar zoo, but it seems it's not the most optimal parse tree... | 16:28 | |
arnsholt | You can show subrule matches with brackets, probably | ||
Like Qtree notation: [.S [.NP ... ] [.VP ... ] ] | |||
hoelzro | I just noticed that the syntax highlighting on doc.perl6.org is live. nice job, everyone! | 16:29 | |
timotimo | i'd like an HTML output that'd prettify and interactify match results | ||
if integrated with the debugger hooks, it could even show stuff like "how often did the grammar/regex backtrack over any given character" | 16:30 | ||
ruoso | I guess I should install Grammar::Tracer | 16:32 | |
16:35
ecocode left
16:36
zakharyas left
16:38
echowuhao joined
16:42
mr-foobar joined
|
|||
timotimo | i can be a real-life gsoc mentor this time 'round! | 16:46 | |
timotimo | and order a GSoC tshirt with the right size this time %) | ||
Ven certainly would like to be taught by timo on how to run his game on mac *g* | 16:47 | ||
timotimo | Ven: god damn it, macs | ||
btw, i'm in the process of porting it to SDL2. very, very slowly :) | 16:48 | ||
it should be much easier to run that on a mac | |||
Ven | yes, I've done some sdl2 already on that mac | ||
timotimo | even with my binding? | 16:49 | |
Ven | no, in C | ||
timotimo | 'k | ||
did you try running my binding though? it has an examples/ folder | |||
Ven | did not - not yet | ||
FROGGS has a patch for NativeCall@perl6-p... | 16:50 | ||
Ven proceeds to clone timo's repo | |||
timotimo | it'd be cool if you told me about functions you deem important that are missing from the binding | 16:51 | |
FROGGS | Ven: I hope you have your cloneshoes on today :o) | ||
bbiab | |||
16:51
FROGGS left
|
|||
Ven | uh | 16:51 | |
16:52
kjs_ joined,
sqirrel_ left
|
|||
Ven | 'long' cannot inherit from 'ctype' because it is unknown. at lib/NativeCall.pm6:68 whoops? | 16:54 | |
timotimo | it's a new trait | 16:55 | |
i didn't react to the move of nativecall into rakudo tiself | |||
itself* | |||
16:58
fhelmberger left
17:01
Mouq left
17:02
Mouq joined
17:04
colomon left
|
|||
lizmat | dinner& | 17:05 | |
timotimo | the description and title of "Perl 6 on CPAN" seem kind of mismatched | 17:06 | |
google docs' comment feature <3 | 17:07 | ||
17:07
colomon joined
|
|||
Ven | well, I can't build nativecall | 17:08 | |
timotimo | yeah | ||
nativecall is "inside" rakudo now | |||
you'll need a Configure.pl | 17:09 | ||
need to run* | |||
17:11
FROGGS joined
|
|||
dalek | p: 78e9940 | FROGGS++ | src/vm/parrot/ops/nqp_dyncall.ops: do not free C string we pass to/get from callbacks This is consistant with what we do in MoarVM. |
17:11 | |
kudo/nom: fac6654 | FROGGS++ | tools/build/NQP_REVISION: get nqp with NativeCall@parrot fixes |
17:12 | ||
17:12
_mg_ joined
17:16
Akagi201_ left
17:17
Akagi201 joined
|
|||
ugexe | moritz: Mouq: its certainly possible there is infinite recursion in the grammar. the odd thing though is whatever the reason for the infinite loop, it doesn't occur if i 'use Grammar::Debugger' or 'use Grammar::Tracer'. so 'my $parser = XX::Parser.parse($text); say $parser.perl' will never reasch 'say $parser.perl' unless grammar:debugger is used. fwiw the grammar is at github.com/ugexe/Perl6-IETF--RFC_G...mmar/RFC53 | 17:17 | |
thought maybe a slight change in back tracking or something | 17:19 | ||
17:25
mr-foobar left,
noganex_ left,
sven_123 left,
dj_goku left,
sivoais left,
pierrot left,
Woodi left,
pyrimidi_ left,
raydiak left,
jakesyl left,
jercos left,
felher left,
breinbaas left,
vike left,
masak left,
pochi left,
petercommand left,
hahainternet left,
ashleydev left,
Guest83546 left
17:27
diana_olhovik_ joined
17:28
kjs_ left
17:29
Akagi201_ joined
|
|||
Ven | timotimo: IT WORKS! | 17:30 | |
17:31
mr-foobar joined,
noganex_ joined,
sven_123 joined,
dj_goku joined,
sivoais joined,
pierrot joined,
Woodi joined,
pyrimidine joined,
raydiak joined,
jakesyl joined,
hahainternet joined,
jercos joined,
felher joined,
breinbaas joined,
vike joined,
masak joined,
pochi joined,
petercommand joined,
betterwo1ld joined,
Timbus joined,
jnthn joined,
pmichaud joined,
go|dfish joined,
dg joined,
ashleydev joined,
Guest83546 joined,
psch joined,
apejens joined
|
|||
Ven | timotimo: I love how you force GC :P | 17:31 | |
17:31
sivoais left
17:32
sivoais joined,
Akagi201 left
17:33
espadrine_ left
|
|||
timotimo | ;) | 17:33 | |
17:39
_mg_ left
17:40
perlfan joined
17:42
Kristien joined
|
|||
Kristien | hi | 17:44 | |
Ven | o/ | ||
TimToady wonders if negative sums of a positive infinite series is a sign of an event horizon caused by the information density of the big numbers on the right, and proof that our universe *must* be in a black hole... | |||
\o too :) | |||
17:45
Alina-malina left
|
|||
Kristien | I solved the halting problem! | 17:46 | |
flussence | status.haskell.org/ ouch. | 17:47 | |
Kristien | sub halts($program) { loop { } } | ||
geekosaur | halt and catch fire? | ||
TimToady | does that return a negative value? | 17:48 | |
Kristien | I find it funny how clang optimises this to a no-op: void f() { f(); } | ||
17:48
pecastro left
|
|||
Kristien | A stack overflow results in undefined behaviour so it's just removed from the code automatically. :D | 17:49 | |
TimToady | over the weekend, I was thinking to myself that if we really followed the principle of "Everything should be as simple as possible, but no simpler," we'd all be required to program Turing machines :) | ||
17:49
Alina-malina joined
17:50
adu joined
|
|||
TimToady | but that's the sort of reasoning people apply to programming languages all the time | 17:50 | |
arnsholt | Heh | 17:54 | |
That's one of the things I point out to our undergrads: Turing machines are tedious as hell to program | |||
Ven | TimToady: I love how that quote was made simpler than it actually was :D | 17:55 | |
Kristien | TimToady: especially nondeterministic ones | ||
they are much more useful | |||
17:55
virtualsue left
17:57
kaleem left,
Ven left
17:59
gfldex joined
|
|||
grondilu sees loop {} in the backlog and can't help reminding everyone his meditation about it: perlmonks.org/?node_id=1057242 | 18:00 | ||
18:00
adu left
|
|||
|Tux| | It is a shame that malformed UTF-8 reads do not show the bad line | 18:01 | |
yoleaux | 13 Feb 2015 20:03Z <lizmat> |Tux|: what's the problem with IO::Handle.chomp and a loop with .get ? I don't see any problem | ||
18:01
dakkar left
|
|||
|Tux| | Error while reading from file: Malformed UTF-8 | 18:01 | |
TimToady | yes, that is LTA | ||
Kristien | You can optimise loop { } to destroy the thread! | ||
18:02
Ven joined
|
|||
TimToady | but how will I use my computer for a space heater if you optimize it away!?! | 18:02 | |
nine_ | lizmat: is there any way to avoid the negation in the dontcheck flag? Negated booleans make code really harder to read. | ||
Kristien | C++ standard says that an implementation can assume a thread either produces side-effects or terminates. | 18:03 | |
So for (;;); in C++ has undefined behavior. | |||
I have yet to see an implementation optimise it away, though. | 18:04 | ||
18:04
sqirrel_ joined
|
|||
Ven | Kristien: I'd love to see it | 18:04 | |
Kristien | It'd probably break existing code. | ||
TimToady | heat is a side effect | ||
FROGGS | lol | ||
grondilu wishes he had mentioned the comparison with what happens when you try to cycle when the chain has jumped. You just can't. It's hard to turn it when there is no resistance whatsoever. | |||
18:05
mvuets joined
|
|||
lizmat | nine_: well, the alternative would be :$check = True | 18:05 | |
Kristien | if heat is a side-effects you can't optimise anything for speed :P | ||
FROGGS | TimToady: that's only true when somebody observes it :o) | ||
Kristien | because the optimisations would break the observable behavior | ||
TimToady | the death of the universe observes the heat :) | ||
lizmat | nine_: which I don't like for performance reasons | ||
18:05
Mouq left
|
|||
lizmat | nine_: having said that, maybe I should check into the performance difference | 18:05 | |
arnsholt | Kristien: Well, the only trivially optimisable variant of that is for(;;) {} | 18:06 | |
skids | In crypto functions there is sometimes a need to prevent certain optimizations, to prevent side-channel attacks. FWIW. | ||
arnsholt | If there's code inside it's harder to determine certainly that it's dead code | ||
Ven | Kristien: disagree. it'll just heat in another branch of code | ||
TimToady | but I want to know if the cat is radioactive now | ||
Kristien | it'll heat at compile-time! | ||
18:06
Hor|zon left
|
|||
TimToady wonders if the universe is still compiling... | 18:07 | ||
Kristien | I wonder if sleep(1) is considered a side-effect. | ||
jercos | TimToady: just in time, perhaps? | ||
Kristien | to be truly safe you can do static unsigned volatile x = 0; for (;;++x) { } :) | ||
nine_ | lizmat: reminds me a bit of premature optimization. I sure hope that Rakudo's optimizer will become smart enough to make the performance difference go away but what stays is the API. | 18:08 | |
Ven | Kristien: unsigned so that it can go higher? you can put `x = 0` in the loop :P | ||
lizmat | nine_: you're completely right, fixing nine_++ | ||
Kristien | Ven: because overflow is undefined behavior for signed integers | ||
18:08
jack_rabbit joined
|
|||
Kristien | and not for unsigned ones | 18:08 | |
skids | e.g. MMD caching probably will need to be turned off in tight crypto loops so that you can't leak information based on execution speed. So there should be a pragma or something for that. | ||
Ven | fair enough I guess? | ||
TimToady | so obviously 1 + 2 + 3 + 4 + … is being calculated in signed integers | 18:09 | |
Kristien | which is why in my VM I have to resort to assembly code for signed operations | ||
because x86-64 defines it well | |||
18:19
jack_rabbit left
18:20
Mouq joined
18:36
Mouq left
18:37
_mg_ joined
18:42
dj_goku left
18:43
kurahaupo1 joined
|
|||
PerlJam | good $localtime all | 18:48 | |
hoelzro .oO( everytime I see "Great List Refactor", I think about "Great Vowel Shift" ) | |||
PerlJam | hoelzro: would it help if we repurposed the G for "Grand" rather than "Great" ? :) | 18:49 | |
18:49
Ven left
|
|||
masak | PerlJam: Groit Lyst Refoctor | 18:50 | |
TimToady | Glorious! | ||
lizmat | ,oO( I Am Groot ) | ||
tadzik | :D | ||
Kristien | Great Prix | ||
DrForr_ | Best role Vin Diesel's ever had. | 18:51 | |
lizmat | I Am Groot | ||
Kristien | I Am Kristien | 18:52 | |
I Am A Perl Programmer | |||
timotimo | i am programmer | ||
hear me roar | |||
Kristien | I am pro-grammar. | ||
I am bad at puns. | 18:53 | ||
TimToady | Ich bin ein Mountainviewer. | ||
lizmat | .oO( IRC lack inflection and emphasis to continue saying "I Am Groot" and make sense :-) |
||
masak | lizmat: I AM GROOT | ||
lizmat | .oO( so glad I'm not from Frankfurt ) |
18:54 | |
Kristien | I am making a GC. | ||
PerlJam | lizmat: I dunno ... I *am* Groot. I am Groot? etc. | ||
jdv79 | what's in frankfurt? | ||
PerlJam | Kristien: your puns are fine until you self-reference them, then they collapse :) | ||
DrForr_ | Jelly donuts. | 18:55 | |
jdv79 | i did not enjoy that city for the yapc. might have been partly because there was no A/C and it was too hot. | ||
instead of sleeping i felt like i was swimming | |||
lizmat | .oO( ich bin ein Frankfurter ) |
18:56 | |
masak .oO( waterbed theory ) | |||
18:56
rurban left
|
|||
timotimo | the waterbest theory | 18:57 | |
TimToady | my waterbed is full of frankfurters... | ||
timotimo | franken furter? | ||
DrForr_ | Better than eels. | ||
lizmat | my hovercraft is full of eels | ||
jercos | my hovercraft is full of eels | ||
oh | |||
TimToady | same sort of shape though | ||
lizmat | hehe | ||
masak | timotimo: please, don't take that pun any furter... | ||
TimToady | he said frankly | 18:58 | |
lizmat | let's do the time warp! | ||
jercos | again? | ||
DrForr_ | Hey, I currently lve in Transylvania. | ||
*live | |||
masak | DrForr_: does the 'Dr' stand for 'Drakula'? | ||
masak .oO( the odds aren't good, but the stakes are high... ) | 18:59 | ||
DrForr_ | Well, I did play Brad at one time :) | ||
hoelzro | PerlJam: oh, I don't mind =) | 19:01 | |
19:03
Hor|zon joined
|
|||
TimToady | lizmat++ <- the .trans solution is now twice as fast as the slice solution | 19:05 | |
that's about 36 times faster | |||
timotimo | <3 | ||
19:05
larion joined
|
|||
raydiak isn't really here and might not be around before most of europe is in bed, but it'd be cool if anyone has time to comment or merge github.com/rakudo/rakudo/pull/364 ; will backlog if you'd rather comment here | 19:06 | ||
19:07
Hor|zon left
19:08
dj_goku joined,
dj_goku left,
dj_goku joined
|
|||
lizmat | TimToady: wow, 36x :-) | 19:09 | |
TimToady | 6 minutes to 10 seconds | ||
drzsasz | is Net::IRC::Bot supposed to be broken and give me two different cryptic errors when running the examples in 2014.12/2015.1 moarvm ? | 19:11 | |
or did i do something wrong | |||
TimToady | it or the examples could well be bitrotted since then | ||
timotimo | raydiak: there are some more tips on how to improve the code in the backlog, i remember seeing some | 19:12 | |
TimToady | but in general we're not in favor of cryptic errors, unless the only alternative is no errors | ||
er, no error messages when there are errors, I should say | 19:13 | ||
no errors would be a good thing :) | |||
funny how the word "errors" has become overloaded that way... | |||
jdv79 | where is this 36x speedup? sounds interesting. | 19:14 | |
TimToady | rosettacode.org/wiki/Textonyms#Perl_6 | ||
from changes to .trans | |||
timotimo | aye, optimizations for the "only one pair object passed to .trans" case | 19:15 | |
drzsasz | 0bin.net/paste/1oo7-1qMEI852OdS#RxJ...fiGhPINzoH | 19:16 | |
this looks pretty cryptic to me | |||
19:18
sqirrel_ left
|
|||
drzsasz | 0bin.net/paste/saFJGWpYNpiMbAuq#ZEU...gL6f486Q6H those are the corresponding lines where AnnoyUsers is defined exactly like in the example, and the other thing is line 108 from the module | 19:19 | |
lizmat | .tell jnthn wrt PIO role name, maybe it should be RIO (as in Rakudo Io Object) | 19:22 | |
yoleaux | lizmat: I'll pass your message to jnthn. | ||
TimToady | is it really specific to rakudo? | 19:23 | |
lizmat | I think so | 19:24 | |
originally, it was specific to Parrot | |||
hence the P in PIO | |||
when the other Rakudo backends came, it just kept its name internally, afaik | 19:25 | ||
19:25
DarkLoord left
|
|||
masak | kinda suggests that we shouldn't make name it after any implementation, if you ask me. | 19:26 | |
lizmat | but it feels like an implementation detail, really | ||
or does niecza also have a PIO object ?? | 19:27 | ||
raydiak | timotimo: thanks...I do remember seeing a suggestion from moritz++, but it wouldn't have worked in my case, but both the suggestion and my response are not to be found in the backlog I guess | 19:30 | |
it boiled down to "I can't use .list b/c it flattens" | 19:31 | ||
timotimo | oh | ||
you can grep for Whatever instead of { $_ ~~ Whatever } | 19:32 | ||
for example | |||
TimToady | regarding NativeCall in both panda and core, if version numbers of official modules work like they're supposed to (exact match), this shouldn't really be a problem | ||
19:32
mohij joined
|
|||
TimToady | panda should not be offering the version that the core wants | 19:32 | |
19:33
pmqs joined
|
|||
FROGGS | that would imply panda did a 'use Rakudo:ver<2015.01-42-kjhksjh>' | 19:34 | |
TimToady | if our version numbering doesn't allow that, then our version numbering is broken | ||
FROGGS | s/panda/NativeCall/ | ||
TimToady | all official modules are required to have a version | ||
that's been in S11 for a long, long time | 19:35 | ||
raydiak | timotimo: but I need the indices not the values, so it'd look more like .pairs.grep: {.key if .value ~~ Whatever} which is no better imo | ||
FROGGS | it is not about the version of NativeCall, is it? | ||
TimToady | yes, it is | 19:36 | |
FROGGS | hmmm, then I dont get it | ||
1) when I ask panda to install NativeCall with whatever version, it should only offer the candidates that work for my compiler | |||
2) I have no idea what 2) is | 19:37 | ||
raydiak | timotimo: except .pairs there wouldn't do what I want either, of course, then I'd get the named pairs I assume...and can't call .list or slice first, b/c it'll flatten | ||
19:37
kurahaupo1 left
|
|||
TimToady | if the core has a depencency on a particular version of NativeCall, then it can...er...have a dependency on it | 19:38 | |
dalek | line-Python: 327148b | (Stefan Seifert)++ | Build.pm: Fix installation via panda |
||
FROGGS | TimToady: it is the othe | ||
r way around | |||
TimToady | it is both ways | ||
FROGGS | well, yes | ||
raydiak | timotimo: gist.github.com/raydiak/1ecf3131e1fa4157e625 is what I was using to experiment with, if you feel inclined to do the same :) | 19:39 | |
FROGGS | but yeah, if NativeCall in core had a version, one could use that and it would not load that from the ecosystem, if that had another version | 19:40 | |
TimToady | and perhaps such a mutual dependency is the clue that a module might belong in core | ||
raydiak | okay really afk | ||
TimToady | o/ | ||
FROGGS | TimToady: it is only both ways if we start to unpack using CStructs IMO | ||
(if that makes use of nativecast, which is exposed by NativeCall currently) | 19:41 | ||
TimToady thinks natives will only get more incestuous over time with the implementation | |||
esp with shaped arrays and such | |||
19:42
Mouq joined
|
|||
FROGGS | I really love where this is going btw | 19:43 | |
having grammars and ffi in the very same language feels like a very good thing :o) | |||
masak | I often hesitate about whether things should be in core. not so for NativeCall. | 19:44 | |
timotimo | agreed, masak | 19:47 | |
19:47
rurban joined,
rindolf left
19:52
telex left
19:54
telex joined
|
|||
nine_ | What's the retionale for this? substr('abc': 1); # same as 'abc'.substr(1) | 20:00 | |
TimToady | same as the : in a signature, really | ||
but linguistically, sometimes you want the verb out front | 20:01 | ||
nine_ | Do you have a good example? | ||
TimToady | push @abc: 1,2,3; # bad example | ||
print $handle: @stuff | 20:02 | ||
pyrimidine | lizmat++ # .trans optimizations | ||
20:02
darutoko left
|
|||
pyrimidine | lizmat: us bioinformatics types thank you :) | 20:02 | |
TimToady | move $me: Library; | 20:03 | |
lizmat | pyrimidine: you're welcome, but note it's only for the Str:D => Str:D case | ||
pyrimidine | lizmat: that's ok. it's what we would probably use the most anyway | 20:04 | |
TimToady | nine_: basically a disambiguated version of P5's oft reviled indirect object syntax, but that's because it's ambiguous in P5 | ||
lizmat | pyrimidine: I've ideas of optimizing the Str:D => '' case as well | ||
TimToady first typed "ambuguous" :) | |||
pyrimidine | lizmat: also, I think I added some of those .trans tests way way back (I think based off some things popping around in here at that point) | 20:05 | |
nine_ | TimToady: I guess it's a way to avoid duplicating code when one wants to provide an OO interface and a sort of functional interface at the same time | ||
FROGGS | does somebody of the Java professionals know about output buffering problems like these? | 20:06 | |
$ TEST_JOBS=4 make j-test | |||
ok 1 - Called argless function | |||
===( 1;0 1/3 0/? 0/? 0/10 )==================================ok 3 - called long_and_complicated_name | |||
we are already calling fflush(stdout) in the .c files the test runs/calls into | |||
pyrimidine | lizmat: I remember masak mentioning that some of the more complex behavior could be moved to another method, but I don't recall off hand when that popped up | 20:07 | |
lizmat | well, the implementation was clearly pre-MMD in core | ||
now that we have perfiormant MMD in core, we can do things like this more easily | |||
pyrimidine | definitely :) | 20:11 | |
dalek | kudo/nom: 0a7fba6 | TimToady++ | LICENSE: Update rakudo copyright from 2006 to 2015 (!) Shows about how much we actually care about this... :) |
20:14 | |
lizmat | :-) | ||
20:18
bjz left
|
|||
hoelzro | is anyone familiar with this tool? github.com/flatland/drip | 20:20 | |
supposedly it decreases JVM startup time? | |||
masak | maybe have a Rakudo-specific test somewhere that makes sure LICENSE year equals current year? | ||
FROGGS | or we put it in the release guide | 20:21 | |
masak | I'm still hoping large parts of the release guide could be automated. | 20:23 | |
20:24
espadrine_ joined
|
|||
TimToady | speaking of versions and immutable official modules and status.haskell.org/, how are we doing on mandatory cryptohashes for official modules? | 20:26 | |
we do not want the first big story of 2016 to be how someone got into our libraries and installed malware | 20:27 | ||
lizmat | TimToady: you mean, part of the core / compiler distribution ? | 20:28 | |
avuserow | nine_++ # Inline::Python build fix | ||
20:28
molaf_ left
|
|||
TimToady | I mean, any official module (meaning the version has been declared immutable) should by virtue of its immutability have a fixed checksum that can be retrieved from elsewhere and compared | 20:30 | |
so it's trivial to tell whether a module has been compromised regardless of where it comes from on the net | |||
that's one of the major subgoals of declaring all official modules to be immutable under a given version number | 20:31 | ||
but it's also "I know exactly what language I'm running" more generally | |||
dalek | kudo/newio: 0bea407 | lizmat++ | src/core/ (8 files): A lot of work related to directories In the end, it turned out not to be such a good idea to make IO::Dir have its abspath with a trailing /. So, removed that: IO::Dir now only stringifies with a trailing /. This had quite some repercussions, hope I caught them all. Also implement IO.resolve (on Moar), now that we nqp::readlink. |
||
20:31
Kristien left
|
|||
TimToady | it's just if your module has been compromised, you aren't running the language you think you are | 20:31 | |
FROGGS | yes, we need to somehow sign distributions, but we are no where near that point | 20:32 | |
lizmat | FROGGS: QA hackathon stuff ? | 20:33 | |
TimToady | GSoC project? | ||
lizmat | possibly, yes :-) | 20:34 | |
FROGGS | yeah | ||
TimToady | more generally, we probably need an overall security audit as part of the beta test period | ||
FROGGS | would only be QA stuff if somebody with knowledge about that topic would be present :o) | ||
TimToady | .oO(what is the quality of our security?) |
20:35 | |
the current quality is "largely ignored" I suspect | |||
Juerd | TimToady: It's a programming language. You can always blame it on the programmer and say it's not a security bug. | 20:36 | |
(Perl 5 ships with known security bugs.) | |||
itz | what's the current favoured crypto hash? SHA256? | 20:38 | |
Juerd | itz: sha lacks identity | 20:39 | |
skids | That should be relatively well distributed across platforms and pretty secure, yes. | ||
Juerd | itz: PGP appears to be the de facto standard format. | ||
skids | Minus signing, yes. | ||
FROGGS | this might be inspiring: blog.versioneye.com/2014/01/15/whic...e-manager/ | 20:40 | |
20:41
spider-mario joined
|
|||
dalek | rl6-roast-data: 764bff1 | coke++ | / (5 files): today (automated commit) |
20:41 | |
itz | hahaha maven is "singed" | 20:42 | |
20:42
echowuhao left
|
|||
masak | hitting all of those seven pros sounds like a good start :) | 20:42 | |
FROGGS | aye | ||
20:42
echowuhao joined
20:44
kaare_ joined
|
|||
skids | Bonus points for a revocation mechanism :-) | 20:45 | |
FROGGS | well, if you'd need to authenticate against a CA... | 20:47 | |
skids | Yeah, but actually ensuring clients check the CA for a CRL is another matter. | ||
FROGGS | true | ||
20:48
vendethiel- joined
|
|||
FROGGS | but then again, this is a project that needs a bus number > 1 | 20:48 | |
itz | hmm if you squash all git commits you can sign one commit with GPG | ||
20:48
vendethiel left
|
|||
skids | Anyway, unless you had a key per version, revoking a particular version as "this is buggy don't use" canot rely on mrer PKI mechanisms. | 20:49 | |
*mere | 20:50 | ||
itz | mikegerwitz.com/papers/git-horror-story | 20:52 | |
20:52
Hor|zon joined,
avuserow left
20:53
avuserow joined
20:54
Kristien joined
|
|||
dalek | kudo/nom: c17cb55 | coke++ | src/core/Numeric.pm: remove parrot ifdef fossil |
20:55 | |
kudo/nom: e451515 | coke++ | docs/guide_to_setting.pod: Remove old advice about not writing in PIR. Also removed dead URL about same. Keep remaining advice for now. |
|||
20:56
Hor|zon left
21:00
raiph left
21:02
_mg_ left
21:03
Hor|zon joined
21:04
Mouq left
|
|||
dalek | c: 3163338 | moritz++ | lib/Language/quoting.pod: Heredocs |
21:06 | |
kudo/nom: fd0271e | lizmat++ | src/core/Str.pm: Make .trans("foo" => "") 10x .. 200x faster Oddly enough, the greatest profit is seen in the case where *all* characters are removed (200x) as opposed to when no characters are removed (10x). |
|||
21:07
diana_olhovik_ left
|
|||
vendethiel- | lizmat++ # :o) | 21:07 | |
FROGGS | lizmat** # :o) | ||
21:08
Hor|zon left
|
|||
Kristien | lizmat~~ # :o) | 21:08 | |
FROGGS | smart, indeed | ||
21:08
bjz joined
|
|||
Kristien | it's postfix ~~ | 21:09 | |
vendethiel- | *g* | ||
Kristien | it converts _from_ string | ||
moritz | it converts from lizmat++ to karma | ||
lizmat | hehe | 21:10 | |
21:10
bjz left
|
|||
moritz | FROGGS: how do I run nativecall tests in rakudo? | 21:11 | |
lizmat | make test | ||
FROGGS | mohij: make test | ||
sorry mohij | |||
mohij makes a test | 21:12 | ||
FROGGS | mohij++ # *g* | ||
moritz tests a make | |||
21:12
grep0r left
|
|||
lizmat | FROGGS: getting a segfault in t/04-nativecall/05-arrays.t | 21:12 | |
ok 16 - byte in element 2 | |||
ok - byte in position 0, C-side | |||
ok - byte in position 1, C-side | |||
ok - byte in position 2, C-side | |||
Segmentation fault: 11 | |||
moritz | which backend? | 21:13 | |
lizmat | moritz: parrot | ||
FROGGS | lizmat: did you pull nqp? | ||
lizmat | I did a reconfigure | ||
FROGGS | I even bump the revision.. | ||
bumped* | |||
lizmat | lemme nuke the install dir and start from scratch | ||
FROGGS | I still have no fix for nativecall@jvm@osx though | 21:14 | |
lizmat | FROGGS :-( | ||
FROGGS | but it should be trivial to fix I guess | ||
I just cant try things | |||
lizmat | seems to build everything ok, just can't find it i the end | ||
*in | |||
FROGGS | right | 21:15 | |
the dlLoad or what it is called thinks the path needs to be mangled | |||
maybe we need to pass an absolute path, maybe we need to leave off the './' | |||
or we maybe should not append the .dylib on osx at all | 21:16 | ||
lizmat is checking if panda works with NativeCall on the JVM | |||
FROGGS: absolute path seems very JVMy | 21:17 | ||
FROGGS | funny that this is an osx+jvm problem only though | 21:18 | |
21:18
rurban left
|
|||
lizmat | FSVO funny :-( | 21:18 | |
FROGGS | aye | ||
lizmat | if we can't get this fixed by Thursday, I guess we will need to wait until next month for NativeCall inclusion in core | ||
FROGGS | but that's how osx is... (and jvm) | 21:19 | |
lizmat: we will fix it, no doubt | |||
lizmat | hope so :-) | ||
[Coke] | one nativecall failure on parrot (os x, at least) known, yes? | 21:22 | |
lizmat | [Coke]: segfault in t/04-nativecall/05-arrays.t ? then yes | 21:23 | |
FROGGS | but it is fixed! ó.ò | 21:24 | |
[Coke] is on e451515 | |||
FROGGS | 2015.01-55-g78e9940 | ||
that's what you need for nqp | 21:25 | ||
lizmat | what I got, still segfault :-( | 21:26 | |
FROGGS | if that is what your nqp-p shows, then I need a gdb output | ||
(or valgrind, or access to an osx box) | |||
[Coke] | This is nqp version 2015.01-55-g78e9940 built on parrot 7.0.1 revision RELEASE_7_0_1 | 21:27 | |
one sec, I'll get you some gdb. | |||
well, the local equivalent. | |||
lizmat | [Coke]++ | ||
[Coke] | arglebargle. have to rebuild to get debug symbols. | 21:29 | |
FROGGS | an function name would already help | 21:30 | |
[Coke] | in the meantime, enjoy this: gist.github.com/coke/1dc9efe0d02bb460bb67 | ||
FROGGS | hmmm, that's something | ||
21:31
mvuets left
|
|||
Kristien | How do you dispose of your boomerangs? I throw them away but they keep coming back. | 21:31 | |
lizmat | Kristien: you dispose of boomerangs by walking away | ||
FROGGS | okay, the problem seems to with passing a buf8 to C land... CArray[int8] works | 21:33 | |
1..20 | 21:35 | ||
==30445== Invalid read of size 1 | |||
==30445== at 0x23483BEE: TakeAByteArray (in /home/froggs/dev/rakudo/05-arrays.so) | |||
21:36
MilkmanDan left
|
|||
dalek | kudo/nom: 96eb9dc | lizmat++ | src/core/Str.pm: We're only dealing with strings Seems to marginally make things faster |
21:37 | |
timotimo | lizmat: it could theoretically get faster if you move the sub outside the method | 21:40 | |
lizmat wonders how timotimo is getting along with the P6W | |||
timotimo | (so that it doesn't have to take a closure) | ||
21:40
xfix left
|
|||
timotimo | lizmat: currently procrastinating by eating some soup :) | 21:40 | |
lizmat tries | 21:41 | ||
21:42
MilkmanDan joined
|
|||
lizmat | timotimo: not seeing any difference other than noise | 21:45 | |
I guess because it doesn't take any closure already, as it doesn't reference anything outside ? | 21:46 | ||
21:47
uvb joined,
MilkmanDan left
|
|||
timotimo | OK | 21:51 | |
not 100% sure if our code is smart enough for that | |||
but good work nonetheless :) | |||
[Coke] | ugh. I just did a full parrot rebuild to get debug output, and failed. | 22:00 | |
is the parrot build option for that just -g ? I had tried --debugging=-g3 as suggested in parrot's Config output. | 22:01 | ||
22:01
MilkmanDan joined
|
|||
FROGGS | [Coke]: I think I already see what's wrong... | 22:02 | |
22:03
pdcawley left
|
|||
[Coke] | ah, --debugging is probably it... ok. one more build then I'll get back to the other thing I was hacking on. :) | 22:03 | |
22:04
Hor|zon joined,
skids left
22:05
FROGGS_ joined,
Sqirrel_ joined
|
|||
timotimo | lizmat: in last week's post you said you're going to defer telling the reader about more stuff coming from the 6pe branch to this week | 22:05 | |
did you have something specific in mind? | |||
22:08
FROGGS left,
Hor|zon left
22:09
Sqirrel left
22:10
alini joined,
MilkmanDan left
|
|||
lizmat | timotimo: I was hoping jnthn would have had the time to tell me about them :-) | 22:12 | |
timotimo | heh heh | ||
lizmat | all of the MOP stuff, basically, I think | ||
Kristien | I watched a MoarVM optimisation presentation by jnthn recently. | ||
masak | Kristien: oh, is that why you're active on the channel? | 22:15 | |
Kristien | no | ||
it was like, yesterday | |||
masak | yesterday? | 22:16 | |
Kristien | yes I watched it yesterday | ||
[Coke] | FROGGS_: ok, I give up. ISTR it used to be easier to get debugging symbols, no clue what i'm doing wrong. | ||
hope the asm helped. :) | |||
FROGGS_ | yes, it at least assures me I am looking at the right area | 22:17 | |
timotimo | does anybody know if we've got more 6pe-based work in rakudo now as compared to last monday? | 22:20 | |
masak | timotimo: is that a question that can be answered with `git log`? | 22:21 | |
timotimo | hmm, i'll have a look | ||
actually, i've been looking at the github logs, but that doesn't include the diffs | |||
masak | command-line client ftw | 22:22 | |
dalek | kudo/newio: 8a4375d | lizmat++ | src/core/io_operators.pm: Make sure we coerce open($path) to Str() |
22:24 | |
22:26
raiph joined
|
|||
timotimo | lizmat: any idea when newio will be in a mergable state? | 22:37 | |
lizmat | hopefully shortly after 2015.02 | ||
there are still *many* loose ends to be tied up | 22:38 | ||
dalek | p: 180abaa | FROGGS++ | src/vm/parrot/ops/nqp_dyncall.ops: avoid reading garbage when unmarshalling vmarrays |
||
kudo/nom: 7dece7d | FROGGS++ | tools/build/NQP_REVISION: get nqp with NativeCall@parrot fixes |
|||
FROGGS_ | lizmat / [Coke]: that should do | 22:39 | |
lizmat is going to test | |||
FROGGS_ | dang, I left debug output it! >.< | 22:40 | |
dalek | p: bad5f30 | FROGGS++ | src/vm/parrot/ops/nqp_dyncall.ops: remove debug output |
22:41 | |
kudo/nom: 768b226 | FROGGS++ | tools/build/NQP_REVISION: get nqp with less debug output /o/ |
22:42 | ||
lizmat pulls and builds again :-) | |||
22:43
alini left
|
|||
FROGGS_ | well, it would have worked / not worked before too :o) | 22:44 | |
timotimo | lizmat: i'm glad you're working on this, btw :) | ||
dalek | kudo/newio: e2464ab | lizmat++ | src/core/io_operators.pm: Some Str coercions |
22:45 | |
lizmat | timotimo: this being newio ? | ||
timotimo | yes | ||
lizmat | it is kinda boring :-( | ||
FROGGS_ | lizmat: somebody has to suffer for the sake of the users :o) | 22:46 | |
lizmat | I'm well aware of that meme :-) | ||
FROGGS_ | I usually do a lot of boring stuff... all would be much more fun if there was just the MoarVM backend | 22:48 | |
22:48
MilkmanDan joined,
kjs_ joined
|
|||
timotimo | i must admit i'm not very good at working through boring stuff | 22:50 | |
masak enjoyed videlalvaro.github.io/2015/02/progr...myths.html | |||
m: class C { has $!foo; method bar { say $!fou } } | 22:53 | ||
camelia | rakudo-moar 96eb9d: OUTPUT«===SORRY!=== Error while compiling /tmp/DPYMr3m_jUAttribute $!fou not declared in class Cat /tmp/DPYMr3m_jU:1------> { has $!foo; method bar { say $!fou } }⏏<EOL>» | ||
masak would really like a "did you mean" Levenshtein suggestion on that one | 22:54 | ||
Kristien | masak: even better: it replaces it by the code I want there | ||
masak | er, no. but thanks for playing. | 22:55 | |
generalizing that thought: is there a way we could collect and classify all the "<identifier> not found" error messages emitted by Rakudo, so we can see which ones have a Levenshtein on them already, and which ones don't? | |||
FROGGS_ | masak: several not well connected spots do emit these messages | 22:56 | |
Kristien | duplicate code :'( | ||
masak | FROGGS_: right, but they all have the same purpose. | ||
FROGGS_ | aye | 22:57 | |
masak | I'm not saying "abstract and unify everything" -- I've grown past that stage :) | ||
but it does seem like a missed opportunity to be consistent. | |||
we should at least sift through the codebase looking for such places. | |||
FROGGS_ | ++masak | ||
masak | heh. | ||
FROGGS_ | though, you cannot throw typed exception from every spot, because you cannot always access the symbols you need... | 22:58 | |
masak | bah! I know an artificial limit when I see one. | ||
FROGGS_ | :P | 22:59 | |
timotimo | any other recent performance breakthroughs in the last week? | 23:00 | |
dalek | kudo/newio: 18c0a05 | lizmat++ | src/core/io_operators.pm: Some more Str() coercion fixes |
||
lizmat | FROGGS_: rakudo make test on parrot now clean on OS X | 23:01 | |
FROGGS_ | \o/ | ||
lizmat | FROGGS_++ | ||
FROGGS_ | m: say $*KERNEL.name | ||
camelia | rakudo-moar 96eb9d: OUTPUT«linux» | ||
FROGGS_ | m: say $*DISTRO.name | 23:02 | |
camelia | rakudo-moar 96eb9d: OUTPUT«opensuse» | ||
FROGGS_ | lizmat: $*KERNEL.name will be darwin for you? also on the jvm? | ||
lizmat | $ 6 'say $*KERNEL.name; say $*DISTRO.name' | ||
darwin | |||
macosx | |||
timotimo | FROGGS_: your "longer" branch also allows having other kinds of sizes for ints and stuff, right? | ||
geekosaur | arguably the kernel is not darwin, it is xnu | 23:03 | |
FROGGS_ | timotimo: aye | ||
geekosaur | darwin is a (now defunt) distribution | ||
23:05
Hor|zon joined
|
|||
lizmat | geekosaur: it basically takes whatever uname -s says (and lc's it for consistency) | 23:05 | |
geekosaur wonders what other systems that'll mess up on, then | 23:06 | ||
(interpretation of uname's fields is ... idiosyncratic) | |||
lizmat | src/core/Kernel.pm patches welcome :-) | ||
dalek | kudo/nom: d99fe0b | FROGGS++ | lib/NativeCall.pm: pass an absolute libname for on jvm/osx The library loader will not look in CWD for libs, but will instead pre-/append stuff and tries to look it up in system dirs. |
||
FROGGS_ | lizmat: please try when you get a chance... I'm off to bed | 23:07 | |
Kristien | s/core/corn/ | ||
delicious corn kernels | |||
lizmat | FROGGS_: goodnight, | ||
trying it now | |||
23:09
Hor|zon left
23:12
kjs_ left
23:17
zacts joined
|
|||
lizmat | .tell FROGGS_ alas, still the same errors :-( | 23:19 | |
yoleaux | lizmat: I'll pass your message to FROGGS_. | ||
23:20
afb joined
23:22
gfldex left
|
|||
ruoso | when writing a grammar, what would be the easiest way to write tests for specific rules instead of TOP? | 23:23 | |
23:23
TgMts joined
|
|||
masak | ruoso: .parse($str, :rule<otherrule>) ? | 23:23 | |
ruoso | aha.. that's it... for some reason I missed that in the docs | 23:24 | |
23:25
afb left
23:26
ash__ joined
23:27
espadrine_ left
|
|||
dalek | kudo/newio: 95ef1af | Mouq++ | docs/ChangeLog: Add a ChangeLog entry |
23:27 | |
rakudo/newio: fac6654 | FROGGS++ | tools/build/NQP_REVISION: | |||
rakudo/newio: get nqp with NativeCall@parrot fixes | |||
23:27
dalek left
|
|||
lizmat | sorry dalek | 23:28 | |
23:28
dalek joined,
ChanServ sets mode: +v dalek
|
|||
lizmat | and on that note, I wish #perl6 a good * | 23:28 | |
23:29
BenGoldberg joined
|
|||
dalek | ecs/newio: df847a9 | lizmat++ | S32-setting-library/IO.pod: Some doc tweaks, mostly related to coercion |
23:30 | |
lizmat | sleep& | ||
23:34
ash__ left
23:49
wicope left
23:50
kurahaupo1 joined
|
|||
Kristien | vendethiel-: github.com/rightfold/mill/blob/mas...pp#L36-L56 :P | 23:50 | |
23:51
kurahaupo1 left
23:55
Kristien left
23:59
Alina-malina left
|