|
»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend! Set by moritz on 22 December 2015. |
|||
|
00:00
Actualeyes joined
|
|||
| timotimo | but it's quite clear that you rproblem isn't that one, it's the core setting build | 00:01 | |
| or perhasp install-core-distributions or what it's called | |||
| but less likely to be a problem | |||
|
00:04
cpage left
00:05
ugjka left
|
|||
| ajr_ | Timotimo - any suggestions for the next step in debugging? | 00:05 | |
| timotimo | if you had "stage parse" close to before the crash, it's pretty much 99% sure you're running out of memory | 00:07 | |
| ajr_ | Agreed. | ||
|
00:13
ugjka joined
00:16
abruanese joined
|
|||
| dalek | c: d1fe150 | gfldex++ | doc/Type/IO.pod6: tell the trap that is Cool.IO. We need that because searching for |
00:16 | |
| synopsebot6 | Link: doc.perl6.org/type/IO | ||
|
00:16
pierre_ joined
00:18
imcsk8 joined
00:23
huf left,
ajr_ left
00:24
huf joined
|
|||
| samcv | hmm anybody know a way to get this working? | 00:33 | |
| m: my $a = ' '; 'a b c' ~~ s:sigspace/<$a>/space/ | |||
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5=== Error while compiling /home/camelia/EVAL_0Null regex not allowedat /home/camelia/EVAL_0:1------> 3anon regex { 7⏏5}» | ||
|
00:34
skids joined
|
|||
| samcv | or a suggestion on what i need to read into to be able to do regex with variable interpolation that lets me use spaces in the variable | 00:34 | |
| gfldex | m: my $a = 'a'; my $b = 'a b c'; $b ~~ s:sigspace/<$a>/space/ | 00:35 | |
| camelia | ( no output ) | ||
| AlexDaniel | m: my $a = ' '; say 'a b c' ~~ s/<{$a}>/space/ | ||
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5=== Error while compiling /home/camelia/EVAL_0Null regex not allowedat /home/camelia/EVAL_0:1------> 3anon regex { 7⏏5}» | ||
| gfldex | samcv: you may have found a bug | ||
| samcv | i was reading the design docs, but didn't see anything about this not being allowed | ||
| AlexDaniel | m: my $a = ‘b’; my $b = ‘a b c’; $b ~~ s/<{$a}>/space/; say $b | 00:36 | |
| camelia | rakudo-moar c00061: OUTPUT«a space c» | ||
| AlexDaniel | m: my $a = ‘ ’; my $b = ‘a b c’; $b ~~ s/<{$a}>/space/; say $b | 00:37 | |
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5=== Error while compiling /home/camelia/EVAL_0Null regex not allowedat /home/camelia/EVAL_0:1------> 3anon regex { 7⏏5}» | ||
| AlexDaniel | pffffffft | ||
| committable6: 6c my $a = ‘ ’; my $b = ‘a b c’; $b ~~ s/<{$a}>/space/; say $b | |||
| committable6 | AlexDaniel, gist.github.com/c951b19cef1635b35a...a8453fae36 | ||
| samcv | m: my $a = 'a '; 'a b c' ~~ s:sigspace/<$a>/space/ | ||
| camelia | rakudo-moar c00061: OUTPUT«Cannot modify an immutable Str in block <unit> at <tmp> line 1» | ||
| AlexDaniel | committable6: all my $a = ‘ ’; my $b = ‘a b c’; $b ~~ s/<{$a}>/space/; say $b | ||
| samcv | oops | ||
| m: my $a = 'a '; my $b = 'a b c'; $b ~~ s:sigspace/<$a>/space/; say $b | |||
| camelia | rakudo-moar c00061: OUTPUT«space b c» | ||
| committable6 | AlexDaniel, gist.github.com/283790325417cb4e76...54d298c3f8 | ||
| AlexDaniel | wtf is EVAL_0 ??? | 00:38 | |
| gfldex | m: my $a = ' '; my $b = 'a b c'; my regex R { <$a> }; say $b ~~ &R | ||
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5=== Error while compiling /home/camelia/EVAL_0Null regex not allowedat /home/camelia/EVAL_0:1------> 3anon regex { 7⏏5}» | ||
| samcv | but yeah if you try substituting ' a', it only substitutes the 'a' part. and ignores the space | ||
| so ignores spaces for that too | 00:39 | ||
| gfldex | m: my $a = ' '; my $b = 'a b c'; my token R { <$a> }; say $b ~~ &R | ||
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5=== Error while compiling /home/camelia/EVAL_0Null regex not allowedat /home/camelia/EVAL_0:1------> 3anon regex { 7⏏5}» | ||
| AlexDaniel | samcv: please rakudobug | ||
| samcv | ok :) thanks | ||
| gfldex | wait | ||
| m: my $a = ' '; my $b = 'a b c'; my token R { '<$a>' }; say $b ~~ &R | |||
| camelia | rakudo-moar c00061: OUTPUT«Nil» | ||
| gfldex | m: my $a = ' '; my $b = 'a b c'; my Regex R { '<$a>' }; say $b ~~ &R | 00:40 | |
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Malformed myat <tmp>:1------> 3my $a = ' '; my $b = 'a b c'; my Regex7⏏5 R { '<$a>' }; say $b ~~ &R» | ||
| gfldex | m: my $a = ' '; my $b = 'a b c'; my regex R { '<$a>' }; say $b ~~ &R | ||
| camelia | rakudo-moar c00061: OUTPUT«Nil» | ||
| gfldex | well, rakudobug away but please note the lack of documentation | ||
| AlexDaniel | m: my $a = ‘‘ ’’; my $b = ‘a b c’; $b ~~ s/<{$a}>/space/; say $b | ||
| camelia | rakudo-moar c00061: OUTPUT«aspaceb c» | ||
| AlexDaniel | m: my $a = ‘‘ ’’; my $b = ‘a b c’; $b ~~ s/<{$a}>/space/g; say $b | ||
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Unsupported use of /g; in Perl 6 please use :gat <tmp>:1------> 3 my $b = ‘a b c’; $b ~~ s/<{$a}>/space/g7⏏5; say $b» | ||
| AlexDaniel | m: my $a = ‘‘ ’’; my $b = ‘a b c’; $b ~~ s:g/<{$a}>/space/; say $b | 00:41 | |
| camelia | rakudo-moar c00061: OUTPUT«aspacebspacec» | ||
| gfldex | samcv: do you understand the difference? | ||
| AlexDaniel | m: my $a = ‘‘a’ ~ ‘ ’’; my $b = ‘a b c’; $b ~~ s:g/<{$a}>/space/; say $b | ||
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5===Unrecognized regex metacharacter ~ (must be quoted to match literally)at /home/camelia/EVAL_0:1------> 3anon regex { ‘a’ ~ ‘ ’7⏏5}Malformed regexat /home/camelia/EVAL_0:1------> 3anon regex { ‘a’ ~ ‘…» | ||
| samcv | what AlexDaniel is evaluating right now? | 00:42 | |
| gfldex | yes | ||
| samcv | <AlexDaniel> m: my $a = ‘‘ ’’; my $b = ‘a b c’; $b ~~ s/<{$a}>/space/; say $b | ||
| AlexDaniel | m: my $a = ‘{‘a’ ~ ‘ ’}’; my $b = ‘a b c’; $b ~~ s:g/<{$a}>/space/; say $b | ||
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5=== Error while compiling /home/camelia/EVAL_0Prohibited regex interpolation (use the MONKEY-SEE-NO-EVAL pragma to override this error,but only if you're VERY sure your data contains no injection attacks)at /home/camelia/EVAL_0:1…» | ||
| samcv | yeah | ||
| i get the {} you are using | |||
| the quoting construct no | |||
|
00:43
espadrine left
|
|||
| AlexDaniel | personally I don't get anything | 00:43 | |
| how come it is attempting to EVAL it | |||
| gfldex | still this is a ENODOC | ||
| that's the filename | |||
| AlexDaniel | filename of what? | ||
| gfldex | at /home/camelia/EVAL_0:1 | ||
| AlexDaniel | so why does it use a temp file for that? | ||
| gfldex | line 1 in the file | ||
| AlexDaniel | and why does it EVAL it at all | 00:44 | |
| gfldex | camelia always did it that way | ||
| AlexDaniel | no, camelia does not use EVAL file | ||
| gfldex | it doesn't eval it | ||
| AlexDaniel | it does | ||
|
00:44
huf left
|
|||
| AlexDaniel | that's why I got MONKEY-SEE-NO-EVAL error | 00:44 | |
| samcv | gfldex, i'm not sure why ‘‘ ’’ works but ' ' or ‘ ’ doesn't work. is there a difference between them, or is this a part of the bug | 00:46 | |
|
00:46
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
| AlexDaniel | samcv: "' '" is what works, basically | 00:46 | |
| samcv | ah so "' '" is like ‘‘ ’’ ? | ||
| AlexDaniel | m: say ‘hello ‘world’’ | ||
| camelia | rakudo-moar c00061: OUTPUT«hello ‘world’» | ||
| gfldex | m: say «hello «world»» | 00:48 | |
| camelia | rakudo-moar c00061: OUTPUT«(hello « world »)» | ||
| AlexDaniel | that's not a string though | ||
| gfldex | indeed | ||
|
00:48
edehont joined
|
|||
| AlexDaniel | so let's say I have a string right | 00:50 | |
| and I want it to match it | |||
| what do I do? | |||
| <{}> EVALs the string as a regex | |||
| gfldex | ‘‘ is another ENODOC | ||
| AlexDaniel | m: my $a = ‘.’; say ‘hello world.’ ~~ /<{$a}>/ | 00:51 | |
| camelia | rakudo-moar c00061: OUTPUT«「h」» | ||
| AlexDaniel | no, I want it to match a dot! | ||
|
00:51
edehont left
|
|||
| gfldex | m: my $a = ‘\.’; say ‘hello world.’ ~~ /<$a>/ | 00:51 | |
| camelia | rakudo-moar c00061: OUTPUT«「.」» | ||
| samcv | that won't match a dot though | ||
| gfldex | m: my $a = ‘\.’; say ‘hello world.’ ~~ /<{$a}>/ | 00:52 | |
| camelia | rakudo-moar c00061: OUTPUT«「.」» | ||
| gfldex | m: my $a = ‘\ ’; say ‘hello world.’ ~~ /<{$a}>/ | ||
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5=== Error while compiling /home/camelia/EVAL_0Null regex not allowedat /home/camelia/EVAL_0:1------> 3anon regex { \ 7⏏5}» | ||
| AlexDaniel | well no, I have no idea what's inside $a | ||
| gfldex | m: my $a = ‘\ ’; say ‘hello world.’ ~~ /<$a>/ | ||
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5=== Error while compiling /home/camelia/EVAL_0Null regex not allowedat /home/camelia/EVAL_0:1------> 3anon regex { \ 7⏏5}» | ||
| samcv | m: my $a = "' '"; my $b = ‘a b c’; $b ~~ s/<$a>/space/; say $b #this is slightly different than <{$a}> right | 00:53 | |
| camelia | rakudo-moar c00061: OUTPUT«aspaceb c» | ||
| samcv | as i'm seeing in the design docs | 00:54 | |
|
00:54
cdg left
|
|||
| AlexDaniel | m: use MONKEY-SEE-NO-EVAL; my $a = ‘a }; say 42; my regex foo { ‘b’ }#’; say ‘a b c’ ~~ /<{$a}>/ | 00:58 | |
| camelia | rakudo-moar c00061: OUTPUT«42「b」» | ||
| AlexDaniel | yes, EVAL protection saves it here, but still 🤦 | 00:59 | |
|
01:09
huf joined
|
|||
| AlexDaniel | alright, so to abuse this I have to search for places in Grammar.nqp without <!RESTRICTED> | 01:12 | |
| samcv | what does ‘‘ ’’ do if i may ask? | 01:14 | |
| though that doesn't get around the problem i'm having where the space is in the variable due to user input and not actually written in the file | 01:15 | ||
| AlexDaniel | samcv: if your variable comes from user input, don't do that | ||
| samcv: because it will be EVAL-ed | 01:16 | ||
| samcv: even though there is partial protection, you don't want that | |||
| samcv | yeah | ||
| AlexDaniel | now ‘‘ ’’ is just a string "‘ ’" | 01:17 | |
| just quote, space, unquote | |||
| once it is EVAL-ed, your regex will turn into /‘ ’/ | |||
| samcv | ahhh | ||
| AlexDaniel | and that's what matches the space | ||
| samcv | ok :) | ||
| that makes sense | |||
| AlexDaniel | but… please don't do that :/ | ||
| samcv | so it's not a bug it's just an undocumented thing right. | 01:18 | |
| AlexDaniel | um, well… actually… | ||
| samcv | it ignores any spaces when you use s:ss with <$var> | ||
| even if it's not blank | |||
|
01:19
girafe left
|
|||
| AlexDaniel | well the question here is “how do I match some Str variable from a regex?” | 01:20 | |
| because <{}> is clearly not that | |||
| ah wait, isn't it just $a? | |||
| samcv | well. that makes it literal | 01:21 | |
| so like | |||
| AlexDaniel | m: my $a = ‘ ’; my $b = ‘a b c’; $b ~~ s:g/$a/space/; say $b | ||
| camelia | rakudo-moar c00061: OUTPUT«aspacebspacec» | ||
| AlexDaniel | there we go! Alright… | ||
| AlexDaniel bangs his head against the wall | |||
| samcv | m: my $a = '.'; my $b = 'a b c'; $b ~~ s:ss/$a/space/; | ||
| camelia | ( no output ) | ||
| samcv | m: my $a = '.'; my $b = 'a b c'; $b ~~ s:ss/<$a>/space/; | 01:22 | |
| camelia | ( no output ) | ||
| AlexDaniel | why would you need :ss ? :) | ||
| samcv | m: my $a = '.'; my $b = 'a b c'; $b ~~ s:ss/<$a>/space/; say $b; | ||
| camelia | rakudo-moar c00061: OUTPUT«space b c» | ||
| samcv | m: my $a = '.'; my $b = 'a b c'; $b ~~ s:ss/$a/space/; say $b; | ||
| camelia | rakudo-moar c00061: OUTPUT«a b c» | ||
| samcv | hah AlexDaniel | ||
| AlexDaniel | for some reason I forgot that you can just write $a and was expecting it to be <~{}> or whatever… | 01:23 | |
| dammit | |||
| samcv | but the perl 6 design docs seem to suggest <$a> just does interpolation of the variable | ||
| so a space should work i think... | |||
| AlexDaniel | NO, it EVALs it!! | ||
| samcv | doesn't it eval text you put in there regardless | 01:24 | |
| AlexDaniel | github.com/rakudo/rakudo/blob/91a7...or.pm#L466 | ||
| ↑ here is what happens | |||
| no, just matching a variable is not equal to EVAL-ing the damn thing :) | |||
| samcv | no that's not what i'm saying | 01:25 | |
|
01:25
Actualeyes left
|
|||
| samcv | s/stuff here/thing/ the 'stuff here' is evaled right | 01:25 | |
| you have typed into the file | |||
| AlexDaniel | samcv: what part of the “design docs” are you referring to, by the way? | ||
| samcv | design.perl6.org/S05.html#Variable...erpolation | 01:26 | |
|
01:26
kurahaupo__ joined
|
|||
| AlexDaniel | samcv: well not really, because stuff in / / is just parsed as a regex language | 01:26 | |
| for example | |||
| samcv | ah okay | ||
| i understand. | |||
| AlexDaniel | m: say “hello {“world” ~ “{ 25 + 50}”}” | 01:27 | |
| camelia | rakudo-moar c00061: OUTPUT«hello world75» | ||
| AlexDaniel | nothing is EVAL-ed, that's just the way it parses it | ||
|
01:27
Actualeyes joined
|
|||
| AlexDaniel | “To interpolate a Regex object, use <$var> instead.” | 01:29 | |
| so it does what it says | |||
| samcv | ok so by interpolate it does more than just plop the value in there seems to be what you're saying | 01:30 | |
| making it less safe than if the code were typed into the regex in the program file | |||
| so i guess the interpolation it mentions does more than i thought it? | 01:31 | ||
|
01:31
Actualeyes left
|
|||
| AlexDaniel | gfldex: here ↑, our documentation should clarify all that | 01:32 | |
| dalek | c: 810ec37 | coke++ | doc/Type/IO.pod6: fix spelling |
01:33 | |
| synopsebot6 | Link: doc.perl6.org/type/IO | ||
|
01:36
kurahaupo_ joined
01:40
kurahaupo__ left
|
|||
| samcv | m: my $a = ' '; $a ~~ m:ss/ /; | 01:46 | |
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5===Null regex not allowedat <tmp>:1------> 3my $a = ' '; $a ~~ m:ss/ 7⏏5/;Adverb ss not allowed on mat <tmp>:1------> 3my $a = ' '; $a ~~ m:ss/ /7⏏5;» | ||
| samcv | ss is not allowed on match but the language section of perl 6 docs do not mention that is the case | ||
| AlexDaniel | well, first of all it is just :s | 01:49 | |
| secondly, it is allowed | |||
| m: say ‘a b c’ ~~ m:s/a b/ | |||
| camelia | rakudo-moar c00061: OUTPUT«「a b」» | ||
| samcv | ah ok | 01:50 | |
| AlexDaniel | but / / is still treated as a Null regex, for whatever reason | ||
| so just use quotes | |||
| m: say ‘a b c’ ~~ m/‘ ’/ | |||
| camelia | rakudo-moar c00061: OUTPUT«「 」» | ||
| AlexDaniel | (or whatever other quotes you prefer) | ||
| samcv | ah ok. i was getting same space and sigspace mixed up | ||
| though ss implies s, but thank you | 01:51 | ||
| dalek | c: 19ddd2e | coke++ | util/xt-recent-aspell.p6: provide a much faster spelling test for recent checks |
01:52 | |
|
01:52
Actualeyes joined
|
|||
| samcv | m: my $a = ' a'; say $a ~~ m:s/ a/; | 01:53 | |
| camelia | rakudo-moar c00061: OUTPUT«「a」» | ||
| samcv | m: my $a = ' '; say $a ~~ m:s/ /; | ||
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Null regex not allowedat <tmp>:1------> 3my $a = ' '; say $a ~~ m:s/ 7⏏5/;» | ||
| samcv | yeah it does not like only a space even with sigspace on | ||
| AlexDaniel | maybe it is a bug, I don't know | 01:54 | |
|
01:56
pierre_ left
02:04
pierre_ joined
02:08
aborazmeh left
02:23
tars joined
02:30
tars left
|
|||
| jdv79 | is it right to use ${} to pass a hashref to a I::P5 func? | 02:30 | |
| seems wrong but i forget | 02:31 | ||
|
02:33
BenGoldberg joined
02:37
ocbtec left
02:44
imcsk8 left
02:45
imcsk8 joined
|
|||
| dalek | c: f0364aa | gfldex++ | doc/Language/typesystem.pod6: not all types have a type object (the paragraph is still not good) |
02:49 | |
| synopsebot6 | Link: doc.perl6.org/language/typesystem | ||
| samcv | m: my $a = 'a a'; my $b = 'a a', $b ~~ s:s/<$a>/left/; say $b; | 03:15 | |
| camelia | rakudo-moar c00061: OUTPUT«Potential difficulties: Space is not significant here; please use quotes or :s (:sigspace) modifier (or, to suppress this warning, omit the space, or otherwise change the spacing) at /home/camelia/EVAL_0:1 ------> 3anon regex { a7⏏5 …» | ||
| samcv | interesting... | ||
| gfldex | m: my $a = /' '/; my $b = 'a a', $b ~~ s:s/<$a>/left/; say $b; | ||
| camelia | rakudo-moar c00061: OUTPUT«alefta» | ||
| samcv | yeah quoting works fine but it seems sigspace never applies this way | 03:17 | |
| gfldex | m: my $a = rx:s/ /; my $b = 'a a', $b ~~ s:s/<$a>/left/; say $b; | ||
| camelia | rakudo-moar c00061: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Null regex not allowedat <tmp>:1------> 3my $a = rx:s/ 7⏏5/; my $b = 'a a', $b ~~ s:s/<$a>/left/; » | ||
| gfldex | m: my $a = rx:s/\s/; my $b = 'a a', $b ~~ s:s/<$a>/left/; say $b; | ||
| camelia | rakudo-moar c00061: OUTPUT«alefta» | ||
| samcv | but it's interesting the error message on for one was telling you to 'use the :s modifier to make space significant' so it might be a bug that it's not using sigspace? | 03:18 | |
| gfldex | the problem is the typecast from Str to Regex | ||
| samcv: did you check roast for sigspace? | 03:20 | ||
| samcv | i will do that now | 03:21 | |
|
03:25
mayathecat joined,
john51 left
03:26
john51 joined
03:28
john51 left
03:30
mayathecat left
03:31
john51 joined
|
|||
| samcv | gfldex, it doesn't test for leading/trailing spaces, or just only whitespace | 03:32 | |
|
03:33
john51 left
03:34
ilbot3 left
03:36
john51 joined
03:38
john51 left
|
|||
| samcv | it seems that maybe this is the correct functionality, that it ignores leading and trailing space, making | 03:39 | |
| m: say 'a' ~~ m:s/ a / | |||
| camelia | rakudo-moar c00061: OUTPUT«「a」» | ||
|
03:41
john51 joined
03:42
zacts joined
|
|||
| samcv | so it seems trailing whitespace is allowed, from reading more into the docs | 03:43 | |
| it seems to imply that, but i will try and read more of it | |||
| it seems leading whitespace is ignored, specifically it says that, so i think not matching m:s/ / is not a bug, but not matching m:s/a / may be | 03:44 | ||
|
03:50
noganex_ joined
03:53
noganex left
03:55
cpage_ left
|
|||
| samcv | yes i think it's a bug. the docs say that you can only have whitespace ignored after something. and that m:s/ a b c/ is the same as m/ a <.ws> b <.ws> c / | 03:58 | |
| and none of the examples in S05 ever use an extra space at the end in their examples.. but they show a leading space. so that seems intentional | 03:59 | ||
| m: say 'a ' ~~ m/ a <.ws> / | |||
| camelia | rakudo-moar c00061: OUTPUT«「a 」» | ||
| samcv | Only whitespace sequences immediately following a matching construct (atom, quantified atom, or assertion) are eligible. Hence, initial whitespace is ignored at the front of any regex | 04:03 | |
| ^ what it says | |||
|
04:06
vendethiel left
04:08
Lucas_One joined
|
|||
| samcv | added that info to the rakudo bug with that info | 04:15 | |
|
04:30
cpage_ joined
04:50
labster left
05:00
ifdog joined,
ifdog left
05:01
Rawriful left
05:11
AlexDaniel left
05:12
AlexDaniel joined
05:19
geekosaur left
05:21
geekosaur joined
05:26
skids left
05:28
Cabanossi left,
kurahaupo_ left
05:31
Cabanossi joined
05:34
Actualeyes1 joined,
Actualeyes left,
pierre_ left
05:43
pierre_ joined
05:48
pierre_ left
05:57
wamba joined
06:01
pierre_ joined
06:05
pierre_ left
06:09
MasterDuke left
06:10
pierre_ joined
06:14
pierre_ left
06:15
BenGoldberg left,
bjz joined
06:21
pierre_ joined,
brillenfux joined
06:31
bjz left
06:40
domidumont joined
06:43
domidumont left
06:44
CIAvash joined
06:47
canopus left,
pierre_ left
06:52
RabidGravy joined,
canopus joined
06:53
kaare_ joined
06:55
pierre_ joined,
wamba left
06:59
pierre_ left
07:00
domidumont joined
07:01
mayathecat joined
07:03
bjz joined
07:06
pierre_ joined,
mayathecat left
07:09
pierre_ left,
pierre_ joined
07:14
andrzejk1 left,
andrzejk1 joined,
darutoko joined
07:23
Jonis left
07:26
neuraload joined
07:27
wamba joined
07:29
firstdayonthejob joined
07:31
xtt joined
07:32
xtt left
07:37
Actualeyes1 left,
firstdayonthejob left
07:38
qub left
07:40
Actualeyes joined
07:44
wamba left
07:51
xtt joined
07:52
ufobat joined
08:01
wamba joined
08:10
abraxxa joined
08:13
domidumont left
08:14
domidumont joined
08:15
espadrine joined
08:17
domidumont left
|
|||
| lizmat clickbaits p6weekly.wordpress.com/2016/11/07/...t-a-boost/ | 08:18 | ||
| gfldex | while we are at clickbaits, we need to think about our homepage and the docs again: news.ycombinator.com/item?id=12889082 | 08:19 | |
|
08:21
maybekoo2 joined
|
|||
| CIAvash | lizmat++ | 08:23 | |
|
08:25
bjz left
08:30
pierre_ left
08:32
zakharyas joined
|
|||
| El_Che | thank you, lizmat | 08:34 | |
|
08:37
bjz joined
08:43
zacts left
08:44
pierre_ joined
08:47
wamba left
08:52
wamba joined
08:57
zacts joined
09:00
espadrine left
|
|||
| moritz | lizmat++ | 09:03 | |
|
09:04
skaji joined
09:08
xtt left
09:13
wamba left
09:21
CIAvash left
09:22
rindolf joined
09:24
amalia_ left
09:25
amalia_ joined,
pierre_ left
09:26
brrt joined
09:27
brillenfux_ joined
09:28
brillenfux left,
TEttinger joined,
TEttinger left
09:33
pierre_ joined
09:34
brrt left
09:37
brrt joined,
amalia__ joined
09:38
amalia_ left,
amalia__ is now known as amalia_,
TEttinger joined
09:46
brillenfux__ joined
09:47
domidumont joined
09:49
brillenfux_ left
10:02
wamba joined
10:10
dudz joined,
dudz left,
dudz joined
10:19
sftp left,
sftp joined
10:27
salparadise joined
10:31
g4 joined,
g4 left,
g4 joined,
bjz left
10:32
bjz joined
10:33
brrt left,
Guest22943 joined
10:46
pierre_ left
10:47
domidumont left
10:49
AndyBotwin joined,
AndyBotwin left,
AndyBotwin joined
10:50
brrt joined
11:03
rindolf left
11:08
AlexDaniel left
11:09
rindolf joined,
kurahaupo__ joined
11:14
kurahaupo__ is now known as kurahaupo
11:27
ocbtec joined
11:34
kurahaupo left
11:35
kurahaupo__ joined
11:41
rindolf left
11:46
domidumont joined
11:49
pierre_ joined
11:51
zakharyas left
11:58
itaipu joined
12:02
nadim joined
12:41
seatek left
13:02
MasterDuke_ joined
|
|||
| MasterDuke_ | .tell moritz looks like the bot that logs to irclog.perlgeek.de is down on the various Perl 6 related channels | 13:03 | |
| yoleaux | MasterDuke_: I'll pass your message to moritz. | ||
|
13:05
cpin` joined,
ilbot3 joined
|
|||
| moritz restarts da logga | 13:06 | ||
| yoleaux | 13:03Z <MasterDuke_> moritz: looks like the bot that logs to irclog.perlgeek.de is down on the various Perl 6 related channels | ||
| moritz | MasterDuke_: thanks for letting me know! | ||
| MasterDuke_ | np | ||
| moritz | looks like 10 hours ago, it lost its connection to mysql, retried a few times, and then systemd gave up | 13:07 | |
| MasterDuke_ | all that scintillating conversation lost, like tears in the rain... | 13:09 | |
| moritz adds RestartSec=60 to the ilbot systemd service file | |||
| whta I'd really like to add is a quadratic backoff, but I don't think systemd implements that | 13:10 | ||
| MasterDuke_ | maybe hack something in with ExecStartPre? | 13:14 | |
| cpin` | hi all - have been looking at RT#129363 and think I have something, but would appreciate some advice/discussion... | 13:15 | |
| synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=129363 | ||
| cpin` | initial hacking at: github.com/cpin/rakudo/commit/43cb...68a039257a | ||
| spectest passes, as does manually testing - however, new here so might be some naive assumptions in there | 13:16 | ||
| moritz | cpin`: the type constraint in the new multi is Associative, but you call hash() as a coercer | 13:17 | |
| cpin` | (tests: github.com/cpin/roast/commit/dda25...12a2cdcbd) | ||
| moritz | cpin`: maybe try h.WHAT.new(...) instead of hash() ? | ||
| cpin` | moritz: ok - that may take some explaining - i took the majority of the existing code from `deepmap`... | 13:18 | |
| moritz | cpin`: maybe your version is a good enough first short | 13:22 | |
| cpin` | moritz: assume that would be the same for duckmap, deepmap (and coremap) - worthy or a separate change? | ||
| moritz | yes | ||
| cpin`: background is, we have multiple types that do Associative, including EnumMap and Hash | 13:23 | ||
| cpin` | moritz: that's what I wondered; worth PRs on roast and rakudo? | ||
| MasterDuke_ | cpin`: just a style thing, but you have a couple 'deep => $deep'. i think most of the core uses the ':$deep' syntax | ||
| moritz | cpin`: and Bag, iirc | ||
| cpin` | moritz: ah, yes | ||
| moritz | cpin`: yes, worth a PR | ||
| cpin` | MasterDuke_: ok, will check that out - thanks | ||
| moritz | op.WHAT gives the type object of `op`, so op.WHAT.new(...) should reproduce an object with the same type as `op` | 13:24 | |
| MasterDuke_ | also, do you need the nqp::stmts() that wraps this line? github.com/cpin/rakudo/commit/43cb...6487ddR563 | ||
| cpin` | moritz: great - as I assumed. thanks! | ||
| MasterDuke_: nope - don't think so. artifact of debugging... | 13:26 | ||
|
13:26
aborazmeh joined,
aborazmeh left,
aborazmeh joined,
skids joined
13:28
andrzejk1 left,
zakharyas joined
|
|||
| MasterDuke_ | cpin`: you could also ask for comments in #perl6-dev | 13:28 | |
|
13:30
brillenfux__ left,
domidumont left
13:38
rindolf joined
13:42
Rawriful joined,
domidumont joined
13:48
andrzejku joined
13:50
itaipu left
13:54
bjz left
13:55
grondilu left,
FROGGS joined
|
|||
| FROGGS | o/ | 13:55 | |
|
13:57
grondilu joined,
itaipu joined
14:00
aborazmeh left
|
|||
| nadim | Hi P6, just dropped in to say "Keep up the good work" and thank you. | 14:10 | |
|
14:11
pmurias joined
|
|||
| lizmat | nadim: thanks for the kind words | 14:12 | |
|
14:13
nicq20 joined,
ajr_ joined
14:14
cdg joined
|
|||
| nicq20 | Hello o/ | 14:15 | |
| MasterDuke_ | cpin`: can't the nqp::if here ( github.com/cpin/rakudo/blob/1ee524...#L558-L566 ) be refactored to: nqp::if($deep && nqp::istype($value, Iterable), ($result := coremap(&!block, $value, :$deep).item), ($result := &!block($value))) | 14:16 | |
|
14:17
kurahaupo__ is now known as kurahaupo
14:20
rgrinberg joined,
rgrinberg left
|
|||
| cpin` | MasterDuke_: i suspect so... | 14:24 | |
|
14:24
pierre_ left
14:27
CIAvash joined,
CIAvash left
|
|||
| nadim | lizmat: greatly deserved | 14:28 | |
|
14:30
domidumont left
14:32
ajr_ left
14:33
domidumont joined
14:35
skids left
14:39
eater joined
|
|||
| viki eyes Xliff | 14:50 | ||
|
14:59
dalek left,
dalek joined,
ChanServ sets mode: +v dalek
15:03
Rawriful left
|
|||
| dalek | c: 1dfcb50 | (Zoffix Znet)++ | doc/Language/typesystem.pod6: Fix incorrect URL |
15:04 | |
| synopsebot6 | Link: doc.perl6.org/language/typesystem | ||
|
15:04
Rawriful joined
|
|||
| dalek | c: aa0945b | (Zoffix Znet)++ | doc/Type/DateTime.pod6: Document DateTime.hh-mm-ss |
15:14 | |
| synopsebot6 | Link: doc.perl6.org/type/DateTime | ||
|
15:25
pierre_ joined,
Tonik joined
15:30
pierre_ left
15:34
AlexDaniel joined
15:49
Upasaka joined
15:53
g4 left
15:55
neuraload left,
abraxxa left
15:56
maybekoo2 left
16:00
maybekoo2 joined
16:04
jargan is now known as jast
16:08
domidumont left
16:14
zakharyas left
16:16
Rawriful left
16:24
wamba left
|
|||
| viki | It's so quiet in here, I can hear myself breathing... | 16:24 | |
| profan | *heavy breathing* | 16:25 | |
| nicq20 | Echo! echo, echo.... | ||
| viki | I guess the world's on edge as we watch Murica deciding whether to give nuke codes to a rich imbicile or a corrupt pschopathic warmonger. Tough choice! | ||
| nicq20 | Huh, I kind of though most countries would mistake this for some weird "American reality show". | 16:28 | |
| viki | Sure, today's season's finale :P | ||
| dylanwh | there are people in trucks driving around screaming at people here... #florida. | ||
| viki | heh | 16:29 | |
| [Coke] | well, viki's half right, anyway. | ||
| viki | At least I'm already in Canada, so I don't have to move ;) | 16:30 | |
|
16:35
Actualeyes left
16:37
brrt left
16:43
Rawriful joined
16:49
Actualeyes joined
16:56
cpin` left
17:06
xinming_ left,
zakharyas joined
17:10
itaipu left
17:13
pmurias left
|
|||
| nicq20 | When using `start`, where does it store it's promises? I've been using the REPL and it completes them without assigning to a var. | 17:13 | |
| viki | It returns it. | 17:15 | |
| m: dd start sleep 1; | |||
| camelia | rakudo-moar a581bf: OUTPUT«Promise.new(scheduler => ThreadPoolScheduler.new(initial_threads => 0, max_threads => 16, uncaught_handler => Callable), status => PromiseStatus::Planned)» | ||
| nicq20 | Huh. So the promise is still kept if it does not get saved to a var? | 17:16 | |
| viki | The promise still runs whether or not it's saved anywhere. Whether or not it's kept depends on the code running it. | ||
| *running in it | |||
|
17:17
zakharyas left
|
|||
| viki | .oO( if there's nobody there to catch it, is a sunk Promise ever broken? ) |
17:18 | |
| :} | |||
| m: start { sleep 2; die "egahds" }; sleep 4; say "all'swell" | |||
| camelia | rakudo-moar a581bf: OUTPUT«all'swell» | ||
| viki | eheh | 17:19 | |
|
17:19
zakharyas joined
|
|||
| viki | m: use MONKEY; augment class Promise { method sink { say self.status } }; start { sleep 2; die "egahds" }; sleep 4; say "all'swell" | 17:19 | |
| camelia | rakudo-moar a581bf: OUTPUT«Plannedall'swell» | ||
| viki | :o | ||
| moritz | a very solipsistic view :-) | ||
| viki | Oh, right, it gets sunk before it completes. | 17:20 | |
| moritz | m: use MONKEY; augment class Promise { method sink { await self } }; start { sleep 2; die "egahds" }; sleep 4; say "all'swell" | ||
| camelia | rakudo-moar a581bf: OUTPUT«===SORRY!===egahds» | ||
| viki | m: use MONKEY; augment class Promise { method sink { my $s = self; start { await $s; say $s.status } } }; start { sleep 2; die "egahds" }; sleep 4; say "all'swell" | 17:21 | |
| camelia | rakudo-moar a581bf: OUTPUT«all'swell» | ||
| viki | :( | ||
| Oh, it dies in await | |||
| m: use MONKEY; augment class Promise { method sink { my $s = self; start { try await $s; say $s.status } } }; start { sleep 2; die "egahds" }; sleep 4; say "all'swell" | 17:22 | ||
| camelia | rakudo-moar a581bf: OUTPUT«BrokenKeptall'swell» | ||
| viki | :D | ||
|
17:24
FROGGS left
17:25
AlexDaniel left
17:30
nicq20 left
17:34
kyclark left
17:39
FROGGS joined,
lichtkind joined
17:40
kyclark joined,
AlexDaniel joined
17:43
wamba joined
17:47
hankache joined
|
|||
| hankache | hello #perl6 | 17:48 | |
| viki | \o\ | 17:50 | |
|
17:50
Tonik left
17:55
zakharyas left
17:56
domidumont joined
17:58
girafe joined
18:00
cdg left
18:11
pdcawley left
18:16
tbrowder left
|
|||
| viki | m: 42 | 18:16 | |
| camelia | rakudo-moar a581bf: OUTPUT«WARNINGS for <tmp>:Useless use of constant integer 42 in sink context (line 1)» | ||
|
18:16
tbrowder joined
|
|||
| viki | m: 42e1000000000000 | 18:16 | |
| camelia | ( no output ) | ||
| viki | m: Inf | 18:17 | |
| camelia | ( no output ) | ||
|
18:18
gregf_ left
18:20
troys joined
18:26
maybekoo2 left
18:27
cdg joined
18:31
pierre_ joined
18:36
pierre_ left
|
|||
| grondilu had never seen use MONKEY; before | 18:46 | ||
|
18:47
buggable left
|
|||
| grondilu | m: use MONKEY-TYPING; | 18:47 | |
| camelia | ( no output ) | ||
| grondilu | m: use MONKEY; | ||
| camelia | ( no output ) | ||
|
18:47
canopus left
|
|||
| perlpilot | there are many MONKEYs | 18:48 | |
|
18:48
hankache left
|
|||
| AlexDaniel | … and most of them do nothing | 18:50 | |
|
18:55
canopus joined
18:59
troys is now known as troys_
19:03
buggable joined
|
|||
| rindolf | Hi all! So I benchmarked my sprintf optimisation and the "before" was much faster than the "after" but there may have been a variance in compile flags. | 19:03 | |
|
19:06
darutoko left
|
|||
| perlpilot | doesn't much sound like an optimization :) | 19:06 | |
|
19:06
troys_ is now known as troys
|
|||
| timotimo | the core setting is compiled with a higher --optimize than your own code | 19:08 | |
| tyil | maybe he was trying to make it slower so he has more time to do other stuff | ||
| timotimo | you can see the --optimize that gets passed in your "make" output | ||
|
19:09
hankache joined
|
|||
| viki | .oO( just copy the internal sprintf impl. into your bench file and compare next to your own... ) |
19:10 | |
|
19:10
nicq20 joined
|
|||
| viki | It's all nqp code anyway | 19:11 | |
| timotimo | good point | ||
|
19:22
wamba left
19:24
wamba joined
|
|||
| viki | m: say ("1." ~ "1" x 308).EVAL | 19:24 | |
| camelia | rakudo-moar a581bf: OUTPUT«1.11111111111111109384097517249756492674350738525390625» | ||
| viki | m: say ("1." ~ "1" x 309).EVAL | ||
| :} | |||
| camelia | rakudo-moar a581bf: OUTPUT«(timeout)» | ||
| TimToady | yer mean! | 19:25 | |
| mst | TimToady: well you're ... ... ... median!" | ||
| TimToady | that's my usual mode... | 19:26 | |
|
19:26
maybekoo2 joined
|
|||
| nicq20 | Trying to think of a "range" joke... | 19:26 | |
| mst | I prefer to be a non-standard deviant | ||
| hankache | hmm outliers :) | 19:27 | |
|
19:30
pmurias joined
19:35
cdg left
19:42
xinming joined
19:48
pdcawley joined
19:54
bjz joined,
pdcawley left,
vendethiel joined
20:04
ufobat left
20:07
Rawriful left
20:10
Rawriful joined
20:13
ufobat joined
20:15
Rawriful left,
troys is now known as troys_
20:18
Rawriful joined,
domidumont left
20:20
kyclark_ joined
|
|||
| kyclark_ | I’m back with more bouncy balls. I got some good feedback on reddit, and I’ve made some changes. pastie.org/10958479 | 20:21 | |
| Everything that was said about the enums in the previous version is right. I think the “move” in this version is simpler and cleaner. Also, this version has the balls fight to the death! Collisions cause balls to be removed. | 20:22 | ||
| Before I post a new version, I’d like feedback on this, specifically around lines 58-62 | |||
| RabidGravy | nice :) | 20:24 | |
|
20:26
ocbtec left
|
|||
| [Coke] | why PosInt? | 20:27 | |
| oh. nevermind, missed the subset. :) | |||
| [Coke] thinks he was thinking IntStr, maybe. | |||
| could be faster with --balls=100_000 :) | 20:28 | ||
| viki | kyclark_: just what I've said last night. That do for ^$balls { Ball.new(:$rows, :$cols) }; is just a strange way to write ^$balls .map: Ball.new: :$rows, :$cols; You're mapping values in $balls to a list of new values, so reading that operation as "do for X" just reads weird | 20:30 | |
| RabidGravy | I ought to finish Term::Cap at some point | ||
| viki | kyclark_: also, my understanding is this won't be thread safe: for $positions.list».kv -> ($pos, $count) { | ||
| masak | kyclark_: nice! | 20:31 | |
| viki | IIRC jnthn said » would initially be just doing what .hyper does... and that gives a HyperSeq | ||
| masak | kyclark_: agree with viki, but the nicest way to write it IMO would be `Ball.new(:$rows, :$cols) xx $balls` | ||
| viki | masak++ that is indeed much better | ||
| masak | kyclark_: something bothers me about that passing-in of $rows and $cols, by the way. | ||
| kyclark_ | Wow, interesting. I would not have come up with that. | ||
| masak | kyclark_: somehow they don't really "belong" on the object as attrs (though I see what you're trying to achieve) | 20:32 | |
| viki | Also, masak++ your Inf bug is actually much severe than originally reported. | ||
| [Coke] | huh. added a --profile when invoking the bouncy balls, but when you hit ^C to exit out, no profile. | ||
| viki | m: say say 1.1e307 | 20:33 | |
| camelia | rakudo-moar a581bf: OUTPUT«1.1e+307True» | ||
| viki | m: say 1.111111e307 | ||
| camelia | rakudo-moar a581bf: OUTPUT«Inf» | ||
| masak | kyclark_: one way to get around it would be to do `role Ball[$rows, $cols]` and make the appropriate changes | ||
| viki | masak: ^ | ||
| masak | viki: huh; yes, that's worse. | ||
| viki | I'm spectesting a fix ATM | ||
| masak | oki | ||
| lizmat | [Coke]: if you add a signal handler for control-c and let that exit, then you should get a profile | 20:34 | |
| kyclark_ | At line 48, I wanted to iterate over my Bag which has keys like “8 4” and a value of the count of balls at that position. I settled on the “$positions.list».kv” because it worked, but is there a better way to unpack that? I could not come up with a pointy block sig that worked. | ||
| Also, I found that Bags don’t work with Lists as the keys, only strings. This is right, yes? | |||
| viki | kyclark_: no, that's wrong | 20:35 | |
| moritz | viki: are you sure? lists aren't value objects | ||
| viki | m: dd Bag.new-from-pairs: [<a b c>] => 42; | ||
| camelia | rakudo-moar a581bf: OUTPUT«(["a", "b", "c"]=>42).Bag» | ||
| [Coke] | the ball script spends most of its non-sleep time in sink. :? | 20:36 | |
| lizmat: I cheated in a while loop. | |||
| viki | m: my $b = BagHash.new-from-pairs: [<a b c>] => 42; $b{$[<a b c>]}++; dd $b | ||
| camelia | rakudo-moar a581bf: OUTPUT«BagHash $b = (["a", "b", "c"]=>42,["a", "b", "c"]=>1).BagHash» | ||
| viki | m: my $b = BagHash.new-from-pairs: $[<a b c>] => 42; $b{$[<a b c>]}++; dd $b | ||
| camelia | rakudo-moar a581bf: OUTPUT«BagHash $b = (["a", "b", "c"]=>1,["a", "b", "c"]=>42).BagHash» | ||
| viki | Oh right, it's not the same object | ||
| m: my $a = [<a b c>]; my $b = BagHash.new-from-pairs: $a => 42; $b{$a}++; dd $b | 20:37 | ||
| camelia | rakudo-moar a581bf: OUTPUT«BagHash $b = (["a", "b", "c"]=>43).BagHash» | ||
| viki | moritz: seems to work ^. What are value objects? | ||
| [Coke] | (sink) ah, gnope. | ||
| moritz | viki: objects where two equivalent objects also compare equally with === | 20:38 | |
| viki | Ah | ||
| moritz | m: say 1 === 1; say [] === []; | ||
| camelia | rakudo-moar a581bf: OUTPUT«TrueFalse» | ||
| viki | Well, you can still use them as keys. | ||
| moritz | ok | ||
| viki | m: say 100000 === 100000; say [] === []; | ||
| camelia | rakudo-moar a581bf: OUTPUT«TrueFalse» | ||
|
20:39
hankache left
|
|||
| kyclark_ | m: dd ((1,1), (2,2), (1,1)).Bag | 20:40 | |
| camelia | rakudo-moar a581bf: OUTPUT«(1=>4,2=>2).Bag» | ||
| viki | m: for (<a b c c d>).Bag.list -> (:$key, :$value) { say "$key:$value" } | ||
| camelia | rakudo-moar a581bf: OUTPUT«a:1c:2b:1d:1» | ||
| viki | kyclark_: ^ an alternative | ||
| There may be a better way | |||
| kyclark_ | I keep forgetting about that way! | ||
| viki | like .kv on just the Bag without .list first? | ||
| Yup | 20:41 | ||
| m: for (<a b c c d>).Bag.kv -> $k, $v { say "$k:$v" } | |||
| camelia | rakudo-moar a581bf: OUTPUT«a:1c:2b:1d:1» | ||
| masak | .Bag is a nice short way to say "make a histogram of these things" | ||
| Xliff wonders why vikiZoffixBorg was giving him the evil eye, earlier this morning. | 20:43 | ||
| viki | I don't get why this conditional is there. Wouldn't multiplication by 0 just give zero anyway? github.com/rakudo/rakudo/blob/nom/...7218-L7220 | ||
| Xliff: 'cause you added DateTime.hh-mm-ss but never added tests or docs. An untested code is broken and undocumented code doesn't exists at all. | |||
| Xliff | In progress. Not committed. | 20:44 | |
| kyclark_ | OK, new version: pastie.org/10958493 | ||
| viki | Xliff: I already did it :) | ||
| Xliff | :P | ||
| Thx | |||
| viki | Ah.. Answer for my question: to make stuff like 0e99999999999 return 0 and not NaN | ||
| [Coke] | viki - maybe for speed? you avoid invoking 3 opcodes and an .ast | ||
|
20:44
jameslenz left
|
|||
| viki | .oO( I knew I shouldn't have removed it... *rebuilds* ) |
20:44 | |
|
20:45
bjz left
20:46
bjz joined
|
|||
| [Coke] | ah | 20:46 | |
|
20:48
bjz left
|
|||
| AlexDaniel | I wish it had more balls at the same time | 20:54 | |
| ahhhh | |||
| there is a paramater… | |||
| OK | 20:55 | ||
|
20:56
cdg joined
|
|||
| MasterDuke_ | this may be questionable, but if you do 'my %row is default([]); | 20:56 | |
| you can get rid of the 'if %row{ $this-row }:exists {' | |||
| kyclark_ | MovableType is removing some of my code when I try to post as a comment | 20:57 | |
| Specifically it doesn’t like “||” it would seem. Is there a workaround? Do I need to make a new post? Seems a bit overkill to just follow up on my first version | |||
|
20:59
MasterDuke_ left
|
|||
| AlexDaniel | mmhmm 「unless 1 < $!col < $!cols」 | 21:00 | |
| viki | kyclark_, just edit the post and add an "Update" section? | 21:07 | |
|
21:10
BillSussman joined
21:12
AndyBotwin left
21:19
bjz joined
21:22
rindolf left
21:26
bjz left
21:31
kyclark__ joined,
troys_ is now known as troys
21:32
kyclark_ left
21:33
cog_ left
|
|||
| Xliff | Hrm. | 21:33 | |
|
21:33
espadrine joined
|
|||
| Xliff | Can you add newlines in grammar definitions without the compiler barfing? | 21:33 | |
| viki | barphing how? | 21:34 | |
| Xliff | Ala: grammar X { TOP { <t1>\n<t2>\n'STRING'\n\n } } | ||
| viki | I think you need to quote them | ||
| "\n" | |||
| Xliff | No. Those are literals. I want TOP to be readable rather than cluttered on one line. | 21:35 | |
| So those represent newlines in the actual code. | 21:36 | ||
| lizmat | which would be whitespace, which should work, no ? | ||
| viki | Yeah you can use literal newlines just like regular whitespace | ||
| Xliff | The complaint I'm getting is "two terms in a row" | ||
| viki | Well, prove it :) show code | ||
| Xliff | I am, borg! | 21:37 | |
| viki | :) | 21:38 | |
| Xliff | gist.github.com/Xliff/fef6642960e6...42d9b71914 | 21:39 | |
| FROGGS | Xliff: put 'rule' or 'token' before the word 'TOP' | 21:40 | |
| Xliff | D'oh! | ||
| FROGGS++ | 21:41 | ||
|
21:41
troys left
|
|||
| FROGGS | :o) | 21:41 | |
| Xliff | Oooh! Grammar::Tracer is awesome! | 21:43 | |
|
21:44
bjz joined
21:45
nicq20 left
21:48
ufobat left
21:51
maybekoo2 left
21:55
AlexDaniel left
21:59
bjz left
|
|||
| Xliff | Whoop! | 22:00 | |
| Xliff does the grammar dance. | 22:01 | ||
|
22:05
labster joined
22:08
zakharyas joined
22:11
lizmat left,
lizmat joined
22:16
RabidGravy left
22:23
kurahaupo left,
zakharyas left
|
|||
| stmuk_ | www.donaldjtrump.com/press-release...al%20basic | 22:26 | |
|
22:27
pmurias left,
firstdayonthejob joined
22:29
FROGGS left
|
|||
| stmuk_ | unicode works too | 22:30 | |
| japhb | .ask RabidGravy Would Term::Cap allow us to avoid using tput in github.com/ab5tract/Terminal-Print...ds.pm6#L38 (and thus avoid having to do the crazy dance in which we cache a bunch of terminal escape strings at module precompilation time)? | 22:36 | |
| yoleaux | japhb: I'll pass your message to RabidGravy. | ||
| geekosaur | and maybe be a bit more portable too? | 22:37 | |
| geekosaur now knows not to try to install that under certain broken terminals/terminal types or on old non-ANSI ttys... | 22:38 | ||
| (notably emacs still has a non-ANSI terminal emulator in it) | |||
| japhb | geekosaur: I'd be happy if we got portability out of it, yeah. | 22:41 | |
| geekosaur: Are you saying not to install *Terminal-Print* on non-ANSI ttys, or Term::Cap? | 22:42 | ||
| geekosaur | you said Terminal-Print caches strings at precomp time | ||
| that's going to screw people not on ANSI emulation, or if it caches strings for one ANSI-extended that differ from other ANSI-extendeds (which can happen) | 22:43 | ||
| japhb | Yeah, it gathers the correct termcap info for every "valid" (tested to work) terminal. | ||
| geekosaur | ah. that would be better, I figured it was assuming the currently set one was The One | 22:44 | |
| japhb | And keys it on the terminal type string | ||
| Oh heck no, I wouldn't be that silly. | |||
| geekosaur remembers when caching strings for linux console would get you weird bugs when using them on xterm, and vice versa --- linux console has since been redone a few times and is much closer to xterm/standard ANSI now | 22:45 | ||
| japhb | It also knows that it has to gather terminal size info at least at program start, and then every time explicitly requested thereafter (and not cache that, which is a common mistake). Doesn't yet handle SIGWINCH, but that's coming. | ||
| geekosaur | (sometimes I wish I'd kept the old Beehive terminal, just as a severe stress test for terminal output) | 22:46 | |
| japhb | I once had a for-reals TVI-920C (terminals-wiki.org/wiki/index.php/TeleVideo_920) heading my "personal computer", and man I wish I still had that thing .... | 22:47 | |
| geekosaur | heh. yep, that'd do it. | 22:48 | |
| geekosaur remembers tvi910s | |||
|
22:49
seatek joined
|
|||
| grondilu does not know much about terminals but remembers that linux consoles are supposed (or were supposed?) to be compatible to "vt100" | 22:50 | ||
| (somehow the term "vt100" had stuck in my mind) | |||
| geekosaur | were supposed. it didn't do a good job of it originally | ||
| japhb | grondilu: vt100 was IIRC the big "center of mass" for copycatting and eventually standardization. | 22:51 | |
| geekosaur | (older) xterm was literally the reference software vt100 implementation. the DEC folks went to extremes to guarantee 100% vt100 (and in extended mode vt200) compatibility | ||
| and ANSI X3.64 is a superset of VT220 | 22:52 | ||
| (apparently one of them ran recent xterm against their old test suite and discovered several bugs had crept in since they'd stopped maintaining it) | |||
| vt100 won because the other quasistandard used "cookies" to store video attributes --- these displayed as spaces (termcap calls them "sg" / "standout [mode] glitch") | 22:54 | ||
| japhb | Of note, as I was researching TUI stuff, I kept coming across this guy: en.wikipedia.org/wiki/Thomas_Dickey | 22:55 | |
| All roads lead to Thomas, apparently. | |||
| grondilu | geekosaur: those trivia notes of yours suit your nickname very well ;-) | 22:57 | |
|
22:59
AlexDaniel joined
23:12
MasterDuke joined,
seatek left
23:14
geekosaur left
23:15
geekosaur joined
23:26
nadim_ joined,
nadim left
23:27
Rawriful left
23:28
Rawriful joined
|
|||
| samcv | is it normal for perl6 --profile to segfault on running an otherwise working program? | 23:32 | |
| i think it might be segfaulting when i start a proc::async process, i'm guessing | |||
| MasterDuke | yeah, that's definitely not supported now | 23:33 | |
| samcv | i have never used it before so was wondering your experiences with it | ||
| ok so segfault is not totally unexpected? | |||
| MasterDuke | yep. it's great, but can't be used for concurrent programs. it's not guaranteed to crash, but you can't trust the results if it doesn't | 23:34 | |
| samcv | ah kk. are supplies and channels out as well? | ||
| because i use those too. or is it just proc::async | 23:35 | ||
| MasterDuke | i think anything which uses threads is out, but jnthn or timotimo could definitely give you a more conclusive answer | 23:37 | |
|
23:37
vendethiel left,
geekosaur left
23:40
geekosaur joined
23:41
kyclark__ left
|
|||
| jnthn | So far as I remember, at a low level the profiler should be able to collect data from all running threads, but isn't able to present them. In reality, it's not really had any attention for multi-threaded programs and so there may be some other place it's tripping up. | 23:43 | |
| timotimo | yes, if you --profile and have multiple threads, you'll definitely get bogus results, or maybe a crash | ||
| jnthn | timotimo: Do you know why it crashes? | ||
| timotimo | don't think so | ||
| jnthn | timotimo: The instrumentation is guarded, and it uses a per-thread data structure to record data... | ||
| k | |||
| timotimo | i'm not sure it even looks at other threads right now | ||
| jnthn | Right, it ignores their data. | 23:44 | |
| timotimo | could just be i'm working off of outdated info, because it's been a while since i last tried it | ||
| jnthn | I'd expect it to only give data on the main thread. | ||
| timotimo | i've had it actually give data from a non-main thread somehow | ||
| jnthn | Guess we'll have to try and catch the issue in gdb/valgrind and see what's going on. :) | 23:45 | |
|
23:46
espadrine left
|
|||
| jnthn | It'd be good to actually get it to present useful data from all threads too, but that's more work. | 23:46 | |
| Though more in the UI for presenting it than the VM | |||
| MasterDuke | RT #128280 may be a bit out of date now, but i believe i did have some valgrind output | 23:49 | |
| synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128280 | ||
|
23:51
firstdayonthejob left
23:53
Rawriful left
23:56
Rawriful joined
|
|||