»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by moderator on 20 October 2009.
00:03 pnate joined
Infinoid_ diakopter: What did I break? 00:04
pmichaud I haven't looked at master since last release, so I'm not sure what might've broken :| 00:06
jnthn Hm, yeah. 00:07
:-/
I'll try and look tomorrow.
jnthn lols at masak++'s blog post 00:08
diakopter Infinoid_: :) nothing.... 00:14
Infinoid_ *whew* :) 00:17
00:19 wknight8111 joined 00:34 orafu joined 00:35 pointme joined, zaslon joined
zaslon lolmasakhazblogged! masak++ 'November 16 2009 -- digging into some real paperwork': use.perl.org/~masak/journal/39906?from=rss 00:40
00:41 Wolfman2000 joined
carlin There's still a memory leak somewhere :( the rss crontab didn't have enough available memory to start 00:42
Wolfman2000 man...seems like masak and I are never around together when I want him to be around.
jnthn ETIMEZONE
Wolfman2000 jnthn: right, time zone. Need to remember 00:43
jnthn :-)
Wolfman2000 Anyway, Perl 6 may end up being useful for a presentation I have to give next week. May as well make the code I need to. 00:44
00:44 gfx joined
jnthn :-) 00:44
00:46 mubot joined 00:56 [particle] joined 01:23 kst joined 01:25 [particle] joined, frew_ joined 01:34 envi^office joined 01:38 agentzh joined
Wolfman2000 rakudo: say "This is " ~ Bool::True ? "" : "not " ~ "true."; 01:38
p6eval rakudo 7347ec: Confused at line 2, near "? \\"\\" : \\"no"␤in Main (file <unknown>, line <unknown>)␤
Wolfman2000 ...could have thought Perl 6 offered ternary conditions
TimToady std: say "This is " ~ Bool::True ? "" : "not " ~ "true."; 01:39
p6eval std 29104: [31m===[0mSORRY![31m===[0m␤Obsolete use of ?: for the conditional operator; in Perl 6 please use ??!! instead at /tmp/zJgcroEpHa line 1:␤------> [32msay "This is " ~ Bool::True ?[33m⏏[31m "" : "not " ~ "true.";[0m␤FAILED 00:02 102m␤ 01:40
Wolfman2000 TimToady++: Thanks. Wonder how I missed that from the synopsis.
Wolfman2000 better double check if accessing command line arguments changed too
01:40 _jaldhar joined 01:41 quietfanatic joined
TimToady it did, it's now @*ARGS 01:41
Wolfman2000 wonder which syn that's in
TimToady grep is your friend :)
though in pugs/docs/Perl6/Spec you'll want a recursive grep 01:42
Wolfman2000 I know I should know how to use grep...those lessons never stuck though. 01:43
carlin grep -r 'foo bar baz' *
TimToady for most recursive greps, the only argument (by define) is the pattern
(by *default) 01:44
gah, brayne is *
Wolfman2000 rakudo: 1.WHAT 01:45
p6eval rakudo 7347ec: ( no output )
Wolfman2000 right
rakudo: say 1.WHAT
p6eval rakudo 7347ec: Int()␤
Wolfman2000 rakudo: say 1.WHAT is Int
p6eval rakudo 7347ec: Confused at line 2, near "is Int"␤in Main (file <unknown>, line <unknown>)␤
Wolfman2000 rakudo: say 1.WHAT == Int
p6eval rakudo 7347ec: Use of type object as value␤Use of type object as value␤1␤ 01:46
Wolfman2000 Don't think that's what I'm after
carlin rakudo: say 1.WHAT ~~ Int
p6eval rakudo 7347ec: 1␤
TimToady rakudo: say 1 ~~ Int
p6eval rakudo 7347ec: 1␤
carlin or that :-) 01:47
Wolfman2000 rakudo: say 7 / 2; 01:48
p6eval rakudo 7347ec: 3.5␤
Wolfman2000 I'm guessing rakudo only does float division and not integer division? 01:49
quietfanatic rakudo: say 7 div 2
p6eval rakudo 7347ec: 3␤
quietfanatic Wolfman2000: use div for that
Wolfman2000 ...argh. I think I have a good program here, but...rakudo needs to be recompiled. And I don't recall the steps 01:51
carlin git pull && perl Configure.pl --gen-parrot && make install
Wolfman2000 carlin: you're skipping make. Is this intentional? 01:52
carlin make install covers that
Wolfman2000 ah, gotcha. Main reason I'm doing this...I'm wondering if I missed an update that will make my code work. I'll pastebin if otherwise. 01:53
Wolfman2000 is making a prime number detector for a presentation next week on cryptography. Hard to do cryptography without knowing something of primes. 01:54
alright, parrot is making fine. Now I just have to remember how to make pugs and STD.pm. *made an update script for parrot so as to now forget* 01:57
Juerd carlin: Does make install also cover make test? 02:00
Wolfman2000 Juerd: from my scrollback...looks like...no 02:01
carlin Juerd: No, I usually do a make spectest after that anyway 02:03
Wolfman2000 well, make test works
let's try make spectest
colomon warning, that's slow. like 40-70 minutes slow. 02:10
Oh wise ones: Is there any reason to prefer "WHAT $_" to "$_.WHAT"? 02:16
Wolfman2000 colomon: guess I'll just test via separate Feather connection 02:18
diakopter colomon: .WHAT
colomon rakudo: say abs(0).WHAT 02:19
p6eval rakudo 7347ec: Use of type object as value␤0␤
colomon rakudo: say 0.WHAT
sjohnson rakudo: say abs(-450).WHAT;
p6eval rakudo 7347ec: Int()␤
rakudo 7347ec: Use of type object as value␤0␤
diakopter rakudo: $_="hihi"; .WHAT.say
p6eval rakudo 7347ec: Str()␤
Wolfman2000 ...yeah, pastebin coming. One day, it will be on my or masak's pastebin, but for now, the lisp one
colomon rakudo: say WHAT abs(-450) 02:20
p6eval rakudo 7347ec: Int()␤
sjohnson diakopter: do you know if you can do $_ == in some kind of shorthand?
like .== or something?
colomon rakudo: say (abs(-450)).WHAT
p6eval rakudo 7347ec: Int()␤
lisppaste3 wolfman2000 pasted "Shouldn't 3 match to is_prime(Int $x where {$x % 2})? (mod ends up being 1, true)" at paste.lisp.org/display/90542 02:21
colomon rakudo: say -405.abs.WHAT
p6eval rakudo 7347ec: Use of type object as value␤0␤
diakopter rakudo: say (abs(-450).WHAT)
p6eval rakudo 7347ec: Use of type object as value␤0␤
diakopter that's wrong
ng: say (abs(-450).WHAT) 02:22
p6eval ng 6528b7: 0␤
colomon ng: say abs(-450).WHAT
p6eval ng 6528b7: 0␤
colomon also wrong?
diakopter ng: say ((abs(-450)).WHAT)
p6eval ng 6528b7: Int()␤
diakopter yeah, odd no one's noticed... 02:23
I mean...
carlin Wolfman2000: the 3 passed via the command line is a string 02:24
diakopter rakudo: say abs (-3).WHAT
Wolfman2000 carlin: ...that can do it. Guess I have to relearn how to cast.
diakopter rakudo: say abs(-3).WHAT
p6eval rakudo 7347ec: Use of type object as value␤0␤
diakopter where's masakbot when you need him? 02:25
Wolfman2000 rakudo: say int("3")
p6eval rakudo 7347ec: the int() sub and .int method have been replaced by the .Int method␤in Main (file <unknown>, line <unknown>)␤
TimToady seems to be parsing it as a listop
Wolfman2000 rakudo: say "3".Int
p6eval rakudo 7347ec: 3␤
Wolfman2000 rakudo: say "blah".Int
p6eval rakudo 7347ec: 0␤
Wolfman2000 that works
colomon TimToady: Do you agree that abs(-450).WHAT should be Int and not 0? 02:26
TimToady it's probably being parsed as a unary prefix
that is looser than .
diakopter eeentresting
TimToady but its violating the looks like a function rule 02:27
diakopter "but she said she was a function"
o wait
dalek p-rx: d7b50d4 | pmichaud++ | (5 files):
Add @XYZ::foo and $GLOBAL::bar variables.
02:28
p-rx: 2925cff | pmichaud++ | (2 files):
Contextuals also look in the global namespace.
p-rx: 49c429d | pmichaud++ | src/stage0/ (3 files):
Bootstrap update for package vars and contextuals in global scope.
diakopter oo
colomon TimToady: another question for you: should the abs of a Rat also be a Rat?
Wolfman2000 rakudo: say (9 / 3) ~~ Int 02:29
p6eval rakudo 7347ec: 0␤
colomon afk, baby crying instead of sleeping
Wolfman2000 ...?
TimToady I can't see any good reason why not, but again, you have to be careful if abs is misparsing
02:29 am0c joined
Wolfman2000 shouldn't 9 / 3 be 3, which is an Int? 02:29
rakudo: say 9 / 3
p6eval rakudo 7347ec: 3␤
Wolfman2000 rakudo: say ((9 / 3) ~~ Int)
p6eval rakudo 7347ec: 0␤
carlin rakudo: say (9 / 3).WHAT # Rat 02:30
diakopter rakudo: say ( abs(9 / -4) ).WHAT
p6eval rakudo 7347ec: Rat()␤
rakudo 7347ec: Num()␤
Wolfman2000 ...yeah, how is 9 / 3 rat when it's a whole number? 02:31
TimToady should be a Rat
say (9 / 3).perl
rakudo: say (9 / 3).perl
p6eval rakudo 7347ec: 3/1␤
diakopter rakudo: say ( abs(9 / -4) ).perl 02:32
p6eval rakudo 7347ec: 2.25␤
Wolfman2000 Alright...what's the proper way of dividing Numerator by Denominator with Rats then?
diakopter rakudo: say ( abs(9 / 4) ).perl
p6eval rakudo 7347ec: 2.25␤
Wolfman2000 would rather not use 9 mod 3 == 0 for his prime test...let's actually use some of the Perl 6 mentality.
TimToady probably missing a Rat abs, so defaults to Num
diakopter rakudo: say ( 3 / 4 )*( 4 / 3 ) 02:33
p6eval rakudo 7347ec: 1␤
TimToady rakudo: say 9 !% 3
p6eval rakudo 7347ec: 1␤
Wolfman2000 ...that's a new modifier
diakopter rakudo: say (( 3 / 4 )*( 4 / 3 )).WHAT
p6eval rakudo 7347ec: Rat()␤
Wolfman2000 haven't seen !% before
diakopter rakudo: say (( 3 / 4 )*( 4 / 3 )).perl
p6eval rakudo 7347ec: 1/1␤
Wolfman2000 diakopter: ...interesting find there. 02:34
TimToady++: Works like a charm.
sjohnson .awesome 02:35
Wolfman2000 I now have ONE Perl Program for my presentation. Now...what's the ruling on actual cryptography modules? Should I stick with what's in Perl 5, or should I make my own functions? 02:36
diakopter pugs: say 5 ** -1
p6eval pugs: *** ␤ Unexpected "-"␤ at /tmp/SRz6ITPFuu line 1, column 10␤
diakopter rakudo: say 5 ** -1
p6eval rakudo 7347ec: 0␤
diakopter meh
elf: say 5 ** -1 02:37
p6eval elf 29104: 0.2␤
diakopter and elf wins.
Wolfman2000 ...how many Perl 6 versions are out there?
diakopter rakudo: say (5 ** -1).WHAT 02:38
Wolfman2000 rakudo, pugs, parrot, elf...what else?
p6eval rakudo 7347ec: Int()␤
diakopter Wolfman2000: parrot isn't a Perl 6 impl
parrot is the VM that can host rakudo
there are/were several others... I think perl6.org has a listing
carlin perl6.org/compilers/ 02:39
diakopter hmm, I can't decommute until finding an STD hole 02:41
diakopter looks for an area of the keyboard on which to focus
std: 0_0_0_0_0.0_0e0_0 02:44
p6eval std 29104: ok 00:01 99m␤
diakopter rakudo: say 0e9999999999999 02:47
p6eval rakudo 7347ec: undefined identifier 'NaN'␤in Main (file <unknown>, line <unknown>)␤
diakopter decommute&
colomon speaking of trouble 02:53
Wolfman2000 the spec test failed for the record 02:54
colomon rakudo: say abs(:x(4))
p6eval rakudo 7347ec: Method 'Num' not found for invocant of class 'Perl6Pair'␤in Main (file src/gen_setting.pm, line 324)␤
lisppaste3 wolfman2000 pasted "Test Results" at paste.lisp.org/display/90544
colomon rakudo: say sin 02:55
p6eval rakudo 7347ec: Not enough positional parameters passed; got 0 but expected between 1 and 2␤in Main (file src/gen_setting.pm, line 324)␤
colomon rakudo: say sin(:x(1))
p6eval rakudo 7347ec: 0.841470984807897␤
colomon wonders how much of this stuff is worth messing about with in master... 02:56
carlin Wolfman2000: can you run 'make t/spec/S32-io/IO-Socket-INET.t' and paste the output? 02:59
Wolfman2000 carlin: running now
lisppaste3 wolfman2000 pasted "IO test." at paste.lisp.org/display/90545 03:01
carlin That's weird 03:04
Wolfman2000 I'm not exactly sure what part is weird or not.
All I do right now is run the specs and prepare the pastebin 03:05
carlin The test is passing, but it's failing because the extra output is being printed (it should be sent to /dev/null)
I guess that's what happens when tests depend on STDOUT :/ 03:06
03:07 hsb joined 03:17 gfx joined
colomon rakudo: say abs("-10") 03:19
p6eval rakudo 7347ec: 10␤
03:30 meppl joined 03:58 nihiliad joined
dalek kudo: d3a573b | (Solomon Foster)++ | src/setting/ (2 files):
Add Rat.abs. When doing abs(Any), just redispatch to self.abs rather than taking +self.
04:11
pugs_svn r29105 | colomon++ | [t/spec] Test abs for Rats as well, prefer .WHAT to WHAT, and add test for abs("-10"). 04:13
spinclad japhb: re polyglot ambiguity: i've always liked the example of "un petit d'un petit s'attend à Wall", suggesting that there are _many_ collisions, and a random utterance in tongue A may well be misheard in tongue B. How soon it fails to make any sense is another matter... 04:27
in this context, though, this one makes perfect sense: 'a small bit (of testing) of a small bit (of spec) is waiting on (a ruling from) @Larry.' 04:28
clearly it was French all along, and Carroll was simply misguided in devoting a _whole chapter_ of Lookingglass to an encounter with a mythical egg. 04:30
colomon pmichaud: "absolute() not implemented in class 'Rat' " when I call abs(Rat). defining Rat.abs or Rat,absolute doesn't seem to help. ???? 04:41
Wolfman2000 ...and I'm not seeing the syntax highlighting I should for my latest paste. Am I sure I have valid code? i37.tinypic.com/2q9dmra.png 04:51
04:57 perigrin joined
TimToady well, what does STD say if you run it through directly? I can't, since you posted a .png instead of the actual code... 04:58
lisppaste3 wolfman2000 pasted "Could have thought this was how STD.pm was built for Perl 5..." at paste.lisp.org/display/90552
Wolfman2000 TimToady: The only way I know of to run code through STD is through Syntax::Highlight::Perl6. I don't know if that's what you mean. 04:59
TimToady do you have a pugs directory? 05:00
Wolfman2000 TimToady: yes 05:01
TimToady cd to src/perl6
Wolfman2000 in there right now
TimToady put your code in a file, and say ./tryfile filename
Wolfman2000 Good thing my code is already in a file 05:02
TimToady if tryfile doesn't work, you might need to do 'make'
lisppaste3 wolfman2000 annotated #90552 "Doesn't work. Guess I'm outdated." at paste.lisp.org/display/90552#1
colomon ng: say 1.Num.Num 05:03
p6eval ng 6528b7: Method 'Num' not found for invocant of class 'Num'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
TimToady when did you last do 'svn up'?
Wolfman2000 just now
I forgot that I had to just run make and make install
...uh oh. ran into a problem
lisppaste3 wolfman2000 annotated #90552 "Somehow, I don't think this is supposed to happen." at paste.lisp.org/display/90552#2 05:04
TimToady try doing a 'make clean' before 'make' 05:05
05:06 meppel joined
lisppaste3 wolfman2000 annotated #90552 "The only Error 1 was ignored, yet...still errors? I need a better understanding of this so I can help better..." at paste.lisp.org/display/90552#3 05:07
TimToady let me see if I can reproduce it 05:09
Wolfman2000 *nods* All I did was svn up, make clean, make if that helps. Didn't try to make install yet, even though I'm pretty sure that's the next step. 05:10
...either that, or make test
TimToady huh, works fine here 05:11
Wolfman2000 I hope I didn't mess anything up with my pugs code... 05:12
TimToady does svn diff report anything in that directory? 05:13
Wolfman2000 nothing
TimToady what kind of machine are you running on? what does perl -v say?
Wolfman2000 running on feather. Perl 5.10.1
TimToady std: 05 05:14
p6eval std 29105: Potential difficulties:␤ Leading 0 does not indicate octal in Perl 6 at /tmp/ZFqZJDcm7L line 1:␤------> [32m05[33m⏏[31m<EOL>[0m␤ok 00:01 101m␤
TimToady okay, that's the right version 05:15
I profess myself to be stumped
Wolfman2000 TimToady: I've been known for doing that to others. 05:16
For better or worse
05:16 [particle]1 joined
TimToady what version is /usr/local/bin/perl -v 05:16
Wolfman2000 same 05:17
TimToady does it still fail if you say "perl std CORE.setting"?
Wolfman2000 yes
same error as before
that is, the import Num error
diakopter Wolfman2000: what does pwd say 05:18
Wolfman2000 /home/jafelds/pugs/src/perl6
TimToady do you have any of your own code in this directory?
diakopter sudo su - jafelds
Wolfman2000 TimToady: none that I'm aware of
diakopter: ...you plan on taking over my name? 05:19
TimToady if not, you could try blowing away the whole directory, and 'svn up' again to restore it, in case something is corrupt
diakopter Wolfman2000: no..
TimToady no, but I could log in there and run it as you :)
Wolfman2000 I'll do the blowing away idea
diakopter wait
Wolfman2000 waiting
TimToady weighting 05:20
pugs_svn r29106 | lwall++ | [pm.txt] some rudimentary answers I thought I'd checked in long ago... 05:25
r29107 | lwall++ | [pi.t] fix parsefail 05:26
perigrin is there a way to declre an attribute as required? 05:28
er declare even 05:29
Wolfman2000 perigrin: in what context?
TimToady has $.x = die "Not declared!";
assuming BUILD is working to spec, it won't evaluate the default if you set it 05:30
perigrin and apparently BUILD is working to spec
TimToady season to taste :) 05:31
perigrin is translating some toy Moose into toy Perl6 and that's a feature that didn't translate
diakopter well now that's interesting
Wolfman2000 diakopter: what part is?
diakopter @::WORRIES = (); 05:32
$self->load_setting($::SETTINGNAME);
lambdabot Unknown command, try @list
diakopter my $oid = $::SETTING->id;
line 8453 in STD.pmc
I did: export PERL5LIB=
suspecting it was the installed Perl6::Highlight (or whatever its name is)'s STD.pm comflicting 05:33
and now it gives me
Wolfman2000 Syntax::Highlight::Perl6
diakopter jafelds@feather:~/pugs/src/perl6$ perl std CORE.setting
Can't call method "id" on an undefined value at STD.pm line 8453.
std FAILED 00:00 37m
different error though
Wolfman2000 diakopter: I think at this point, that ignored error means I was able to make install it and place it in the directory where Perl 5 can check for STD.pm
I didn't make install yet though since I got this error. I kind of wanted to be sure I wasn't missing anything. 05:34
perigrin TimToady: follow up question ... does this mean that Perl6 attributes are roughly equivalent to Moose's lazy but default?
diakopter but there isn't even an 'install' target in the Makefile
Wolfman2000 diakopter: ...so what did I do then to bring STD.pm to the perl 5 directory?
perigrin fully realizes he's asking questions that probably should be in S12 or somewhere else he'd be happy to read for himself
diakopter jafelds@feather:~$ which_pm STD 05:35
STD undef /home/jafelds/pugs/src/perl6/STD.pm
I don't know
05:36 pnate2 joined
Wolfman2000 ...a pmc file 05:36
diakopter o wait
well I renamed STD.pmc that was in /home/jafelds/perl5/lib/perl5 05:37
Wolfman2000 diakopter: funny, I was about to move that myself
...wait. why not just symlink it to pugs? 05:38
diakopter hangon
there's all kinds of stuff in here
Wolfman2000 ...wish you said hangon BEFORE I made the link
diakopter heh
TimToady so almost certainly something PERL5LIB influenced, that would probably explain it all 05:39
diakopter jafelds@feather:~/pugs/src/perl6$ perl viv -e 'say(4)' 05:40
Can't call method "id" on an undefined value at STD.pm line 8453.
(with PERL5LIB blanked)
Wolfman2000 /home/jafelds/perl5/lib/perl5:/home/jafelds/perl5:/home/jafelds/pugs/src/perl6 <-- that's echo $PERL5LIB
TimToady try putting . in the front
or the perl6 dir 05:41
Wolfman2000 so I should echo .$PERL5LIB?
TimToady or how 'bout, in the shell you're running in /perl6, just delete PERL5LIB entirely
perigrin Wolfman2000: export ".:$PERL5LIB" # I think is what they mean 05:42
Wolfman2000 perigrin: that's putting both . and : in front.
TimToady an *abstract* dot, sheesh
diakopter strange
perigrin it's adding "." the *current working directory* to the front of the : seperated list that is PERL5LIB 05:43
Wolfman2000 TimToady: wasn't aware of the term abstract dot before.
perigrin I should have said: export PERL5LIB=".:$PERL5LIB"
TimToady what happens if you say "PERL5LIB='.' make" 05:44
Wolfman2000 no Num <pi> error 05:45
TimToady make clean first
Wolfman2000 Jumped the gun on that
did the make clean before make, both with PERL5LIB='.' 05:46
right now ./tryfile STD.pming
and...no issues whatosever
whatsoever*
...I wonder if this means my PERL5LIB is messed up
TimToady yes, well, you're pulling in bogus files from some other directory with your normal PERL5LIB
probably means you installed something there 05:47
Wolfman2000 I know I've taken advantage of CPAN
diakopter TimToady: yes, the perl5/lib/perl5 has many of STD's accoutrements
TimToady obsolete versions of them
anyway, now what does PERL5LIB='.' tryfile yourfilename say? 05:48
Wolfman2000 diakopter: Since you have full feather access right now...first thing. What SHOULD my PERL5LIB say?
diakopter well, for using stuff in the pugs dir, it would be best just to blank it.... export PERL5LIB= 05:49
Wolfman2000 but anywhere else, it's fine? 05:50
TimToady who knows?
if you put random stuff in those directories, random stuff can happen
diakopter Wolfman2000: hang on a bit more, let me tinker with your pugs dir there
Wolfman2000 diakopter: tinker away
diakopter TimToady: (aside) need to add STD_P5.pm5 to make clean 05:53
TimToady std: loop(1;2;3) {...}
p6eval std 29107: [31m===[0mSORRY![31m===[0m␤loop() interpreted as postdeclared function call at line 1; please use whitespace instead of parens␤Unexpected block in infix position (two terms in a row) at /tmp/yp8rAG1jkI line 1:␤------> [32mloop(1;2;3) [33m⏏[31m{...}[0m␤ expecting any of:␤
..bracke…
TimToady I will guess you'll get an error like that from tryfile on your file
diakopter o_O
TimToady std: loop (1;2;3) {...} 05:54
p6eval std 29107: ok 00:01 99m␤
TimToady loop controls really want their whitespace in P6
05:54 FullMetalHarlot joined, orafu joined
diakopter "I just need my SPACE!!!" 05:55
Wolfman2000: fixed 05:56
TimToady rakudo: say abs(-1) * -2
p6eval rakudo 7347ec: 2␤
diakopter I did: make clean
export PERL6LIB=
make
./viv -e 'say(3)'
(and yaml resulted)
I mean 05:57
Wolfman2000 diakopter: I don't have PERL6LIB set up, #1. #2, no clue what ./viv means
diakopter export PERL5LIB=
sorry; I meant to say PERL5LIB (not PERL6LIB)
Wolfman2000 ah
now, will I have to remove the symlink I made previously?
diakopter not if you blank out PERL5LIB when you want to use pugs/src/perl6
TimToady maybe, if you want your syntax highlighter to work
I presume the syntax highlighter is what installed the other copy 05:58
diakopter but yes, to make the syntax highlighter work... (and I'll rename STD.pmc back to what it is)
TimToady I think the syntax highlighter from CPAN is using its own copy out in the other dirs
diakopter yeah
Wolfman2000: I'm doing it.. 05:59
TimToady which he clobbered with a symlink, so will probably have to restore
diakopter no I renamed the old one beforehand
Wolfman2000 I was going to rename the old one first. :P
diakopter ok, restored to prior
Wolfman2000 gotta love messing with a new language yet still have trouble with the old
TimToady now, anyway, you want to run tryfile on your file to see it complain about your loop 06:00
Wolfman2000 should I export PERL5LIB='.' first?
diakopter export PERL5LIB=
TimToady that's just a one-shot for the current command; do what diakopter sez for permanent
Wolfman2000 just 0 it out?
diakopter either way; the . is redundant according to feather's Config.pm 06:01
TimToady permanent == rest of that shell session
lisppaste3 wolfman2000 pasted "I think I'm terrible at listening to directions at this rate." at paste.lisp.org/display/90558 06:02
diakopter .... that is what TimToady said would result (once the environment/build was fixed)
TimToady yes, that is exactly the error I expected from eyeballing it
though the error is misleading in that case 06:03
Wolfman2000 loop(my Int $i = 3; $i < $x / 2; $i += 2) <-- so it's not pointing to that?
TimToady since you still need the parens, only with whitespace between "loop" and the parens 06:04
diakopter Undeclared routine: 'loop' used at line 15
TimToady foo() is always a function call in P6, even if foo is otherwise a keyword
diakopter Wolfman2000: add a space between "loop" and "("
Wolfman2000 ok 00:01 45m 06:05
diakopter whee
\\o/
TimToady now perhaps it will syntax hilite
Wolfman2000 now, just to get things cleared up...
any time I want to rebuild pugs, I should set PERL5LIB= (literally nothing). Otherwise, it's fine the way it is. Right?
TimToady this is STD, not pugs 06:06
it just happens to live in the pugs repo
Wolfman2000 ...perhaps we should separate it then
so as to not get confused
TimToady but most of these programs will assume PERL5LIB is not set, yes
diakopter idly wonders how many times pugs has been compiled on feather... 06:07
hercynium everywhere?
Wolfman2000 now, since someone killed my Catalyst...let's reload it and try this again
diakopter furtively glances to and fro
it was using 400MB of featheRAM 06:08
Wolfman2000 diakopter: ...whoops
diakopter it's not a big deal
it has lots of ram
Wolfman2000 I can't help all of that at this time. Hopefully I'll get this on apache soon so we can have a syntax highlighting pastebin
diakopter goes back to implementing the parrot emulator 06:09
oop, did I say that out loud 06:10
06:10 colomon joined
Wolfman2000 ugh...I forgot about this stupid "Use of uninitialized value $DEBUG in bitwise and (&) at...wait. It's pointing to...the perl5/lib/perl5/STD.pm version of STD.pm 06:12
gah, too many versions
diakopter Wolfman2000: just edit /home/jafelds/perl5/lib/perl5/STD.pmc so that $DEBUG is 0
06:13 Bzek joined
Wolfman2000 diakopter: permission denied...even in my home directory 06:13
diakopter oops
hang on 06:14
Wolfman2000 ...speaking of hang on, I'm starting to wonder if...the Syntax::Highlight::Perl6 library is trying to shortchange me. 06:15
I think it missed the last } at the end of the program
...now I know you're doing something to that directory: I lost my highlight 06:16
diakopter Wolfman2000: now try 06:17
Wolfman2000 didn't like
diakopter I did chmod u+w STD.pmc
and then edited it to initialize $DEBUG to 0 06:18
Wolfman2000 I saw that
but now it won't even highlight proper code
diakopter was it highlighting proper code previously?
Wolfman2000 yes
TimToady what does perl -c say on that file
Wolfman2000 I do suspect it was occasionally stripping the last character though 06:19
TimToady the STD.pmc
diakopter syntax ok
Wolfman2000 syntax ok
diakopter it's possible Syntax::Highlight::Perl6 depends on those debug warnings
(who knows)
diakopter changes it back
perigrin is there an example of a coercion external to the original Class defintion anywhere? What I'm trying isn't working and I think I'm missing something obvious
Wolfman2000 diakopter: I tried changing it to 1 first: didn't take 06:20
or at least, didn't fix the colors
and my no warnings; code is being ignored in the Catalyst files.
Wolfman2000 wasn't expecting to have this Perl 6 Pastebin to be this difficult to implement.
TimToady perigrin: don't understand your Q
perigrin TimToady: I want to coerce a Temporal Time object from an Int 06:21
diakopter ok, back
06:21 orafu joined
Wolfman2000 phenny: tell masak I think we'll have to combine forces here. I've got the database structure, HTML, CSS, etc. You've got the Perl 6 knowledge. The rest...well, we can wing. 06:21
phenny Wolfman2000: I'll pass that on when masak is around.
perigrin augment class Int { method Time { Time.new($self) } } is simply complaining about redefined Int type 06:22
TimToady in current rakudo write class Int is also
diakopter slowly backs away from feather
Wolfman2000 shuts Catalyst down for now...this is getting a little too frustrating
TimToady instead of 'augment'
that isn't fixed till ng, i think 06:23
diakopter retreats to the safe, safe sandbox of JavaScript in the cuddly V8
Wolfman2000 Sorry for being a pain tonight guys.
perigrin TimToady: actually is also saves on my namespace clash :)
augment means something very different in Moose. 06:24
diakopter you weren't being a pain at all
Wolfman2000 Hard to tell what I was then.
...probably just some guy that completed one program for a presentation, only to not be able to show the syntax highlight on his own development website due to issues with dealing with STD.pm 06:25
TimToady Moose has diverged somewhat from P6 objects since it's hosted on language with diffent support issues
perigrin TimToady: its sort of like walking in a hall of Mirrors. 06:26
TimToady Wolfman2000: what you're discovering is that productization doesn't happen magically, but is the result of a lot of hard work :)
spinclad Wolfman2000: you were blazing trails, for yourself at least, and giving us a valuable view of the experience 06:27
TimToady and that neither STD nor the syntax hilighter are really properly productized yet
Wolfman2000 spinclad: lately my train has involved more Perl 5 than Perl 6
diakopter and found a bug in Module::Which
Wolfman2000 err, Trail
diakopter which_pm should have found STD.pmc, esp since it was in PERL5LIB
Wolfman2000 Still...hopefully my web development skills will come in handy. 06:28
For now, I think sleep is a good idea.
TimToady happy trains to you
er trails
Wolfman2000 *chuckles*
spinclad and doing valuable usability testing on our tools 06:29
sleep well
TimToady s/tools/toys/ in the case of STD :) 06:30
diakopter toys as in `Toy Story` or toys as in `Toys (1992)` 06:31
spinclad toys as in -Ofun
06:32 synth joined
diakopter war toys are fun for some people, sometimes 06:32
perigrin but not for Robin Williams in 1992
diakopter (Robin Williams rescues toy manufacturer from military brother general who uses it to make weapons disguised as toys) 06:33
PerlJam Or Richard Pryor in The Toy
diakopter LOL 06:34
perigrin or Mathew Broderic in War Games ... if you count "games" as "toys" 06:36
06:36 synth joined 06:42 kaare joined 06:44 TiMBuS joined 07:04 abbe joined, abbe left 07:14 agentzh joined 07:17 Su-Shee joined
Su-Shee good morning 07:18
07:19 wollmers joined
moritz_ good morning 07:29
07:31 iblechbot joined
mathw Morning 07:36
wollmers good morning 07:37
07:49 nbrown joined 08:00 d4l3k_ joined
ng_feed rakudo-ng: (Solomon Foster)++ 08:01
rakudo-ng: Add Num.Num and Num.log.
08:01 azawawi joined
azawawi hi 08:01
Wolfman2000: ping
08:02 eiro joined
azawawi Wolfman2000: The bundled STD.pmc is pretty ancient now in S:H:P6... I have not updated for a while. I'll see what I can do to fix that over the weekend. 08:03
colomon azawawi: yay! 08:04
azawawi colomon: :)
08:06 cognominal joined, PZt joined, Infinoid_ joined, nothingmuch joined, jjore joined 08:07 [synth] joined
japhb spinclad: Interesting. I was unaware of the Humpty Dumpty case, but it certainly does point out that speech would be considerably more difficult to disambiguate than text, given the homophonic collisions. 08:08
08:08 alexn_org joined 08:09 ng_feed joined 08:10 alexn_org joined, ejs joined 08:11 nothingmuch joined 08:16 barney joined 08:20 kst joined 08:24 stepnem joined
pugs_svn r29108 | moritz++ | [misc/pm.txt] Ml-1: undef and concatenation 08:31
08:32 nbrown joined 08:35 Infinoid joined 08:37 ejs1 joined 09:08 nbrown joined 09:12 Chillance joined 09:21 rfordinal joined 09:25 synth joined 09:31 envi_office2 joined, Chillance_ joined 09:32 [particle] joined 09:33 arnsholt joined, yath left, omega_ left 09:34 dalek joined 09:35 _jaldhar joined, Maddingue joined, mathw joined, carlin joined 09:36 yath joined, omega joined 09:37 p6eval joined 09:40 zamolxes joined, hercynium joined, colomon joined 09:41 TiMBuS joined, mhsparks joined 09:42 simcop2387 joined 09:44 ssm joined, Juerd joined, christine joined, synth joined 09:46 rjh joined 09:47 IllvilJa joined 09:49 athomason joined 09:54 alexn_org joined 09:55 alexn_org joined, rfordinal left 10:10 nbrown_ joined 10:12 rgrau joined
jnthn oh morning 10:36
moritz_ \\o/
10:41 riffraff joined
frettled phenny, tell masak www.ubersoft.net/comic/hd/1999/04/n...e-supplies (You may want to read all of Ubersoft/Help Desk, but that will take a while) 10:56
phenny frettled: I'll pass that on when masak is around.
10:57 justatheory joined, ejs2 joined 10:58 payload joined 11:04 dakkar joined 11:13 payload1 joined 11:24 jaffa8 joined 11:29 ejs1 joined 11:52 SmokeMachine joined 11:58 payload joined 12:01 explorer joined 12:07 envi^home joined 12:25 KyleHa joined 12:39 payload joined 12:47 jferrero left, jferrero joined
takadonet morning all 13:04
moritz_ good morning
\\o/ in the next few weeks one of the major German IT publishers will bring out a special issue on open source programming languages and environments (or so), including an article about Perl 6 and Rakudo 13:06
arnsholt Cool! 13:07
13:07 rfordinal3643 joined
moritz_ it's actually just a rebrush of an article that aristoteles and I wrote earlier, with a few updates and higher count of passing tests :-) 13:08
anyway, it's nice to have some press coverage, and I do plan to write an article once Rakudo * is released (or about to be released) 13:09
for c't or i'X , if any Germans are around
13:09 rfordinal3643 left
pmichaud good morning, #perl6 13:23
KyleHa Hello pmichaud! 13:24
jnthn pmichaud: morning 13:29
rakudo: say * ~~ Whatever 13:32
p6eval rakudo 7347ec: 1␤
jnthn ng: say * ~~ Whatever
p6eval ng b41c37: 1␤
moritz_ ng: class A { }; A.new; say "alive" 13:33
p6eval ng b41c37: alive␤
moritz_ rakudo: class A { }; A.new; say "alive" 13:34
p6eval rakudo 7347ec: ( no output )
moritz_ ok, so the "fix" to that timeout is to make ng replace master :-)
jnthn working on it
;-)
13:41 payload1 joined
pmichaud any quick questions for me before I disappear to write my hague grant report ? 13:42
jnthn No, I'm just fixing whatever.
colomon Any idea what "absolute" is? 13:43
pmichaud colomon: it's a vtable function, I suspect.
jnthn Brand of vodka?
pmichaud colomon: are you referring to...
04:41 <colomon> pmichaud: "absolute() not implemented in class 'Rat' " when I call abs(Rat). defining Rat.abs or Rat,absolute doesn't seem to help. ????
colomon yup.
13:43 masak joined
pmichaud yeah, it's the vtable method that gets invoked by the 'abs' opcode in PIR 13:44
colomon ah!
masak g'day, #perl6.
phenny masak: 06:21Z <Wolfman2000> tell masak I think we'll have to combine forces here. I've got the database structure, HTML, CSS, etc. You've got the Perl 6 knowledge. The rest...well, we can wing.
masak: 10:56Z <frettled> tell masak www.ubersoft.net/comic/hd/1999/04/n...e-supplies (You may want to read all of Ubersoft/Help Desk, but that will take a while)
jnthn I wonder if the issue is exportation not working correctly... :-S
yayitsmasak!
pmichaud fixing export is next on my list after writing the report
so, report, then export
moritz_ then re-export :-)
jnthn colomon: After sleep, I finally figured out why my fix to Rat.new exploded.
colomon: Now I've fixed my fix. 13:45
pmichaud ...the fix is in?
jnthn Pushing as long as spectest is ok.
pmichaud okay, I'm disappearing for a while to write report. Should be back in an hour or so.
masak frettled: the drawing style is reminiscent of Iliad's User Friendly?
jnthn pmichaud: Well, the original problem is I'd not put back the thingy to make proto objects be a p6opaque...
masak s/\\?/./
jnthn pmichaud: kk 13:46
:-)
colomon wait, is make spectest now useful in ng?
jnthn colomon: yeah
colomon: should all pass
(runs 14 files so far..)
colomon and it's fast, eh? 13:47
:)
jnthn Yeah!
Clearly we shouldn't make more tests pass
Or it'll start taking longer
masak :P
Wolfman2000: it would be awesome to combine forces. I'll be pretty distracted for the rest of the week, due to going to Latvia, preparing presentation, giving presentation, attending conference, etc. but I'm definitely pro-collaboration. 13:48
ng_feed rakudo-ng: jnthn++ 13:49
rakudo-ng: Fix dispatches on proto-objects.
rakudo-ng: jnthn++
rakudo-ng: Fixes so Whatever.new actually can construct an object.
jnthn yay...it's this week! :-)
masak \\o/
colomon masak: I added a patch to master last night, just so you have something to talk about for your release. ;)
masak colomon: heh. :) 13:50
jnthn colomon: What's your "what we need to run Rat" list looking like?
Erm, rat.t that is... 13:51
colomon Without actually checking (recompiling now), I think the biggies are eval and Num.Rat.
Num.Rat needs list assignment.
jnthn Ah, ok
colomon (I actually started looked at abs.t and exp.t last night, since we were blocking on rat.t.) 13:52
(they're much shorter. :) 13:53
jnthn How do we do on them?
colomon abs.t blows up on abs(Rat) (which is what lead the to absolute question). Other than that, I believe the only issue is we don't parse NaN and Inf yet. 13:55
Give me a sec to find where we stand with the others.
woah, rat.t bombs hard this morning. 13:56
Got rid of a debugging hack of mine, make clean, and make again. 13:58
13:58 facsimile joined, ejs2 joined
jnthn ng: undef 14:00
p6eval ng b41c37: Could not find non-existent sub &undef␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
colomon ng: say pi 14:05
p6eval ng b41c37: Could not find non-existent sub &pi␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
moritz_ wonders why ng_feed didn't report jnthn++'s commits 14:07
colomon that's better 14:08
moritz_: it reported two a few minutes ago... 14:09
jnthn moritz_: I think it's reported all I made so far.
moritz_ oh right
then I was just blind
colomon jnthn++ # Rat.new works! 14:10
ng_feed rakudo-ng: jnthn++
rakudo-ng: Add back signature introspection and the Parameter class, minus its custom constructor for now (need |).
jnthn There's *so* many little bits to put back to even be able to run tests we could probably pass. 14:11
colomon jnthn: that's what happens when you start over nearly from scratch. :) 14:12
jnthn ng: sub foo($,$) { } 14:13
p6eval ng b41c37: Malformed parameter at line 1, near "$,$) { }"␤current instr.: 'perl6;HLL;Grammar;panic' pc 448 (src/stage0/HLL-s0.pir:300)␤
masak people are generally very happy on Twitter that Rakudo is in Fedora 12.
jnthn std: sub foo($,$) { }
p6eval std 29108: ok 00:01 104m␤
jnthn masak: oh, cool :-) 14:14
masak it's much more fun to be reading 'Perl 6 is in Fedora!' than 'Perl 6 still isn't out' or 'Perl 6 is vapourware'. 14:17
colomon jnthn: I'm getting a lot of random crashes in rat.t today.
like more than 50% of my runs. 14:18
takadonet I have a friend in my office that still does not believe it's going to come out
colomon but there we go, 763 tests, ten skips. 14:20
(and one of those skips is in master, too.) 14:21
Wolfman2000 *yawn* morning masak. I'm presently at a loss myself for how to proceed, so I think combining forces will have to work for now. 14:22
masak Wolfman2000: I'm glad. will you be able to roam more or less free until next week? 14:26
Wolfman2000 masak: If you mean keep myself busy otherwise, yes
masak Wolfman2000: if you spent the time exploring (and complaining loudly about) Web.pm, no-one would be happier than I. :) 14:27
just a suggestion.
perhaps you might start with what I've done with the pastebin so far, and try to figure out the natural next step.
Wolfman2000 masak: my primary focus this week will be a presentation I have to give next week, but just point me to where the current version of Web.pm is and I can do that guinea pigging I was supposed to do a few weeks ago.
masak Wolfman2000: use.perl.org/~masak/journal/39894 14:28
Wolfman2000: github.com/masak/web
Wolfman2000 ...right, don't know where to install it 14:29
One can just git pull or whatever the command is to pull the git stuff down, but doesn't it have to be in a particular directory to be useful? 14:30
Wolfman2000 wonders if this is where proto will come in handy... 14:33
masak git clone. 14:34
and yes, this is ordinarily where proto comes in handy.
Wolfman2000 masak: got it cloned already. that's not exactly what I asked
right now, it's cloned to ~/repos/web
masak there's no real 'install' for Perl 6 projects until we land the proto installed-modules branch. 14:35
but what you can do, to speed things up, is to build the .pm files into .pir files.
you do that with 'perl6 Configure && make'
Wolfman2000 won't configure 14:36
Can't find ./Configure in @*INC
masak 'export PERL6LIB=`pwd`/lib'
but you really need to include the dependencies in PERL6LIB, too. 14:37
those in deps.proto.
Wolfman2000 ...and those I don't have
alright, should I just load do this the Proto way?
masak you could try.
Wolfman2000 Time for a new tutorial I guess.
masak at least, proto should get the dependencies for you.
but it might not build Web.pm correctly. 14:38
Wolfman2000: oh, proto is simple. :)
just get it and run it.
Wolfman2000 ...and it figures. I have to clone proto too
masak nod.
PerlJam careful ... it may become *really* hard to throw proto away in the future :)
masak nah.
I'll make sure it'll be easy to throw it away.
Wolfman2000 at the very least, make sure it's easy to uninstall modules 14:39
masak swoons
PerlJam That's one are where CPAN fell down hard. 14:40
Wolfman2000 masak: do you really want me to install rakudo...again?
PerlJam *Area
14:40 payload joined
masak Wolfman2000: no, you have a choice there. 14:40
either you do no configuration, and the proto will install Rakudo. 14:41
because it knows nothing about your setup.
or you configure proto to recognize where your Rakudo is installed.
Wolfman2000 masak: ...oh
thought I missed smoething. 14:42
lisppaste3 wolfman2000 pasted "Guess I still have stuff to work on outside of installing what's in projects.list" at paste.lisp.org/display/90576 14:46
Juerd 15:39 < Wolfman2000> at the very least, make sure it's easy to uninstall modules
It all boils down to having packages instead of just files in specific locations
Wolfman2000 ...where exactly did my modules get built again? 14:48
masak Wolfman2000: that looks like a successful install to me.
er, a successful download+build, that is.
terminology fail.
Wolfman2000 masak: If it matters, the only thing I changed in the config.proto file was where rakudo was installed. I changed nothing else. 14:50
masak Wolfman2000: you still sound as if something went wrong. 14:51
Wolfman2000 masak: well, I like to know where the stuff got put.
masak stuff doesn't get put anywhere in the current proto.
it will after the installed-modules branch lands.
but right now, projects are built in place.
Wolfman2000 ...and everything got placed in...well, not "exactly" in place
masak yes. 14:52
exactly in place.
Wolfman2000 I made a ~/repos directory, and installed proto to that.
masak nod.
Wolfman2000 Every installed file got put in there
masak probably the things you installed also ended up in ~/repos.
14:52 ejs2 joined
Wolfman2000 ...not the best location if you ask me. I meant for /repos to be more...all source getting related. 14:52
Not repos and perl
masak Wolfman2000: sorry about that. 14:53
Wolfman2000: you can change that default in the config file.
Wolfman2000 My fault partly: I wasn't clear enough
masak I'm not sure either it's a good default.
I used to have the default be a projects/ subdirectory of proto/.
Wolfman2000 ...that sounds like a good idea actually 14:54
masak it's hard to please everybody with defaults. :)
Wolfman2000 Then I just have to set PERL6LIB to point to that directory, and I should be good
moritz_ nope
Wolfman2000 ...and it's hard to please everyone with my simplistic mind either. alright moritz_: where am I going wrong this time? 14:55
moritz_ it will build for example SVG is $proto_dir/projects/SVG/
so you'd have to add $proto_dir/projects/$project/lib for every module you build
which frankly sucks
and which is why we need that installed-modules branch 14:56
Wolfman2000 moritz_: can't you just use wildcards for paths?
moritz_ Wolfman2000: don't think so
Wolfman2000 ...guess we'll find out
14:57 patspam1 joined
Wolfman2000 ...and web failed to install 15:00
due to lack of ./HTTP/Daemon in @*INC
masak right. 15:01
that's because proto can't find the dependencies during compilation.
but you can, by setting PERL6LIB and compiling manually.
Wolfman2000 moritz_: The wildcard thing worked
moritz_ Wolfman2000: it did? where did you put the wildcard? 15:02
Wolfman2000 moritz_: /home/jafelds/proto/projects/* 15:03
check my .bashrc
moritz_ ah
Wolfman2000 masak: still failing...hang on, let me get a pastebin 15:04
diakopter 6lrep# gninrom'g 15:05
jnthn olleh
15:05 iblechbot joined
moritz_ pilf. 15:05
masak IAH HO
lisppaste3 wolfman2000 pasted "Once again, I wonder if I'm doing this right." at paste.lisp.org/display/90578
masak Wolfman2000: you are, but proto won't do that last step for you. you'll have to build web manually. 15:06
15:06 gbacon joined
masak sorry if I wasn't too clear on that. 15:06
we're converging on a world where these things are all super-easy. but it's a bit bumpy still. 15:08
15:08 flip612 joined
flip612 Hello everybody! 15:08
masak flip612: \\o
flip612 Short question again: is there some way to include comments in an enum definition?
I'd like to annotate the various names. 15:09
ng_feed rakudo-ng: jnthn++
rakudo-ng: We now pass S06-signature/code.t again.
rakudo-ng: jnthn++
rakudo-ng: Ensure that non-immediate code blocks are wrapped in a Block.
rakudo-ng: jnthn++
rakudo-ng: Set Callable role's name.
rakudo-ng: jnthn++
rakudo-ng: Bring back @ implying Positional and & implying Callable; we'll give Associative a skip for now.
flip612 But I didn't see anything in the synopsis regarding this.
ng_feed rakudo-ng: jnthn++
rakudo-ng: Implement placeholders in signatures (e.g. :($,$).
Wolfman2000 moritz_: If it matters, I think the wild card works best if only one * is used entirely
flip612 enum XX is export « foo bar baz »
I'd like to put comments near the names
jnthn moritz_: Uhm. I think those were backwards. :-) 15:10
15:10 alester joined
flip612 are comments correctly interpreted as whitespace there? 15:10
moritz_ jnthn: might be. The bot is not very elaborate, the right way to fix it is to patch dalek
jnthn moritz_: It's not a big deal - I'm happy to be getting kar^Wcommit reports at all. :-) 15:11
masak flip612: they should be.
flip612: ISTR pmichaud++ fixed a bug wherein they weren't.
jnthn Aye, I think they should be too.
moritz_ rakudo: my @a = << foo #`[bar] baz >>; say @a.perl
jnthn < ... > is just a qouting construct.
Wolfman2000 ARGH...this is not how I meant to wake up...by being frustrated
p6eval rakudo 7347ec: ["foo", "baz"]␤
flip612 How can I dump a whole enum? x.perl or x.WHAT.perl didn't help 15:12
Wolfman2000 masak: I shouldn't have to reset $PERL6LIB just to configure and make
I may have to wait for that installed modules type thing
15:13 Psyche^ joined
jnthn flip612: I'm not sure there's a way at the moment; probably name_of_the_enum.perl should be made to. 15:13
flip612 jnthn: thank you. I'll go back to hacking. 15:15
masak Wolfman2000: here's the problem: proto knows about dependencies, but the Configure scripts in the individual projects don't. they would need to have this information in order to set up the Makefile correctly.
jnthn flip612: Feel free to file a ticket about enum.perl being useless. :-)
rakudo: enum foo <bar baz>; say foo.perl 15:16
masak Wolfman2000: the simplest thing you can do to make this work is to edit web/Makefile yourself to have the right PERL6LIB.
p6eval rakudo 7347ec: ( no output )
flip612 I'd rather file a ticket about me being useless ...
jnthn Gah...evalbot is has a fail.
masak Wolfman2000: again, I'm sorry this is the way it is. the demands on proto are greater than the tuit resources right now.
flip612 Trying to learn P6 shows me how old I've gotten. Or maybe just how bad my intuition has gotten, using other languages ... 15:17
masak flip612: how so? 15:18
flip612 Well, I think P6 is so ...
consistent? Maybe that's the right word. 15:19
[particle] like physics versus biology
flip612 Reading the synopsis I hear my synapsis (:-) click, and everything seems logical and "right".
Wolfman2000 masak: I'll probably do more studying of Web.pm later then..when I'm frustrated
err, less frustrated
english-- 15:20
masak nod.
flip612 Really a nice feeling, after all the "inferior" languages with many exceptions in syntax and similar ...
But then, when I'm trying to use it, I get really frustrated ...
PerlJam flip612: that's just because the implementations are completely up to spec
jnthn PerlJam: We wish! 15:21
flip612 I think mostly because I'm not sure whether I remember bits of syntax correctly,
PerlJam er, s/are/aren't/ :-)
moritz_ flip612: that's maybe because you want to use all the shiny bits at once
jnthn PerlJam: EMISSINGNOT? :-)
flip612 or whether there are still implementation bugs,
and - yes, that's it, what I just wanted to say:
PerlJam A bit of wishful thinking leaked through :)
moritz_ flip612: sometimes it helps to start with something simple, and only later on try to make it shiny
flip612 I'M NEVER SURE WHETHER MY CODE IS AS SHINY AS IT SHOULD BE, in P6.
TimToady I'm just the same in Japanese... 15:22
[particle] nobody's p6 code is, yet
flip612 Well, maybe it's just wrong expectations ...
[particle] even timtoady and masak polish their code frequently
jnthn I, OTOH, czech mine thoroughly. 15:23
flip612 But after P6, C, Asm, bits of Postscript, Haskell, Lisp, and some other that I don't want to name here, I've always the feeling that P6 should be done 'properly'
arnsholt jnthn: *groan* =D
[particle] i find my code is never finnish
TimToady is that why you're always russian?
flip612 But my currently available knowledge in P6 isn't so detailed, so I think I'm just doing everything wrong 15:24
Some sort of existential frustration, perhaps?
PerlJam flip612: get used to it. You'll forever be doing something "wrong" because there are things that you don't know.
moritz_ flip612: more like too high expectations, IME
15:24 nihiliad joined
PerlJam flip612: also, keep in mind that over time, your understanding of things will evolve, but Perl will evolve too. 15:24
flip612 PerlJam: I'm fully aware that I don't know everything, or even something.
After nearly 26 years of programming I've already found that pe(a)rl of wisdom. 15:25
PerlJam: again just what I wanted to write.
masak flip612: when I code, I have the image of what the code 'should be', and then I layer on workarounds.
flip612 "Well, I hope that after this project I'll have accumulated enough knowledge to do P6 properly"
masak flip612: but I'm very much aware that my image of what the could 'should be' isn't perfect, and changes over time. 15:26
flip612 I wanted to say earlier
"but I fear that when I've gotten there P6 will have evolved a fair bit again, and I'm left at a place near the starting point"
Well, I have pretty detailed pictures of what "should be" (at least I think I have) 15:27
masak flip612: Perl 6 hasn't evolved that much, if you're referring to the spec.
flip612 But sadly they change over time, before I've had enough time to finish one of them ;-(
masak: not yet.
masak flip612: I think you're overestimating the scope of the changes.
[particle] flip612: the spec changes have become less frequent over time
flip612 and probably never again, as it's a really nice and complete specification, with enough loopholes to get further advancements without changing current syntax. 15:28
Well, let's see ...
I'll go back to hacking.
Is there anyone interested in looking at my futile attempts (via svn), and giving sarcastic comments (and probably some help)? 15:29
Maybe that could provide some insight what application developers need ...
moritz_ currenltly doesn't like the %hash<key>:delete and :exists things
flip612: what kind of project are you working on?
flip612 But I think I've asked about that often enough ...
moritz: I'm rewriting a ~25k LOC C program in P6
moritz_ flip612: what kind of program? 15:30
flip612 Because I've found that some key structures are not expansible enough for the new needs
FSVS
fsvs.tigris.org
a kind of subversion client, only for /etc, /home or /
In C my "status" is faster than "git"s "status" ...
I fear that I cannot get that in the first P6-reimplementations. 15:31
But over time I'll rewrite some parts in C again, I think
moritz_ I think it's one of those areas where rakudo is *really* bad at atm
flip612 Why? Because of speed?
moritz_ it doesn't provide any low-level IO 15:32
flip612 That's not really needed ...
moritz_ and not much interaction with file system
and speed, yes
flip612 I'd just need a way to get NCI easily
The rest I can do via C
Oh, and compilation of P6 to C for native compilation would be fine, too ;-) 15:33
I know that this will take some time, and probably won't be done in star
moritz_ doesn't believe this is a possible in the way most people envision it
flip612 But I'll need some time to re-implement FSVS functionality anyway
Then your advertising department has promised too much 15:34
I think as soon as JIT is possible, that can be used for normal compilation, too
moritz_ my advertising department never promised compilation to C
flip612 And I've got a lot of testcases to get performance data
moritz: with "your" I meant "P6"
moritz_ it promised things like C-like speed through JIT compiliation 15:35
which I still believe is possible
jnthn Aye, me too.
But we've got some way to go yet.
flip612 Yes, that's fine ... but it should be available statically, ie. without doing the performance measurements in every run.
moritz_ flip612: do you have a source where that is promised?
flip612 I don't remember where I heard that
moritz_ it's not what you typically read in Perl 6 FAQs 15:36
which is why I'm a bit puzzled
flip612 I just hope that JIT, with the needed data stored somewhere (performance counters), should make direct compilation possible
Maybe I just (wrongly) deduced that by some IMCC notice 15:37
Because IMCC can "compile" to C code, AFAIK
Or something like that
moritz_ it can't 15:38
IMCC compiles PIR to pbc
flip612 The most important feature for me in rakudo would be more detailed error messages ... with exact file name and line numnber
Currently I much too often get 'file unknown, line unknown'
which gets cumbersome
moritz_ yes, that's *VERY* annoying
15:39 dalek joined
mathw Afternoon 15:40
15:40 rgrau joined
mathw Yeah error message improvement would be nice 15:40
15:42 awwaiid joined
flip612 I remember having seen some page about JIT, IMCC, GCC and so on in the P6 or Parrot Wiki 15:43
but I can't find it anymore
Ah, sorry. IMCC was the wrong keyword 15:46
I meant "LLVM" ... and trac.parrot.org/parrot/wiki/JITRewrite says:
LLVM: Pros: Lots of optimizations across multiple stages. Can generate executables from JIT'd code. 15:47
That's where I got the idea from.
ng_feed rakudo-ng: jnthn++
rakudo-ng: S06-signature/default.t passes again.
rakudo-ng: jnthn++
rakudo-ng: Fix calls of the form Foo::bar.
rakudo-ng: jnthn++
rakudo-ng: Handle package packages.
15:49 pmurias joined
TimToady .o(maybe we just need a C compiler that doesn't use the C stack) 15:49
moritz_ extern "Perl 6" { ... } ftw! 15:50
at least in C++ that works :-)
if the compiler is hooked up properly
TimToady how does it find the closing } ?
masak jnthn: 'handle package packages' -- what's a package package? 15:51
flip612 There's no final } ... like with "class X;" it goes to the end of the file ;-)
moritz_ TimToady: dunno, but I guess it invokes the compiler for the extern language, and continues parsing what the previous parser didn't use up
TimToady that would be the right way to do it 15:52
jnthn masak: package MyThing { }
15:52 ejs joined
jnthn masak: Though at the moment we don't really do anything with it that we wouldn't do for module. :-/ 15:52
diakopter masak: # dunno if you know about this one
moritz_ TimToady: but I guess most C++ compilers only implement extern "C", and just parameterize their parser 15:53
masak jnthn: what's the difference between package packages and regular packages?
flip612 Wow, now I got a Segmentation fault from perl6
TimToady I'm thinking Rat === int64/int64 is not quite right yet; we really want Rat == Int/int64 or some such
15:54 am0c joined
jnthn masak: I've never been entirely clear on what package vs module distinction is... 15:54
masak neither have I.
flip612 But that's probably because I'm currently recompiling parrot/perl6
jnthn masak: If we're expecting to see Perl 5, I guess it matters.
masak nod.
flip612 Is that ok when I get warnings on perl6 compilation?
jnthn masak: If if we know it's Perl 6, well, hm. :-)
flip612: There are a few in bind.c that we know of.
flip612 perl6.ops:48: warning: request for implicit conversion from ‘void *’ to ‘INTVAL (*)(struct parrot_interp_t *, struct PMC *, struct PMC *, struct PMC *, INTVAL, struct STRING **)’ not permitted in C++
jnthn flip612: yeah, that one. :-)
diakopter rakudo: say (abs(412).WHAT) # here's one for you, masak 15:55
p6eval rakudo 7347ec: Use of type object as value␤0␤
jnthn masak: Anyway, it won back at least one failing spectest...
15:55 perlygatekeeper joined
masak diakopter: nice catch! 15:55
jnthn masak: Well, fixing other bits it wanted was more important, but anyways...
masak submits rakudobug
diakopter rakudo: say (abs (412).WHAT) # this is what it's parsing as
p6eval rakudo 7347ec: Use of type object as value␤0␤
jnthn youch
moritz_ that's because it parses as a prefix, not sub call 15:56
masak o.O
diakopter rakudo: say (abs((412).WHAT))
p6eval rakudo 7347ec: Use of type object as value␤0␤
jnthn ng: say (abs((412).WHAT))
p6eval ng 1b20b6: 0␤
jnthn heh
diakopter well, that's right
jnthn ng: say (abs(412).WHAT)
p6eval ng 1b20b6: 0␤
15:57 KyleHa joined
flip612 Well, after "make install" the segfault is gone 15:57
TimToady that's an LTM failure, basically
jnthn std: sub f returns Int ($x) { return $x };
p6eval std 29108: ok 00:01 106m␤
jnthn huh...
TimToady abs( is longer than abs
so abs( === function call should win 15:58
jnthn thought the traits came after the sig. d'oh.
diakopter rakudo: say 0e9999999999999999999999999999999999999
p6eval rakudo 7347ec: 0␤
jnthn oh
[ <multisig> | <trait> ]*
diakopter rakudo: say 0e99999999999
p6eval rakudo 7347ec: undefined identifier 'NaN'␤in Main (file <unknown>, line <unknown>)␤
jnthn EWTF
flip612 Quick help, please?
TimToady hmm, I guess there's really no reason to require all the sigs to clump together in a multisig 15:59
diakopter "DON'T ASK TO ASK!!!!!!!!" just kidding.
masak hm. no hugme.
diakopter flip612: go ahead?
flip612 rakudo: my $a='a,b,d;ee'; for split(qr{ [,;:/]+ }, $a) -> $x { say $x; } 16:00
diakopter masak: is that a known/reported bug? 0e99999999999
p6eval rakudo 7347ec: Confused at line 2, near "(qr{ [,;:/"␤in Main (file <unknown>, line <unknown>)␤
TimToady multi foo ($sig1) :trait1 ($sig2) :trait2 {...} is not ambiguous
jnthn TimToady: What does it mean?
TimToady well, it could mean the same as the current form with ($sig1) | ($sig2) 16:01
moritz_ flip612: qr{...} is perl 5
16:01 [1]jaffa8 joined
jnthn TimToady: Ah 16:01
moritz_ flip612: try rx{...} and a Perl 6 regex inside
TimToady but if traits are applied left to right, then we could conceivably have traits that know the last sig
jnthn TimToady: OK...we don't do those just yet.
flip612 rakudo: my $a='a,b,d;ee'; for split(m{ <[,;:/]>+ }, $a) -> $x { say $x; }
p6eval rakudo 7347ec: a␤b␤d␤ee␤
jnthn TimToady: eww
flip612 moritz: thanks, I'm just re-reading S05 16:02
TimToady std: multi foo ($sig1) :trait1 ($sig2) :trait2 {...}
p6eval std 29108: ok 00:01 103m␤
TimToady oh, we can already write it like that, so multisig is useless
jnthn TimToady: I do worry that the syntax could mislead people into thinking the trait belongs to the sig rather than the routine, but perhaps not.
flip612 See? that's why I'd like better error messages
16:02 JeffreyKegler joined
jnthn std: multi foo ($sig1) ($sig2) :trait2 {...} 16:03
p6eval std 29108: ok 00:02 103m␤
jnthn std: multi foo ($sig1) ($sig2) {...}
p6eval std 29108: ok 00:01 103m␤
jnthn !!
moritz_ TimToady: does a candidate with two sigs count as two candidates? (for {next,call}{same,with})
diakopter std: my $a='a,b,d;ee'; for split(qr{ [,;:/]+ }, $a) -> $x { say $x; }
p6eval std 29108: [31m===[0mSORRY![31m===[0m␤Preceding context expects a term, but found infix , instead at /tmp/6NVmcAYRc5 line 1:␤------> [32mmy $a='a,b,d;ee'; for split(qr{ [,[33m⏏[31m;:/]+ }, $a) -> $x { say $x; }[0m␤Undeclared routine:␤ 'qr' used at line 1␤FAILED 00:02 106m␤
jnthn moritz_: I think it'd have to...
TimToady moritz_: yes, that's the idea
flip612 Now I got "s/// not implemented" :-[
jnthn moritz_: (since they can sort differently in multi-dispatch) 16:04
TimToady std: my $a='a,b,d;ee'; for split(rx{ [,;:/]+ }, $a) -> $x { say $x; }
p6eval std 29108: [31m===[0mSORRY![31m===[0m␤Unrecognized regex metacharacter (must be quoted to match literally) at /tmp/hmkQaTAqpt line 1:␤------> [32mmy $a='a,b,d;ee'; for split(rx{ [[33m⏏[31m,;:/]+ }, $a) -> $x { say $x; }[0m␤ expecting any of:␤ regex atom␤ regex_infix␤
..termish␤ ws␤FAILED 00…
TimToady std: my $a='a,b,d;ee'; for split(rx{ <[,;:/]>+ }, $a) -> $x { say $x; }
p6eval std 29108: ok 00:02 108m␤ 16:05
TimToady there you go
moritz_ flip612: you can work around missing s/// with $str.subst
flip612 yes, I've already done a quick grep and found that
Does someone have time to reduce perl6 starting overhead? 16:06
I'm getting a bit tired of waiting a few seconds for my compilation errors.
masak flip612: is that so?
moritz_ flip612: you can pre-compile modules to PIR
jnthn std: my @foo; @foo>>.bar 16:07
ng_feed rakudo-ng: KyleHa++
rakudo-ng: [spectest.data] integration/code-blocks-as-sub-args.t passes now
p6eval std 29108: ok 00:02 101m␤
flip612 moritz: and perl6 automatically takes the .pir files then?
moritz_ flip612: yes
jnthn TimToady: Can you remember how @foo>>.bar parses in STD?
moritz_ KyleHa++ # faster than me
jnthn TimToady: I'm kinda not spotting it...
flip612 So I'd just have to write some parse that builds the dependencies for the Makefile 16:08
like gcc with some flag does
jnthn TimToady: Does it fall out just as a normal metaop somehow?
KyleHa It's all in the wrist.
TimToady jnthn: yes, .bar is just a postfix as far as <POST> is concerned 16:09
pugs_svn r29109 | kyle++ | [t/spec] Test for RT 66658: .wrap gets lexicals confused
jnthn TimToady: Aww. :-(
TimToady Aww why? 16:10
jnthn TimToady: It may be that it's good that way - it's all the "is infix:<.> really an operator" stuff.
TimToady: I'll have to check exactly how we parsed it before, but it was somehow I think part of the method call parsing... 16:11
TimToady it isn't really an operator, and hasn't been for five or six years now :)
16:11 pmurias joined
TimToady or maybe seven or eight 16:11
jnthn TimToady: Right, and I think we'll end up wanting to treat it rather differently than @x>>++ for example. 16:12
diakopter "Every one that contributes to the [LOLCat Bible Translation Project] are divinely inspired by Ceiling Cat by default, unless of course they erase pages or spam. Then I am afraid Basement Cat has their souls. Srsly."
jnthn TimToady: Let me check how I had it in master...
TimToady the end of POST does differentiate those, so they're easy to tell apart if you need to, by why would you need to?
s/by/but 16:13
jnthn TimToady: Oh, actually...
TimToady: I think it maybe isn't so bad.
TimToady there's a [ <dottyop> | <privop> | <postop> ] there so everything is labelled 16:14
jnthn TimToady: I forget off hand...
TimToady: I just know getitng all of this done the first time around was hard work. :-)
TimToady but the meta is handled before that, so it doesn't care
jnthn It looks like what I did was closer to STD than I'd remembered though.
So, false alarm. :-)
diakopter rakudo: say 0e99999999999 # masak 16:23
p6eval rakudo 7347ec: undefined identifier 'NaN'␤in Main (file <unknown>, line <unknown>)␤
moritz_ ng: say 0e99999999999 16:24
p6eval ng 94fa72: error:imcc:syntax error, unexpected IDENTIFIER, expecting COMMA or ')' ('NaN')␤ in file 'EVAL_1' line 40␤␤
diakopter whoa
colomon diakopter: oh wow, I didn't realize there was a Basement Cat. Also, thanks for passing the abs.WHAT bug on to masak, I completely forgot about that this morning.
diakopter what, NaN isn't a C operator? 16:25
note, it occurs only with an odd number of nines 16:27
colomon awesome bug!
moritz_ diakopter: submit it!
diakopter oh
hm
rakudo: say 0e999999999999 16:28
p6eval rakudo 7347ec: 0␤
diakopter rakudo: say 0e99999999999
p6eval rakudo 7347ec: undefined identifier 'NaN'␤in Main (file <unknown>, line <unknown>)␤
masak submits rakudobug
diakopter rakudo: say 0e9999999999999
p6eval rakudo 7347ec: undefined identifier 'NaN'␤in Main (file <unknown>, line <unknown>)␤
diakopter odd 16:29
cognominal reading Grammar.pm, where is defined the &O function? 16:32
my ack-fu is not strong enough 16:34
moritz_ cognominal: probably in nqp
alester How might I help, grasshopper.
diakopter rakudo: say 1e800 / 1e-99 16:35
p6eval rakudo 7347ec: undefined identifier 'Inf'␤in Main (file <unknown>, line <unknown>)␤
diakopter ng: say 1e800 / 1e-99
p6eval ng 94fa72: error:imcc:syntax error, unexpected IDENTIFIER, expecting COMMA or ')' ('Inf')␤ in file 'EVAL_1' line 40␤No applicable candidates found to dispatch to for '&infix:</>'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
16:36 flip623 joined
flip623 Sorry, me again. 16:36
cognominal thx, found it in cheat/hll-grammar.pir
flip623 rakudo: enum X is export «A B C»;
p6eval rakudo 7347ec: Confused at line 2, near "is export "␤in Main (file <unknown>, line <unknown>)␤
flip623 NIY?
moritz_ yes 16:37
jnthn flip623: I think traits on enums are NYI.
flip623 How do I get them available to other modules?
KyleHa In ng, tools/update_passing_test_data.pl runs in 4m28s for me. The one I hacked to fork $ENV{TEST_JOBS} at once runs in 1m40s. *smile* 16:38
diakopter sounds like a patch
moritz_ go for it! 16:39
KyleHa Needs seasoning.
I'll probably commit in a few hours, though.
diakopter I prefer Parmesan
jnthn pmichaud: ping 16:43
flip623 Does someone have an errorformat definition for vim? 16:44
So vim jumps to compile errors directly
(at least if the position is not unknown/unknown) 16:45
jnthn ng: my @a; @a.push(42) 16:53
p6eval ng 94fa72: Method 'push' not found for invocant of class 'Array'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
ng_feed rakudo-ng: jnthn++ 16:58
rakudo-ng: Get parallel dispatch back in place.
16:59 cotto joined
jnthn continues on his quest to get S06-signature/introspection.rakudo to parse and run again... 17:01
masak jnthn++ # working on ng 17:02
jnthn masak: It's kinda odd...every time I think "oh, I'll just put this feature back", I then find the test for it requires me to put a bunch of unrelated stuff back too. 17:03
masak the interrelatedness of things.
jnthn Yeah
Well
Once test writers have the power of Perl 6 to hand, I guess the inclination is to write nice tests. 17:04
moritz_ I'm constantly trying to fight that urge
and I usually fail.
jnthn Thus we end up with introspection.t needs me to put parallel dispatch back, for example.
Yeah, it's hard. 17:05
I try and fail in the same way.
It's less of a problem in the sense that you can fudge tests.
If you've got an impl.
But introducing different fudging for the ng branch feels kinda odd.
moritz_ aye 17:06
jnthn Like, bit too far...
Too much throw-away effort and we'd have to clean up afterwards.
moritz_ ng: say <a b c> 17:09
p6eval ng 94fa72: abc␤
moritz_ ng: say <a b c>.map({ .say; .uc})
p6eval ng 94fa72: Could not find non-existent sub &fail␤current instr.: 'perl6;IO;print' pc 193591 (src/gen/core.pir:19122)␤
moritz_ ng: say <a b c>.map(-> $x { $x.say; $x.uc}) 17:10
p6eval ng 94fa72: Could not find non-existent sub &fail␤current instr.: 'perl6;IO;print' pc 193591 (src/gen/core.pir:19122)␤
moritz_ meta-fail
jnthn heh :-)
moritz_ that line is 17:11
new $P2416, "Perl6Scalar" 17:12
I guess the line number is a bit off
jnthn I fear so...
Looks like something throws inside print. 17:13
rakudo: sub foo($x) { say $x }; foo.(42) 17:21
p6eval rakudo 7347ec: 42␤
colomon ng: "a".say 17:27
p6eval ng b118c9: a␤
colomon ng: $_ = "a"; .say
p6eval ng b118c9: a␤
pugs_svn r29110 | lwall++ | [S02,S09] break the assumption that Rats should be symmetrical 17:29
r29110 | Add Ratio for performance-destroying but truly arbitrary-precision rationals
r29110 | rename STASH to Stash for consistency
17:29 stephenlb joined 17:32 lambdabot joined
ng_feed rakudo-ng: jnthn++ 17:32
rakudo-ng: Get @foo.[1] to do the same as @foo[1]. Sadly, foo.() doesn't do what foo() does yet.
pugs_svn r29111 | lwall++ | [S02] more Rat and Ratio clarification 17:43
moritz_ TimToady: wouldn't it be simpler to make a Rat role that's parameterized by the types of numerator and denominator, and speak of Rat[Int, int64] instead of Rat64? 17:44
ng_feed rakudo-ng: jnthn++ 17:45
rakudo-ng: Basic implementation of term:fatarrow.
jaffa8 hi 17:46
introspection in Perl 6
What does that mean?
moritz_ do you know what introspection is, in general?
jnthn: one of your last commits broke t/spec/S03-operators/relational.t 17:48
I suspect the last one
jnthn moritz_: What happens if you run it not under the test harness?
moritz_: I've seen that one fail various times, randomly. :-/
17:49 Bzek_ joined
moritz_ ok 12 - <= uses numeric context (1)Segmentation fault 17:49
jnthn hmm. Runs through to 70 here. :-S
moritz_ want a backtrace?
jnthn Sure, if it's easy to get hold of.
I fear it's a heisenbug from Parrotland though. 17:50
lisppaste3 moritz_ pasted "relational.t backtrace" at paste.lisp.org/display/90590 17:51
moritz_ jnthn: it's fairly reproducible here
jnthn Ugh.
17:51 cdarroch joined
pmichaud Okay, I have a draft of my interim grant report at pmichaud.com/sandbox/m1m2.txt -- review and comments welcome. (I'm going to lunch now, will read/respond when I get back in an hour or so) 17:52
frettled masak: yes, the drawing style is similarish to Illiad's, I suppose. I consider it to be one of the better web comics out there. 17:53
ng_feed rakudo-ng: KyleHa++ 17:56
rakudo-ng: [spectest.data] two more integration files pass
jnthn KyleHa: Wow, great. :-)
KyleHa: No more other spectests though?
KyleHa I thought so too. 8-)
Doesn't look like it, but I'll keep looking. 17:57
jnthn is seeing a lot of tests we might potentially be able to handle, or be close to handling, once anonymous regexes are back in.
17:57 FCO joined
jnthn And eval. 17:57
pmichaud eval I can do tonight
and import 17:58
and probably regexes
(since I got my grant report out of the way :)
jnthn pmichaud: Great!
mathw wow
jnthn pmichaud: I still think we're not quite at the point where we're winning back masses of spectests, but I think we're getting closer. 17:59
pmichaud oh, I think so too.
jnthn pmichaud: I attempted to make foo.() work
pmichaud: Parsing is fine, and @foo.[42] style things work, but foo.() doesn't...I don't immediately see why.
pmichaud: Feel free to peek at that after lunch too, if you've any ideas... 18:00
pmichaud okay, I'll look at that also.
a lot of the methodcall syntax can be a bit tricky
jnthn Yeah
pmichaud $.foo is another tricky one
jnthn Yes. :-/
I got a first cut in, but it's not complete.
pmichaud okay, lunch, errands 18:01
jnthn kk
frettled pmichaud++ for making complex stuff sound so trivial :) 18:03
moritz_ pmichaud++ # good grant report 18:05
masak ooh! a grant report! 18:06
dalek kudo: 68d5c37 | (Kyle Hasselbacher)++ | tools/update_passing_test_data.pl:
tools/update_passing_test_data.pl will fork according to $ENV{TEST_JOBS}
18:08
jnthn pmichaud++ # looks good :-) 18:11
18:17 chromatic joined
takadonet hey chromatic 18:18
pugs_svn r29112 | lwall++ | [specs] s/CONTEXT/DYNAMIC/ to avoid confusion of concepts 18:23
diakopter [OT] /msg me if you have some tips on sourcing diskless rackmount optimized for RAM density (for memcached or the like)... linux or solaris 18:24
18:27 [1]jaffa8 joined
chromatic good localtime() 18:32
takadonet chromatic: How are you doing? 18:35
chromatic Swamped lately with $WORK, hoping it clears up this week.
pugs_svn r29113 | lwall++ | [S02] more clarifications from TheDamian++ 18:38
masak pmichaud: in D3, last sentence, there are two 'eventually'. 18:42
18:47 ejs joined
masak pmichaud++ # report 18:49
18:51 nbrown joined
masak rakudo: "b" ~~ /b| / 18:51
p6eval rakudo 7347ec: Null PMC access in find_method('reduce')␤in Main (file <unknown>, line <unknown>)␤
masak cackles 18:52
masak submits rakudobug
diakopter u win for now ......
masak I sure do!
jnthn ng won't give a NPMCA on that. 18:53
;-)
moritz_ right, a parse error
jnthn moritz_: shhh! :-P
moritz_ ng: "b" ~~ /b| /
p6eval ng b893c8: Confused at line 1, near "\\"b\\" ~~ /b|"␤current instr.: 'perl6;HLL;Grammar;panic' pc 448 (src/stage0/HLL-s0.pir:300)␤
masak hah!
LTA.
TimToady std: "b" ~~ /b| / 18:54
p6eval std 29113: [31m===[0mSORRY![31m===[0m␤Null pattern not allowed at /tmp/k3ym4Lf9Tb line 1:␤------> [32m"b" ~~ /b| [33m⏏[31m/[0m␤ expecting any of:␤ termish␤ ws␤FAILED 00:02 103m␤
masak STD++
diakopter rakudo: say 1 if " " ~~ /b|\\ / 18:55
p6eval rakudo 7347ec: 1␤
diakopter oh
std: say 1 if " " ~~ /b|\\ / 18:56
masak rakudo: / /
p6eval std 29113: [31m===[0mSORRY![31m===[0m␤No unspace allowed in regex (for literal please quote with single quotes) at /tmp/eqy4ccRRqv line 1:␤------> [32msay 1 if " " ~~ /b|\\[33m⏏[31m /[0m␤FAILED 00:02 101m␤
rakudo 7347ec: perl6regex parse error: Null pattern illegal at offset 11, found ' '␤in Main (file <unknown>, line <unknown>)␤
diakopter rakudobug
masak submits
diakopter masak: mine, not yours
masak sure, go ahead.
diakopter I mean
:0 18:57
nm
masak I know. but I prefer to think you volunteered. :)
diakopter hugme: add to faq: "rakudobugreport?" "masak: hilite" 18:58
masak :)
ENOHUGME
moritz_ wonders what's up with it 18:59
18:59 hugme joined
moritz_ hugme: hug masak 18:59
hugme hugs masak
masak rejoices
jnthn yay! hugme++ is back! 19:00
moritz_ @karma hugme
lambdabot hugme has a karma of 5
masak hugs hugme
hugme++
jnthn hugme: hug everyone
hugme hugs everyone and blushes
masak :)
who's 'blushes'? 19:01
moritz_ who is masakparsefail? :-)
masak who's "recursive sarcasm"?
diakopter who's who 19:02
19:07 rfordinal joined 19:11 rfordinal left 19:12 omega joined 19:17 omega_ joined 19:22 lmc joined
TimToady is trying to fix a bad problem with complex literals, namely -1-1i parses undwimmily 19:26
19:26 am0c joined
TimToady rakudo: say -1-1i 19:26
p6eval rakudo 7347ec: -1 + -1i␤
masak that's right, isn't it? 19:27
TimToady that's because rakudo isn't actually parsing a complex literal
but if it parses as:
masak ah, it parses it as two things.
TimToady rakudo: say -(1-1i)
p6eval rakudo 7347ec: -1 + 1i␤
TimToady it's wrong
masak nod.
facsimile rakudo: say -(-1-1i) 19:28
p6eval rakudo 7347ec: 1 + 1i␤
facsimile what's the problem?
jnthn ng: say -1-1i 19:29
p6eval ng b893c8: -1 + {-1}i␤
TimToady what's with the braces? 19:30
jnthn Not sure. 19:31
Looks odd to me.
TimToady anyway, either we have to include a leading +/- in a complex literal, or we have to not have complex literals
masak what's the advantage of having complex literals? 19:32
TimToady using the same rule for parsing string numbers
without actually having to execute user input 19:33
masak ah.
TimToady and user-input numbers allow leading +/-
and probably even allow extra whitespace, but we can't handle that in the LTM part of numbers 19:34
pmichaud back 19:35
masak++ # dual 'eventually' now fixed. 19:37
TimToady however, naively adding +/- into the number tokens makes STD run 22% slower
colomon jnthn: the braces are coming straight from Complex.Str in ng. I assumed you did that? 19:38
oh, I see!
it's a stringification bug.
multi method Str() { "$.re + {$.im}i"; }
The { } isn't being handled properly. 19:39
masak why not?
moritz_ ng: say "{1+2}"
p6eval ng b893c8: {1+2}␤
TimToady ouchie
masak TimToady: brace interpolation nyi in ng. 19:40
jnthn Oh 19:42
I thought they were parens.
jnthn should, like, read.
Mm...I nommed. Time to code again.
19:44 hercynium joined
pmichaud brace interpolation is easy to do... working 19:45
anyone with any further comments/suggestions for my draft report?
(pmichaud.com/sandbox/m1m2.txt)
colomon pmichaud: it looked good to me. 19:48
At this point, I think my biggest rakudo * worry is the frequent random memory errors we're getting, which I think are coming from Parrot?
masak Parrot is always a worry in that way.
pmichaud colomon: they may be. I've not seen them consistently enough to really report them yet. 19:49
colomon (For instance, in a non-scientific sampling this morning, running rat.t in ng crashed about 2/3rds of the time.)
masak I have random backtraces, segmentation faults and sudden inexplicable halts, daily.
pmichaud because of the amount of (new) C and PMC code we now have in Rakudo, it's hard to pin the problem directly on Parrot 19:50
especially if it's non-repeatable.
jnthn Not *that* much of it is new.
colomon crash at #248. 19:51
crash at #248
jnthn bind.c is, of course.
colomon 248 again
well damn, now it seems to be consistently crashing. 19:52
jnthn I've been seeing the odd case where I can do a run of a test file, and it fails half way through, and then I do another run and it doesn't...something is wonky somewhere.
19:52 ShaneC joined
colomon jnthn: yeah, that's exactly what I'm seeing here. 19:52
in ng, that is. 19:53
masak the sudden halts I experience are because I have large interdependent module files. it's consistent, but a small change in some file often removes the problem.
colomon I've had similar issues in Rakudo as well, but nothing so blatant as I'm getting in ng at the moment.
TimToady pmichaud: looks okay to metoo 19:55
pmichaud thanks all 19:56
19:56 facsimile joined
jnthn colomon: Ah, I caught that one under the debugger. 19:58
No, wait, not the Rat.t one
the relational.t one
colomon rat.t is dying without any error message, it just seems to stop. Comes clean under valgrind as well. 19:59
jnthn colomon: no segv?
colomon Nope.
It's in the middle of a double loop, too.
jnthn colomon: The thing I'm fixing at the mo is a segfault...that sounds like something else. :-|
colomon Let me try rebuilding everything with make clean, just in case. 20:00
jnthn colomon: Also wait for the patch I have.
Though I'm looking at it and wondering how we got away with not having it for so long. :-/ 20:01
colomon ? Now I'm curious what this patch will look like.
jnthn hm. It cleans up the relational.t failure maybe...otoh it was doing different things on successive runs before. 20:02
colomon after git pull, make clean, and rebuild, rat.t fails silently on test #39 now.
Five times in a row. Weird that the errors were inconsistent this morning and seem consistent now. 20:04
20:05 facsimile joined
jnthn colomon: silly me edited a generated file, so now I gotta re-test. :-/ 20:05
colomon oh hey, if I don't use make t/spec to run it, I do get a bus error. wonder if I can pull it into GDB? 20:06
lisppaste3 colomon pasted "gdb error and backtrace" at paste.lisp.org/display/90603 20:07
ng_feed rakudo-ng: jnthn++ 20:09
rakudo-ng: Add back submethods; seem to work fine, and in the dispatch too.
rakudo-ng: jnthn++
rakudo-ng: Make sure a pointer is not null before we deref it. Seems that we can get marked after being destroyed, which is fine, though I'm a little surprised this never bit us much and got noticed before, since its blindingly obvious what's wrong in the debugger.
jnthn colomon: That's the one I've just patched. :-)
colomon \\o/
pmichaud closure interpolation pushed 20:11
jnthn It was an easy patch, I'm just rather surprised we didn't encounter the issue in master.
Well, maybe we have been without noticing it...
ng_feed rakudo-ng: pmichaud++
rakudo-ng: Merge branch 'ng' of git@github.com:rakudo/rakudo into ng
rakudo-ng: pmichaud++
rakudo-ng: Restore closure interpolation in strings
pmichaud just updated pmichaud.com/sandbox/m1m2.txt with suggestions from my wife, if anyone wants one last review :-)
it basically rephrases the opening and closing paragraphs 20:12
jnthn ah, opening looks ever nicer now :-) 20:13
(pmichaud's wife)++
masak yes, clearly an improvement. 20:14
20:15 JeffreyKEgler joined
colomon jnthn: rat.t working beautifully now. 20:16
takadonet pmichaud: looks good
colomon (That's my hacked local version, of course.)
(But it's only very slightly hacked these days.)
jnthn colomon: cool!
ng_feed rakudo-ng: jnthn++ 20:20
rakudo-ng: S12-construction/named-params-in-BUILD.t passes.
20:21 aindilis joined
jnthn ng: my Rat $r .= new; 20:22
p6eval ng 2651aa: Confused at line 1, near "my Rat $r "␤current instr.: 'perl6;HLL;Grammar;panic' pc 448 (src/stage0/HLL-s0.pir:300)␤
colomon ng: my $r = Rat.new; say $r ~~ Rat 20:23
p6eval ng 2651aa: 1␤
jnthn Yeah. It's the .= operator that I want. :-) 20:24
colomon I'm still happy what I did works. :)
jnthn :-)
colomon (Though come to think of that, I can't think of any reason to ever use it for Rat...)
jnthn ng: my Rat $r; say $r 20:25
p6eval ng 2651aa: Object()␤
jnthn damm
I'll have to fix that too.
masak colomon: dynamically creating a Rat based on non-literal values?
pmichaud hugme: add leto to nqp-rx
hugme hugs leto. Welcome to nqp-rx!
colomon but aren't the member variables (errr... attributes?) of a Rat readonly?
TimToady oddly, the correct way to write a Complex literal might end up <-1+2i> 20:26
colomon TimToady: :(
masak colomon: sure, but you can _create_ an object and set even private attributes.
TimToady -1+2i would still work as a constant-folded expression, mind you
masak s/private/read-only/
TimToady but it wouldn't be a literal
colomon TimToady: but would be -1 added to 2i rather than a single complex literal? 20:27
masak TimToady: that sounds fine by me.
TimToady yes, because unary - is tighter than +
which is how rakudo is parsing it currently
masak TimToady: it could actually reduce the complexity of literals a little.
colomon TimToady: sounds fine here, too.
TimToady and it falls out of the recent change that makes <...> intuit number formats
pmichaud phenny: tell PerlJam you need to add yourself to nqp-rx CREDITS 20:28
phenny pmichaud: I'll pass that on when PerlJam is around.
TimToady and the fact that a single <42> would return (42), which is just 42
so aton would basically be doing << $string >>
moritz_ somehow this sounds a wee bit backwards to me 20:29
TimToady which, interestingly, woudl also allow vector input
well, it does sweep the problem under <>'s rug, which is the problem that we need to know the static subset of the grammar that matches literals 20:30
20:31 payload joined
pmichaud afk to pick up kid 20:31
TimToady and it's a bit odd that +$input might return a vector, when +<a b c> returns 3 20:32
so perhaps a direct aton connection isn't quite right
pmichaud seems to me that we might be asking &prefix:<+> to be a bit too smart
or numification in general
(really afk now) 20:33
TimToady but I'm coming to the conclusion that trying to parse all literal-ish constructs is probably a bit beyond the scope of LTM
jnthn keys on my keyboard that will need replacing after typing bits of STD: 'i', 's', 'h'...
:-)
jnthn adds dottyopish to Rakudo
masak "Call me ish..." 20:34
TimToady maybe the * in Rakudo * is pronounced 'ish'
masak :D
whateverish.
moritz_ :-) 20:35
colomon Interesting, I had assumed that prefix:<+> was "number-like-thing-ification".
TimToady Call me *mael...
masak colomon: it is.
colomon: numishification.
colomon Ah, see then, there's why I don't mind +<1 2 3> returning 3.
moritz_ had assumed it's something like .Numeric
and that knows how to be smart 20:36
colomon Because you can't say <1 2 3> + <3 4 5> and get <4 6 8>.
On the other hand, if you had a proper Vector class, it would make sense for +Vector to return the Vector. 20:37
moritz_ then (in my book) it would have a method Numeric { self }
and it would need to do the Numeric role
colomon I thought the Numeric role was more like "real numbers"? Admit I've skipped that part of the spec so far.... 20:38
moritz_ colomon: I thought more like "real numbers" was Real :-)
TimToady we aren't promising to overload the operators the same way that mathematicians overload them...
masak modules can do that if they want. 20:39
use Mathematician::World::View;
jnthn oh hey...you can get action methods triggered for operations. \\o/ 20:40
*operators
moritz_ uhm, sure, why not?
jnthn hopes they'll do something sane...
TimToady sounds like a comic book
colomon Sorry, I didn't mean "real" in a mathematical sense here. Don't want to get into that.
I mean, Numeric (just double checked this in the spec) specifically means _scalar_.
but there are plenty of non-scalar entities it makes sense to do math upon. 20:41
moritz_ right
but it doesn't mean they need to be in Perl 6
colomon errr... I'm not at all claiming they should be. 20:42
I'm trying to figure out what prefix:<+> means.
My thought had been that it meant, things we can do math on.
So that if you add a Vector class, it overloads prefix:<+> to say, oh yeah, I can do math!
moritz_ right 20:43
TimToady but if you want <1 2 3> to create a Vector automatically, we have to have hooks into the <...> processing that extend the current notion of dwimming each entry for numericity 20:45
20:45 beggars joined
colomon TimToady: no, no, no, I specifically DON'T want <1 2 3> to create a Vector automatically. :) 20:45
TimToady good
colomon that was why I was saying I though +<1 2 3> == 3 makes sense. 20:46
TimToady but if you want a Vector literal of *some* kind, it'd be nice if it could be recognized on input automatically
colomon I don't really see why a Vector literal would be particularly desirable. At least any more than a "any other concept we'd like to stick in a class" literal would be. 20:47
TimToady but anyway, that's why 'number' is a syntactic category, so it can be extended. 20:49
possibly that should change to a more generic 'literal' category
jnthn pmichaud: when you're back, HALP!
TimToady actually, value is already that category, more or less 20:52
20:52 zamolxes joined
TimToady though we'd have to be careful about quotes with closures, since quotes are also 'values' 20:52
KyleHa rakudo: say undef eq '' 20:55
p6eval rakudo 7347ec: Use of uninitialized value␤1␤
TimToady in any case, we need to track all that anyway to know what is constant foldable
KyleHa ng: say undef eq ''
p6eval ng 965e01: Could not find non-existent sub &eq␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
moritz_ it parses undef as a sub call
ng: my $x; say $x eq ''
p6eval ng 965e01: 0␤
KyleHa That's the only test holding up equality.t, but I'm guessing you knew that already. 20:56
20:57 Su-Shee left
moritz_ yes 20:57
that's why I also added a question to misc/pm.txt
KyleHa Yes, that makes more sense now. 8-)
PerlJam guten tag meine freunde 21:01
phenny PerlJam: 20:28Z <pmichaud> tell PerlJam you need to add yourself to nqp-rx CREDITS
Wolfman2000 rakudo: my Str $t = "Test"; say join(" ", split(//, $t)); 21:05
p6eval rakudo 7347ec: Confused at line 2, near "(\\" \\", spli"␤in Main (file <unknown>, line <unknown>)␤
Wolfman2000 ...okay, the ways of splitting and joining are different then
dalek p-rx: 19c51c8 | duff++ | CREDITS:
Add myself to CREDITS
TimToady std: my Str $t = "Test"; say join(" ", split(//, $t)); 21:07
p6eval std 29113: [31m===[0mSORRY![31m===[0m␤Null regex not allowed at /tmp/7W5bQS6nwm line 1:␤------> [32m Str $t = "Test"; say join(" ", split(//[33m⏏[31m, $t));[0m␤FAILED 00:02 106m␤
PerlJam Wolfman2000: you want comb anyway :)
Wolfman2000 PerlJam: don't recall that one 21:08
PerlJam rakudo: say join(" ", comb("Test")); # not sure that's the procedural mechanism. 21:09
p6eval rakudo 7347ec: Could not find non-existent sub comb␤in Main (file src/gen_setting.pm, line 324)␤
PerlJam rakudo: say join(" ", "Test".comb); 21:10
p6eval rakudo 7347ec: T e s t␤
ng_feed rakudo-ng: jnthn++
rakudo-ng: Get .= working. Needs review by pmichaud++ - this way works (and an action method for infix:<.=> did not - doesn't get trigged with the operand's match objects), but not sure if we want to be piling extra checks into EXPR.
PerlJam I guess there isn't a procedural version of comb
pmichaud in general extra checks in EXPR isn't what we'll want, no.
(back for 15 mins) 21:11
it should go into the action method for infix:<.=> 21:12
although the reducecheck may be the way to get it to work
jnthn pmichaud: That was my first try, but we get a match object a level too deep into the tree for that to work.
pmichaud ?
jnthn pmichaud: If you do --target=parse, you get a match node that has something like
<infix> => ..., [0] => ..., [1] => ... 21:13
pmichaud: But the action method only gets triggered with the contents of <infix>
pmichaud: Not the node "above" it with the operands.
pmichaud jnthn: right, you probably need the reduce check
the same thing happens for ternaries 21:14
jnthn Ah, ok
pmichaud actually, all of the action methods for operands get fired before the operands are known
jnthn reducecheck is like a hook that gets called later on?
pmichaud (in some sense, they have to be)
jnthn When we know the kids?
pmichaud reducecheck gets fired and gives an opportunity to reorganize the match node, yes.
jnthn Can we make ast at that point? 21:15
pmichaud I think so
jnthn OK.
pmichaud let me look at ternary
Wolfman2000 rakudo: say "test" ~~ <alpha>;
p6eval rakudo 7347ec: 0␤
Wolfman2000 ...didn't do that right
rakudo: say "test" =~ /<alpha>/;
p6eval rakudo 7347ec: Unable to set lvalue on PAST::Val node␤in Main (file <unknown>, line <unknown>)␤
moritz_ rakudo: say <alpha>.perl
p6eval rakudo 7347ec: "alpha"␤
Wolfman2000 rakudo: say "test" =~ <alpha>;
p6eval rakudo 7347ec: Unable to set lvalue on PAST::Val node␤in Main (file <unknown>, line <unknown>)␤ 21:16
TimToady std: say "test" =~ /<alpha>/;
p6eval std 29113: [31m===[0mSORRY![31m===[0m␤Obsolete use of =~ to do pattern matching; in Perl 6 please use ~~ instead at /tmp/wrBIfOXwoB line 1:␤------> [32msay "test" =~[33m⏏[31m /<alpha>/;[0m␤FAILED 00:02 101m␤
jnthn pmichaud: Ah yes, :reducecheck<ternary>
Wolfman2000 moritz_: doing regex if I can
pmichaud yes, at the time of reducecheck the kids are known
TimToady Wolfman2000: see std ^^^
pmichaud and it appears you can do an ast make at that point
jnthn pmichaud: is ternary a method called on the grammar or the actions? 21:17
pmichaud (if you want to see the definition of ternary, it's in src/cheats/hll-grammar.pir in the nqp-rx source
Wolfman2000 rakudo: say "test" ~~ /<alpha>/;
p6eval rakudo 7347ec: t␤
pmichaud it's called on the grammar
jnthn OK
Wolfman2000 ...considering I'm only going to do this for one char, close enough
TimToady nothing in STD knows much about actions
jnthn So nicest is if I write a method on the grammar and it calls some sub in the actions, or?
pmichaud in STD, 'ternary' is called 'raise_middle' 21:18
(I went with 'ternary' as that will likely make more sense to other hll developers)
jnthn nod
My question is more, how should I organize this so as not to hurt --target=parse? 21:19
Does reducecheck get called in that case?
pmichaud it does, yes.
because it's part of the parse
(i.e., it's not an action)
jnthn 'cus if I'm trying to produce AST in something that's called in the parse...
I fear I'm going to cause issues.
pmichaud best is to produce the ast in infix:<.=>
jnthn Yes, but I can't 21:20
pmichaud then make sure that the order of the match objects is what you want in the parse
21:20 cognominal joined
jnthn Because when that is called, I don't have the child nodes. 21:20
pmichaud what do you ultimately need for the past ?
you don't need the child nodes at the time you make the tree
you just need to make sure the child nodes will be in the right order at the time that EXPR puts them in place
jnthn It's a bit tricker than that though.
pmichaud what do you ultimately want the past to look like?
jnthn $foo .= bar needs to become like 21:21
$temp = $foo
$temp = $temp.bar
lisppaste3 wolfman2000 pasted "Is there a better way? Sure. Just unsure how. Plus, present version isn't working. (Caesar Cipher)" at paste.lisp.org/display/90616
jnthn The point being that we need to evaluate the LHS once
But use it twice.
Take a look at make_dot_equals 21:22
In Actions.pm
For the AST I build at the moment.
pmichaud thinking
could $foo .= bar be reasonably translated into &infix:<.=>($foo, 'bar') ? (I think the answer is 'no', but I don't remember why at the moment) 21:25
jnthn The problem is that you'd need to worry about the args too 21:26
Wolfman2000 std: my Str $s = "test"; my $a = split('', $s); say join("X", $a);
p6eval std 29113: ok 00:02 106m␤
pmichaud sure, but the args get parsed also
KyleHa Wolfman2000: What happens if I say rotate( "foo", 4096 )?
jnthn And it's potentially any dotty that we are parsing there, iirc.
Wolfman2000 KyleHa: just added the where clause on that
jnthn pmichaud: I dunno. That way may be workable...something feels not quite right about it though. 21:27
pmichaud dotty will have already parsed the args, iirc
Wolfman2000 KyleHa: present error: ResizablePMCArray: Can't pop from an empty array!
pmichaud yes, the node coming back from dotty to infix:sym<.=> will already have the args in it
Wolfman2000 rakudo: say "test".length;
p6eval rakudo 7347ec: Method 'length' not found for invocant of class 'Str'␤in Main (file src/gen_setting.pm, line 324)␤
Wolfman2000 rakudo: say "test".elems; 21:28
p6eval rakudo 7347ec: 1␤
Wolfman2000 it's oen of these...
...not that
jnthn pmichaud: Yeah, I think I was kinda pondering the .* cases though...which give us calls into custom dispatchers and the like...
pmichaud what's an example of the .* case?
PerlJam does ng grok gather/take yet? 21:29
pmichaud PerlJam: nafaik
Wolfman2000 KyleHa: found the issue. I'm not taking arguments from the command line properly somehow.
21:30 zaphar_ps joined
pmichaud jnthn: here's the thing -- I fear that the EXPR method is already going to get heavily loaded with special-purpose stuff with potentially funny interactions. So anything that can be kept out of EXPR for special case handling is better done that way. 21:31
and .= just doesn't feel like it should be handled in EXPR
anyway, have to pick up other kid, bbi15
jnthn pmichaud: Oh, I'm with you on not handling it in EXPR - it bothers me too. I'm just not totally sure quite what the Right Answer is. 21:32
21:33 kidd joined 21:34 aindilis joined 21:36 justatheory joined
Wolfman2000 rakudo: say @*ARGS; 21:41
pmichaud so, what's the example of the .* case?
(back)
p6eval rakudo 7347ec: ␤
Wolfman2000 ...wonder why I did that.
my Str $mess = @*ARGS[0]; <-- that line isn't working, even though I know I'm passing command line arguments. Where am I going wrong? 21:42
21:44 lichtkind joined
jnthn pmichaud: I'm not sure - I just know that we'll end up with (possibly nested) calls into various dispatchers. 21:46
pmichaud: It may not be a problem to do it the infix:<.=> way.
21:47 astrojp left
jnthn pmichaud: Hmm...actually... 21:47
jnthn checks what gets parsed exactly on the RHS...
21:47 jan_ joined
jnthn It may be you can't sneak so much in anyway... 21:47
pmichaud: oh, hmm, no, we can't parse any of the fancy dispatches on the RHS anyway. 21:48
21:48 astrojp joined
jnthn pmichaud: So it probably can work with a call to &infix:<.=> 21:48
pmichaud: It's just...yet another call... 21:49
lisppaste3 KyleHa annotated #90616 "modified Caesar cipher" at paste.lisp.org/display/90616#1
jnthn But we can worry about optimization in the future.
I'll try it that way.
Wolfman2000 KyleHa: did that version run for you?
KyleHa Yes.
On my command line: ./perl6 file.pl abcdef 4 21:50
Wolfman2000 KyleHa: I still had to deal with the ResizablePMCArray error though...
KyleHa ...using Rakudo 'master'
Wolfman2000 is on master
jnthn pmichaud: Oh, we still would need to munge it 21:52
pmichaud: Afterwards.
pmichaud: 'cus we need the method name passing along to any &infix:<.=>
So the &infix:<.=> way can't work just as if it's any old infix operator. 21:53
Wolfman2000 KyleHa++: Bravo for the assistance. I'll have to credit you now for your help. Should I use KyleHa or a different name?
21:53 cognominal_ joined
KyleHa You can use my full name, Kyle Hasselbacher. What did I help with? 21:54
Wolfman2000 KyleHa: Working on a cryptography presentation. I was struggling with...well, getting the Caesar Cipher to work right
KyleHa Oh cool. 8-)
pmichaud jnthn: I think it can work 21:55
Wolfman2000 I still don't know what was wrong with my version, though. *shrugs*
pmichaud I'm a bit distracted for another 10 min then will look more closely
moritz_ Wolfman2000: the Caesar Cipher works great with tr/trans
jnthn pmichaud: I don't see how, but feel free to change the implementation to something you prefer.
pmichaud: I need to look at presentation bits now.
pmichaud okay, no problem 21:57
PerlJam where are the :pasttypes documented these days? 22:03
jnthn PerlJam: docs.parrot.org/parrot/latest/html/...t.pod.html 22:10
PerlJam jnthn: danke 22:11
jnthn PerlJam: bitte 22:15
.oO( mmm...bitter )
moritz_ oh, it was so clear that jnthn would come back to drinking soon... <de.wikipedia.org/wiki/Magenbitter> 22:18
22:19 cognominal__ joined
jnthn moritz_: heh... 22:20
moritz_ SCNR
jnthn moritz_: Well, actually, I was thinking more of en.wikipedia.org/wiki/Worthington_Draught_bitter :-) 22:21
moritz_ jnthn: relatives of yours?
jnthn I've not been able to trace back any family history far enough to get any kinda link, sadly. 22:22
It could be a long way back, if at all.
And it may be same surname but no actual blood relation.
Worthington = Worthing + ton ~= from Worthing 22:23
(Where Worthing is a place in England)
So I guess the best I can say is "somwehere in my and their ancestory, there's somebody who came from Worthing" 22:24
:-)
It's a nice beer anyway though.
moritz_ :-) 22:25
jnthn Relatively common in England.
But I've not seen it much, if at all, elsewhere.
zaslon lolmasakhazblogged! masak++ 'How Perl 6 could kill us all!': use.perl.org/~masak/journal/39912?from=rss 22:28
arnsholt Possibly related to the fact that Worthing in in England? =)
jnthn arnsholt: Just maybe! :-) 22:30
PerlJam mst++ too 22:42
masak indeed.
jnthn yay masak&mst blogged!
jnthn read both posts. :-) 22:43
22:44 cognominal joined
arnsholt Christmas twice a year sounds good to me =D 22:47
masak arnsholt: don't tell the Perl 5 people, but since Pugs, us Perl 6 people plan to have every day feel like Christmas :) 22:48
and we won't settle for less.
jnthn
.oO( that's why Perl 6 has a .unwrap method )
PerlJam wonders what a "Perl 5 person" or a "Perl 6 person" is anyway
masak jnthn++ # lol
diakopter or a Perl Jam person.
masak jnthn: that in itself deserves a blog post. :) 22:49
diakopter std: use vJam;
p6eval std 29113: Potential difficulties:␤ Can't locate module vJam at /tmp/I0UE6CrlB4 line 1:␤------> [32muse vJam[33m⏏[31m;[0m␤ok 00:01 97m␤
arnsholt I knew there was a reason I loved this channel
The puns! =D
masak arnsholt: you should hear us when we're putting effort into it. :)
moritz_ PerlJam: we also have lattice persons and band structure persons in solid state physics :-)
at least if you believe my boss :-) 22:50
arnsholt masak: There were some language puns earlier today I remember fondly
diakopter masak: I guess you mean "Perl >5 people" :)
masak diakopter: is that a 5 with angry eyebrows?
PerlJam heh
masak or horns, even?
PerlJam 3:-5
moritz_ will refrain from bad puns on "horns" 22:51
22:54 lichtkind_ joined
moritz_ speaking of which.. when people find my homepage via google, more than 65% is by searching for 6today or variations thereof... 22:56
I guess I can't (and don't want to) offer them what they are looking for :/
masak moritz_: make them an offer for 6inapril :) 22:57
arnsholt ^^
moritz_ :)
arnsholt is just about ready to kill KLM's webpages 22:58
Booking tickets is not working properly >.<
frew rakudo: (1,2,3,4).map $_+1 22:59
p6eval rakudo 7347ec: Confused at line 2, near "$_+1"␤in Main (file <unknown>, line <unknown>)␤
frew rakudo: (1,2,3,4).map { $_+1 }
p6eval rakudo 7347ec: Confused at line 2, near "{ $_+1 }"␤in Main (file <unknown>, line <unknown>)␤
frew rakudo: map { $_+1 }, (1,2,3) 23:00
p6eval rakudo 7347ec: ( no output )
frew rakudo: (map { $_+1 }, (1,2,3)).perl.say
p6eval rakudo 7347ec: [2, 3, 4]␤ 23:01
frew rakudo: (map $_+1, (1,2,3)).perl.say
p6eval rakudo 7347ec: Use of uninitialized value␤No applicable candidates found to dispatch to for 'map'␤in Main (file <unknown>, line <unknown>)␤
moritz_ pointme: dalek
pointme: zaslon
frew so is it always a Code in p6? No expressions like in p5?
(for map) 23:02
moritz_ frew: yes
frew gotcha
moritz_ killed pointme
pmichaud btw, extra karma points to wheover came up with "spunky little sister" meme for Perl 6. That is excellent.
moritz_ TimToady++
frew (1,2,3,4).map: {$_ + 1} 23:03
rakudo: (1,2,3,4).map: {$_ + 1}
p6eval rakudo 7347ec: ( no output )
zaslon lolmasakhazblogged! masak++ 'November 17 2009 -- the force is strong with this one': use.perl.org/~masak/journal/39913?from=rss
moritz_ rakudo: say (1..4).map: *+1
p6eval rakudo 7347ec: 2345␤
masak missed the midnight deadline. bah.
jnthn omg masak++ blogs some more!
frew moritz_: wooh, that's excellent
moritz_ *+1 is just a short way to write a closure
frew rakudo: say (1..4).map: "{*} frew" 23:04
masak kinda Haskell-inspired, I guess.
p6eval rakudo 7347ec: Multiple Dispatch: No suitable candidate found for 'concatenate', with signature 'PPP->P'␤in Main (file <unknown>, line <unknown>)␤
frew rakudo: say (1..4).map: *~" frew"
p6eval rakudo 7347ec: No candidates found to invoke␤in Main (file <unknown>, line <unknown>)␤
frew hmm
rakudo: say (1..4).map: * ~ " frew"
p6eval rakudo 7347ec: No candidates found to invoke␤in Main (file <unknown>, line <unknown>)␤
frew what's wrong there?
masak no candidates are found, perhaps? :) 23:05
moritz_ rakudo: * ~ 'a'
pmichaud maybe we don't have Whatever operators defined for infix:<~> yet. That seems most likely.
p6eval rakudo 7347ec: ( no output )
jnthn rakudo: say (* ~ " frew").WHAT
p6eval rakudo 7347ec: Str()␤
pmichaud yup, that's it.
moritz_ that's wrong.
masak submits rakudobug
jnthn fail.
frew hehe
moritz_ frew++ # turning up a rakudobug
frew :D
rakudo: say (1..4,'frew').map: * . WHAT 23:06
p6eval rakudo 7347ec: Confused at line 2, near ". WHAT"␤in Main (file <unknown>, line <unknown>)␤
jnthn masak: The search for the 15th, when that happens, is going to be...interesting. :-/
masak jnthn: oh!
jnthn: that hasn't even occurred to me!
frew goes back to work
jnthn masak: Well, circumstances are a tad different in that part of the world these days than they were last time around... 23:07
masak ehay are indeed.
s/e/t/
jnthn wonders if he nearly has enough material for pm group tomorrow. 23:08
23:08 cognominal_ joined, xomas_ joined
masak I'm pleased with today's slidescrafting, as well. 23:08
though my slides software is crap in places. :/
moritz_ that's because it's not written in Perl 6 :-) 23:09
jnthn masak: Yeah, mine too.
pmichaud I've never found "having enough material" to be an issue.
23:09 oetiker joined 23:10 Whiteknight joined
jnthn pmichaud: Well, in a sense, it's not my issue either. It's just having some helpful visual aids to go with my waffle. 23:10
masak moritz_: one day I'll release this piece of software on CPAN. it'll be a simultaneous Perl 5 and Perl 6 release. 23:11
moritz_ masak: where "this piece of software" is your sekrit world domination project?
masak moritz_: no, just the script I use to turn YAML into slides. 23:12
23:12 japhb joined
masak moritz_: it does it by building SVG files, and putting them through Inkscape and then Ghostscript, to make a PDF file. 23:12
nothing fancy, really. but very useful. 23:13
moritz_ masak: why the Ghostscript step? to get multi-page PDFs?
masak moritz_: aye.
23:13 cognominal__ joined
masak moritz_: actually, gs seems to be the step causing all my problems right now, so if you (or someone else) has a nice tip for how to painlessly merge PDF files... I'd gladly accept it. 23:21
moritz_ masak: my "solution" back in the days was to write a latex file which included all the other pdfs, and ran pdflatex over it :-) 23:22
masak aye, I found that solution on a forum. 23:23
I might try it.
23:29 wknight8111 joined 23:34 stephenl1 joined
pugs_svn r29114 | moritz++ | [perl6.org] preliminary page about our IRC channel 23:34
jnthn
.oO( Health warning: addictive )
23:35
moritz_ bonus points for whoever adds good CSS for defintion lists on perl6.org 23:36
or fixes my spelling errors
or linkifies more on that page
Wolfman2000 moritz_: sounds like a challenge.
granted, a good deal of CSS is subjective 23:37
masak Wolfman2000++ # volunteering
moritz_ Wolfman2000: nearly any CSS is better than the default style, which is highly browser dependent 23:38
and looking at perl6.org/community/irc the spacing sucks
too little space between the entries, too much indentation
pugs_svn r29115 | jafelds++ | Add id to make using CSS easier. 23:40
moritz_ when that's done, perl6.org/community/ should just point to the irc page, and not repeat half of what it says 23:41
pugs_svn r29116 | jafelds++ | Fix issues of too little space, too much indentation. I think. Gotta love subjective opinions. 23:42
Wolfman2000 moritz_: I don't know how long it takes for the files to be on the live server. Refreshing right now doesn't show my changes. 23:43
moritz_ Wolfman2000: usually 5 minutes or so, but I just refreshed manually
Wolfman2000: better now :-) 23:44
Wolfman2000: what would you think of emphasized <dt>s, either with bold or italics?
Wolfman2000 I may not be great at dealing with graphics such as the buterfly, but I'm not that bad with CSS layout.
moritz_: italics would be the most I would give it. Still...unsure if they need it. 23:45
If you want to give it something else...list-style-type perhaps?
jnthn The spacing is nice.
moritz_ not sure
anyway, Wolfman2000++
Wolfman2000 ...then again, list-style-type may only work on <ul>
well, <ul><ol><li> 23:46
masak my browser window is narrow, but not ridiculously narrow. in it, the yellow box appears diagonally _under_ the green box. 23:47
also, the pre text sticks out of the yellow box. 23:48
Wolfman2000 masak: mine as well with the <pre>
moritz_ aye, same here
Wolfman2000 that is harder to handle...unless you want to manually put in carriage returns 23:49
masak no, one could forego the pre-ness and just have it wrap. 23:50
pugs_svn r29117 | moritz++ | [perl6.org] line-wrap pre text on the irc page
r29117 |
r29117 | Also link to it from the community page, and remove duplicate descriptions
masak moritz_++
Wolfman2000 moritz_: any reason why you do < moritz instead of <moritz? 23:51
or rather, <carlin or <pointme 23:52
moritz_ Wolfman2000: just copy & paste
but I can change that. 23:53
Wolfman2000 so can I
pugs_svn r29118 | jafelds++ | Haven't seen IRC have a space with < and name before. Have some consistency.
arnsholt Wolfman2000: It's irssi's format 23:54
Wolfman2000 ...well I'll be darned
arnsholt It leaves a space between the < and the nick for characters like @ and + to indicate different statuses (@ for op, + for voice)
Wolfman2000 ...either way, better to use &lt; and &gt; 23:55
23:56 ihrd joined
moritz_ Wolfman2000: nope, the [% syntax escape %]...[% endsyntax%] takes care of escaping already 23:56
Wolfman2000 ...
pugs_svn r29119 | jafelds++ | Partial revert. Restore the space due to irssi, but stick with HTML escaping.
Wolfman2000 wish I knew that bef--that
moritz_: feel free to revert to r29117 23:57
moritz_ that's why there's a whole page on contributing to perl6.org, which also links to the used CMS :-)
Wolfman2000: ok
masak time to go home and insomniate. 23:58
good night, #perl6.
moritz_ masak: good night
Wolfman2000 g'night
moritz_ masak++
Wolfman2000++
pugs_svn r29120 | moritz++ | [perl6.org] link to colabti.org; more spaces tuning 23:59
r29120 |
r29120 | Also don't double-escape things in areas escaped by our CMS.