»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
00:07
leont joined
|
|||
FROGGS | gnight | 00:13 | |
00:15
stevan_ joined
00:16
spider-mario left
00:20
FROGGS left,
leont left
|
|||
rurban | bbkr: Looks like parrot wants to follow the established POSIX and perl5 behaviour. The specs need to changed. | 00:20 | |
socket.read returns max len bytes | 00:21 | ||
but not guaranteed len bytes | |||
pubs.opengroup.org/onlinepubs/00969.../read.html | |||
The size argument is for languages which do not malloc buffers by themselves. The receiving buffer must be preallocated and the recv() function writes into it. | 00:23 | ||
00:24
bitonic left
|
|||
rurban | But I'm not sure what the high-level parrot socket.read() method should do, since we provide the low-level recv() method also. | 00:25 | |
bbkr | rurban: thanks for explanation. I've created Rakudo bug - rt.perl.org/rt3/Public/Bug/Display...?id=116288 because now Perl 6 spec is different than Rakudo behavior - ergo a bug (even if it may be rejected if perl 6 spec will change to follow POSIX way in the future) | 00:41 | |
I will copy/paste your above explanation there if you don't mind | 00:42 | ||
00:45
[particle] joined
|
|||
doy | perl 6 doesn't really have to follow posix | 00:45 | |
00:46
wk joined,
wk is now known as Guest13459
|
|||
doy | the spec behavior does seem more useful, given the wider variety of language features available to deal with the issues that the posix api is designed to work around | 00:47 | |
bbkr | doy: i agree | 00:49 | |
00:49
FROGGS joined
00:51
[particle]1 joined
|
|||
bbkr | FROGGS: rt.perl.org/rt3/Ticket/Display.html?id=116288 ticket about IO::Socket.read that we discussed earlier | 00:52 | |
00:52
[particle] left
01:02
lolage left,
thou left,
rindolf left
01:08
anuby joined
01:10
hypolin joined
01:16
thou joined
01:47
diakopter left
|
|||
timotimo | so, *tomorrow*, i'll so totally do that screencast. for Reals. or maybe for Nums or maybe even just for Integers. | 01:51 | |
01:52
diakopter joined,
Exodist joined
02:18
MayDaniel left
02:26
colomon joined
02:27
thou left
02:30
FROGGS_ joined
02:34
FROGGS left
02:38
xinming left,
japhb_ joined
|
|||
japhb_ | timotimo, Pick one: doc.perl6.org/images/type-graph-Real.svg ;-) | 02:39 | |
02:42
marloshouse_ joined
02:44
fgomez joined,
marloshouse left,
wtw left,
tomaw left,
felipe left,
marloshouse_ is now known as marloshouse
02:45
Guest13459 left
02:46
thou joined
02:49
cognominal joined
02:51
fgomez left
02:52
fgomez joined
02:54
xinming joined
02:55
tomaw joined
02:58
fgomez left,
fgomez joined
03:07
[particle] joined
03:10
[particle]1 left
03:16
cognominal left
03:19
wtw joined
03:20
cognominal joined
03:42
Chillance left
03:46
dayangkun joined
03:54
Chillance joined
03:55
orafu left
03:56
orafu joined
04:39
cognominal_ joined
04:40
cognominal left
04:47
thou left
04:49
fgomez left
04:50
fgomez joined
04:54
FROGGS_ left
05:00
skids_ left
05:04
FROGGS_ joined
05:10
telex left
05:13
cognominal_ left
05:15
skids_ joined
05:17
hash_table joined
05:20
telex joined
05:25
skids_ left
05:32
telex left
05:38
xilo_ joined
05:49
telex joined
05:51
thou joined
06:01
hash_table left
06:06
alec left,
alec joined
06:14
FROGGS_ left
06:16
wtw left
06:19
FROGGS_ joined
06:29
wtw joined
06:32
LoRe left,
LoRe joined
06:36
SamuraiJack joined
06:39
ismail joined
06:41
Pleiades` left
06:46
Pleiades` joined
07:08
ismail left
07:11
kaleem joined
07:16
Chillance left,
Chillance joined
07:35
hypolin left,
jaldhar_ left
07:48
FROGGS_ is now known as FROGGS
07:54
MayDaniel joined
|
|||
felher | Good morning, #perl6 :) | 07:54 | |
masak: I took a look at your solution. Very nice :) | |||
08:07
xenoterracide left
|
|||
moritz | \o | 08:07 | |
08:07
kurahaupo left
|
|||
felher | o/ | 08:08 | |
08:12
xilo_ left,
xenoterracide joined
|
|||
FROGGS | morning | 08:14 | |
08:15
am0c left
|
|||
moritz | rakudo: say :10(':16<bad.decaf>') | 08:15 | |
p6eval | rakudo cdb0fa: OUTPUT«Type check failed for return value; expected 'Numeric' but got 'Failure' in sub unbase at src/gen/CORE.setting:4850 in block at /tmp/GgNNi1iR0o:1» | ||
moritz | rakudo: say ( { 1 + 1 }, { 2 + 2 } )>>() | 08:16 | |
p6eval | rakudo cdb0fa: OUTPUT«===SORRY!===Error while compiling block : Error while compiling op call: Error while compiling block : Error while compiling op call: Error while compiling op call: Unknown QAST node type NQPMu» | ||
dalek | kudo/froggs_mergemulti: 758537f | (Tobias Leich)++ | t/spectest.data: added test file import-multi.t These tests cover the import and merging of multi subs and traits. |
08:17 | |
08:18
JJ_Brain joined
|
|||
moritz | std: my @a = 1, 2; say $a[0] | 08:20 | |
p6eval | std a8bc48f: OUTPUT«===SORRY!===Variable $a is not predeclared (did you mean @a?) at /tmp/c_jGu1H0In line 1:------> my @a = 1, 2; say ⏏$a[0]Check failedFAILED 00:00 45m» | ||
08:20
JJ_Brain left
|
|||
moritz | r: my $j='A'|'B'; my $pair = $j=>'k'; $pair.kv.say | 08:21 | |
p6eval | rakudo cdb0fa: OUTPUT«any(A, k, B, k)» | ||
moritz | r: my $j='A'|'B'; my $pair = $j=>'k'; $pair.perl | ||
p6eval | rakudo cdb0fa: ( no output ) | ||
moritz | r: my $j='A'|'B'; my $pair = $j=>'k'; say $pair.perl | ||
p6eval | rakudo cdb0fa: OUTPUT«any("A" => "k", "B" => "k")» | ||
moritz | r: my $junc = 'A' | 'B' | 'C'; my %foo = $junc => 'a value'; say %foo.perl | 08:22 | |
p6eval | rakudo cdb0fa: OUTPUT«("C" => "a value").hash» | ||
FROGGS | moritz: you're checking RT tickets? | ||
moritz | FROGGS: yes | ||
dalek | ast: 06074b4 | moritz++ | S04-statements/for.t: RT #78406, block parameter ro/rw issues |
08:27 | |
08:36
dbr joined
08:39
brrt joined
|
|||
Woodi | morning # :) | 08:48 | |
is there in Perl6 something like Delphi 'with' ? eg.: with: is native( 'libfoo' ) is export { sub foo1(); sub foo2() } | 08:50 | ||
08:51
Grrrr joined
|
|||
sorear | Woodi: use sub 'options' is specced to behave in that sort of way, but it's very slushy | 08:52 | |
Woodi | checking... | 08:53 | |
cannot find anything in C tags... this feature adds something to block ({}) which should be textually applied to things inside. in Delphi it worked for objects, something like { .foo } or { foo } work on $_. | 09:00 | ||
something like: ax + bx == x(a+b) but for blocks :) | 09:01 | ||
09:01
FROGGS left
|
|||
Woodi | hmm, macro ? | 09:03 | |
09:04
bapa joined
09:05
robins joined
09:06
shachaf joined,
perigrin joined,
BooK joined,
robins is now known as robinsmidsrod,
steven_ joined,
moritz joined,
doy joined,
quietfanatic joined,
Maddingue joined
09:17
JJ_Brain joined
09:24
JJ_Brain left,
thou left
09:25
rindolf joined
09:27
FROGGS joined
09:30
wk joined,
wk is now known as Guest81259
09:42
Psyche^ joined
09:45
Patterner left,
Psyche^ is now known as Patterner
09:46
Pleiades` left
|
|||
dalek | ast: 6d4ae89 | moritz++ | S32-exceptions/misc.t: RT #79162: two terms in a row error message |
09:49 | |
09:51
Pleiades` joined
09:57
bitonic joined
10:01
SmokeMachine joined
10:05
fgomez left
|
|||
moritz | std: say "Hello"\#`[Fnord],"World!" | 10:13 | |
p6eval | std a8bc48f: OUTPUT«ok 00:00 43m» | ||
moritz | r: / a :: b / | 10:14 | |
p6eval | rakudo cdb0fa: OUTPUT«===SORRY!===:: not yet implementedat /tmp/mkn8z2MUXF:1------> / a ::⏏ b /» | ||
10:14
dayangkun left
10:21
anuby left
10:32
Pleiades` left
10:37
Pleiades` joined
11:13
Guest81259 left
11:15
JJ_Brain joined
11:17
SmokeMac_ joined
11:20
SmokeMachine left
11:21
JJ_Brain left
11:24
dayangkun joined
|
|||
moritz | rakudo: my $a = 42; say "$a [<file>]" | 11:25 | |
p6eval | rakudo cdb0fa: OUTPUT«42 [<file>]» | ||
11:27
SmokeMachine joined
11:28
Chillance left
|
|||
dalek | ast: b741f8d | moritz++ | S02-literals/quoting.t: RT #85506, interpolation followed by whispace and brackets |
11:28 | |
11:30
SmokeMac_ left
11:31
kresike joined
|
|||
kresike | hello all you happy perl6 people | 11:32 | |
moritz | \o kresike | ||
r: say "OH HAI @a<" | |||
p6eval | rakudo cdb0fa: OUTPUT«===SORRY!===Unable to parse quote-words subscript; couldn't find right angle quoteat /tmp/DYuG2g5j2V:1------> say "OH HAI @a<"⏏<EOL> expecting any of: postfix» | ||
kresike | moritz, o/ | ||
moritz | std: say "OH HAI @a<" | ||
p6eval | std a8bc48f: OUTPUT«===SORRY!===Unable to parse quote-words subscript; couldn't find right angle quote at /tmp/w2LM11xhlt line 1:------> say "OH HAI @a<⏏" expecting escapeParse failedFAILED 00:00 42m» | ||
11:35
spider-mario joined
|
|||
dalek | ast: 472b0b8 | moritz++ | S02-literals/quoting.t: RT #90124, unclosed quote after array variable is an error |
11:35 | |
moritz | rakudo: my $i; sub foo { say $i if ++$i %% 50; eval "foo" }; foo | 11:36 | |
p6eval | rakudo cdb0fa: OUTPUT«(timeout)50100150200250300» | ||
11:36
brrt left
|
|||
dalek | ast: 7d22621 | moritz++ | integration/weird-errors.t: RT #90522: recurse into eval |
11:39 | |
kudo/nom: 70262f8 | moritz++ | src/utils/perl6doc (3 files): delete old perl6doc files |
11:45 | ||
moritz | r: my $x; sub foo () { $x }; foo = 5 | 11:46 | |
p6eval | rakudo cdb0fa: OUTPUT«===SORRY!===Preceding context expects a term, but found infix = insteadat /tmp/GhK2ZJJVmA:1------> my $x; sub foo () { $x }; foo =⏏ 5» | ||
11:46
GlitchMr joined
|
|||
masak | good time unit, #perl5 | 11:49 | |
er, #perl6 :) | 11:50 | ||
masak .oO( the keys are, like, right next to each other ) | |||
colomon | o\ | ||
masak | moritz: I never did ask you how you derived that analytical formula yesterday. how did you do it? :) | ||
moritz | masak: let P(x) be the probability that the loop length is x | 11:51 | |
masak | ah, I thought so :) | ||
moritz | then the expectation value is sum x * P(x) | ||
masak | yes, I was doing some errands today and thinking about it. | ||
moritz | so, P(1) = 1 / N | ||
masak | aye. | ||
moritz | P(2) = (N - 1) / N * 1 / N | 11:52 | |
masak | moritz++ | ||
moritz | and so on | ||
11:52
SmokeMachine left
|
|||
masak | et cetera ad -Ofunum. | 11:52 | |
moritz | the generalization is P(x) = N! / (N - x)! * x/N^x # plus or minus a factor N | ||
masak | now all that remains is finding a closed form :) | 11:53 | |
masak wishes he were better at generatingfunctionology | |||
11:53
SmokeMachine joined
|
|||
moritz | fwiw, wolframalpha didn't find a closed form | 11:54 | |
masak | Knuth essentially says there is one. (but I think he remembers it wrong) | 11:55 | |
moritz | he could very well be right | ||
it totally smells like it could have one | |||
masak | aye. | ||
moritz | though my statistical physics knowledge isn't of much help here | 11:56 | |
because I can't just substitute the sum by an integral :-) | |||
masak | :) | 11:57 | |
moritz | off topic remark: statistical physics is a rather beautiful field, in a sense of theoretical purity, because you need only one assumption for the whole field, and that's a very sensible one | 11:59 | |
11:59
cognominal joined
|
|||
moritz | the math is a bit ugly, occasionally, but that's OK :-) | 11:59 | |
masak | what's the assumption? | 12:01 | |
moritz | en.wikipedia.org/wiki/Ergodic_hypothesis # this one | ||
masak | the most beautiful math I've studied, by far, is complex analysis. | ||
moritz | simplified a bit, it means that non-degenerate states of the same energy mean same propability of finding a particle/system there | 12:02 | |
dalek | ast: 0d9fc5d | moritz++ | S32-exceptions/misc.t: RT #92408: detect obsolete use of . as concatenation operator |
||
moritz | masak: you should have received a few emails from RT :-) | 12:03 | |
masak | I did. each one is like a new flavor of happy. :> | 12:04 | |
moritz | :-) | ||
masak | (the #perl6 community is like a big multi-national machine geared towards one thing: fixing my bug reports) :P | 12:05 | |
moritz | we even do analytical calculations to solve your mini-challenges :-) | 12:06 | |
masak | :D | ||
moritz | r: enum A <b c d>; say b.succ.WHAT | 12:07 | |
p6eval | rakudo cdb0fa: OUTPUT«Int()» | ||
masak | one more observation on chromatic/reddit from the last few days: it seems to me that there should be a name for the bias that happens when someone looks at a project, thinking "how hard could it be?" | ||
moritz | overconfidence | 12:08 | |
no, that's not quite it | |||
masak | if there's one thing that my ~1440 bug report have taught me, it's that implementing anything of this size is *hard*. | ||
like really, really, hard. | |||
it's not that the Rakudo core developers are incompetent. in fact, they some of the best developers I know. | 12:09 | ||
they're | |||
* | |||
and Niecza and Pugs exhibit bugs too. | |||
moritz | there are two types of projects: those with lots of (discovered) bugs, and those that nobody uses | ||
masak | something like that :) | 12:10 | |
errand, bbl & | |||
moritz | r: class A { has $!b = 10; method foo() { say self!b }; }; my $b = A.new; $b.foo | 12:11 | |
p6eval | rakudo 70262f: OUTPUT«No such private method '!b' for invocant of type 'A' in method foo at /tmp/Rhhnue_16p:1 in block at /tmp/Rhhnue_16p:1» | ||
moritz | rakudo: class A { multi trait_mod:<is>( $r, :$rwr!) { $r.set_rw(); }; sub b is rwr { }; }; | 12:13 | |
p6eval | rakudo 70262f: ( no output ) | ||
12:17
cognominal left
|
|||
moritz | I've been pondering (and partially practising) this for a while now, but I'd also like to talk about it now: include a bit of background information in error messages | 12:17 | |
for example, don't just write "cannot open file $filename for writing: $!" | 12:18 | ||
but give some hint *why* you are trying to write to $filename in the first place | |||
is it some state file? lock file? saved history? internal database? | 12:19 | ||
12:19
cognominal joined
|
|||
moritz | often that can make it much easier for the user to find out what's going on | 12:19 | |
</pondering> | 12:20 | ||
12:20
SmokeMachine left
12:24
JJ_Brain joined
|
|||
arnsholt | Speaking of chromatic's latest, I'm not sure what he means with "impedance mismatch of an alien memory model". Anyone know what he's referring to? | 12:25 | |
moritz shakes his head | 12:27 | ||
12:27
cognominal_ joined
12:29
cognominal left,
JJ_Brain left
12:31
jaldhar_ joined
|
|||
cognominal_ | Adding a rule to the Perl 6 grammar to detect bad decimal number gets the setting parsing to fail : gist.github.com/4452294 | 12:33 | |
12:33
SmokeMachine joined
|
|||
cognominal_ | can someone shed light on that? | 12:33 | |
someone already spammed my gist. :( Deleted the spam. | 12:34 | ||
FROGGS | cognominal_: is there a method .malformed in nqp? | 12:40 | |
cognominal_ | FROGGS: src/Perl6/Grammar.pm:232: method malformed($what) { | 12:41 | |
but the problem is not calling malformed. It is that the modified dec_number rule is incapable to parse the line : nqp::sleep(1e16) while True; | 12:42 | ||
FROGGS | ahh, sorry, thought you are talking about nqp | ||
maybe the precedence of | and || ? | 12:43 | ||
cognominal_ | I think I tried that to. | ||
12:44
jaldhar_ left
12:45
SmokeMac_ joined
|
|||
cognominal_ | …meaning using | instead of || | 12:45 | |
FROGGS | I would try adding [ ] around the first three parts | 12:46 | |
12:47
jaldhar_ joined
12:48
SmokeMachine left
|
|||
FROGGS | hmmm, no | 12:48 | |
12:55
cognominal_ left,
cognominal_ joined
|
|||
cognominal_ | adding the [] makes it to fail to recognized a range. It fails in the setting at range => (0..0) | 12:56 | |
12:56
felipe joined
|
|||
cognominal_ | that proves that my approach is naive anyway. | 12:58 | |
timotimo | a | 12:59 | |
(er, why are backspace and return so close to each other?) | |||
my gut feeling tells me "you need to match a white space there, too", but that may be wrong, too. | 13:00 | ||
13:02
cognominal__ joined
|
|||
cognominal__ | My approach breaks the LTM philosophy. I would like to be able to say : "if the parse fails later, that was because of a wrong decimal number:. | 13:03 | |
13:03
cognominal_ left
13:04
pmurias joined
13:05
SmokeMachine joined
|
|||
dalek | kudo-js: e213611 | (Paweł Murias)++ | run_tests: [nqp] add passing test 59 to run_tests |
13:05 | |
kudo-js: ff593aa | (Paweł Murias)++ | run (2 files): [nqp] support :p in NQPCursor.parse, <alpha> (not yet for unicode), pass test 50 |
|||
kudo-js: a033d1b | (Paweł Murias)++ | t/99-test-basic.t: remove leftover |
|||
kudo-js: 0ee5667 | (Paweł Murias)++ | / (4 files): start of switching to using 6model serialization, nqp::say("Hello World") works |
|||
kudo-js: 6b668cd | (Paweł Murias)++ | / (4 files): [nqp] parse parts the serialized objects format, emit code to load the setting |
|||
kudo-js: 4067912 | (Paweł Murias)++ | / (7 files): Loading of a minimial nqp setting works. We pass 2 tests. |
|||
masak | moritz: I've seen the tip "give a hint of why" before. I believe it's a sound one. I try to aim for "wanted to do <task X> but <error condition Y>" in most of my error messages. | 13:06 | |
13:08
SmokeMac_ left,
jaldhar_ left
13:13
SmokeMac_ joined
13:15
stevan_ left
13:16
SmokeMachine left
13:17
stevan_ joined
13:30
bitonic left
13:36
SmokeMachine joined
13:39
SmokeMac_ left,
wk joined
13:40
wk is now known as Guest93463
|
|||
cognominal__ | what I need is some kind of "forward backtracking" so that when the parser backtrack into dec_number it matches <decint> '.' <.malformed: 'decimal number'> | 13:40 | |
so that 1..2 will succeed and 1. + 2 fails | 13:41 | ||
timotimo | have you tried if matching a whitespace or some kind of terminator or negative lookahead would help? | 13:42 | |
also, are you making sure to check that there's no postfix:<.> operator? | |||
13:43
SmokeMac_ joined
|
|||
cognominal__ | I say forward backtracking because for "1. + 2", dec_number first succeeds but the calling rule fails so "1." is matched next and fail because of the .malformed | 13:43 | |
timotimo: I am not sure to understand what you propose | |||
timotimo | i'm not sure if i understand what i propose, either :| | 13:44 | |
cognominal__ | :) | ||
13:45
SmokeMa__ joined,
SmokeMachine left
|
|||
kresike | timotimo++ #trying ☺ | 13:45 | |
cognominal__ | timotimo: I need a scheme so that 1..2 will succeed and 1. + 2 fails and I want the fail to happen in the rule dec_number | 13:46 | |
timotimo | kresike: do or do not, there is no try :P | ||
13:46
pmurias left
|
|||
cognominal__ | I learn a lot by analysing my repeated fails. I wish I could be right the first time. | 13:47 | |
kresike | yes, Master ☺ | ||
13:48
SmokeMachine joined
13:49
SmokeMac_ left
13:50
SmokeMa__ left
13:53
SmokeMac_ joined
13:56
SmokeMachine left
|
|||
masak | I would be content with learning after the first failure ;) | 13:57 | |
cognominal__ | so would I | 13:58 | |
masak | moritz: hakank did a curve fitting of the sum, and got -0.236701 + 1.22197 n^0.504039 | 14:06 | |
14:06
SmokeMachine joined
14:08
PacoAir joined
|
|||
moritz | r: say exp(0.504039) | 14:08 | |
p6eval | rakudo 70262f: OUTPUT«1.65539392226111» | ||
moritz | r: say exp(0.504039) * 2 | ||
p6eval | rakudo 70262f: OUTPUT«3.31078784452222» | ||
14:09
SmokeMac_ left
14:12
cognominal__ left
14:13
SamuraiJack left
|
|||
moritz | r: say 9 % -9 | 14:17 | |
p6eval | rakudo 70262f: OUTPUT«0» | ||
moritz | r: say 9 % (-9) | ||
p6eval | rakudo 70262f: OUTPUT«0» | ||
14:18
cognominal__ joined
|
|||
masak | moritz: I think we can safely assume that the exponent is actually 0.5 | 14:18 | |
I attacked the 1.22197 factor, but with no luck. | 14:19 | ||
[Coke] fails to install Curses.pm in a perlbrew on feather. hurm. | |||
moritz | libncurses5-dev is installed | ||
masak | if Knuth's formula were correct, then the 1.22197 factor should actually be 0.8862269 | 14:20 | |
r: say sqrt(pi)/2 | |||
p6eval | rakudo 70262f: OUTPUT«0.886226925452758» | ||
[Coke] | moritz: thank you for reminding me that sysperl might actually do what I want! ;) | 14:22 | |
dalek | ast: 288969f | moritz++ | S05-capture/named.t: RT #107746, named capture when proceeded by a quantified capture |
14:24 | |
moritz | it's amazing how many of the open bugs are about error message not being (quite) right | 14:27 | |
14:27
Bucciarati joined
14:28
JJ_Brain joined
|
|||
JJ_Brain | Hi. I have reworked my proof of P=NP mathbin.net/136918 | 14:32 | |
masak | JJ_Brain: please stop bothering us with this. | ||
14:33
ChanServ sets mode: +o moritz,
moritz sets mode: +b *!*quassel@112.198.77.*,
JJ_Brain was kicked by moritz (JJ_Brain)),
moritz sets mode: -o moritz
|
|||
masak | moritz++ # I was going to give him one more chance, but I doubt it'd've helped | 14:34 | |
cognominal__ | some get it wrong and don't learn from it | 14:36 | |
masak | well, this is a kind of double error, too. (a) submitting a word-salad P=NP proof for people's perusal, and (b) doing it here. | 14:39 | |
PerlJam starts composing his proof that proofs that contain the phrase "most likely" aren't real proofs ;) | 14:40 | ||
14:41
kaleem left,
SmokeMachine left
|
|||
[Coke] | seemslegit.com | 14:42 | |
14:42
SmokeMachine joined
|
|||
dalek | ast: 6ec4397 | moritz++ | S12-attributes/instance.t: RT #110096, attributes in a sub in a class |
14:48 | |
href="https://perl6.org:">perl6.org: cac35bf | Carlin++ | source/about/index.html: Update source/about/index.html update my domain theintersect.org will expire soon and could end up pointing anywhere |
|||
moritz | perl6: ?(all() ~~ /^ \d+ $/) | 14:51 | |
p6eval | rakudo 70262f: OUTPUT«This type cannot unbox to a native string in any at src/gen/BOOTSTRAP.pm:99 in any !cursor_init at src/stage2/QRegex.nqp:551 in method ACCEPTS at src/gen/CORE.setting:10579 in block at /tmp/bfq0gGj3k0:1» | ||
..niecza v24-12-g8e50362: ( no output ) | |||
moritz | r: say all().perl | ||
p6eval | rakudo 70262f: OUTPUT«all()» | ||
14:52
cognominal joined
14:53
cognominal left,
cognominal joined
14:54
cognominal__ left
|
|||
[Coke] | r: say all(1..*).perl | 14:58 | |
p6eval | rakudo 70262f: OUTPUT«(timeout)» | 14:59 | |
moritz | r: say (<[ ]> xx 10).pick(*).join | ||
p6eval | rakudo 70262f: OUTPUT«[][][][][][][][][][]» | ||
moritz | r: say (<[ ]> xx 10).flat.pick(*).join | ||
p6eval | rakudo 70262f: OUTPUT«[[]][][[]]]][][][][[» | ||
timotimo | r: say (<[ ]> xx 4).perl | 15:00 | |
p6eval | rakudo 70262f: OUTPUT«(("[", "]"), ("[", "]"), ("[", "]"), ("[", "]")).list» | ||
moritz | .pick should flatten, but doesn't | ||
timotimo | r: say ((1, 2) xx 4).perl | ||
p6eval | rakudo 70262f: OUTPUT«((1, 2), (1, 2), (1, 2), (1, 2)).list» | ||
timotimo | didn't know it did that. good to know | 15:01 | |
[Coke] | is there a good read on lists, flattening, eager, etc? | 15:03 | |
I am continually surprised by rakudo here, so I need to update my brainmodel. | |||
moritz | doc.perl6.org/type/List has a bit | ||
though probably not enough | |||
timotimo | i'd appreciate more text, too | 15:04 | |
15:09
rom1504__ joined
|
|||
[Coke] | so, doc.perl6.org/type/List#Items%2C+Fl...and+Sigils might have answered the for loop question from the other day. | 15:10 | |
timotimo | that anchor doesn't seem to work for me | ||
[Coke] | where $thing<that> had a List in it, but was treated as a single item unless you specifically said ".list" | ||
timotimo: got it from chrome, clicking on similarly named entry in TOC | 15:11 | ||
r: say <a 3 2>flat | |||
p6eval | rakudo 70262f: OUTPUT«===SORRY!===Two terms in a rowat /tmp/ZQK9JrqKYk:1------> say <a 3 2>⏏flat expecting any of: postfix infix or meta-infix infix stopper statement end statement modifier state… | ||
[Coke] | r: say <a 3 2>.flat | ||
p6eval | rakudo 70262f: OUTPUT«a 3 2» | ||
timotimo | id="Items%2C+Flattening+and+Sigils" - is that even correct? | ||
15:11
stopbit joined
|
|||
[Coke] | moritz: that doc is missing .flat | 15:11 | |
15:11
xilo_ joined
|
|||
[Coke] | there is a conflation of + and " " which is not correct in ids (but is in URLS) | 15:12 | |
15:13
MayDaniel left
|
|||
[Coke] | er, not quite a conflation, but when you say "+" in the URL, that isa " ", so some browsers might be looking for an id of "Items, Flattening and Sigils" | 15:14 | |
timotimo | right | ||
15:16
xilo_ left
|
|||
masak | long live IRC -- royal.pingdom.com/2012/04/24/irc-is...-live-irc/ | 15:19 | |
preaching to the choir here, of course :) | |||
arnsholt | Yeah, it was neat to see Freenode consistently growing | 15:25 | |
15:28
kaare_ joined
|
|||
PerlJam | I wonder if they have the data for those graphs from earlier. Say ... 1992 or so (when I first got on IRC :) | 15:29 | |
15:34
SmokeMac_ joined
15:35
am0c joined
15:37
SmokeMachine left
15:38
SmokeMachine joined
15:41
SmokeMa__ joined
|
|||
Woodi | yes, since many years active new ircers recruiting is done only by via software: open source communities and game devs and pro-players :) | 15:42 | |
15:43
SmokeMac_ left
|
|||
Woodi | and some social activist too | 15:43 | |
moritz | so, what would be the correct way to generate the ID? | ||
or the anchor link, for that matter? | |||
15:43
SmokeMachine left
|
|||
timotimo | slugify the text, replace whitespace with _ and remove/describe special characters? | 15:46 | |
[Coke] | irc-- | 15:47 | |
moritz | well, the "describe special characters" is exactly what I'm interested about | ||
[Coke] | timotimo: I would probably do that, aye. make "safe" ids. | ||
moritz | more accurately, s/describe/escape/ | ||
kresike | bye folks | 15:48 | |
15:48
kresike left
|
|||
[Coke] | doesn't have to be escaped, though. you can just tr them all to _ | 15:48 | |
you want to keep unique ids (which this will slightly hurt) and keep them readable in the URL. | |||
we do this for some links we have in house; instead of IDs, they are extra path info, so we have something like /thing/2343/This_is_the_name_of_the__thing__ | 15:50 | ||
just so the user can see where they are going. | |||
(and then we don't care what's after the id anyway) | |||
moritz | [Coke]: well, I want a simple reordering of headings not to lead to different tag locations | 15:52 | |
15:52
SmokeMachine joined
|
|||
moritz | [Coke]: and if I tr them all to _, then infix:<+> and infix:<-> are looking pretty much the same :( | 15:52 | |
15:55
MayDaniel joined,
SmokeMa__ left
|
|||
colomon wonders if sorear is awake... | 15:56 | ||
15:56
not_gerd joined
|
|||
not_gerd | hello, #perl6 | 15:57 | |
moritz | \o not_gerd | ||
not_gerd | moritz: irclog.perlgeek.de/perl6/2012-12-23#i_6271152 | ||
moritz | not_gerd: yes, I've seen that, but it's butt ugly | ||
15:58
SmokeMachine left
|
|||
moritz | is there really no variant of ordinary URL encoding that works reliably for anchors? | 15:58 | |
not_gerd | (original use case was mangling arbitrary unicode names to C identifiers) | 15:59 | |
moritz: there's not a lot of choice in encoding schemes: | 16:00 | ||
ID and NAME tokens must begin with a letter ([A-Za-z]) and may be followed by any number of letters, digits ([0-9]), hyphens ("-"), underscores ("_"), colons (":"), and periods ("."). | |||
so URL encoding is out | 16:01 | ||
moritz | so + and % are disallowed | ||
not_gerd | yes | ||
moritz swears loudly | |||
not_gerd | though browsers might support it anyway) | ||
a more readable alternative would be transliteration with a lookup table, eg + --> op-plus, ++ --> op-plus-plus | 16:04 | ||
dalek | kudo-js: 6288160 | (Paweł Murias)++ | / (4 files): pass more tests |
||
[Coke] | not_gerd: mm, that's probably the best option. | 16:05 | |
moritz considers writing a module for it | 16:07 | ||
16:09
cognominal_ joined
16:10
cognominal left
|
|||
dalek | kudo-js: 63a4e76 | (Paweł Murias)++ | runtime.js: remove js code for runtime subs which are now in the nqp setting |
16:32 | |
16:33
Guest93463 left
16:38
PacoAir left
16:49
cognominal_ left
|
|||
not_gerd commented on chromatic's blog posting: gist.github.com/f8dcceb9bcc7fc1c09c5 | 16:51 | ||
16:52
am0c left
16:53
cognominal_ joined,
am0c joined
17:03
fgomez joined
17:12
SmokeMachine joined
|
|||
moritz | nqp: sub f() { nqp::die("foo"); CATCH { nqp::die("bar" } } | 17:13 | |
p6eval | nqp: OUTPUT«Unable to parse expression in blockoid; couldn't find final '}' at line 2, near "nqp::die(\""current instr.: 'panic' pc 13231 (src/stage2/gen/NQPHLL.pir:4687) (src/stage2/gen/NQPHLL.pm:328)» | ||
moritz | nqp: sub f() { nqp::die("foo"); CATCH { nqp::die("bar") } }; f(); | ||
17:13
SmokeMachine left
|
|||
p6eval | nqp: OUTPUT«(timeout)» | 17:13 | |
17:14
fgomez left,
SmokeMachine joined
17:17
cognominal_ left
|
|||
TimToady reboots... | 17:20 | ||
TimToady checking logs...1% done | 17:25 | ||
moritz | welcome back TimToady | ||
TimToady not back yet, still rebooting... | 17:26 | ||
17:30
raiph joined
|
|||
raiph | (hits F10 to interrupt boot process): TimToady: do you use the irclog summary? | 17:32 | |
17:35
SmokeMac_ joined
17:36
not_gerd left
17:37
telex left
17:38
telex joined,
SmokeMa__ joined
17:39
SmokeMachine left
17:41
SmokeMac_ left
17:44
rindolf left
17:47
wk joined
17:48
wk is now known as Guest97536
17:49
cognominal joined
17:50
SmokeMachine joined
17:53
SmokeMa__ left
17:58
SmokeMachine left
17:59
SmokeMachine joined
|
|||
moritz | jnthn: ping | 18:02 | |
jnthn: I'd like to address the old problem that 'perl6 nosuchfile' produces such a long backtrace, but I don't really know how | 18:03 | ||
18:04
skids_ joined
|
|||
moritz | the old trick (catch the error, rethrow into something that knows how to produce a pretty or no backtrace) doesn't seem to work easily, because a setting is never loaded in that case | 18:04 | |
any ideas? | |||
18:09
grondilu left
18:12
SamuraiJack joined
|
|||
dalek | rl6-roast-data: 0de4f2c | coke++ | / (4 files): today (automated commit) |
18:12 | |
18:13
grondilu joined
|
|||
moritz | r: sub f($x = 1|2|3) { $x }; say f | 18:14 | |
[Coke] asks if anyone has an interest in fudging pugs. | |||
p6eval | rakudo 70262f: OUTPUT«(timeout)» | ||
moritz hasn't | 18:15 | ||
[Coke] | r: @-0 | ||
p6eval | rakudo 70262f: OUTPUT«===SORRY!===Non-declarative sigil is missing its nameat /tmp/52SdGjLS3Y:1------> @⏏-0 expecting any of: statement list prefix or term prefix or meta-prefix» | ||
PerlJam | moritz: maybe we need a die_without_backtrace | ||
moritz | PerlJam: that's easy enough to make on the Perl 6 level | ||
PerlJam: but the code in question is all NQP | 18:16 | ||
PerlJam | nqp::die_without_backtrace :) | ||
moritz | r: class X::AdHoc::WithoutBT is X::AdHoc { method gist { self.message } }; method die-without-clutter($payload) { X::AdHoc::WithoutBT.new(:$payload).throw }; sub foo() { die-without-clutter 'OH HAI' }; foo() | 18:17 | |
p6eval | rakudo 70262f: OUTPUT«Useless declaration of a has-scoped method in mainline===SORRY!===Undeclared routine: die-without-clutter used at line 1» | ||
moritz | r: class X::AdHoc::WithoutBT is X::AdHoc { method gist { self.message } }; sub die-without-clutter($payload) { X::AdHoc::WithoutBT.new(:$payload).throw }; sub foo() { die-without-clutter 'OH HAI' }; foo() | ||
p6eval | rakudo 70262f: OUTPUT«OH HAI» | ||
moritz | no backtrace | 18:18 | |
18:24
SmokeMachine left
|
|||
raiph | [Coke]: Can you help me understand "plan", "spec", etc. in the daily roast stats? | 18:25 | |
(jnthn++ explained them to me a few weeks back but I am still confused.) | 18:26 | ||
Aiui: | |||
"plan" means the sum of explicit plan numbers from tests that were run | 18:27 | ||
18:28
PacoAir joined
|
|||
raiph | "spec" means the total based on a static analysis of the tests | 18:28 | |
18:28
SmokeMachine joined
|
|||
raiph | I'm pretty sure my understanding is wrong... | 18:29 | |
18:29
FROGGS_ joined
|
|||
masak | moritz: you can ping jnthn, but you won't get a pong in three days, methinks. | 18:30 | |
18:31
thou joined
18:43
cognominal left
|
|||
FROGGS_ | moritz: you might ask JJ_Brain for help :p | 18:44 | |
18:46
REPLeffect left,
REPLeffect joined
18:48
cognominal joined
18:51
grondilu left
18:55
fgomez joined
|
|||
moritz | masak: oh well, I guess he'll backlog | 18:56 | |
moritz 's ping has a pretty large TTL | 18:57 | ||
18:57
xinming left
18:58
japhb_ left
18:59
xinming joined
|
|||
sergot | hi o/ ! ! | 19:01 | |
dalek | ast: 1c992e3 | moritz++ | S02-literals/quoting.t: RT #114090, declaration in interpolation |
||
[Coke] | raiph: those come directly from roast's test_summary.pl | 19:07 | |
raiph | [Coke]: oh! i'll go read it. thanks! | 19:08 | |
[Coke] | (good, because I have no idea what the difference between spec & Plan is. :) | 19:09 | |
er, test_summary (no pl) | |||
19:09
kurahaupo joined
19:10
kurahaupo left
|
|||
moritz | r: say (1,2,3).map: { return 1 } | 19:12 | |
p6eval | rakudo 70262f: OUTPUT«Can not get attribute '$!storage' declared in class 'Parcel' with this object in method reify at src/gen/CORE.setting:5410 in method reify at src/gen/CORE.setting:5408 in method gimme at src/gen/CORE.setting:5798 in method eager at src/gen/CORE.setting:5777… | ||
dalek | ast: 096b88b | moritz++ | S03-operators/repeat.t: RT #114670, "str" x Int |
19:16 | |
19:22
cognominal left
|
|||
masak | r: FIRST say "OH HAI" | 19:23 | |
p6eval | rakudo 70262f: ( no output ) | ||
masak | r: LAST say "OH HAI" | 19:24 | |
p6eval | rakudo 70262f: ( no output ) | ||
diakopter | r: LEAVE say "OH HAI" | ||
p6eval | rakudo 70262f: OUTPUT«OH HAI» | ||
masak | r: KEEP say "OH HAI" | 19:26 | |
p6eval | rakudo 70262f: ( no output ) | ||
masak | aww :/ | ||
[Coke] | FIRST LAST LEAVE KEEP say "eek!"; | ||
r: FIRST LAST LEAVE KEEP say "eek!"; | 19:27 | ||
p6eval | rakudo 70262f: OUTPUT«eek!» | ||
diakopter | r: CATCH { say "OH HAI" } | ||
p6eval | rakudo 70262f: ( no output ) | ||
19:28
REPLeffect left,
cognominal joined
19:37
bbkr left
19:40
Pleiades` left
19:46
SamuraiJack left
19:47
Pleiades` joined,
Vlavv_ joined
20:00
bluescreen10 joined
20:08
FROGGS_ left,
SmokeMachine left,
FROGGS_ joined
20:33
FROGGS_ left,
FROGGS_ joined
20:42
cognominal left
20:49
cognominal joined
|
|||
dalek | kudo/nom: 6d4b902 | moritz++ | src/core/Temporal.pm: fix DateTime.Date (RT #114758)' |
20:55 | |
ast: d0102a3 | moritz++ | S32-temporal/DateTime.t: test DateTime.Date conversion |
20:56 | ||
20:57
AndChat|356841 joined
|
|||
moritz | r: say {%*ENV}.WHAT | 20:58 | |
p6eval | rakudo 70262f: OUTPUT«Block()» | ||
21:00
FROGGS_ left
|
|||
sorear | colomon: hi | 21:01 | |
colomon | o/ | ||
[Coke] | colomon: HIO | 21:02 | |
21:02
GlitchMr left
|
|||
colomon | sorear: I think I've figured out that you can get an attribute via o1.GetSlot(o1.mo, "$!val") | 21:02 | |
sorear: but I don't yet have a clue what that actually returns. Well, other than it's not a P6any. | 21:03 | ||
[Coke]: \o | |||
sorear | colomon: got your mail, writing reply | ||
colomon | sorear: danke | 21:04 | |
colomon has new glasses, and is once again amazed at what the world looks like | 21:05 | ||
masak | it is indeed quite amazing. | 21:08 | |
tadzik | bah, I do need a pair too | ||
sorear | colomon: sent | 21:09 | |
colomon | sorear++ # think that's enough for me to get the job done | 21:10 | |
21:13
REPLeffect joined,
PacoAir left,
PacoAir joined
|
|||
colomon | niecza> now - now | 21:13 | |
-0.00014615058898925781 | |||
r: say now - now | |||
p6eval | rakudo 6d4b90: OUTPUT«-0.0202257» | ||
moritz | ++colomon | 21:14 | |
PerlJam | That's way too much latency between ops ;) | ||
tadzik | n: say now - now | 21:16 | |
p6eval | niecza v24-12-g8e50362: OUTPUT«Unhandled exception: Cannot use value like Instant as a number at <unknown> line 0 (ExitRunloop @ 0)  at /home/p6eval/niecza/lib/CORE.setting line 293 (Any.Numeric @ 6)  at <unknown> line 0 (ExitRunloop @ 0)  at /tmp/0OO3kXutF2 line 1 (mainline @ 4… | ||
colomon | moritz: alas, my first version was cheating a bit (wouldn't have worked for classes derived from Instant) and my attempt to do it right is troubled. | ||
21:21
AndChat|356841 left
|
|||
moritz | r: say "@a[]" | 21:31 | |
p6eval | rakudo 6d4b90: OUTPUT«===SORRY!===Variable @a is not declaredat /tmp/YCcw38DoVl:1------> say "@a[]⏏" expecting any of: postfix» | ||
21:34
mtk left
|
|||
dalek | ast: 8b533dd | moritz++ | S32-exceptions/misc.t: RT #115396, undeclared variables in interpolating strings |
21:36 | |
21:37
bruges left
21:39
bruges joined
21:40
mtk joined
21:44
Chillance joined
|
|||
alec | is there a way to get the perl6 ebook in plaintext? | 21:46 | |
there are too many ligatures in it, imo | |||
pdftotext doesn't even recognize some of them | |||
so now i have a textfile full of words like 'speci cation' | 21:47 | ||
Ayiko | github.com/perl6/book/ ? | 21:49 | |
flussence | You can run "make html" in the source tree | ||
alec | ok | 21:50 | |
21:50
am0c left
|
|||
alec | compilation failed at bin/book-to-html line 3 | 21:52 | |
can't locate Pod/PseudoPod/HTML.pm | 21:53 | ||
is there an easy way to install that? | 21:54 | ||
sorear | colomon: reply | ||
cpanm -S Pod::PseudoPod::HTML ? | |||
alec | ok | 21:55 | |
yes | 21:58 | ||
colomon | sorear++ # trying... | ||
alec | it works; html2text didn't have any trouble making plaintext | ||
sorear++ | 21:59 | ||
flussence++ | |||
Ayiko++ | |||
22:04
fgomez left
|
|||
dalek | osystem: d495511 | (Timothy Totten)++ | META.list: Added WWW::App::Ballet, yet another Dancer-like web framework. |
22:05 | |
masak | supernovus++ | 22:14 | |
22:23
kaare_ left
|
|||
masak | 'night, #perl6 | 22:26 | |
22:28
FROGGS_ joined
22:33
quester joined
22:51
bitonic joined
|
|||
sorear | colomon: reply | 22:51 | |
colomon | sorear++ # that seems to have done it! | 22:56 | |
spectesting | 22:59 | ||
23:05
am0c joined
23:09
MayDaniel left
|
|||
timotimo | panda isn't very happy when it's run with perl6-debug :| | 23:25 | |
23:26
bbkr joined
|
|||
bbkr | If a Str is binary what is the fastest way to covert it into ascii or utf8? Str.encode.decode ? | 23:27 | |
latest parrot socket changes caused also get to return binary strings (spec does not say if they should be binary or not) | 23:28 | ||
doy | Str is unicode codepoints, Buf is bytes | 23:29 | |
bbkr | that means we have rakudobug | 23:30 | |
23:31
stopbit left
|
|||
bbkr | IO::Socket.get in 2012.11 was returning unicode strings, in 2012.12 it is returning binary string | 23:31 | |
23:32
bluescreen10 left
|
|||
timotimo | tadzik: if you have the time, the link to "masak's Pls" is dead by now and i'm not sure where it's meant to lead. | 23:35 | |
23:42
supernovus joined
|
|||
supernovus | hmm, apparently read() and get() aren't the only broken methods since the IO refactor. SCGI is using recv() and it's not working either. | 23:45 | |
bbkr | i cannot find recv in S32 | 23:48 | |
supernovus | Hmm, it must be a passthrough method to the underlying system. I'm refactoring SCGI to use read() in a Berekely style loop and will see what happens. | 23:50 | |
23:51
fgomez joined
|
|||
bbkr | supernovus++ | 23:52 |