»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
00:00 jimmy1980 joined
lichtkind Type check failed in assignment to '$!geschwindigkeit'; expected 'Num' but got 'Rat' : bug or corect? 00:00
jnthn ...how can we know without seeing your code? :) 00:01
00:01 fridim_ left
jnthn But if you're doing: has Num $!ichwillbier = 1.5 00:02
Or some such, then yes, correct
1.5 is a Rat.
dalek kudo/nom: fdba160 | jnthn++ | src/core/Numeric.pm:
Add round sub, so rounders.t at least compiles. It hangs, though, so this only half fixes RT#105272.
00:03
raiph mberends++ for game code, advent calendar post, and posting early
jnthn colomon: Dunno if you've any idea why .round hangs? 00:04
Anyway, my hacking time's up for today 00:05
00:06 jimmy1980 left
lichtkind good night 00:06
jnthn 'night, #perl6
diakopter o/
lichtkind \o 00:07
00:11 jimmy1980 joined
sorear good * #perl6 00:17
felher o/ 00:20
00:23 Ingis left
lichtkind \o 00:25
00:25 lichtkind left 00:30 Ingis joined 01:11 kcwu joined 01:15 whiteknight joined, whiteknight is now known as Guest32833 01:18 Sarten-X left 01:26 Radvendii joined, Sarten-X joined, Radvendii left 01:29 stepnem left 01:34 stepnem joined 01:36 Radvendii joined
Radvendii +j #conlang 01:37
damn
how do i add a channel to this irc client?
donri That quite depends on which particular IRC client it might be that you are using. :) 01:38
sorear donri: 185b3293@gateway/web/freenode/ip.24.91.50.147 is a dead giveaway
Radvendii: it's /j #conlang in that client 01:39
Radvendii webchat.freenode.net
bam! thanks ;-)
is there a command line version of irc?
sorear hundreds 01:40
I am not exaggerating... writing command line irc clients is a rite of passage for hackers
irssi is one of the most popular
I'm using that
Radvendii ooh… then maybe i'll make on in perl 6 :-P
does anyone have a tutorial to suggest for writing one? i have no idea where to begin. 01:41
donri sorear: ironically, my irc client does not show hostnames :) 01:42
Radvendii it seems there is a module Net::IRC for perl5 does such a module exist for perl6 as well? 01:48
sorear Radvendii: I never said it was a good idea :p
Radvendii ah. 01:49
donri but if you're feeling brave, you should look into grammars and network io 01:50
if you're feeling brave but lazy, you might be able to link to an existing library via blitzkost-what's-its-name, nativecall or niecza's clr support
sorear I think you mean "if you're feeling brave and have 5 years to burn" 01:51
Radvendii haha. what if im suuuper lazy and just look for one online. Irssi seems good.
donri beware that irssi sucks though 01:52
but don't tell anyone i said so
Radvendii oh?
damn. what should i use?
sorear irssi sucks, the rest suck more
donri graphics in the terminal is an ugly hack
Radvendii damn!
i dont want graphics
i want vim-style
sorear my copy of irssi doesn't do graphics
donri the command line is great as a command line
sorear it's vim-style
donri graphical toolkits are greater as graphical toolkits 01:53
sorear: vim is graphical
Radvendii i mean command line vim
not gvim
donri command line vim is graphical
www.gnu.org/s/freetalk/ is an example of a non-graphical terminal chat client 01:54
sorear bad donri. please don't get into semantic nitpicking with the newbies
Radvendii how are you defining graphical?
donri ed is an example of a non-graphical editor
Radvendii haha. oh. why do you say graphics in command line is ugly?
donri because it's a hack 01:55
and i repeatedly see that biting people
particularly with mispastes to irc
Radvendii i dont understand...
sorear Radvendii: if you want a vim-style irc client and don't fancy spending 5 years debugging one of your own, use irssi, it's the least bad of them
donri ncurses-like interfaces remove most of the benefits of the command-line, yet only providing half-assed graphics 01:56
weechat is arguably better than irssi
if you're into that sort of thing
sorear Radvendii: since you like vim, you don't care what donri has to say
donri :)
Radvendii awesome. ill try out irssi
donri loves gvim FWIW
Radvendii worst comes to worst, i'll stop using it ;-P
sorear Radvendii: donri is arguing against vim-style interfaces in general, not irssi in the specific 01:57
Radvendii ah
donri not vim-style in general, ncurses-style
Radvendii what's the difference?
donri well, vim in the terminal is ncurses-like
Radvendii gah! where do i get GILB?
donri but vim in itself is more than that
sorear Radvendii: donri defines vim to include gvim 01:58
Radvendii oh wait
it tells me
i see
sorear Radvendii: dunno, I just did sudo apt-get install irssi and angels sung for me
donri sorear: it could also be interpreted as my arguing against the modal editing of vim or something such
Radvendii i dont even have gvim. it's not compiled that way by default on mac.
donri quite oppositelike i think that part is genious
Radvendii: macvim?
Radvendii aw damn. sometimes i wish i used linux. but then again... i tried it. it didn't work out for me too well. 01:59
donri why not?
Radvendii but there is a version of apt-get for mac...
donri macports, homebrew and all those
Radvendii i dont remember. it was really buggy, especially with the mac trackpad
donri does not really know mac 02:00
hardware might in deed suck with linux-on-a-mac 02:01
i've heard it working out well but might depend on the mac or how long ago you tried it
sorear FreeBSD also has a respectable package manager, sudo pkg_add -r irssi
02:01 s1n1 joined
sorear sadly, you still can't expect to run Linux on arbitrary hardware and have it completely work 02:02
Radvendii it might also have hurt that for a while i tried arch linux
you have to build that one up from the ground
sorear I actually hear arch linux is quite good
donri oh dear god don't use arch linux
Radvendii i struggled through getting x11 isntalled.
02:03 stepnem left
sorear if you can adjust to a real Unix environment :p 02:03
02:06 jeffreykegler joined
benabik I would not recommend fink for the mac at this point. It's a bit outdated and clunky. It uses apt-get but more or less forces you to build from scratch. Homebrew is much better. And MacVim is the way to go for vim. 02:07
benabik re-lurks.
02:14 woosley joined 02:16 stepnem joined
djanatyn say ~(1, 2, * + * ... *)[^10] # this piece of code still confuses me. 02:20
02:21 clkao left
donri rakudo: say ~(1, 2, * + * ... *)[^10] 02:23
p6eval rakudo fdba16: OUTPUT«1 2 3 5 8 13 21 34 55 89␤»
donri djanatyn: any particular part of it?
djanatyn donri: I dunno. I think I get it.
02:23 orafu left
Radvendii what is the [^10] up to 10? 02:23
djanatyn it's just, is there a difference between the * before the "..." and the * after the "..."?
donri yes and no 02:24
02:24 orafu joined
djanatyn Radvendii: pretty sure it takes the first ten elements and returns them as a new array 02:24
since it's an infinite list, it only grabs ten
donri ^10 is a range of 0 to 9 or 10 not sure
djanatyn: * is "Whatever" and its meaning depends on the context / how/where it is used
Radvendii that's kind of weird. we already have the .. operator
02:25 woosley left
donri Radvendii: it's just a shortcut 02:25
for one you get away with less parenthesis
Radvendii mkay. what about ...? what is tha operator?
donri forgot what it's called but it's like .. ranges but more magical
... * means infinite, never-ending range 02:26
Radvendii hahaha
so how is *+*...* evaluated?
donri 1, 2 ... * means to continue the sequence 1,2...
Radvendii oh
that's brilliant
donri *+* is plus as a function
02:27 odoacre joined
Radvendii and it just knows that by * we mean the last element? 02:27
donri 1, 2, some-function ... * uses the previous items in the sequence as arguments to some-function and the result is the next item
based on the arity of the function
Radvendii ah. so it's a very specific notation
djanatyn that seems very magical >_> 02:28
donri it's multiple notations working together
djanatyn i guess not when you think about it. I didn't really get it before
donri rakudo: (* + 2)(3)
p6eval rakudo fdba16: ( no output )
donri rakudo: (* + 2)(3).say
p6eval rakudo fdba16: OUTPUT«5␤»
donri if you use an operator on "Whatever" it produces a function that takes that place as an argument
so (* + 2) is the same as -> $x { $x + 2 } 02:29
Radvendii but 1, 2, (sub) ... * is very specific
donri (* + *) is the same as -> $x, $y { $x + $y }
Radvendii: how do you mean?
Radvendii what if i did 1, 2, *+*, 4, 5, *+*, ... *? 02:30
what would it do?
djanatyn donri: ...is that kind of like haskell partial function application?
like...in a weird twisted list sort of way?
except
donri rakudo: say (1, 2, *+* ... *<100)
p6eval rakudo fdba16: OUTPUT«1␤»
djanatyn never mind, then, I guess not
donri rakudo: say ~(1, 2, *+* ... *<100)
p6eval rakudo fdba16: OUTPUT«1␤»
donri mhm
djanatyn (...) reminds me of (loop) in common lisp 02:31
donri: wait, it is?
sorear djanatyn: in a weird twisted way, yes
donri djanatyn: kinda yes
Radvendii i guess my question is this: what does putting a lambda in a list do?
djanatyn Yeah, I think you get what i mean.
sorear it's just an object, it gets put in the list
Radvendii but when you apply "say" to it, it evaluates?
djanatyn Is there a perl debugger so I could step through that expression or somethig?
okay. 02:32
well. I think I've got this now :D
donri rakudo: say ~(1, 2, *+* ... *>100)
p6eval rakudo fdba16: OUTPUT«1 2 3 5 8 13 21 34 55 89 144␤»
djanatyn > say ~(1, 1, &[+] ... *)[^10]
donri instead of * for infinite you can also have a function that tells the end
djanatyn rakudo: say ~(1, 1, &[+] ... *)[^10]
donri *>100 is the predicate for "is more than 100"
p6eval rakudo fdba16: OUTPUT«1 1 2 3 5 8 13 21 34 55␤»
djanatyn rakudo: say ~(1,1 ... *)[^10] 02:33
p6eval rakudo fdba16: OUTPUT«1 1 1 1 1 1 1 1 1 1␤»
djanatyn ...oh! okay, got it
so where should I put this test case, and more importantly, what kind of test case should I write?
donri from what i understood what you're really testing is &[+] as *+* 02:34
djanatyn ...actually, I should figure that out myself
donri i've never seen that syntax though so i can't really help
djanatyn yeah, that's what I'm testing
it is the same
donri I only know it to be &infix:<+>
Radvendii rakudo: say ~(*+* ... *)[^10]
p6eval rakudo fdba16: OUTPUT«Not enough positional parameters passed; got 0 but expected 2␤ in whatevercode <anon> at /tmp/NqC40TOaKh:1␤ in sub coro at src/gen/CORE.setting:4423␤ in method reify at src/gen/CORE.setting:4398␤ in method reify at src/gen/CORE.setting:4183␤ in method reify at…
02:34 obra joined
donri perl6: say (&[+]).WHAT 02:35
p6eval niecza v12-3-g193ca57: OUTPUT«===SORRY!===␤␤Undeclared name:␤ '[+]' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 880 (die @ 2) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1139 (P6.comp_unit @ 32) ␤ at /home/p6ev…
..pugs b927740: OUTPUT«*** ␤ Unexpected "[+])."␤ expecting "::"␤ at /tmp/cOXelIqpdh line 1, column 7␤»
..rakudo fdba16: OUTPUT«Sub()␤»
donri looks like it does work in rakudo?
02:35 obra left
djanatyn ~(1, 2, &[+] ... *)[^10] == ~(1,2, *+* ... *)[^10] # I'm testing to make sure this is true 02:35
donri: yeah, the bug got fixed
...but then it says "my $foo = &prefix:<!>;say $foo.signature;" 02:36
that's just confusing - what does that have to do with this bug?
Radvendii rakudo: say ~(1, 1*+* ... *)[^10]
p6eval rakudo fdba16: OUTPUT«1 1 1 1 1 1 1 1 1 1␤»
djanatyn I should look at another bug report and the tests submitted
02:36 Guest32833 left
Radvendii rakudo: say ~(1, 1, *+* ... *)[^10] 02:36
p6eval rakudo fdba16: OUTPUT«1 1 2 3 5 8 13 21 34 55␤»
02:37 plutoid joined
donri rakudo: &[+] === &infix:<+> 02:37
p6eval rakudo fdba16: ( no output )
donri rakudo: say (&[+] === &infix:<+>)
p6eval rakudo fdba16: OUTPUT«Bool::True␤»
donri djanatyn: all you need should be: ok (&[+] === &infix:<+>)
Radvendii i dont understand. when you evaluate a lambda in a list, it takes the previous elements and uses them as arguments?
is that right? 02:39
donri Radvendii: well it's particular to ..., not lists 02:40
Radvendii so what is the overarching rule? 02:41
donri perl6advent.wordpress.com/2010/12/0...-operator/
sleepy time for me 02:43
the rule is very liberal as all things perl
there's no single one way to use "..." 02:44
hope the link helps, gotta sleep
02:45 donri left 02:46 Rafael_Arcangel joined, Rafael_Arcangel left
Radvendii ... is briliant 02:48
thanks!
02:49 japhb_ left
colomon jnthn: no idea why round hangs. I barely had time to report the bug someone else found. :) 02:57
02:59 wolfman2_ left
sorear I blame multiple dispatch 03:12
03:19 Lothar left, Lothar joined 03:25 wolfman2000 joined 03:29 envi_ joined 03:32 s1n1 left 03:36 jimmy1980 left
djanatyn moritz / tadzik: *poke* 03:39
03:40 bluescreen10 left 03:43 jimmy1980 joined 03:44 jeffreykegler left 03:46 Radvendi1 joined, Radvendi1 left
sjn Question... Are there any good grammar tutorials online atm? 03:46
03:53 jimmy1980 left 04:01 jimmy1980 joined, Radvendii left 04:04 Radvendii joined 04:08 toebu joined
djanatyn /home/djanatyn/roast/S03-sequence/basic.rakudo .. ok 04:17
All tests successful.
\o/
04:18 Radvendii left
djanatyn okay, I'm almost certain this won't be accepted, but I'm going to submit it anyway, because it's at the very least progress! 04:18
04:20 Radvendii joined 04:34 jimmy1980 left 04:35 jimmy1980 joined, f00li5h joined
djanatyn github.com/perl6/roast/pull/9 04:37
04:38 toebu left 04:42 jaldhar joined 04:58 worr joined 05:07 jimmy1980 left 05:13 clkao joined, jimmy1980 joined 05:22 cooper left 05:25 packetknife left 05:30 koban joined 05:36 colomon left 05:41 cognominal_ left 05:45 odoacre left 05:47 odoacre joined 06:03 Radvendii left 06:05 kaleem joined 06:07 lestrrat left, jimmy1980 left 06:08 jimmy1980 joined, lestrrat joined
Woodi hallo today 06:13
how to write class with fields not available for methods in that class except that field accesor ? 06:14
sorear You can't, sorry.
Woodi in Perl5 there was a way - using clousures 06:24
k, I will test clousures in v6 06:25
sorear uhm 06:28
I do not think I understand you
tadzik: ping 06:29
moritz djanatyn: *backpoke* 06:30
sjn: "Using Perl 6" has an introduction to regexes and grammars 06:32
dalek ast: 5d94616 | Jonathan++ | S03-sequence/basic.t:
RT #76046: &[+] in infix:<...>
ast: fcb6304 | moritz++ | S03-sequence/basic.t:
Merge pull request #9 from djanatyn/master

GCI - RT #76046
moritz djanatyn++ 06:33
aloha Karma for djanatyn is now 7
dalek ok: 84489ff | moritz++ | src/ (2 files):
fix a thinko and a grammaro, Entonian++
06:35
moritz mberends++ # advent post 06:40
aloha Karma for mberends is now 159
mberends \o/ gm moritz 06:41
06:46 molaf joined, daxim joined 06:59 raiph left 07:01 wtw joined 07:09 mberends left
tadzik sorear: pong 07:16
djanatyn: pong
07:26 molaf left 07:33 wk joined 07:39 lue left
moritz just had a small relevation 07:41
you know, method lookup and sub lookup are similar, excpt that sub lookup consults the outer lexpads, and method lookup the "outer" classes (ie the ones we inherit from) 07:42
and in this picture, role application is just like importing subs into a lexical scope 07:43
awwaiid or a lookup overlay 07:54
er, yeah I see what you mean. scopes overlay scopes 07:55
07:56 jerome__ left 07:57 alim joined 07:59 jerome__ joined 08:01 toebu joined 08:02 PZt left 08:03 mj41 joined 08:04 PZt joined
odoacre what was the name of that cool program that was like grep -r but had syntax hilighting and skipped over SCM files ? 08:15
08:15 fsergot left 08:16 GlitchMr joined 08:17 alim left
moritz odoacre: ack 08:21
gist.github.com/1434231
odoacre moritz: right, thanks
moritz erm, wrong paste 08:22
betterthangrep.com/
odoacre yeah i have it i just could not remember the name
moritz nom: say 123.round 08:31
p6eval nom fdba16: OUTPUT«(timeout)»
08:33 mj41 left 08:36 fsergot joined 08:39 toebu left
moritz I'm fixing the rounders now 08:47
jnthn moritz: great, thanks :) 08:48
jnthn is getting stuff sorted out for Stockholm trip
08:50 mj41 joined
moritz is there a *fast* way to check if a num is one of Inf, -Inf, or NaN? 08:54
09:05 cognominal joined 09:13 hundskatt left 09:16 fsergot left
dalek ast: d413b87 | moritz++ | S (2 files):
rakudo fudges
09:21
09:22 tzhs joined 09:32 alim joined 09:35 alim_ joined 09:36 fsergot joined 09:37 alim left, alim_ is now known as alim 09:39 jimmy1980 left 09:42 fsergot left 09:43 plutoid left 09:44 jimmy1980 joined 09:46 [particle] left 09:48 [particle] joined 10:07 alim_ joined 10:08 alim left, alim_ is now known as alim, fsergot joined 10:11 ezito joined 10:15 fsergot left
GlitchMr perl6: print .chr for 0x20..0x7E 10:30
p6eval niecza v12-3-g193ca57: OUTPUT«Unhandled exception: Unable to resolve method chr in class Int␤ at /tmp/sbvxchzAq4 line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2224 (ANON @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2225 (module-CORE @ 58) ␤ at /home/p6e…
..pugs b927740, rakudo fdba16: OUTPUT« !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~»
GlitchMr :)
perl6: print 2.2~400 10:32
p6eval niecza v12-3-g193ca57: OUTPUT«11/5400»
..pugs b927740, rakudo fdba16: OUTPUT«2.2400»
GlitchMr perl6: print {2+2}.eval.perl # probably invalid, but whatever... 10:41
p6eval rakudo fdba16: OUTPUT«Method 'eval' not found for invocant of class 'Block'␤ in block <anon> at /tmp/QQXVbDGWzA:1␤ in <anon> at /tmp/QQXVbDGWzA:1␤»
..pugs b927740: OUTPUT«<SubBlock(<anon>)>»
..niecza v12-3-g193ca57: OUTPUT«Unhandled exception: Unable to resolve method eval in class Block␤ at /tmp/N3JkUaPwpt line 1 (mainline @ 1) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2224 (ANON @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2225 (module-CORE @ 58) ␤ at /home/…
10:41 dakkar joined 10:43 colomon joined 10:48 jimmy1980 left 10:51 jimmy1980 joined 11:05 alim left 11:20 jimmy1980 left
djanatyn moritz: :D 11:25
what's my next task?
11:26 ezito left, jimmy1980 joined 11:36 abercrombie left 11:37 abercrombie joined
moritz djanatyn: there's another test writing tickets 11:51
djanatyn: search for me as a mentor, shouldn't be too hard to find then
11:51 araujo left
djanatyn I don't think I can 11:52
I can only search by title or organization
...by the way, are there any tests involving bailador? 11:53
I was going to wait a little while before I accepted my next task, as our school is having a programming competition this week I'm participating in. 11:54
But, if I could use Bailador in that, I'd love to :) 11:55
moritz djanatyn: we can publish new tasks on Dec 18th, I think 11:57
djanatyn Oh, fun.
Well, it's over on friday ;)
moritz djanatyn: best contact tadzik about it, he knows bailador much better then me, and he's also a GCI mentor 11:58
djanatyn so I'll accept that new ticket task this weekend, then.
maybe. I might just use Dancer2 or a python web framework, still not sure 11:59
moritz djanatyn: www.google-melange.com/gci/task/vie...11/7174240
djanatyn but if bailador is usable and not terribly slow that would be fun
moritz aye 12:00
jnthn travel to stockholm - probably back this evening & 12:05
12:13 fridim_ joined, Psyche^ joined 12:15 benabik left 12:16 Patterner left, Psyche^ is now known as Patterner 12:23 araujo joined 12:28 fridim_ left
colomon nom: say 23.542323.round 12:39
p6eval nom fdba16: OUTPUT«(timeout)»
colomon nom: say "hello" 12:40
p6eval nom fdba16: OUTPUT«hello␤»
colomon nom: say 23.542323.round
p6eval nom fdba16: OUTPUT«(timeout)»
12:42 mkramer joined 12:49 toebu joined 12:51 odoacre left, odoacre joined
moritz erm, did I forget to push? 12:53
12:54 mkramer left
dalek kudo/nom: f5c1975 | moritz++ | / (4 files):
fix rounders

Does not handle big ints properly, but this is as good as old master ever got
12:54
colomon moritz++ 12:55
aloha Karma for moritz is now 2843
12:56 mkramer joined, mkramer left 12:57 bluescreen10 joined 12:58 benabik joined
colomon nom: say 23.542323.round 13:02
p6eval nom fdba16: OUTPUT«(timeout)»
13:03 toebu left
moritz evalbot rebuild nom 13:04
p6eval OK (started asynchronously)
13:16 tzhs left 13:19 risou_awy is now known as risou 13:22 GlitchMr left 13:25 wk left 13:29 simcop2387 left 13:30 simcop2387 joined
moritz nom: say 23.542323.round 13:36
p6eval nom f5c197: OUTPUT«24␤»
colomon \o/ 13:40
13:49 shinobicl left
awwaiid idea: define (at runtime) a new operator, say \\, which takes a list on the left and right, passing the list on the left as STDIN to shell execution to the list on the right, returning a list. 13:54
the idea being to add a simple op that would make the REPL good for doing some shell manipulations
hm. but that's not quite right. 13:55
13:55 jimmy1980 left
awwaiid I'll noodle 13:57
14:00 jimmy1980 joined 14:01 shinobicl joined
tadzik djanatyn: what do you need about bailador? 14:01
14:02 serk17 joined 14:04 pothos joined 14:05 jimmy1980 left 14:07 jimmy1980 joined 14:08 toebu joined, carlin left 14:11 meraxes joined
djanatyn tadzik: How...complete is it? 14:15
and how fast is it?
and, is it possible to get it running on windows? 14:16
tadzik it's not complete at all :)
it should be running on windows just fine, but I can't tell, I have no windows
djanatyn ah. :) 14:17
well, is it possible to hack up a simple little website? 14:18
tadzik Requests per second: 11.97 [#/sec] (mean) 14:19
not bad for Rakudo :)
(that's a hello world app)
djanatyn okay :) 14:20
it seems very minimal. do I need any important modules to install it?
and, if so, how should I go about doing that? with panda?
tadzik HTTP::Server::Simple
panda should be able to install it, but there's no bailador in its DB
adding it may be a nice GCI task too
oh wait, isn't today a deadline for new projects? 14:21
14:21 kaleem left
tadzik oh, nope, 16th 14:21
djanatyn the deadline is december 18th, I think
PerlJam I thought it was the 16th 14:22
djanatyn oh, 16th, then :)
14:22 jimmy1980 left, wk joined 14:29 wk left, mj41 left, envi_ left, Trashlord left 14:31 jimmy1980 joined, wk joined, mj41 joined, envi_ joined, Trashlord joined
[Coke] yawns over coffee. 14:33
flussence Tests=20054 14:34
wow
tadzik yeah, superawesome 14:36
14:44 serk17 left 14:51 wk left 14:55 jimmy1980 left 15:02 jimmy1980 joined 15:09 koban left 15:10 icwiener joined 15:12 envi_ left 15:17 wtw left 15:19 icwiener left, icwiener joined 15:20 icwiener left, icwiener joined 15:29 toebu left
colomon \o/ 15:30
dalek kudo/nom: e1cd4c5 | coke++ | t/spectest.data:
track failure modes
15:36
15:36 wk joined 15:37 jimmy1980 left 15:44 jimmy1980 joined
sorear good * #perl6 15:50
colomon \o 15:51
15:55 am0c left, am0c joined 16:00 icwiener left 16:01 icwiener joined 16:25 serk17 joined 16:27 raiph joined 16:31 daxim left
[Coke] sorear: ho. 16:32
raiph 'hi','hallo','salut', &greets ... * 16:35
colomon ho.
raiph yesterday's advent cal entry was flipflop
Gernot Says: Nice, but flipflop operators are not yet implemented in Rakudo Nom :-( 16:36
colomon nom: say 4 ff 5
p6eval nom e1cd4c: OUTPUT«===SORRY!===␤Flip flop operators are not yet implemented at line 1, near " 5"␤»
colomon niecza: say 4 ff 5 16:37
p6eval niecza v12-3-g193ca57: OUTPUT«1␤»
colomon b: say 4 ff 5
p6eval b 1b7dd1: OUTPUT«===SORRY!===␤Flip flip operators are not yet implemented at line 22, near " 5"␤»
colomon Looks like they are implemented in niecza
raiph right 16:38
TimToady
.oO("How the Irish Saved Civilization")
16:38 kaare_ joined
[Coke] not everything is going to be available in every impl. I would recommend somehow tagging the articles to show which perl6 you should be trying these on. 16:39
TimToady
.oO(Civilization is unevenly distributed...)
16:40
[Coke] Huh. only one advent post from 2010 made it in as a test?
I thought we did that last year, not 2 years ago. woof.
raiph I didn't mean to say anything was wrong, or make work 16:41
[Coke] ugh, getting a lot of failures in niecza's spectest. 16:45
niecza: (2 + 3i) > (2 + 2i) 16:49
p6eval niecza v12-3-g193ca57: ( no output )
[Coke] nom: (2 + 3i) > (2 + 2i)
p6eval nom e1cd4c: OUTPUT«No applicable candidates found to dispatch to for 'Real'. Available candidates are:␤:(Mu, Mu %_)␤␤ in method Real at src/gen/CORE.setting:643␤ in sub infix:<>> at src/gen/CORE.setting:2194␤ in sub infix:<>> at src/gen/CORE.setting:2194␤ in block <anon> at /tmp/CP9…
16:49 hundskatt joined
[Coke] std: (2 + 3i) > (2 + 2i) 16:49
p6eval std be1f10e: OUTPUT«ok 00:01 121m␤»
[Coke] sorear: github.com/sorear/niecza/issues/78 was accidentally closed. keyboard shortcuts suck if you're not aware you're using them, sorry 16:51
raiph What from a layered architectural pov is the common layers of existing/main P6 impls? 16:52
something like backend, nqp*, grammar, core settings, non-core ?
[Coke] there are no common layers, I think. the STD grammar is probably the only thing they have in common.
raiph do impl copy/paste from each other at the higher layers?
[Coke] parts of the setting are shareable, yes. not sure if anyone IS sharing them. 16:53
16:53 am0c left
raiph could ff from niecza be copied to rakudo, and vice versa? 16:53
16:53 jeffreykegler joined
benabik ff might be able to be copied from b 16:54
raiph seems like an ff impl would be all higher level code reusing lower level stuff that might be common across impl
16:54 xinming left
[Coke] what is the github way to write an issue number? "issue #79" ? 16:54
benabik Either #79 or gh-79 16:55
(IIRC)
[Coke] raiph: find the ff impl from niecza and see. ;)
PerlJam raiph: depends on what you mean by "copied" :-)
raiph: If you're just talking about conceptually, the answer is yes.
16:55 serk17 left
PerlJam raiph: if you mean to cut-n-paste code, that won't work at all 16:56
raiph coke: i'd already taken that on by dint of commenting. ;) 16:57
PerlJam: why not?
benabik niecza's ff impl is based on niecza's internals. github.com/sorear/niecza/blob/mast...r.pm6#L136 16:58
Things like ::GLOBAL::NieczaActions.gensym is unlikely to exist in Rakudo.
PerlJam raiph: as benabik says
raiph PerlJam: it can't be that way in general, of course, but for higher level stuff, implemented purely in terms of existing stuff, if that existing stuff is common to impls... 16:59
colomon doesn't ff have to be pretty low-level? it's got per-usage state, that's not normal for operators
raiph benabik, PerlJam: ok
16:59 pat_js joined
colomon alpha: say 4 ff 5 16:59
p6eval alpha : OUTPUT«Confused at line 10, near "ff 5"␤in Main (file <unknown>, line <unknown>)␤»
colomon pugs: say 4 ff 5 17:00
p6eval pugs b927740: OUTPUT«*** No such subroutine: "&infix:ff"␤ at /tmp/B9D8uwvNdU line 1, column 5 - line 2, column 1␤»
benabik b: say 4 ff 5
p6eval b 1b7dd1: OUTPUT«===SORRY!===␤Flip flip operators are not yet implemented at line 22, near " 5"␤»
benabik I thought ff existed in b. :-/
colomon Niecza's the only implementation, it appears.
PerlJam yep
[Coke] argh, niecza checks out an unpushable copy of spec.
raiph colomon: that might not be normal, but, unless an impl makes non-spec assumptions, why would that affect things?
[Coke] raiph: implementations might cheat for speed, or because they don't implement enough perl6 to not use the lower levels. 17:01
so, yes, as said: in theory, that sharing is possible. It just may not be practicable. 17:02
colomon ralph: I don't think you can implement ff in Perl 6 without macros, which no one supports yet. 17:03
raiph coke: right. but by doing that they ultimately slow things down. that's why it makes sense ff is not yet implemented; i'm pretty sure it ought to be done in terms of lower level p6 that should be the same across most p6 impls
colomon how else do you write a function which behaves different at every point it is called? 17:04
raiph colomon: gotcha.
colomon: must not only carry state, but state per appearance in code. even generated code. 17:06
[Coke] raiph: how are you sure of this? ;) 17:09
17:09 MayDaniel joined
[Coke] (obviously, having experience with one of the perl 6 implementations would lend some weight to the theory.) 17:10
raiph coke: oops, dropped a must. must remember not to do that
coke: have a nanonats worth of experience from couple years ago 17:11
*nanognats
dalek ast: 4b1a35c | coke++ | S32-num/complex.t:
niecza fudge
17:12
17:13 colomon left, wolfman2000 left
[Coke] ugh. what is the correct way to git remote add a readwrite github so git shuts up when I try to do a rebase? 17:15
*github remote 17:16
raiph i thought i saw something about niecza dropping "official" support for mono for now; was that right?
17:16 molaf joined, Ingis-Kahn joined
[Coke] github.com/sorear/niecza/blob/mast...nounce.v12 doesn't seem to agree with that. 17:17
17:17 colomon joined
raiph coke: i recall some comment since then. will go try find. 17:19
17:19 fridim_ joined
TimToady sorear++ regularly panics about the CLR startup overhead, and thinks about other backends, but I don't see that mono is going away any time soon, given that it's still the most performant implementation once it gets going 17:19
aloha Karma for sorear is now 2038
[Coke] (that auto-announce was fixed in #parrot, btw. pinging bacek about this copy of aloha.) 17:20
jasonmay that is a lot of karma 17:21
TimToady well deserved
jasonmay I also read it as "karma for sorear is the new 2038" at first, with overflow in mind :)
17:22 kaare__ joined 17:23 Ingis left, shinobicl left, kaare_ left
colomon [Coke]: unless there's been some sort of change since the last time I looked, (2 + 3i) > (2 + 2i) should not fail, but what it does is not firmly defined (but it should be consistent). 17:23
raiph TimToady: thanks. 17:24
17:24 mj41 left
[Coke] colomon: there is a spec test saying it should die. 17:35
17:35 aindilis left
colomon [Coke]: how new is it? 17:35
[Coke] so feel free to update the ticket, the spec, the nieczabug, and create a rakudo bug. ;)
colomon: what should it do? it's nonsensical, at best. 17:36
colomon not crash and be consistent
PerlJam colomon: that's crazy talk! 17:37
[Coke] not crash is axiomatic, yes? or do you mean not throw an exception? (or not fail?)
and if "consistent"... with what?
colomon consistent with itself
not throw an exception, or return Fail or something 17:38
17:38 aindilis joined
[Coke] ok, it should always return false? 17:38
colomon that's probably less than ideal, but I think it would be legal as I understand the state of things.
The idea is that we don't want numerical comparison blowing up because a Complex number snuck in. 17:39
[Coke] Anyway, there's a committed test. I'm just trying to clean things up. If you need it cleaner, by all means. ;)
17:39 donri joined 17:48 zamolxes_ left 17:49 zamolxes joined 17:51 icwiener left 17:52 icwiener joined 17:59 hundskatt left
tadzik hello 17:59
raiph tadzik: hi 18:07
18:21 hundskatt joined 18:23 dakkar left 18:29 birdwindupbird joined, birdwindupbird left 18:34 GlitchMr joined 18:35 envi_ joined 18:39 jeffreykegler left 18:41 kaleem joined
colomon do we have any plans for tomorrow's advent calendar? 18:42
18:43 envi_ left
PerlJam colomon: I could probably finish my little write-up on Grammar::Profiler 18:46
colomon PerlJam++
aloha Karma for perljam is now 56
18:48 Chillance joined
tadzik Grammar::Profiler? Wow, looking forward to that 18:48
PerlJam eh, it's not that big of a deal.
18:51 jeffreykegler joined 18:54 Trashlord left 18:55 GlitchMr left 18:59 kaleem left 19:12 molaf left 19:34 jeffreykegler left 19:38 Chillance left 19:40 Chillance joined 19:45 shinobicl joined 19:49 Chillance left 19:50 Chillance joined 19:51 jeffreykegler joined, ageis joined, jeffreykegler left
[Coke] niecza: say ~('foo,bar,baz,' ~~ m/[<alpha>+]+ % ','/ 19:56
p6eval niecza v12-3-g193ca57: OUTPUT«===SORRY!===␤␤Unable to parse parenthesized expression at /tmp/wY1tfiUhoX line 1:␤------> say ~(⏏'foo,bar,baz,' ~~ m/[<alpha>+]+ % ','/␤Couldn't find final ')'; gave up at /tmp/wY1tfiUhoX line 1 (EOF):␤------> ('fo…
[Coke] niecza: say 'foo,bar,baz,' ~~ m/[<alpha>+]+ % ','/
p6eval niecza v12-3-g193ca57: OUTPUT«#<match from(0) to(11) text(foo,bar,baz) pos([].list) named({"alpha" => (#<match from(0) to(1) text(f) pos([].list) named({}.hash)>, #<match from(1) to(2) text(o) pos([].list) named({}.hash)>, #<match from(2) to(3) text(o) pos([].list) named({}.hash)>, #<ma…
[Coke] niecza: print 'foo,bar,baz,' ~~ m/[<alpha>+]+ % ','/
p6eval niecza v12-3-g193ca57: OUTPUT«#<match from(0) to(11) text(foo,bar,baz) pos([].list) named({"alpha" => (#<match from(0) to(1) text(f) pos([].list) named({}.hash)>, #<match from(1) to(2) text(o) pos([].list) named({}.hash)>, #<match from(2) to(3) text(o) pos([].list) named({}.hash)>, #<ma… 19:57
[Coke] niecza: say 'foo,bar,baz,' ~~ m/[<alpha>+]+ %% ','/
p6eval niecza v12-3-g193ca57: OUTPUT«#<match from(0) to(11) text(foo,bar,baz) pos([].list) named({"alpha" => (#<match from(0) to(1) text(f) pos([].list) named({}.hash)>, #<match from(1) to(2) text(o) pos([].list) named({}.hash)>, #<match from(2) to(3) text(o) pos([].list) named({}.hash)>, #<ma…
dalek ast: 751e709 | coke++ | S05-m (2 files):
niecza un/fudge
20:00
jnthn evenin' from Stockholm 20:05
tadzik hello jnthn
20:07 ksi joined
jnthn o/ tadzik 20:11
tadzik how are things? 20:13
colomon \o 20:14
jnthn tadzik: Pretty good. My journey here ran very smoothly, I'm enjoying it being properly cold, and this week's course is pretty low stress to deliver.
tadzik: How's things there? Keeping busy? ;) 20:15
tadzik like hell 20:17
project, exam, project, exam, 3 projects, and then finally weekend :)
20:18 jaldhar left
tadzik the only joy being 'make spectest' and seeing the numbers grow :) 20:18
jnthn tadzik: Ouch! :/ Good luck with it all.
20:19 estrabd is now known as estrabd_afk
tadzik at least I don't get to implement semaphores for Minix :) 20:19
a friend has it as his OS project for tomorrow, and he just saw that it was a GSoC project in 2009
20:22 jaldhar joined 20:25 cooper joined 20:27 GlitchMr joined 20:35 donri left 20:36 localhost left 20:37 localhost joined
PerlJam someone go look at perl6advent.wordpress.com/2011/12/0...arprofiler and give me a little feedback and it could tomorrow's post 21:03
(you have to be logged in to see it since it's a draft)
21:09 GlitchMr left 21:10 bluescreen10 left
jnthn PerlJam: taking a look while I wait for a compile :) 21:12
"From the outside looking in, the basic technique is to replace the normal grammar mechanism with a custom grammar that intercepts method lookup" 21:13
What you're really doing is replacing the normal grammar *meta-object*, which is the thing that defines how grammar packages work.
Put another way, it's not so much a custom grammar as a custom implementation of what "grammar" means as a keyword. 21:14
PerlJam aye. I understand that, I just suck at writing :)
editing now :)
jnthn "so it looks like I need to add “WHAT” and “perl” to that list of methods to pass through unscathed."
Note tht WHAT is a macro, not a method 21:15
So you don't need to worry about that one.
PerlJam yeah, I wasn't sure
dalek kudo/nom: e7e343b | jonathan++ | src/ (4 files):
First cut implementation of ff, ^ff, ff^ and ^ff^. Runs at least enough for the advent post.
21:19
PerlJam jnthn++ nice 21:20
aloha Karma for jnthn is now 2465
21:20 Trashlord joined
PerlJam jnthn: re-look at my advent post? 21:20
21:21 pothos left 21:22 y3llow joined, pothos joined
PerlJam er, potential post on grammar profiling that is 21:22
jnthn PerlJam: I think you'll win "longest sentence in this year's advent calendar" award, but it's more accurate now :) 21:23
PerlJam heh
jnthn Note you could do .^name rather than .WHAT.perl by the way :)
PerlJam d'oh! I *knew* there was something simple I was forgetting! 21:24
jnthn heh, I forgot on my first read-through :)
[Coke] niecza: my class Foo { multi method gist(Foo:D:) { "gisted"; } } 21:25
p6eval niecza v12-3-g193ca57: OUTPUT«===SORRY!===␤␤In parameter declaration, typename 'Foo:D' must be predeclared (or marked as declarative with :: prefix) at /tmp/NGSE9EFSJ7 line 1:␤------> my class Foo { multi method gist(Foo:D⏏:) { "gisted"; } }␤␤Parse f…
[Coke] "niecza can't refer to a class while it's being defined" ? 21:26
PerlJam jnthn: I'll leave it the way it is and you can comment on the post to give the readers something to try :)
[Coke]: I looks like it's trying to use "Foo:D" as the name instead of just "Foo". Lookss like niezca buglet to me at the moment. 21:30
std: my class Foo { multi method gist(Foo:D:) { "gisted"; } }
p6eval std be1f10e: OUTPUT«ok 00:01 123m␤»
21:30 tokuhirom joined
PerlJam rakudo: my class Foo { multi method gist(Foo:D:) { "gisted"; } } 21:30
p6eval rakudo e7e343: ( no output )
PerlJam Hmm. I just scheduled my post to publish on Dec 7 at 0000 and it updated the permalink. I never noticed that before. 21:31
21:32 icwiener left
[Coke] PerlJam++ 21:32
aloha Karma for perljam is now 57
dalek kudo/nom: f70f20a | jonathan++ | docs/ChangeLog:
Some ChangeLog entries.
21:33
volaj: 898c645 | jnthn++ | lib/NativeCall.pm6:
Add first cut of version 2 of Zavolaj. Doesn't do any pointer/array stuff just yet; that's coming soon.
21:35
volaj: a7ae5ba | jnthn++ | README:
Update README a little bit. We need much better docs really.
volaj: e293ff0 | jnthn++ | lib/NativeCall.pm6:
Add CStruct passing support. Improve error message when trying to pass a class or other object not based on CStruct.
volaj: d22dd75 | jnthn++ | lib/NativeCall.pm6:
Better string support, including multiple encodings.
volaj: 4561a4f | jnthn++ | lib/NativeCall.pm6:
Support opaque pointers in NativeCall.
jnthn Zavolaj's nom update is now in its master branch.
tadzik \o/ 21:36
does it pass its tests
?
[Coke] jnthn++
aloha Karma for jnthn is now 2466
dalek volaj: b082d38 | jonathan++ | examples/win32-api-call.p6:
Update Win32 API example.
21:37
jnthn tadzik: I didn't figure out how to even run the tests on Windows yet. :( 21:38
tadzik ah
I'll check it out
jnthn tadzik: nmake test gives me a syntax error in the makefile :(
PerlJam jnthn: What is the $c parameter in the pblock returned by find_method() in Grammar::Debugger?
tadzik can you show me?
[Coke] jnthn: ah, I might be able to help with that if I can stop attending winter concerts.
tadzik I don't have to work hard on me birthday :P 21:39
21:39 jimmy1980 left
jnthn tadzik: show you the error? 21:39
[Coke] tadzik++ # old fart
aloha Karma for tadzik is now 841
jnthn tadzik: makefile(14) : fatal error U1000: syntax error : ')' missing in macro invocation
PerlJam: short for $cursor" 21:40
PerlJam gotcha.
jnthn PerlJam: Though I'm not sure right now why we actually pull it out explicitly from the rest of the args. 21:41
tadzik jnthn: long-ish paste: gist.github.com/1440125
[Coke]: thanks :)
jnthn tadzik: Seems the tests will want some updating... :) 21:42
tadzik: oh, I see what's up
tadzik: I'm guessing you used to be able to do "is native()" in order to load from the current executable 21:43
tadzik: Apart from I'm not especially sure that trick actually works on Windows...
21:44 jimmy1980 joined
dalek volaj: b0bedfa | jonathan++ | TODO:
The things that used to be in the TODO are now possible. Add a bunch of other things that do, however, need doing.
21:47
21:47 MayDaniel left
dalek : 12c29dc | duff++ | misc/perl6advent-2011/ (2 files):
[p6advent] "officially" claim Dec 7 :)
21:48
ast: 36085c3 | coke++ | S04-statements/for.t:
niecza fudge
21:49
ecza: 8c09133 | coke++ | t/spectest.data:
remove dead spectest file, skip broken one
21:50
[Coke] phenny: tell sorear that "make spectest" should be green again; all failures that were blocking it now have tickets. 21:51
phenny [Coke]: I'll pass that on when sorear is around.
21:55 y3llow left, pothos left 21:56 pothos joined 21:57 y3llow joined 21:58 y3llow left 21:59 y3llow joined 22:01 Chillance left 22:04 jimmy1980 left, kaare__ left 22:05 jimmy1980 joined 22:07 donri joined
jnthn early night & 22:16
22:40 jimmy1980 left 22:46 jimmy1980 joined 22:51 wk left 22:58 jimmy1980 left 23:00 jimmy1980 joined 23:02 aloha left 23:03 aloha joined 23:07 envi_ joined 23:12 hundskatt left 23:15 Sarten-X left 23:20 hundskatt joined 23:25 benabik left 23:26 envi_ left, Sarten-X joined 23:28 cooper left 23:29 cooper joined 23:48 alester left 23:51 envi_ joined