»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! | Rakudo Star Released!
Set by moderator on 11 August 2010.
00:00 Psyche^ joined
dalek kudo: 73a7674 | masak++ | :
<pre>m src/core/Buf.pm

   <pre style='white-space:pre-wrap;width:81ex'>[Buf] added prefix/infix ~^, infix ~& and infix ~|</pre>
00:00
masak eh? that's not how my commit message looks here... :/ 00:01
sorear masak: Why are you committing HTML to svn:log
masak :(
I did nothing out of the ordinary...
it looks fine locally and on github. 00:02
jnthn Hate That Markup Language in the commit message!
masak: Not your fault. 00:03
masak oki
jnthn It happened to somebody else too on the Parrot channel.
On a completely unrelated project.
dalekbug maybe...or githubchange, or something.
masak yeah, probably. 00:05
dalek kudo: bef86ee | masak++ | :
<pre>m t/spectest.data

   <pre style='white-space:pre-wrap;width:81ex'>[t/spectest.data] added S03-operators/buf.t</pre>
00:06
pugssvn r32006 | masak++ | [t/spec] added missing 'plan' and footer to recent files 00:07
masak phenny: tell moritz_ that both S03-operators/bit.t and integration/real-strings.t seem to do ~& et al on Str, not Buf. S03:2734 outlaws this. should I simply remove those tests? or should I try to save them by making them convert to Buf? 00:22
phenny masak: I'll pass that on when moritz_ is around.
ingy is there a p6rules sugar for: <b>* <a> [ <a> | <b> ]* 00:27
that's something I see over and over
where say, a -> statement and b -> comment 00:29
so at least one statement, with comments anywhere
arnsholt ingy: I bleev you can do something along the lines of <a>**<b> 00:33
Check S05 to be sure 00:34
jnthn zzz o/
00:42 risou joined 00:46 gbacon joined 00:57 redicaps joined
Tene I wonder how important the order of the results of X are, or if it could be redefined to work usefully with infinite lists. 01:01
TimToady Already defined, see S03:1786. 01:02
Tene I wasn't asking if the order was defined, I was asking about the reasons for that specific order. 01:04
TimToady I fail to see a better way to do it than the current way, but maybe that's just failure of imagination. 01:05
01:06 mmmpork joined
Tene 'k 01:06
01:06 cottoo joined
Tene Thanks. :) 01:06
TimToady I suppose a 3-d space can be progressively sliced by any plane moving in a normal direction 01:07
Tene s/3/N/ 01:08
TimToady so you exhaust every finite dimension at every step through the N-space of infinite dimensions, but it still mostly seems like a good way to waste a lot of computing power 01:09
well, hey, at least it's guaranteed polynomial time 01:10
course, ∞ to the N is still pretty large... 01:12
01:13 justatheory joined
Tene Heh, we could walk them in the order of a hilbert curve. ;) 01:16
ingy arnsholt: thx! looking... 01:20
arnsholt: ** is great, but not quite what I was looking for 01:23
Tene You could always do something approximately like this: gist.github.com/526218 01:28
module dealing with varying sizes, and extending it to N
although, similarly, if I want that, I can just write it like I just did.
ingy TimToady: you can probably better answer my query from 17:27. 01:31
sorear ingy: <a>+ will do what you want if you use it in a rule and <ws> is defined to include comments 01:34
this is what STD and the Rakudo parser do, anyway
01:35 alester joined
Tene That algorithm looks to me like it could properly extend to handle N lists, at the cost of keeping one index counter per list. 01:37
ingy <<b>* <a> <b>*>+ 01:39
sorear: <ws> is maybe too magical 01:40
Tene ingy: how is that different from [<b>*]**<a> ?
ingy [<b>* <a> <b>*]+
Tene: thinking...
Tene: don't think it guarantees a 01:41
Tene Right, there could just be one <b>
ingy keep trying!
<b>* <a> ** <b>* 01:43
Tene Yeah, that would work.
sorear ingy: in general? 01:44
ingy well it beats my original
01:44 pwang017 joined
Tene I've been a little frustrated before by ** being able to only specify one of length or delimiter, but no way to specify both length and delimiter. 01:44
ingy Tene: join #pegex ! 01:45
01:45 pwang017 left
Tene joined! 01:46
sorear I mean, do you hate <ws> in general, or only for this one case 01:49
ingy sorear: I think <ws> feels too tied to p6rules 02:00
but I may be wrong 02:01
I was told it was kinda magical
anyway, yeah, in this case I wanted something generic
I was just giving an example
02:05 tylercurtis joined
sorear hello tcurtis 02:19
02:20 mj41_ joined 02:21 agentzh joined, proller joined
tylercurtis Hello, sorear. 02:22
alester proof an announcement for me... 02:44
gist.github.com/526305 02:45
Tene 'k 02:47
alester Please & thank you
Tene ew no line breaks. :P
alester yeah, well
sorry
Tene s'fine 02:48
alester any comments? 02:50
Tene Yes. Reading through it now. 02:51
s/vim/Vim/g
erm, except for the path.
less-confusing is "For example, <i>syntax/perl.vim</i> had not previously been updated since 2006." 02:52
alester huh, you're right about the capitalization
Tene I had to check vim.org; I wasn't sure.
alester I did too. :-) 02:53
Tene are you really saying that *every* support file has been updated, or are you just saying that every *perl-related* support file has been updated? 02:54
By my reading, you're saying the former.
ah, also probably don't capitalize Vim in urls. :) 02:55
global s/// was too much. :)
Ask me if you want me to recommend different language for support file updates. 02:56
Otherwise, that's everything that jumps out at me.
sorear alester: what is that going to be? 02:57
alester Perlbuzz post
perlbuzz.com/2010/08/vim-73-supports-perl-6.html published 03:00
thanks
Tene np :)
tylercurtis sorear: at some point after GSoC when I've read and thought about traits and the object model some more, I'd like to chat with you about them if you don't mind. 03:02
03:04 achromic joined
sorear tylercurtis: sure 03:09
03:11 redicaps left
sorear is now trying to add some optimizations to niecza, but running into what seems to be a critical misfactoring of the data structures 03:16
sorear checks out PCT for inspiration 03:22
03:34 karb joined
sorear I think my problem is that I need smaller steps 03:46
03:54 ruoso joined 04:03 molaf joined 04:11 redicaps joined, redicaps left 04:17 PenThrive joined 04:39 molaf joined 04:45 cjk101010 joined
rcfox rakudo: my regext test { <.isa(Num)> } my @a = 1,2,3; say @a ~~ /<test>/; 04:51
p6eval rakudo bef86e: OUTPUT«===SORRY!===␤Malformed my at line 22, near "regext tes"␤»
rcfox rakudo: my regex test { <.isa(Num)> } my @a = 1,2,3; say @a ~~ /<test>/;
p6eval rakudo bef86e: OUTPUT«===SORRY!===␤Confused at line 22, near "my regex t"␤»
rcfox rakudo: my regex test { <.isa(Num)> }; my @a = 1,2,3; say @a ~~ /<test>/;
p6eval rakudo bef86e: OUTPUT«Method 'test' not found for invocant of class 'Cursor'␤ in <anon> at line 22:/tmp/MK8VTujbkg␤ in 'Cool::match' at line 2394:CORE.setting␤ in 'Regex::ACCEPTS' at line 1␤ in main program body at line 22:/tmp/MK8VTujbkg␤»
sorear you need to use <&test> to disambiguate (known bug) 04:52
rcfox rakudo: my regex test { <.isa(Num)> }; my @a = 1,2,3; say @a ~~ /<&test>/;
p6eval rakudo bef86e: OUTPUT«any(Match.new(␤ from => 1,␤ orig => "1",␤ to => -3,␤), Match.new(␤ from => 1,␤ orig => "2",␤ to => -3,␤), Match.new(␤ from => 1,␤ orig => "3",␤ to => -3,␤))␤»
sorear plain <test> is always parsed as a method currently
rcfox Ah, thanks.
tylercurtis What does that do? 04:55
"that" being the <.isa(Num)> bit. Won't that call .isa(Num) on the cursor? 04:56
04:56 risou joined
sorear yes 04:56
rcfox perlcabal.org/syn/S05.html#Matching...on-strings
sorear bear in mind that that entire section is completely unimplemented 04:57
diakopter sorear: re KenGuru trying niecza on windows... I'm almost certain nobody has gotten std to run in strawberry perl (and I think I'm the only one who's gotten it to run in cygwin, but that was year(s) ago) 04:58
tylercurtis wonders why one would even want to be able to do /<.isa(Dog)>/.
Why not just *.isa(Dog). 04:59
sorear tylercurtis: it's very useful for [ \\d || <.panic("No digits allowed here")> ]?
rcfox I was actually planning to use it as a rule to test the properties of my token. 05:00
diakopter sorear: (let alone activeperl or microsoftperl ;)
sorear tylercurtis: also, it's possible that entire section will be scrapped in favor of the replacement you did for GSoC
or, the ideas from it ported into a p6 frame anyway 05:01
microsoft perl?
05:01 _jaldhar joined
sorear pmichaud: ping 05:02
05:02 simcop2387 joined
tylercurtis sorear: I understand the usefulness of calling methods on the Cursor/Grammar in regexes. But I don't see how <.panic> relates to doing $obj ~~ /<.isa(Dog)>/. I suppose object array matching could be useful with <,> and <elem>, possibly. 05:03
05:04 astinus joined
diakopter sorear: yes microsoft distributes a build of perl. but my winking comment is beside my point, which is that niecza won't run on windows until std is bootstrapped in mono 05:05
05:11 kaare joined
rcfox Hm. 05:12
05:28 Mowah joined 06:05 uniejo joined 06:30 Su-Shee joined 06:40 Axius joined
moritz_ good morning 06:48
phenny moritz_: 00:22Z <masak> tell moritz_ that both S03-operators/bit.t and integration/real-strings.t seem to do ~& et al on Str, not Buf. S03:2734 outlaws this. should I simply remove those tests? or should I try to save them by making them convert to Buf?
moritz_ phenny: tell masak converting to Buf would be preferable
phenny moritz_: I'll pass that on when masak is around.
06:54 wtw joined 07:09 NiiHiiL joined 07:13 xoor joined
xoor rakudo: say 'Hello world'; 07:13
p6eval rakudo bef86e: OUTPUT«Hello world␤» 07:14
07:26 pmurias joined
pmurias ruoso: hi 07:26
tadzik rakudo: DateTime.new 07:30
p6eval rakudo bef86e: ( no output )
tadzik rakudo: DateTime.new; say 'alive'
p6eval rakudo bef86e: OUTPUT«alive␤» 07:31
tadzik hrm
wklej.org/id/377420/ why a difference?
07:31 timbunce joined
tadzik .succ and .pred are NYI for DateTime? 07:38
looks so
07:39 ajs left 07:40 foodoo joined
pmurias tadzik: how much do the increment DateTime by? 07:41
tadzik pmurias: specs says it goes per days
see perlcabal.org/syn/S32/Temporal.html#Arithmetics 07:42
pugssvn r32007 | moritz++ | [t/spec] remove invalid rx:g tests 07:46
r32008 | moritz++ | [t/spec] rakudo unfudges 07:49
sorear diakopter: STD needs to be changed to stop making assumptions about filesystem layout *anyway*
Tene rakudo: say ('{aaa' ~~ /'{' ~ '}' 'a'*/).perl 07:53
p6eval rakudo bef86e: OUTPUT«Unable to parse _block119, couldn't find final '}' at line 1␤ in <anon> at line 22:/tmp/9HumU8Tyke␤ in 'Cool::match' at line 2394:CORE.setting␤ in 'Regex::ACCEPTS' at line 5791:CORE.setting␤ in main program body at line 22:/tmp/9HumU8Tyke␤»
ingy Tene: got it
Tene ingy: see how it explains what the goal was?
~ is called 'goal matching' oslt, iirc.
ingy still, I think its sugar built of other primitives 07:54
which is only to say that I can bootstrap without it 07:55
I definitely like it
sorear #pegex?
(is this from)
ingy sorear: aye
Tene ingy: Yes, that's right. 07:56
ingy ducks back into #pegex
sorear STD currently handles it in a way which can't quite be desugared
except with a subrule 07:57
regex as_in_brackets { :my $*GOAL = '}'; '{' a* [ '}' || <.panic: "Unable to parse $?DBA, couldn't find final '}'"> ] }
08:01 mac| joined
pmurias sorear: what sorts of assumptions does STD make? 08:01
mac| Hello
tadzik o/
08:05 agentzh joined 08:10 dakkar joined
sorear pmurias: ./syml can be written to, module names can be turned into filenames like Foo/Bar.pm.syml, : separates paths 08:10
dalek ecza: 044e4a9 | sorear++ | :
<pre>m Niecza/Actions.pm

m Op.pm
  </pre>
   <pre style='white-space:pre-wrap;width:81ex'>Allow Op::CgOp to have Op children</pre>
08:17
ecza: ec30fe4 | sorear++ | :
<pre>m Op.pm

  </pre>
   <pre style='white-space:pre-wrap;width:81ex'>Commit some sketches of the beta-optimizer
I don't think this can be made to work properly with our current ASTs. What I need is an AST high enough level to express closures but low enough to desugar signature binding; the PAST to our POST and AST.</pre>
08:17 timbunce joined 08:18 drbean joined
moritz_ looks like dalek's RSS parser failed (or the format changed, or so) 08:22
08:23 redicaps1 joined
pmurias why are there html tags in commit messages? 08:24
moritz_ 10:22 < moritz_> looks like dalek's RSS parser failed (or the format changed, or so)
08:31 Su-Shee joined 08:32 awwaiid joined 08:33 cono joined
jnthn morning 08:35
mac| hello jnthn 08:36
08:36 Helios joined
moritz_ o/ 08:36
redicaps1 他会给你解释哪个没通过的 08:38
lol, sent to the wrong channel....
moritz_ didn't understand it anyway :-) 08:39
mathw Ah, speaking in the wrong language
I do that
moritz_ \\o mathw 08:40
mathw: small reminder: you're in docs/release_guide.pod as volunteer for the Thursday compiler release
mathw o/ moritz_
oh am I
08:40 Trashlord joined
mathw yes I am aren't 08:40
08:41 sftp joined
redicaps1 I think masak can understand ... but looks like he is not here right now. 08:41
mathw we've got a few people who might be able to understand that
moritz_ JimmyZ, au|irc, probably more 08:42
mathw I just think it looks pretty
At least I've got the fonts for it
moritz_ nine: your bench tools (rightly) complain that rakudo's docs/test_summary.times isn't valid JSON... how did you solve that problem on your machine? 08:44
08:46 redicaps joined 08:47 simcop2387 joined 09:07 azert0x joined 09:08 M_o_C joined 09:13 meppl joined 09:40 thebird joined 09:43 gbacon joined
ingy just wrote a pegex grammar to parse pegex grammars... 09:45
it compiles but no idea if it works
moritz_ self-hosting ftw
cxreg does it parse itself?
ingy and too tired to start testing...
09:46 daxim joined
ingy it will, after I debug it :) 09:46
cxreg heh
moritz_ and does it reject invalid input? :-)
ingy moritz_: it probably rejects valid input at this point ;)
sorear meanwhile in niecza-land... β-reduction is *close*
pmurias in the optimizer? 09:47
sorear yes
ingy I compiled it with my bootstrapping pegex parser...
09:48 nadim_ joined
ingy the grammar is here: bit.ly/brJPSC and the compiled grammar is here: bit.ly/d0FFCJ 09:48
09:48 masak joined
masak good mo... good midday, #perl6! 09:48
phenny masak: 06:48Z <moritz_> tell masak converting to Buf would be preferable
sorear midday? it's 3am
ingy and the ingy is here => o_____
moritz_ it's always midday somewhere
jnthn masak: Slept well? :-)
ingy night... zzzzzzzzzz 09:49
masak jnthn: seems so. :)
jnthn :-)
masak good thing there are no meetings or such in the morning.
moritz_ <=================O # at least the pencil is down :-)
nadim_ morning, a quick question, are refinement types taken into account when doing multiple dispatch?
moritz_ what do you mean be "refinement types"? 09:50
subset?
nadim_ subsets
jnthn nadim_: Yes, they act as tie-breakers.
moritz_ subsets are dealt like constraints, ie tie... jnthn was faster
jnthn That is, something with a refinement is narrower than something without, given they both have the same nominal type.
moritz_ so subset Odd of Int where * %% 2; multi f(Odd $x) is just the same as multi f(Int $x where * %% 2) 09:51
well, s:g/Odd/Even/, but you get the picture
jnthn (Folks here tend to refer to them as "constraints" or "subset types" rather than refinement types, though that was the name that a paper on the topic gave to them.)
moritz_ to me, inheritance is also a refinement. 09:52
masak moritz_: the pencil officially goes down at 19:00 UTC, but I thought I'd let it rest till then, unless someone discovers something really urgent.
nadim_ so the multiple dispatch is not optimized at run time but when the subs are called
s/run/comple/ sorry
moritz_ they are ordered by narrowness of nominal type at compile-time 09:53
jnthn masak: It's a Norweigan Blue pencil? Just resting? :-)
masak jnthn: it's pining for 19:00 UTC :)
moritz_ (or at least at first dispatch, not sure)
jnthn nadim_: We can determine the ordering at compile time.
nadim_: Though at the moment we compute it on the first dispatch. That will change in the coming months.
But we don't quite have some other infrastructure in place to deal with it all at compile time yet.
masak when I put together my contributions into a .zip file, I'll need to compile them from three places: Rakudo, Mu/t/spec, and Mu/docs/Perl6/Spec 09:54
moritz_ likes it that masak refers to it as the Mu repository :-)
jnthn nadim_: In absence of refinement types, we can also - in cases where we have sufficient type information - also do the dispatch at compile time.
nadim_ jnthn: programmersheaven FAQ++ 09:55
sorear can't wait to be the first to implement Wadler-type dispatch optimization
unfortunately, I'll need to actually process class statements at compile time first, I think
09:56 mmmpork joined
jnthn sorear: Yes. :-) 09:56
pmurias sorear: Wadler-type dispatch optimisation? paper?
jnthn sorear: That's going to be one of the things that'll change in Rakudo too. 09:57
nadim_ pmurias: maybe www.cs.washington.edu/homes/mernst/...ecoop98.ps
masak My first impression of Rakudo Star ... www.perlmonks.org/?node_id=852336 09:58
moritz_ jnthn: btw if you get 'require Foo::Bar <import list>;' to parse (maybe in a branch), I'll try to implement it
moritz_ is a parse failure
erm, I mean I fail at getting things parse :-)
jnthn std: moritz_ 10:00
p6eval std 31912: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared routine:␤ 'moritz_' used at line 1␤Check failed␤FAILED 00:01 111m␤»
jnthn Actually you are a parse failure. :P
moritz_ I know :-)
10:00 Italian_Plumber joined
sorear pmurias: "Compiling Pattern Matching", Augustsson 85 10:00
at one point I had a nice description of the algorithm, but now all google wants to give me is a portal.acm.org link 10:01
10:01 redicaps left
sorear fortunately, even if I mixed up the names, the procedure itself is simple enough that one can implement it from memory... 10:02
moritz_ www.springerlink.com/content/y64742...lltext.pdf # I don't know if that link works from outside my network
masak *lol* -- though I don't know what that latter thing is: twitter.com/unixbigot/status/21280475312
sorear moritz_: nope 10:03
masak apparently, he writes Lovecraftian horror, among other things. heh.
moritz_ who maintains dalek these days? diakopter? 10:04
sorear research.microsoft.com/en-us/um/peo...-1987.djvu physical pg. 91 looks like my original source 10:05
(bonus: the chapter is credited to one Philip Wadler. Not entirely wrong!) 10:07
(yes, this reference is older than Perl itself and uses examples in a language which is beyond dead...) 10:09
10:09 wamba joined 10:10 JimmyZ joined
JimmyZ Hello 10:10
sorear Hello
masak Hello 10:11
10:17 walfisch joined 10:23 tadzik joined
tadzik oh hai 10:24
mac| o/ tadzik 10:25
10:49 envi^home joined 10:52 Axius joined 11:04 pmurias joined 11:05 Mowah joined 11:20 achromic joined 11:25 sftp joined
mac| I have to go. Bye bye :) 11:41
11:41 bbkr joined
bbkr when next Rakudo release is expected? has monthly release cycle changed after * ? 11:43
moritz_ the compiler releases haven't changed
R* will have monthly releases for now, later quaterly releases 11:44
11:44 lichtkind joined
lichtkind jnthn: hai 11:44
jnthn oh hai, lichtkind 11:45
bbkr moritz_: thanks. then I'll wait for new compiler few days before rechecking RT queue.
11:56 gfldex joined, ruoso joined
gfldex rakudo is eating up lots of ram again while compiling core 11:56
moritz_ yes 11:59
jnthn omnomnomram 12:00
I think Parrot folks have been tuning allocation stuff recently.
Sounds like a knob got twisted a little to far in the "moar ram" direction.
mathw ah 12:03
12:16 takadonet joined
takadonet morning all 12:16
masak takadonet: \\o 12:29
lichtkind takadonet, masak o/
12:35 rgrau joined
masak here's someone who translate-quotes me from long ago, and who thinks that Perl 6 grammars are akin to Lisp macros. 12:36
solom.livejournal.com/289965.html
bbkr std: @1
p6eval std 31912: OUTPUT«ok 00:01 112m␤»
bbkr hmm, is it some kind of special array?
masak bbkr: as far as I know, @1 has no special meaning in Perl 6. 12:37
if anything, it should mean @/[1] :)
but it doesn't.
12:37 timbunce joined
moritz_ it's parsed as @( 1 ) I suppose 12:37
jnthn I suspect...what moritz_ said
:-) 12:38
bbkr thanks. I'm running mutation tests, hope to have few interesting cases soon.
masak mutation tests? tell us more. 12:39
moritz_ rakudo: my $v = "test"; $v.=subst(/(\\w)/, -> $/ { say $/; 'X' }; say $v
p6eval rakudo bef86e: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22␤»
moritz_ rakudo: my $v = "test"; $v.=subst(/(\\w)/, -> $/ { say $/; 'X' }); say $v 12:40
p6eval rakudo bef86e: OUTPUT«t␤Xest␤»
masak \\o/
moritz_ rakudo: my $v = "test"; $v.=subst(/(\\w)/, -> $/ { say $0; 'X' }); say $v
masak never seen that workaround before.
p6eval rakudo bef86e: OUTPUT«t␤Xest␤»
masak moritz_++ 12:41
moritz_ www.perlmonks.org/?node_id=855251 12:42
12:44 drbean joined
bbkr masak: nothing fancy yet. just passing "(all_characters).pick(random_length, :replace)" to eval_lives_ok and STD compatibility checking. and I'm thinking now how to classify results. 12:45
masak can you goto into a BEGIN/INIT/CHECK/END block? what about FIRST/LAST blocks? do all of these then pretend to be located where they actually are located textually? 12:46
bbkr: sounds like a cool exercise. 12:47
moritz_ masak: I'm pretty sure you can't goto into a BEGIN block
from where would you enter it? 12:48
jnthn masak: No to all of BEGIN/CHECK/INIT
moritz_ from above: OH NOEZ, it's not parsed yet
jnthn I'd probably guess no to all phasers.
moritz_ from below: it's already executed, and notionally replaced by its return value
jnthn Right 12:49
The BEGIN block in a code sense maybe shouldn't actually make it into the compiled output in an ideal Perl 6 implementation.
masak moritz_: as I read it, you can goto things that haven't been parsed you, just like you can call subs that haven't been parsed yet. 12:50
s:2nd/you/yet/
bbkr masak: i expect to put generated snippets into following groups of results (rakudo / STD): "pass / pass", "pass / fail" (should go to RT), "fail / fail", "segfault / *", fail / pass". and the last group should be divided into smaller ones, like "nyi", "null PMC", "rakudo_works_fine_but_code_is_stupid", and so on...
masak bbkr: 'this code indeed parses fine but produces a runtime error (as expected)' 12:53
bbkr masak: exactly :)
moritz_ rakudo: $_ = q[you can goto things that haven't been parsed you, just like you can call subs that haven't been parsed yet.]; s:2nd/you/yet/; .print 12:54
p6eval rakudo bef86e: OUTPUT«you can goto things that haven't been parsed yet, just like you can call subs that haven't been parsed yet.»
moritz_ masak++ # writing working p6 code
masak :P 12:55
bbkr std: 804 - ;8
p6eval std 31912: OUTPUT«[31m===[0mSORRY![31m===[0m␤Bogus term at /tmp/fVjB7Q6BX_ line 1:␤------> [32m804 - [33m⏏[31m;8[0m␤Parse failed␤FAILED 00:01 113m␤»
masak moritz_: implementing :2nd
bbkr rakudo: 804 - ;8
masak moritz_++
p6eval rakudo bef86e: OUTPUT«===SORRY!===␤Confused at line 22, near "804 - ;8"␤»
12:59 araujo joined 13:07 zag joined 13:08 M_o_C joined, orafu joined 13:19 gbacon joined
moritz_ rakudo: my $s = 'a=1;b=2;c=3;a=4'; %h.push: $s.split(';')>>.split('='); say %h.perl 13:21
p6eval rakudo bef86e: OUTPUT«===SORRY!===␤Symbol '%h' not predeclared in <anonymous> (/tmp/neqUK7Xr6w:22)␤»
moritz_ rakudo: my $s = 'a=1;b=2;c=3;a=4'; my %h; %h.push: $s.split(';')>>.split('='); say %h.perl
p6eval rakudo bef86e: OUTPUT«{"a" => ["1", "4"], "b" => "2", "c" => "3"}␤»
masak moritz_: t/spec/S10-packages/basic.rakudo used to fail under my reverted enums patch. now it runs to completion. anything else with modules I could try? 13:22
moritz_ masak: pls used to segfault 13:23
masak oki, trying pls.
13:23 cls_bsd joined
bbkr std: :b 13:23
p6eval std 31912: OUTPUT«ok 00:01 111m␤»
moritz_ rakudo: :b 13:24
p6eval rakudo bef86e: ( no output )
bbkr std: 9;:_ # curious
p6eval std 31912: OUTPUT«ok 00:01 112m␤»
TimToady I note that std is now 96 revs out of date
anyone know why it's not recompiling? 13:25
moritz_ takes a look
bbkr std: ?5* 13:27
p6eval std 31912: OUTPUT«[31m===[0mSORRY![31m===[0m␤Bogus term at /tmp/GDcpOso_sk line 1 (EOF):␤------> [32m?5*[33m⏏[31m<EOL>[0m␤Parse failed␤FAILED 00:01 113m␤»
bbkr rakudo: ?5*
p6eval rakudo bef86e: OUTPUT«===SORRY!===␤Confused at line 22, near "?5*"␤»
moritz_ STAGE=0 ./viv -o stage1/Cursor.store --freeze Cursor.pm6 13:28
syml/CORE.lex.store not found; CORE setting has not yet been compiled.
This file must be generated using './std CORE.setting' or 'make' before STD.pm6
can be used.
colomon ingy: ping 13:29
masak moritz_: pls still segfaults :(
bbkr std: -Bb~*#B"
p6eval std 31912: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared name:␤ 'Bb' used at line 1␤Check failed␤FAILED 00:01 114m␤»
bbkr rakudo: -Bb~*#B"
p6eval rakudo bef86e: ( no output )
moritz_ cleaning out src/perl6/ and trying again... 13:30
masak bbkr: if you're going to keep doing that, you'll risk single-handedly reinstating the "Perl is line noise" myth :P 13:31
bbkr std: _~*.A
p6eval std 31912: OUTPUT«[31m===[0mSORRY![31m===[0m␤Undeclared name:␤ '_' used at line 1␤Check failed␤FAILED 00:01 114m␤»
moritz_ you can also /msg std: _~*.A
bbkr rakudo: _~*.A
p6eval rakudo bef86e: ( no output )
masak well, /msg p6eval std:
moritz_ ah right
bbkr ok, I will reduce eval noise. 13:32
masak thank you :)
bbkr should example above be reported?
masak if you can explain to us what it does. :)
moritz_ it calls a routine 13:33
called _
masak rakudo: _~*.A; say "alive"
p6eval rakudo bef86e: OUTPUT«alive␤»
moritz_ with an argument that is a curried, stringied method call
you know *.A
masak why is &_ defined?
moritz_ it shouldn't be
bbkr exactly, why?
moritz_ rakudo: _; say "alive"
masak bbkr: there's your bug.
p6eval rakudo bef86e: OUTPUT«Could not find sub &_␤ in main program body at line 22:/tmp/4p240eNSrS␤»
bbkr hmm 13:34
rakudo: _~1; say "alive"
p6eval rakudo bef86e: OUTPUT«Could not find sub &_␤ in main program body at line 22:/tmp/9xgRgdcVYm␤»
masak ooh! the whole thing is curried, and thus never run!
of course!
moritz_ but how is it parsed?
as _() ~ *.A?
masak moritz_: rakudo doesn't check for undeclared sub names.
moritz_: aye. 13:35
moritz_ but it shouldn't
should be _(~*.A), afaict
masak oh.
then that's the bug. :)
moritz_ because unknown identifiers should be treated as listops
no?
bbkr: have fun composing that ticket :-)
masak just copy all we say into it :) 13:36
moritz_: as far as I know, you're right.
about the listops thing.
moritz_ next error from STD.pm buil: 13:37
cp -r Actions.pm CORE.setting CursorBase.pmc DEBUG.pmc LazyMap.pm NAME.pmc NULL.lex RE_ast.pmc Stash.pmc mangle.pl std uniprops viv stage2/STD.pmc stage2/Cursor.pmc stage2/syml stage2/STD_P5.pmc lib tryfile teststd snap.new
cp: cannot stat `stage2/STD_P5.pmc': No such file or directory
make: *** [snap] Error 1
I don't know how to fix that
TimToady huh...
moritz_ stage2 contains 13:38
Cursor.pmc Cursor.store STD.pmc STD.store syml
13:38 thebird joined
TimToady mine contains: CORE.syml CursorBase.pm6.syml Cursor.pm6.syml DEBUG.pm6.syml NAME.pm6.syml NULL.lex.store Stash.pm6.syml STD.pm6.syml 13:38
but I note _P5 isn't one of those
13:39 tadzik joined
TimToady oh, not the syml 13:39
ENOCAFFEIN
moritz_ TimToady: does 'make snap' work for you?
TimToady ah, no it fails, so reproducable \\o/ 13:40
13:40 Holy_Cow joined
TimToady I'm too used to looking for green and red for failure :) 13:40
thanks, I can probably figger it out now 13:41
bbkr std: >0 # got another one :) 13:45
p6eval std 31912: OUTPUT«[31m===[0mSORRY![31m===[0m␤Preceding context expects a term, but found infix > instead at /tmp/0mayWeFrqi line 1:␤------> [32m<BOL>[33m⏏[31m>0 # got another one :)[0m␤Parse failed␤FAILED 00:01 112m␤»
bbkr rakudo: >0 # got another one :)
p6eval rakudo bef86e: OUTPUT«===SORRY!===␤Confused at line 22, near ">0 # got a"␤»
bbkr maybe no :(
TimToady heh, r31913 sez: [STDeco] Rework Makefile to make stages more similar to each other, also reduces 3 stages to 2. ** LIKELY BREAKS SNAPTEST AND STD-DIST ** 13:46
sorear: it appears to have broken make snap as well...
tadzik rakudo: (1 - i).cis 13:47
p6eval rakudo bef86e: OUTPUT«cis is only defined for Reals, you have a Complex()␤»
tadzik ...then why is it on the methods list?
moritz_ for giving a better error message?
colomon tadzik: Complex.cis gives you exactly that error message. 13:48
though it does seem a bit odd, now that I think about it. :\\ 13:49
tadzik that's a bit misleading imho. Creating a method just to say that the method is not available
colomon ah, yes, all the Real-only methods are defined in Numeric with stubs to give an error.
I have to admit that I never expected people would call .methods as a form of documentation. 13:50
tadzik well, couldn't they be defined in Real if they're Real-only?
colomon they are defined in Real.
tadzik ah, and Complex is also Real, right 13:51
colomon they are defined in Numeric strictly to give you a decent error message.
Complex is not Real!
masak rakudo: my $answer = 42 but role { method to_life_the_universe_and_everything { "The answer is ", self } }; say $answer.to_life_the_universe_and_everything
p6eval rakudo bef86e: OUTPUT«The answer is 42␤»
tadzik Real is a subset of Complex
colomon tadzik: not in Perl 6
tadzik um, what?
moritz_ we don't define our numeric types as subset types 13:52
colomon Real is the role that represents real numbers
moritz_ wouldn't be efficient
and would screw up multi dispatch in many ways
colomon Complex is a class which does Numeric but does not do Real
jnthn But p6l would admire you greatly for thinking that way. ;-)
tadzik I see
moritz_ jnthn: but p6c would shout at you :-) 13:53
masak studying &
jnthn And rightly so. :-)
colomon oh.
tadzik I'm studying too, I was just curious if Perl 6 can tell me the argument of a Complex number :] 13:54
moritz_ I'm pretty sure it can
colomon there's a very good reason .cis (and others) are defined on Numeric.
it's because there's a Cool.cis.
If there weren't a corresponding Numeric.cis, then when you called .cis on a Complex number, you'd cause an infinite recursion 13:55
moritz_ rakudo: say (2 + 2i).polar.perl
p6eval rakudo bef86e: OUTPUT«(2.82842712474619, 0.785398163397448)␤»
moritz_ the second number is the argument
tadzik hm 13:56
colomon star: say (2 + 2i).abs
p6eval star 2010.07: OUTPUT«2.82842712474619␤»
moritz_ I'm nearly sure there's a more direct way
tadzik moritz_: btw, is .succ and .pred on DateTime waiting to be implemented?
moritz_ but switching between Mathematica, Matlab and Perl 6 has totallys screwed my knowledge of function/method naming 13:57
tadzik: no idea
colomon moritz_: nope, no more direct way
tadzik moritz_: they're in the specs but not in Rakudo, can give it some love this evening
moritz_ tadzik: should be pretty easy to do
tadzik that's exactly what I thought
pmichaud good morning, #perl6 13:58
tadzik good afternoon pmichaud
jnthn morning, pmichaud
moritz_ \\o pmichaud
pmichaud this morning, we undefine Nil. 13:59
colomon o/
moritz_ is that spec again?
colomon pmichaud: I think you should have prefaced that with "Gentlemen." 14:00
pmichaud moritz_: it's at least speculated.
moritz_
.oO( nice pun )
jnthn pmichaud: oh lol
pmichaud: That's how I put in in ages back. :-) 14:01
<chuckle>
TimToady moritz_: working on the spec right now
moritz_ ++TimToady
pmichaud afk for a bit 14:02
moritz_ kinda loathes the idea to switch the test suite back to the previous state of Nil definedness 14:03
ah well
maybe we can just reduce it to one or two tests
TimToady masak complained, so he should fix 'em :)
moritz_ less redundancy, so that the next 5 back-and-forth changes go more smoothly *SCNR* :-) 14:04
14:04 perlygatekeeper joined
moritz_ I kinda agreed with masak++ 14:04
14:07 huf joined
bbkr about 1% of randomly generated strings is valid P6 code. that's probably highest ratio of all languages :) some of cool examples (I have no idea what they do): "|*/\\A", "^!:_", "~| [~0]", "*%?_".... :P 14:09
tadzik bbkr: what's the statistic from? 14:10
or where
moritz_ ^!:_ is easy to explain
colonpair plus two prefixes
bbkr tadzik: random chars passed to eval 14:11
tadzik: I'm trying to hunt down segfaults and differences between rakudo and STD 14:12
tadzik cool
pugssvn r32009 | lwall++ | [S02] revert Nil to undefined singleton value for masak++ et al.++ 14:13
r32009 | (Note, despite being a kind of "bottom", it is not a type as it was before.)
gfldex bbkr: did you try genetical stuff already too?
bbkr gfldex: no, I'm just brute-forcing compiler :) 14:14
gfldex while you are on it, take a random string that works and try to extend it with random stuff to let it grow 14:15
TimToady bbkr: at what length? surely as the length goes to Inf the percentage should approach 0, I'd think
bbkr TimToady: length 4..8 14:17
TimToady and what character set?
TimToady thinks APL would be much higher if you include APL chars 14:18
bbkr TimToady: ('a' .. 'b', 'A' .. 'B', 0 .. 2, '~', '!', '@', '$', '%', '^', '&', '*', '(', ')', '-', '_', '+', '=', '{', '[', '}', ']', '\\\\', '|', ':', ';', '\\'', '"', '<', ',', '>', '.', '?', '/', ' ').pick((4..8).pick, :replace) 14:19
TimToady And I'm quite certain that TECO would be higher yet :) 14:20
bbkr TECO?
TimToady Text Editor and COrrector
people used to type in their names to see what it would do 14:21
14:21 barika joined
pugssvn r32010 | qiuhw++ | [S02] typo fix. 14:21
arnsholt bbkr: That's character set is a bit skewed though
bbkr arnsholt: why? 14:22
TimToady for one, it leaves out the control characters, which TECO accepts :) 14:24
bbkr std: !2*2!,-1 # this passes on Rakudo. who can track bug reason?
p6eval std 31912: OUTPUT«[31m===[0mSORRY![31m===[0m␤Can't negate , because comma operators are not iffy enough at /tmp/JjBk81ERvd line 1:␤------> [32m!2*2!,[33m⏏[31m-1 # this passes on Rakudo. who can trac[0m␤Parse failed␤FAILED 00:01 113m␤»
bbkr rakudo: !2*2!,-1 # this passes on Rakudo. who can track bug reason?
p6eval rakudo bef86e: ( no output )
TimToady rakudo doesn't do the 'iffy' test, afaik 14:25
moritz_ bbkr: that's known; rakudo doesn't check meta operator composition
bbkr moritz_: thanks
pugssvn r32011 | moritz++ | [t/spec] update some Nil tests to reflect last spec change 14:26
TimToady an interesting unanswered question is whether interpolating Nil as () in a list should give a warning 14:27
to make people distinguish between "I'm not returning a value" and "I'm returning 0 values"
moritz_ as a syntactic warning? 14:28
TimToady I suspect it would have to be runtime
at least in some cases
moritz_ iiuc, { }.().defined would be False, right?
arnsholt Well, it's a bit limited in the region of non-punctuation. But for testing pathological places in the parser, it's probably quite useful I imagine
TimToady yes
moritz_ because empty statement lists return Nil, not ()
ok
bbkr rakudo: ^^0 # this one fails on STD.
p6eval rakudo bef86e: ( no output )
TimToady intentionally so 14:29
dalek kudo: 2f18a49 | pmichaud++ | :
<pre>m src/Perl6/Grammar.pm

   <pre style='white-space:pre-wrap;width:81ex'>Fix precedence of numeric bitshift operators; fixes RT #77232 (masak++).</pre>
jnthn std: ^^0
p6eval std 31912: OUTPUT«[31m===[0mSORRY![31m===[0m␤Expecting a term, but found either infix ^^ or redundant prefix ^␤ (to suppress this message, please use space between ^ ^) at /tmp/jn4DOYyPaK line 1:␤------> [32m^^[33m⏏[31m0[0m␤Parse failed␤FAILED 00:01 111m␤»
moritz_ that's another long known issue
it's the same for foo ~~ bar 14:30
which people often want to mean foo() ~~ bar
TimToady std: foo ~~ bar
pugssvn r32012 | pmichaud++ | [t/spec]: Add tests for RT #77232.
p6eval std 31912: OUTPUT«[31m===[0mSORRY![31m===[0m␤Expecting a term, but found either infix ~~ or redundant prefix ~␤ (to suppress this message, please use space between ~ ~) at /tmp/63Cn7BsE67 line 1:␤------> [32mfoo ~~[33m⏏[31m bar[0m␤Parse failed␤FAILED 00:01 114m␤»
TimToady yes, STD assumes that nobody in their right mind would apply certain prefix operators twice 14:31
since it helps catch some thinkos
moritz_ likes that attitude 14:32
TimToady it's the inside-out of "two terms in a row", though it's not as reliable
moritz_ but much more informative
bbkr will make a list of all "rakudo=pass, std=fail" cases found to avoid mess on the channel 14:33
TimToady well, two terms is also informative, if you count all the messages that start out as two terms and mutate into a different message based on context
well, actually, they start out "Confused", and usually mention "Two terms" along with more info 14:34
"Unexpected block" is also a two-terms variant 14:36
14:38 Alias joined 14:40 _jaldhar joined
bbkr (;~*) # who can explain how this awesome emoticon is parsed? semicolon inside bracket looks wrong, but STD says it's correct code 14:41
moritz_ it is; afaict it's a slice literal, which is NYI in rakudo 14:43
and ~* is just a curried prefix:~
TimToady bbkr: you can get the answer to such questions using viv -e
14:45 alester joined
bbkr TimToady: viv? what is it? 14:45
TimToady it runs STD and prints out the AST in (relatively) readable form 14:46
it's also used to bootstrap STD by emitting perl 5 code 14:47
bbkr TimToady: thanks, that will do :) 14:48
rakudo: *>2<~1 # known one (STD fails)? 14:49
p6eval rakudo bef86e: ( no output )
moritz_ std: *>2<~1 14:50
p6eval std 31912: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unable to parse quote-words subscript; couldn't find right angle quote at /tmp/esxgq7oNYH line 1:␤------> [32m*>2<[33m⏏[31m~1[0m␤ expecting escape␤Parse failed␤FAILED 00:01 113m␤»
14:50 pyrimidine joined
alester In case you missed it, vim users now get Perl 6 support out of the box. perlbuzz.com/2010/08/vim-73-supports-perl-6.html 14:52
14:53 achromic joined
alester Might be nice to have a pointer to that for the newbies. 14:53
If we have some kind of canonical "Hi, welcome to Perl 6" document.
mathw nice
14:58 REPLeffect joined
TimToady hmm, if arrays and hashes can usefully be undefined now, then we should probably make //= look for a list instead of an item like normal = does 14:59
TimToady wonders if all op= should follow the = rule for $ on the left
15:00 lichtkind_ joined, fod joined
moritz_ is in favor of killing item assignment 15:01
TimToady and even now, @foo ||= 1,2,3 doesn't dwim 15:02
at least, in STD
alester TimToady: If arrays can be "usefully unassigned", what would be the diff between my @foo; and my @foo = (); ?
TimToady rakudo: my @foo ||= 1,2,3; say @foo
p6eval rakudo 2f18a4: OUTPUT«1␤»
TimToady alester: whether @foo.defined returned False or True 15:03
alester But a shift @foo would still return the same undef. 15:04
TimToady with the recent Nil change, you can undefine @foo by saying @foo = Nil;
alester I just smell potential Surprise, but I can't think of an example.
TimToady well, shifting something that isn't there is likely to return a Failure 15:05
alester "isn't there" meaning the case of @foo = Nil? 15:06
TimToady but the error inside the Failure might differ depending on whether @foo is defined or not
alester Maybe I don't know of this Failure.
TimToady well, in that case, the array "isn't there", and in the other case, .[0] isn't there
so in the first case you might get "Can't use .shift on an undefined array" 15:07
rather than "Can't shift an empty array" or whatever it returns now 15:08
rakudo: say ~shift(my @x);
p6eval rakudo 2f18a4: OUTPUT«Undefined value shifted from empty list␤ in main program body at line 1␤»
TimToady rakudo: say shift(my @x); 15:12
p6eval rakudo 2f18a4: ( no output )
moritz_ TimToady: S05 mentions that :samespace works on :s-induced <.ws> matches. How are those identified after the regex has been compiled? 15:15
or is that a fossile?
pmichaud rakudo: my @x; say @x.shift ~~ Failure 15:18
p6eval rakudo 2f18a4: OUTPUT«1␤»
pmichaud currently shifting an empty array does return Failure -- p6eval just doesn't show the failure messages for some reason.
pmichaud@plum:~/rakudo$ ./perl6 15:19
> my @x; say @x.shift;
===SORRY!===
Undefined value shifted from empty list
moritz_ p6eval doesn't use the REPL
does it make a difference if you use a file?
pmichaud hmmmm
apparently it does
that's a bug.
looks like stringification of the Failure via 'say' doesn't throw the exception :-| 15:20
TimToady shouldn't, probably 15:21
pmurias TimToady: did you figure out what construct result in control graph edges?
TimToady should format the Failure though
moritz_ is it a .Str vs. get_string vtable distinction
?
TimToady pmurias: I made some remarks
pmichaud moritz_: likely. I've started to redo get_string and Stringy several times but keep running into ickiness
moritz_ surprise, surprise
TimToady but basically, everything is a lambda, and if you don't know you're current language, you don't know what is interpreting the lambdas 15:22
*your
15:22 molaf joined
TimToady Stringy is for use later in the program as a string, so throws an exception on a Failure 15:23
Str is low-level, make it a string any way you can for printing it out
pmichaud right
TimToady hence Stringy autothreads, but Str doesn't
pmichaud I'm not sure what Parrot's get_string vtable should default to. 15:24
TimToady rakudo: say any(1,2)
p6eval rakudo 2f18a4: OUTPUT«any(1, 2)␤»
TimToady rakudo: say ~any(1,2)
p6eval rakudo 2f18a4: OUTPUT«any(1, 2)␤»
TimToady hmm, I guess that doesn't show the difference
pmichaud that second should've been any("1","2")
oh, maybe not
rakudo: say any(1,2).perl 15:25
p6eval rakudo 2f18a4: OUTPUT«any(1, 2)␤»
pmichaud rakudo: say (~any(1,2)).perl
p6eval rakudo 2f18a4: OUTPUT«"any(1, 2)"␤»
pmichaud heh
TimToady er
pmichaud that second one should've been any("1", "2"), per spec
(I agree that Rakudo gets it wrong currently)
TimToady pmurias: as for which constructs might throw control exceptions, that's difficult to know without explicit trait declarations 15:27
and any construct might throw an error exception, but I think you can ignore those for basic blocks, unless you're moving code outside the scope of a CATCH 15:28
15:28 ovle joined
pmurias TimToady: any other ways to control flow other than (error/control) exceptions and loops and contionals? 15:31
exit, and shortcircuting stuff &&,|| comes to my mind 15:32
ovle given a set of integers, does some nonempty subset of them sum to 0?
moritz_ yes
rakudo: say [+] 0; 15:33
p6eval rakudo 2f18a4: OUTPUT«0␤»
moritz_ rakudo: say [+] -1, 1;
p6eval rakudo 2f18a4: OUTPUT«0␤»
moritz_ ovle: now that I've answered your homework questions, will you fix a bug in Rakudo? 15:34
15:35 thebird joined
ovle not a homework per se but www.getacoder.com/projects/solve%20...32036.html 15:35
that:D
moritz_ oh, of a particular subset of integers 15:36
ovle yes
moritz_ ah well
pmurias TimToady: {my $x=3;this_throws_an_exception;CATCH {}};if ($x != 3) {} #we can't optimize this out}
ovle the usual linear machine solver solves it as long as the problem is small
not that it should solve it in P though 15:37
pmurias TimToady: but just having a edge from each call to the CATCH should be enough
15:37 rbuels joined
bbkr rakudo: */\\*2 # fails on STD 15:41
p6eval rakudo 2f18a4: OUTPUT«===SORRY!===␤Confused at line 22, near "*/\\\\*2 # fa"␤»
bbkr hmm
nvm
rakudo: <a>.WHAT.say; <a b>.WHAT.say; # looks like a bug. type should be independent of values amount, right? 15:47
p6eval rakudo 2f18a4: OUTPUT«Str()␤Parcel()␤»
15:48 kst joined
moritz_ no, rakudo is right here 15:48
it's spec.
bbkr moritz++ 15:49
15:50 tylercurtis joined
TimToady rakudo: <1/2>.WHAT.say 15:55
p6eval rakudo 2f18a4: OUTPUT«Str()␤»
TimToady but it's wrong there :)
rakudo: <1>.WHAT.say
p6eval rakudo 2f18a4: OUTPUT«Str()␤»
TimToady and there 15:56
moritz_ rakudo isn't smart about those yet, true
TimToady moritz_: re <.ws>, perhaps there should be some flag that tells it to use <ws> instead. or maybe :ss should have that effect internally 15:59
or :ss just rewrites the regex somehow 16:00
moritz_ capturing <ws> seems doable
rewriting the regex... NNOOOOO
recompilation is evil, no? 16:01
TimToady we have to capture the words too
maybe .chunks does something smart 16:02
or something like .chunks 16:03
moritz_ which words?
TimToady the words between the spaces
though it's not clear how this interacts with bracketing 16:04
moritz_ we know the original string, the match object, and if we also know what the automagic <.ws> matched, we're done
TimToady in STD, that info is available from @*MEMOS, but rakudo doesn't have that 16:05
perhaps the easiest thing would be to say that .chunks pays attention to :s 16:06
and sends matched whitespace through as separate chunks
though it would be suboptimal to have to rescan chunks to see if they're whitespace 16:07
espec since some of them might not have been matched by <.ws>
moritz_ what about dumbing down :samespace to just apply filtering to any matched whitespace? 16:08
TimToady so I think there's probably a missing method
well, that's a possibility that has the same effect till you want to get fancy
and probably covers most of the use cases 16:09
moritz_ there's also a module for "fancy" stuff
s/also/always/
at least if somebody writes one :-)
TimToady so just split(/(\\s+)/) and assume
moritz_ wfm
TimToady probably okay for now, and we can think about extending it elsewise 16:10
just seems silly to rescan
moritz_ otoh it seems silly to store that much information on all Match objects, if most will never use it 16:11
bbkr rakudo: %()==B # does this code segfault locally for you ?
p6eval rakudo 2f18a4: ( no output ) 16:12
moritz_ bbkr: there's a segfault for things related to %() in RT
so no surprise here
bbkr moritz_: I cannot find it, but I'm glad it's reported. thanks again. 16:15
moritz_ lol I blogged: perlgeek.de/blog-en/perl-6/state-of...fiers.html 16:16
16:17 ruoso joined, risou joined
moritz_ bbkr: rt.perl.org/rt3/Ticket/Display.html?id=75502 but it's probably not what I had in mind 16:18
16:21 justatheory joined
bbkr rakudo: &2<+*+a # another one from "STD does not parse it" series 16:23
p6eval rakudo 2f18a4: ( no output )
TimToady you already had an unmatched < postfix before
moritz_ same as the previous one involving < without a space before it
16:24 kst joined, isBEKaml joined
masak swimming & 16:26
bbkr rakudo: $?:: # known? 16:32
p6eval rakudo 2f18a4: ( no output )
TimToady std: $?:: 16:33
p6eval std 31912: OUTPUT«[31m===[0mSORRY![31m===[0m␤Bogus statement at /tmp/wRPEja655t line 1:␤------> [32m<BOL>[33m⏏[31m$?::[0m␤Parse failed␤FAILED 00:01 114m␤»
moritz_ no idea. 16:34
16:35 timbunce joined 16:42 macroron joined 16:44 Axius joined
bbkr rakudo: say |3 # what does prefix:<|> do? 16:46
p6eval rakudo 2f18a4: OUTPUT«3␤»
moritz_ interpolate data structures into captures 16:47
TimToady in this case it's a no-op
moritz_ rakudo: sub f($x, $y) { say "$x|$y" }; my @a = 1, 2; f(@a)
rakudo: sub f($x, $y) { say "$x|$y" }; my @a = 1, 2; f(|@a)
p6eval rakudo 2f18a4: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤ in 'f' at line 22:/tmp/xPgnND0R3T␤ in main program body at line 22:/tmp/xPgnND0R3T␤»
rakudo 2f18a4: OUTPUT«1|2␤»
bbkr gets it, thanks 16:48
TimToady since we changed coercions from .as(Foo) to just .Foo, I suppose .as is again available to mean .fmt
moritz_ (mostly off-topic, sorry) news.ycombinator.com/item?id=1607995 is fascinating. Before I wrote my reply about trolls, that phython comment had a reputation of +3. It has -1 now 16:49
people think it's funny, until they realize that it's just mindless trolling, and to be discouraged 16:50
16:54 drdanger joined 16:55 fod joined
moritz_ -> afk 16:55
16:55 Guest23195 joined
lichtkind is it true that rakudo * releases will come now frewuently? 16:59
[particle] lichtkind: yes, monthly 17:00
lichtkind thnanks 17:01
[particle]: good errortolerant read :) 17:02
[particle] :)
Su-Shee I thought rakudo comes monthly and rakudo * quarterly (or so)? 17:15
jnthn Su-Shee: I expect we'll drop to less frequent Rakudo * releases in the long run. 17:19
Su-Shee: But monthly lets us get improvements and bug fixes from the first R* into people's hands sooner. 17:20
And it's nice to look responsive. :-)
bbkr rakudo: .?foo # according to spec this should silently fail if $_ is Any()?
p6eval rakudo 2f18a4: ( no output )
Su-Shee jnthn: or have quarterly stables and monthly bleeders :) 17:21
jnthn bbkr: You've already said it's OK for there not to be a method there, so it shoudln't fail noisily. 17:24
.?foo is like "call a foo on $_ if there is one. If not, who cares." 17:25
17:25 plobsing joined
tylercurtis rakudo: .?foo.WHAT.say 17:25
p6eval rakudo 2f18a4: OUTPUT«Parcel()␤»
pmichaud that's likely to become "Nil"
jnthn It's most useful when you have objects where a role mighta been mixed into them to provide some method.
pmichaud: +1 17:26
bbkr jnthn: but it's different situation if class exist but does not have method and situation where class doesn't exist at all. I wanted to be sure.
pmichaud (in the case of a .? call to a non-existent method)
jnthn ..."class exist"?
Any is decidedly an existing class. :-)
tylercurtis bbkr: $_ always exists. It just might be undefined. 17:27
bbkr jnthn: indeed! thanks. I'm still back in P5 thinking sometimes with "undef"s
jnthn :-) 17:28
TimToady I think we should also say that any method called on Nil is Nil 17:29
pmichaud wfm
jnthn TimToady: er 17:30
Nil.perl ?
Nil.ACCEPTS
Or you mena "methods that are not defined"?
17:33 dha joined 17:36 molaf joined
Su-Shee moritz_: you're on hackernews. 17:41
ah forget it you noticed. ;)
bbkr rakudo: +1.sin before die for any { :food but pi.e} # poetry :))) 17:47
p6eval rakudo 2f18a4: OUTPUT«Died␤␤ in main program body at line 22:/tmp/RVAK0oel3L␤»
pugssvn r32013 | lwall++ | [S02] spec which methods Nil responds to, 17:50
r32013 | and that it propagates Nil on unrecognized methods
r32014 | lwall++ | [S02,S03] allow Nil to smartmatch a Nil 17:54
dalek kudo: b647188 | pmichaud++ | :
<pre>m build/PARROT_REVISION

   <pre style='white-space:pre-wrap;width:81ex'>Bump PARROT_REVISION in preparation for Parrot release.</pre>
17:56
17:57 _jaldhar joined 17:58 gbacon joined 18:01 s1n joined
colomon oh my, is it release week? 18:05
dang, it is.
ingy :D 18:10
colomon ingy: that script you were timing yesterday -- it is available / easy to use? 18:11
I was thinking I might take a stab at trying to optimize it.
ingy colomon: sure... 18:12
one sec
git clone git://github.com/ingydotnet/testml-pm6.git && cd testml-pm6 && ufo && make test 18:13
:P
colomon is make test what you were timing 18:14
ingy git clone git://github.com/ingydotnet/testml-pm6.git && cd testml-pm6 && ufo && time make test
:)
colomon: I had a couple ideas 18:15
each test has to do a p6r parse
I was wondering if || was faster than |
because all my | are really || 18:16
18:16 osfameron joined
ingy also I could turn <foo> into <.foo> a lot 18:16
18:16 cotto_work joined
ingy would that help you think? 18:16
osfameron jnthn: hi! we don't seem to have an authorization form to publish video of "Perl 6 Signatures" from YAPC::EU 2010. If you would like us to, could you email yapc-info@perl.it to let us know? 18:17
pmichaud currently in rakudo, || and | are equivalent.
osfameron: +1
ingy guess that anwsers that :)
pmichaud osfameron: publishing that talk would be seriously awesome
eventually | should probably end up being faster
colomon ingy: I've no idea. I was thinking more of rakudo optimizations that would help your code... ;) 18:18
ingy I thought | was ltm and || was no ltm
pmichaud it is
and for that reason, | may end up being a bit faster
(eventually)
ingy faster than what?
pmichaud faster than ||
osfameron pmichaud: it certainly would ;-) but we're trying to be "correct" and make sure we get full confirmation before publishing :-)
(the talk is transcoded, and sitting in a holding area at yapc.tv/presentingperl, ready to be put online once we get it) 18:19
pmichaud osfameron: right -- I'm just happy that talk is being actively worked on
ingy ltm is faster than short circuit alternation??
pmichaud ltm should avoid any false paths altogether
osfameron is masak here? 18:20
pmichaud osfameron: that one talk is the one I most desire to see available :-)
colomon ingy: okay, I seem to have a build.... errr... should make test have errors?
afk
ingy colomon: gist it
osfameron seen masak
ingy make test should not have errors
colomon: I was using rakudo*, fyi
osfameron meh. I have a talk to chase up for him too (the Perl6, prince of Parsea one)
pmichaud masak is usually around 18:21
I'll leave messages for them... one moment
phenny: tell jnthn osfameron would like to get an authorization form to publish the video of your "Perl 6 Signatures" talk at YAPC::EU 2010 -- please email yapc-info@perl.it with permission (or refusal)
phenny pmichaud: I'll pass that on when jnthn is around.
pmichaud phenny: tell masak osfameron would like to get an authorization form to publish the video of your "Perl 6 -- Prince of Parsea" talk at YAPC::EU 2010 -- please email yapc-info@perl.it with permission (or refusal) 18:22
phenny pmichaud: I'll pass that on when masak is around.
pmichaud osfameron: there you go... should get emails very soon
osfameron fantastic, thanks!
18:24 ruoso joined
jnthn osfameron: You have my permission - would you like an email too? 18:32
phenny jnthn: 18:21Z <pmichaud> tell jnthn osfameron would like to get an authorization form to publish the video of your "Perl 6 Signatures" talk at YAPC::EU 2010 -- please email yapc-info@perl.it with permission (or refusal)
osfameron jnthn: yes please, if that's ok :-) 18:33
jnthn osfameron: Doing it. Want me to suggest a license? 18:35
osfameron: sent email 18:36
osfameron jnthn: I think the forms suggested a CC license, but if you've suggested a different one, then we'd try to accommodate 18:37
pmichaud hmmm, just found an nqp-rx misoptimization 18:38
jnthn osfameron: It's a CC one.
But htere's more than one type of CC :-)
osfameron this is true :-)
jnthn pmichaud: oh?
pmichaud jnthn: yes, I'm looking through the generated code from nqp-rx.... I've added a switch to use ord instead of 1-char substr for single-character-literal checks... 18:39
osfameron I think we only suggested one, as there isn't a great deal of infrastructure yet to record/pass on licenses between ACT->yapc.tv/presentingperl.org
pmichaud but I also notice it's putting in backtracking code for subrules inside of :ratchet
which it shouldn't be doing, of course.
osfameron (i.e. ACT *now* has a flag for "yes, you can use my video", which will be useful for the *next* conference... and still doesn't specify license)
jnthn pmichaud: Oh, ouch. 18:40
18:45 dwierenga joined
pmichaud ah, I see what's happening. Interesting 18:49
so, here's a question
is token { <abc>* } the same as regex { [ <abc>* ]: } or regex { [ <abc>: ]*: } ? 18:50
18:53 PenThrive joined 18:56 masak joined 18:57 tadzik joined
gfldex std: say &Any::can.signature; 18:58
p6eval std 31912: OUTPUT«ok 00:01 117m␤»
gfldex rakudo: say &Any::can.signature;
p6eval rakudo b64718: OUTPUT«Null PMC access in find_method('!signature')␤ in main program body at line 1␤»
gfldex oi!
is that planned?
masak gfldex: .can is probably not an 'our' method.
phenny masak: 18:22Z <pmichaud> tell masak osfameron would like to get an authorization form to publish the video of your "Perl 6 -- Prince of Parsea" talk at YAPC::EU 2010 -- please email yapc-info@perl.it with permission (or refusal)
masak so that's equivalent to it not finding anything.
jnthn Aye, and there's an RT for the NPMCA already.
masak rakudo: &Any::bllllrgh
p6eval rakudo b64718: ( no output )
masak rakudo: &Any::bllllrgh.signature 18:59
pugssvn r32015 | pmichaud++ | [misc/pm.txt] Provide (non-)answers generated for Pm-21 and Pm-22.
p6eval rakudo b64718: OUTPUT«Null PMC access in find_method('!signature')␤ in main program body at line 1␤»
gfldex good good
pmichaud I know that package variable looks need to be whence-ified, planning to do that soon.
pugssvn r32016 | pmichaud++ | [pm.txt]: Add Pm-23:
r32016 |
r32016 | Pm-23: Should TOP (or any other grammar regex) be considered
r32016 | to have implied $-anchors when invoked from .parse?
r32016 | (See RT #77022.)
r32017 | pmichaud++ | [misc/pm.txt]: Add Pm-24 about ratcheting on quantified subrules.
r32017 |
r32017 | Pm-24: Is token { <abc>* }
r32017 | the same as regex { [ <abc>* ]: }
r32017 | or regex { [ <abc>: ]*: } ?
gfldex is there any way to get hold of the signature of can then? 19:00
pmichaud rakudo: say Any.can('can').signature # perhaps?
p6eval rakudo b64718: OUTPUT«get_attr_str() not implemented in class 'Sub'␤ in main program body at line 1␤»
pmichaud closer :-)
rakudo: say Any.can('can').WHAT
p6eval rakudo b64718: OUTPUT«Code()␤»
jnthn can is still in PIR I guess 19:01
gfldex i doubt it would help to unPIR it
jnthn ? 19:02
gfldex class A { method m1(){}; }; my $o = A.new(); say 'yes' if &A::1 == $o.can('m1);
rakudo: class A { method m1(){}; }; my $o = A.new(); say 'yes' if &A::1 == $o.can('m1);
p6eval rakudo b64718: OUTPUT«===SORRY!===␤Confused at line 22, near "say 'yes' "␤»
colomon ingy: gist.github.com/527534 19:03
jnthn gfldex: No no, I meant the Any.can('can').signature not working
gfldex rakudo: class A { method m1(){}; }; my $o = A.new(); say 'yes' if &A::m1 == $o.can('m1);
p6eval rakudo b64718: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22␤»
gfldex rakudo: class A { method m1(){}; }; my $o = A.new(); say 'yes' if &A::m1 == $o.can('m1');
p6eval rakudo b64718: OUTPUT«No applicable candidates found to dispatch to for 'infix:<==>'. Available candidates are:␤:(Any $x?)␤:(Int $a, Int $b)␤:(Num $a, Num $b)␤:(Date $a, Date $b)␤:(Real $a, Real $b)␤:(Numeric $a, Numeric $b)␤:(Any $a, Any $b)␤␤ in main program body at line 22:/tmp/Eqa3oiYNxM␤»
ingy colomon: looking 19:04
19:04 dha left
gfldex what i mean is that *.can('somemeth') does not return the same thing then &*::somemeth 19:04
and you dont even have to break it intentinally with supersede :)
ingy colomon: sorry. git clone git://github.com/ingydotnet/testml-tml.git 19:06
colomon: next to the testml-pm6 clone
colomon: should be fine then...
colomon oh, I had the wrong repo altogether?!
jnthn gfldex: Right, but that is correct.
ingy colomon: no, you need both 19:07
colomon or do I need both for the one to work?
gotcha.
do I need to build it, or just have it sitting there?
jnthn gfldex: Methods are not our-scoped by default.
ovle ok pmichaud and i were discussing about a new logo for rakudo
ingy colomon: testml-tml has the common test suite for Perl6 Perl5 Python, etc
ovle pmichaud wants a theme to do with plants
anyone else has ideas?
ingy colomon: looks like you got other failures though :\\ 19:08
pmichaud that's not exactly what I said. :)
colomon ingy: testing now, will have an update in a moment. 19:09
ingy colomon: gist me the new results
ovle ok
colomon ingy: will as soon as I have them.
ovle so what do you want?
do you want to keep the original logo and add another theme on top of it?
using plants or something
pmichaud I said of the candidates you gave, I'd tend to want to go with the ones that have some sort of plant, in keeping with Rakudo's "paradise" theme
colomon ingy: the open messages have gone away, but there's still a lot of fail
ovle so you want to keep theoriginal rakudo paradise logo? 19:10
sorear good * #perl6
ovle and add something else?
tadzik hello
sorear pmichaud: I interpret /:r <foo>* / as / [ <foo>: ]*: /
colomon ingy: gist.github.com/527534 (again, it's updated)
pmichaud I don't have a strong opinion about what the logo should be. I do have some opinions about what it should not be, however.
jnthn "hot pink" :-) 19:11
frettled is that a plant?
ovle so i can draw anything i want with a plant theme?
frettled (har har har)
ovle i was actually thinking of a more complicated desig 19:12
something like tesselations
of R
gfldex rakudo: class A { method m1(){};}; my $a = A.new; say $a.can('m1').WHAT;
masak TimToady++ # Nil propagates down method call chains
pmichaud I'd probably want a more zen-like image; something simple
p6eval rakudo b64718: OUTPUT«Method 'WHAT' not found for invocant of class 'P6Invocation'␤ in main program body at line 22:/tmp/xxGbmjzLSP␤»
ovle or R evolving into .. something
gfldex should P6Invocation have .WHAT?
pmichaud I tend to want elegance more than complexity
(they aren't mutually exclusive, but elegance tends towards simplicity I think) 19:13
masak Nil is starting to sound like the ultimate narcissism object :)
"Nil.ACCEPTS matches only on Nil" :)
frettled pmichaud: perhaps something that says "KISS"? :)
pmichaud I'm more convinced that Nil is more like a singleton type object :)
anyway, I'm going to do the Nil conversion shortly and see what we get 19:14
ovle elegance exists in complexity too, escher prooved it
but ok you want simple zenlike stuff
tadzik rakudo: $_ = 'ab12fg34'; s:g/\\d/X/; say 'alive';
TimToady STD's CORE.setting has: constant Nil = Parcel;
p6eval rakudo b64718: OUTPUT«alive␤»
ovle im going to do this in pencil
tadzik hrm, doesn't work locally 19:15
ovle and like you said b&w
just on paper
ok?
pugssvn r32018 | lwall++ | [CORE.setting] constant Nil = Parcel;
TimToady well, now it does :)
sorear TimToady: oops.
pmichaud ovle: sure, I'm always willing to look at candidates. I'm not willing to commit to anything until I see something I really feel strongly about :)
ovle ok
i'll see what i can do in the next hr
TimToady sorear: I'll let you fix that.
pmichaud TimToady: I'm thinking class Nil is Parcel { method new(*@_) { self } } or something like that 19:16
ovle brb
pmichaud that way Nil.ACCEPTS does the right thing
and attempting to create a Nil object always returns Nil :-)
anyway, I'll start with that and see where the errors crop up :-) 19:17
colomon ingy:
Wynne:testml-pm6 colomon$ env PERL6LIB=/Users/colomon/tools/testml-pm6/blib/lib:/Users/colomon/tools/testml-pm6/lib: /Users/colomon/tools/rakudo/perl6 t/arguments.t
1..2
# Looks like you planned 2 tests, but ran 0
TimToady well, if you do that, it's possible also that class Failure is Nil 19:18
but not sure that Failure ~~ Nil makes sense
ingy colomon: can you try rakudo *? 19:19
pmichaud I'm not sure I see the relationship between Failure and Nil
frettled ovle++ for the effort
pmichaud yes, ovle++
19:19 scott12358 joined
colomon ingy: not easily on this machine, but give me a minute... 19:19
pmichaud anyway, I'll try it and we'll see where the errors pop up :-)
dalek p-rx: e91bc31 | pmichaud++ | :
<pre>m build/PARROT_REVISION

   <pre style='white-space:pre-wrap;width:81ex'>Bump PARROT_REVISION to be closer to 2.7.0 release.</pre>
p-rx: 90e0bcd | pmichaud++ | :
<pre>m src/PAST/Compiler-Regex.pir

   <pre style='white-space:pre-wrap;width:81ex'>Refactor case-insensitive literals in preparation for other improvements.</pre>
p-rx: 6ab1f66 | pmichaud++ | :
<pre>m src/PAST/Compiler-Regex.pir

   <pre style='white-space:pre-wrap;width:81ex'>Optimize single-character constant literal tests to use 'ord' instead of 'substr'.</pre>
TimToady Nil could be what confers undefinedness on Failure objects
p-rx: 2a8a5a9 | pmichaud++ | :
<pre>m src/stage0/HLL-s0.pir

m src/stage0/P6Regex-s0.pir m src/stage0/Regex-s0.pir
  </pre>
   <pre style='white-space:pre-wrap;width:81ex'>Update bootstrap.</pre>
19:20 cjfields joined, cjfields left
pmichaud so far Failure still feels more role-like to me than class-like. But it's never fit cleanly in Rakudo yet. 19:20
s/never/not/ 19:21
19:21 pyrimidine joined
TimToady nodnod 19:21
maybe Nil is the only value that can be created from type NIL, or some such 19:22
pmichaud perhaps. But Nil still feels like a type object. In most ways it acts like a type object, although I'm sure I'm missing a few cases.
I guess it's different in list context 19:23
TimToady well, I'm not sure we want people deriving from it, and we'd like to keep the check for it very efficient
pmichaud well, checking for a type object can be pretty efficient.
and maybe "don't derive from it" is "Doctor it hurts when I..."
because they could just as easily derive from NIL :-) 19:24
TimToady I'm of two minds whether it (and Parcel) should hang outside of Any
jnthn If the check for the type object is a low-level-y "does the repr consider this defined" then yes, it can be quite cheap. :-)
pmichaud I'm pretty sure that Parcel wants to be ~~ Any
I think I can see the other side of that argument too, but so far it fits more naturally as Any. 19:25
TimToady I guess that gets you list coercions for free, maybe
pmichaud right, as well as the fact that Parcel also wants to be Iterable
TimToady but then you don't get warned
19:25 zachy joined, mberends joined
colomon ingy: well, bother. I thought I had R* installed on my Windows box, and the directory is certainly there, but I can't find any sign of a perl6 executable. 19:25
pmichaud (although Iterable can be a role.... but in Rakudo it works out more cleanly as a class so far) 19:26
ingy colomon: windows? 19:28
colomon ingy: my main machine is os x
ingy colomon: I'm using os x too
pmichaud 19:10 <sorear> pmichaud: I interpret /:r <foo>* / as / [ <foo>: ]*: /
sorear: good to know... if we get concurrence from TimToady++ then I'll gladly fix nqp-rx to match :-) 19:29
ingy colomon: are you running make test on win or mac?
ingy confused
colomon ingy: on mac
ingy ok
colomon ingy: I've got a full rakudo development environment set up on the mac rather than rakudo star.
ingy: I thought I had R* on the windows box, which is why I tried it. 19:30
does TestML maybe depend on some other module I don't have installed?
ingy colomon: I don't think so 19:31
colomon: should be easy to install r* then for a bit 19:33
TimToady pmichaud: re <foo>*, certainly that's how STD works currently 19:35
anything in the scope of a ratchet assumes it can throw away anything after the first Cursor 19:36
colomon ingy: sorry to leave you hanging, but I should probably be doing $work rather than trying install r* atm. :( 19:38
ingy colomon: yeah, TestML doesn't dep on anything but Test.pm
19:39 nimiezko joined
ingy colomon: sorry to leave you hanging as well but I decided to not work on p6 for the week! 19:39
19:52 Mowah joined 19:57 sftp joined
mberends \\o/ github.com/jnthn/6model ports to Mono and Linux with only very minor tweaking 20:01
ovle ok i have some done in black ink and pencil 20:05
pmichaud there?
pmichaud ovle: yes, here :) 20:06
ovle i did about 6 20:08
frettled nice!
20:09 Su-Shee joined
tadzik where is DateTime in Rakudo source? 20:10
jnthn mberends: Oh? 20:11
Yay!
frettled tadzik: in lib/
ovle i33.tinypic.com/j9ltzr.jpg
frettled tadzik: if you're on a Unix-like system, try "find . -name 'DateTime*'" from the Rakudo source dir. 20:12
jnthn mberends: Feel free to push those tweaks.
tadzik frettled: the thing is, it gives me no results 20:13
ovle i33.tinypic.com/op7fvr.jpg 20:14
pmichaud of the ones I've seen, I like this one the best :-)
ovle the leaf over the R? 20:15
tadzik the leaves are the reference to the Paradise?
pmichaud the op7fvr.jpg
ovle ah
the leaf just denotes earth 20:16
[particle] i don't like the marijuana leaf over the r
frettled tadzik: hmm, after a fresh git clone, I get the same result.
[particle] it looks too much like marijuana, anyway
ovle oh shit lol i didnt want it looking like that, think it was coincedental
jnthn We have high goals for Rakudo.
;-) 20:17
ovle that logo if i replace it with another leafe
huf this looks like bay leaves. not marijuana
Tene [particle]: I thought so too at first, but then I asked google for marijuana leaves, and it doesn't look much the same.
frettled I thought it looked a bit like a maple leaf.
huf look it up guys...
ovle it should be interesting if you can make the leaf transparent in ps
Tene So really I'm just not familiar with marijuana.
It seemed to suggest that to several people in the channel, though, so it's not just me.
ovle but the idea is to make the leaf transparent over the R
[particle] well, anyway i think rakudo logo should shy away with any symbols that bring the number 5 to mind
it doesn't necessarially have to be a symbol/logo that brings number 6 to mind, but shy away from 5. 20:18
ovle i didnt draw a 5
[particle] the leaf had five points 20:19
fingers?
whatever leaves have.
Su-Shee that's clearly bay/laurel. not marijuana or maple.
frettled ovle: beware of mines ;) 20:20
ovle so should i draw more centered around leaves
or something else/
[particle] Su-Shee: yes, it doesn't look exactly like marijuana, just reminiscent. 20:21
frettled ovle: let your creativity flow
ovle i guess so, maybe tonight a few more 20:23
[particle] this is for rakudo, not rakudo star, correct?
20:23 hercynium joined
ovle just for rakudo 20:24
frettled ovle: the next statement from me is something I would like you to skip reading until you have come up with a few more ideas yourself. 20:25
[particle] i wonder if the various distribution logos will be based on rakudo compiler logo, like kubuntu et al on ubuntu
tadzik Rakuntu? 20:26
Su-Shee *hahaha* :)
tadzik oh, I see what you mean
alternative Perl 6 distros?
frettled ovle: nopaste.snit.ch/22834
Su-Shee tadzik: I want rakware then. ;)
pmichaud or even different distros within the Rakudo family
[particle] yes, why would there only be rakudo star as a distro?
right, that's what i mean
jnthn tadzik: lol! :-)
Su-Shee rabian, rak hat, ruse ;)
[particle] like vanilla, strawberry, chocolate perl
ovle whats the rakudo compiler logo 20:27
[particle] that's what you're designing now :)
tadzik [particle]: I now feel tempted to create mine :)
[particle] tadzik++ # coopetition is good!
ovle ah ok
Su-Shee well with "rakudo from scratch" everybody can has his/her own :)
tadzik [particle]: I like the work, coopetition 20:28
[particle] :)
tadzik Su-Shee: :)
alright, but duties first. Where is the DateTime source?
moritz_ src/core/Temporal.pm I think 20:29
tadzik there we go. moritz_++
frettled duh
frettled forgot about the convenient rename.
tadzik oh, .succ are only for Date, not DateTime, and they are implemented 20:32
diakopter sorear: the STD-on-windows problems had nothing to do with filesystem. 20:35
ovle frettled: what was the link about
the butterfly idea was already in place, i drew one before but pmichaud didnt quite like the idea 20:36
maybe in color it would've come out better but it was the letters rakudo placed on grass with leaves and bugs around it, with a butterfly sitting on one of the letters
tadzik Rakudo with bugs around :) 20:38
ovle hah
frettled heh
ovle: it was in case the obvious hadn't been mentioned, but I didn't want to distract you yet :=)
ovle i'll draw a few more tonight, im used to doing rough sketches usually and then have a graphics guy render them 20:43
so trying to draw clean is something of a difficult task for artists who sketch usually:D
20:44 PZt joined
ovle ok later all 20:47
20:50 pmurias joined
pmurias ruoso: ping 20:50
PerlJam A rakudo-tree? Paradise? Forbidden fruit? Hmm. 20:53
20:55 whiteknight joined
pugssvn r32019 | kyle++ | [Test::Util] Remove nonsense comment 20:57
20:58 erik_ joined, pnate joined 21:15 Guest23195 left 21:20 achromic joined 21:47 colomon joined, kensanata joined 21:56 avar joined
pugssvn r32020 | lwall++ | [STDeco] get snap working again 22:04
22:18 tylercurtis joined 22:22 IllvilJa joined 22:35 avar joined
isBEKaml Rakudo Paradiso! :) 22:35
22:37 Italian_Plumber joined
pmichaud ...avoiding some unneeded calls to !cursor_debug improves core.pir compilation by about 3.7% . 22:38
jnthn Wow. :-) 22:39
colomon \\o/
22:39 ash_ joined
jnthn I'll take that. 22:39
pmichaud++
pmichaud I'm going to optimize out a few other method calls.
jnthn In NQP.NET land, basic signature support just landed. :-)
colomon woah. NQP.NET is actually moving? 22:40
jnthn sekrit repository is not so sekrit: github.com/jnthn/6model/
:-)
colomon I thought you were just working on the new metamodel... 22:41
jnthn colomon: Yes...by implementing it. :-)
colomon: The prototype is coming along *very* nicely.
colomon but I thought you'd be implementing it in parrot.
jnthn colomon: Yes, I will be soon.
colomon "if you rely on anything in this repo for anything then you're nuts." jnthn++
jnthn It's just easier to prototype not-in-C. :-)
TimToady std: /x ** {2,3}/ 22:42
p6eval std 32020: OUTPUT«ok 00:01 116m␤»
jnthn Plus my brain is quite Parrot wired and I want a portable design, so implementing it somewhere else first will help ensure that. :-)
TimToady std: /x{2,3}/
p6eval std 32020: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unsupported use of {2,3} as general quantifier; in Perl 6 please use X**2..3 at /tmp/zrkLdG3Qsk line 1:␤------> [32m/x{2,3}[33m⏏[31m/[0m␤Check failed␤FAILED 00:01 113m␤»
ash_ std: sub g(:$1) { ... } # is interesting 22:44
p6eval std 32020: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unable to parse signature at /tmp/SSbs4RrpzJ line 1:␤------> [32msub g[33m⏏[31m(:$1) { ... } # is interesting[0m␤Couldn't find final ')'; gave up at /tmp/SSbs4RrpzJ line 1:␤------> [32msub g(:$[33m⏏[31m1) { ... } # is interesting[0m␤
..expect…
diakopter std: /x{2..3}/ 22:45
p6eval std 32020: OUTPUT«ok 00:01 115m␤»
TimToady Useless use of a range in sink context, eventually 22:49
tylercurtis jnthn: Once I've read and thought some more about traits/roles and the object model, I'd like to discuss them with you if you don't mind. 22:55
jnthn tylercurtis: Sure. 22:56
I know a few things about those. :-)
22:58 avar joined 23:10 jferrero joined
pugssvn r32021 | lwall++ | [STD] give useful info on illegal variable declarations as noticed by ash_++ 23:12
ash_ std: sub g(:$1) { ... } 23:16
p6eval std 32020: OUTPUT«[31m===[0mSORRY![31m===[0m␤Unable to parse signature at /tmp/lLJEfi6DxW line 1:␤------> [32msub g[33m⏏[31m(:$1) { ... }[0m␤Couldn't find final ')'; gave up at /tmp/lLJEfi6DxW line 1:␤------> [32msub g(:$[33m⏏[31m1) { ... }[0m␤ expecting any of:␤ constraint␤
..param_sep…
sorear TimToady, diakopter: Are either of you having communications difficulties to the shell? 23:19
diakopter: nothing to do with the filesystem? 23:20
23:21 ruoso joined
TimToady sorear: um, could you unpack that a little? 23:31
sorear TimToady: once per 30-40 seconds, I start getting complete packet loss to host02.appflux.net for 5-10 seconds 23:33
pmichaud: ping. Do you have any resources on designing IRs for compilers? 23:34
TimToady not having any trouble right now, as far as I can tell
when I have such trouble it's usually someone running the microwave oven :) 23:35
sorear solved that problem by upgrading to Ethernet 23:36
pmichaud sorear: no
sorear besides, it seems to be remote-host specific.
23:37 colomon joined
pmichaud sorear: at least, I never found any resources that I found to be helpful 23:37
I modeled PAST loosely on Pugs' IR
diakopter sorear: yes, nothing to do with the filesystem. 23:49
sorear: (besides, that's hardly the only thing that cygwin works around vs. cmd.exe) 23:50
sorear diakopter: then what *is* the problem? 23:51
diakopter I tried several times over the past few years; I don't remember why I gave up the last time. istr that yaml had something to do with it. 23:53
tonight I'll consider trying it again; maybe strawberry & std have courted each other secretly (and unbeknownst to each other) since then. :) 23:54
cygwin would likely be a lot easier in which to get std working, but getting it to work in strawberry/cmd.exe would be a lot better for making it worth with mono in the long run, imho. 23:55
(if it's feasible, I mean) 23:56
cognominal what is the file config.pmc? perl6 is opening it (too) many times
... acording to dtrace
diakopter sorear: oh, yes, I'm getting disconnected from our host pretty frequently 23:57
cognominal I meant config.fpmc
diakopter sorry it took me a while to realize which shell you meant
cognominal is it specific to mac?
plobsing cognominal: that's parrot's build config