»ö« | perl6-projects.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by moritz_ on 30 July 2009.
wayland76 sjohnson: The author of the Zompist Phrasebook has also written stuff on how to do conlang :) 00:00
00:01 reqamst is now known as reqamst[zZzZz], jan_ is now known as jan 00:02 jan is now known as Guest28989 00:16 dalek left, ascent left, broquaint left, omega_ left, obra_ left, unitxt left, ingy left, araujo left, arthur-_ left, japhb left, [particle] left, eldragon2 left, jnthn left, christine left, lucs left, leedo left, mee left, spinclad left, nicomen left, cognominal left, andreasg_ left, drbean left 00:17 jnthn joined, japhb joined, [particle] joined, eldragon2 joined, cognominal joined, mee joined, leedo joined, drbean joined, lucs joined, spinclad joined, nicomen joined, andreasg_ joined, christine joined, irc.freenode.net sets mode: +o jnthn 00:20 xomas_ left 00:21 tak11 joined 00:34 xomas_ joined 00:35 carlin joined, ihrd joined 00:42 jaldhar joined 00:49 japhb left 00:58 xomas_ left 01:01 ruz joined
ruz perl6: class X {}; my $o = X.new; say $o.WHO 01:03
p6eval rakudo 0d4fe0: OUTPUT«Method 'WHO' not found for invocant of class 'X'␤»
..elf 28042: OUTPUT«Can't locate object method "WHO" via package "X" at (eval 124) line 9.␤ at ./elf_h line 5881␤»
..pugs: OUTPUT«*** No such method in class X: "&WHO"␤ at /tmp/nij4Zjabqr line 1, column 32 - line 2, column 1␤»
jnthn ruz: Seems .WHO ain't implemetned yet...by any implementation. 01:05
ruz: It is spec though.
ruz jnthn: should return name of the class, right? 01:06
jnthn No
ruz introspection spec is empty
I was guessing
jnthn let me check the spec 01:07
It's 3am here so I'll nly remember wrong...
WHO the package supporting the object, stringifies to long name
.WHAT returns the type object, stringifies to the short name (that one is implemented); .WHO strinfigies to the long name. 01:08
ruz ah, ok
jnthn spec'd in S12: svn.pugscode.org/pugs/docs/Perl6/Sp...bjects.pod
Actually Rakudo doesn't do too badly on the Introspection part of the spec
ruz I thought that it's S20
01:08 taur1an joined
wayland76 ruz: Well, things don't always go quite according to plan, and that includes S12/S20 :) 01:09
jnthn ruz: Ah, now I see what you meant by "introspection spec is empty". 01:10
ruz probably simple S20 with link to chapter in S12 help people find existing docs
jnthn Things don't always quite map to the Camel chapters, though it is a reasonable guideline. 01:11
Yeah, could do that.
01:14 missingthepoint left 01:17 japhb joined
ruz see thing that may require more coding in some code 01:20
.WHAT returns X()
jnthn ruz: Yes
ruz spec suggest to use .perl
look at lastofthecarelessmen.blogspot.com/2...l#comments 01:21
sjohnson rakudo: say given.WHAT
p6eval rakudo 0d4fe0: OUTPUT«say requires an argument at line 2, near "given.WHAT"␤in Main (src/gen_setting.pm:2510)␤»
sjohnson rakudo: say when.WHAT
p6eval rakudo 0d4fe0: OUTPUT«say requires an argument at line 2, near "when.WHAT"␤in Main (src/gen_setting.pm:2510)␤»
sjohnson rakudo: say given(){}.WHAT
jnthn sjohnson: given and when are not functions/objects etc.
p6eval rakudo 0d4fe0: OUTPUT«Could not find non-existent sub given␤»
ruz class redefines .perl
sjohnson jnthn: o i c 01:22
ruz perl6: class X {}; my $o = X.new; say $o.WHAT
p6eval elf 28042, pugs: OUTPUT«X␤»
..rakudo 0d4fe0: OUTPUT«X()␤»
jnthn ruz: A class is free to redefine .perl as it wishes. 01:23
ruz: It's just a way of giving a Perl-ish representation of itself.
ruz yep, and that blog post it's used 01:24
jnthn Aye.
I think the default .perl could be a bit smarter in the future, though.
ruz that code doesn't respect inheritance 01:25
jnthn How so?
Oh, hang on
ruz it always print Vector.new
jnthn Yeah, I see that now
ruz s/print/returns/
jnthn self.perl ~ '.new()' maybe is better.
ruz oh 01:26
jnthn oh no
gah
01:26 jjpx joined
jnthn sorry, I really should not be concious right now :-) 01:26
self.WHAT.perl
rakudo: say 42.WHAT; say 42.WHAT.perl
p6eval rakudo 0d4fe0: OUTPUT«Int()␤Int␤»
ruz cool 01:27
counterintuitive, but cool
thanks 01:28
jnthn .WHAT gives you back the type object for the class.
So you're calling .perl on the type object.
It's easy to forget that .WHAT doesn't just hand back a string, so most of the time people just print it out to help debug and similar. 01:29
But you can do things like:
rakudo: class A { }; my $x = A.new; my $y = $x.WHAT.new;
p6eval rakudo 0d4fe0: ( no output )
jnthn rakudo: class A { }; my $x = A.new; my $y = $x.WHAT.new; say $y.WHAT
p6eval rakudo 0d4fe0: OUTPUT«A()␤»
jnthn That is, get the type object of some variable and then call .new on it to create another one of the same type.
ruz sounds good, looks like S12 behind implementation :) 01:30
01:32 cdarroch left
jnthn S12 has a _lot_ of stuff in it. But we're getting there. :-) 01:32
01:34 jjpx left
cognominal wayland76, what was your discussion about French something? 01:38
jnthn cognominal: Où est le bordel? 01:39
cognominal where did he got that from?
wayland76 cognominal: Leaving the funny stuff aside, alester wanted help with doing perl101 multilingual, and sjohnson was thinking about it 01:40
jnthn cognominal: Well, I know the most useful phrases in all languages. ;-)
wayland76 If you want the funny stuff, find that link for the zompist phrasebook
jnthn www.zompist.com/phrases.html
wayland76 www.zompist.com/phrases.html
...and look for the phrase that mentions cathedrals, and you'll see what I was talking about :) 01:41
sjohnson or opinions on films
jnthn The films one is grat.
*great
Especially the German!
wayland76 sjohnson: That won't help him see what *I* was talking about. But they're funny :)
Well, it's a pity, then, that Ich sprechen deutsch wie italienisch Fußballtrainer. 01:42
cognominal jnthn, except there is supposedly no bordel in France since after WW2 : see en.wikipedia.org/wiki/Marthe_Richard 01:43
jnthn :-D
sjohnson cognominal++ reference material
cognominal bordel is used as a interjecction like "shit"
jnthn cognominal: Yeah! And there's been no grèves in France since...oh wait... 01:44
cognominal or you say "c'est le bordel", meaning "that's a mess
jnthn, grèves are a national sport 01:45
sjohnson cognominal: vous parlez francais aussi?
cognominal I am French
sjohnson de France ou Canada?
ou Belgique
... ou l'Afrique
cognominal with BooK, we initiated jnthn to French strong alcool :) 01:46
born in Paris, France (not Paris Texas, catch the cinephilic reference if you can)
01:47 sjohnson sets mode: +oo cognominal wayland76
wayland76 Ooh, I must be cool now :) 01:48
sjohnson ca ne te derange pas si on parle en francais parfois, oui?
cognominal you are all welcome to join #perlfr on irc.perl.org
sjohnson .. I'll keep it in English here then
jnthn oui oui! Je voudrais le chatreaux! 01:49
wayland76 I think people here are language geeks enough that they don't mind some non-english, as long as it doesn't overwhelm the channel
cognominal I suppose that jnthn does speak of "chateaux d'eau" but of some wine :)
s/does/does not/ 01:50
wayland76 And you can tell the monolingual English speakers "We're making lots of progress here", and they'll never know the difference :)
sjohnson heh 01:51
wayland76 I thought he was saying he'd like some houses. Wouldn't mind them myself :)
jnthn That'd be chateaux, no? 01:52
Houses are overrated. 55% alcohol is far better.
On that note, it's almost 4am so I'm going to sleep.
wayland76 jnthn: Yes, but cognominal said "chateaux"
ooh, goodnight :)
jnthn night!
don't expect me early tomorrow ;-)
01:52 sri_kraih_ left
cognominal night 01:52
01:53 justatheory left
wayland76 I'll expect you tommorrow my time :) 01:53
01:53 frew__ left
ruz is self.new() still valid concept in perl6? is it proper way to honor inheritance? 01:54
01:54 sri_kraih joined
sjohnson »ö« | perl6-projects.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: | irclog: irc.pugscode.org/ | UTF-8 is our friend!
sjohnson .. always wanted to change that 01:54
01:55 Whiteknight left 01:57 mikehh_ is now known as mikehh
wayland76 ruz: Just a note that the next 6 hours or so are probably the worst time of day for asking questions 01:58
cognominal french translations are quite creative in zompist 02:01
02:03 KyleHa joined
ruz wayland76: I used to silence, it's fine when you just play with things and don't expect much :) 02:03
cognominal I must compliment you on your understanding of our language.
Tu n'entends donc rien, espèce de con ?
that would be "you don't dig anything, you cunt"
KyleHa Ouch. 02:04
wayland76 ruz: He's not talking to you, he's commenting on a funny document we found
sjohnson isn't that closer to "you don't undestand shit, you idiot"
cognominal soory, KyleHa :)
yes, sjohnson 02:05
wayland76 sjohnson: it's probably be more idiomatic for the subculture in question to s/understand/know/
KyleHa cognominal: No sweat. It's just been a while since I've been around anyone who talks like my mom.
sjohnson yeah, know
i agree wayland76
02:06 _jaldhar joined
ruz wayland76: :) 02:06
02:09 jaldhar left
jauaor hello? 02:12
02:13 Anaphora joined
KyleHa jauaor: Hello! 02:13
sjohnson hello jauaor
02:13 yoblz joined 02:14 araujo joined
cognominal rakudo: given True { when True, False { say "test if list of value is ok in a when" }} 02:14
p6eval rakudo 0d4fe0: ( no output )
cognominal rakudo: given True { when True { say "test if list of value is ok in a when" }} 02:15
p6eval rakudo 0d4fe0: OUTPUT«test if list of value is ok in a when␤»
KyleHa rakudo: given True { when True|False { say "Junction?" } }
p6eval rakudo 0d4fe0: OUTPUT«Junction?␤»
cognominal KyleHa++
KyleHa rakudo: given True { when any(True, False) { say "Junction from list?" } } 02:16
p6eval rakudo 0d4fe0: OUTPUT«Junction from list?␤»
cognominal my tentative was stupid, but as we say in French "prêcher le faux pour savoir le vrai" preach falsehood to learn about the truth 02:17
KyleHa Nah, not stupid. I half expected it to work before I saw the (non) output.
cognominal well, True does not match (True, False) 02:18
jauaor hi KyleHa sjohnson ! 02:19
:)
cognominal the doc about smarmatching is intimidating DWIDKIM it Does What I Did Not Know I Meant 02:21
02:22 justatheory joined, Cataztrohpy joined, yoblz left 02:26 araujo left 02:29 taur1an left
sjohnson going to play pool, fun chats today :) 02:31
see ya guys
cognominal rakudo: given $*IN { when :r { say "*" }} 02:36
p6eval rakudo 0d4fe0: OUTPUT«Method ':r' not found for invocant of class 'IO'␤»
02:36 qp_pq joined
cognominal I don't remember the new way "( 02:36
wayland76 rakudo: given $*IN { when .r { say "*" }} 02:38
p6eval rakudo 0d4fe0: OUTPUT«Method 'r' not found for invocant of class 'IO'␤»
wayland76 May be NYI on handles
I don't know that, I'm just randomly guessing 02:39
cognominal rakudo: say "/etc" ~~ :r
p6eval rakudo 0d4fe0: OUTPUT«Method ':r' not found for invocant of class 'Str'␤»
KyleHa rakudo: say "/etc".IO ~~ :d 02:41
p6eval rakudo 0d4fe0: OUTPUT«Method 'IO' not found for invocant of class 'Str'␤»
KyleHa I think that's the one that's in the spec, but it's not implemented.
02:41 meppl left
KyleHa The spec changed recently. 02:41
cognominal I got that from S03:2231 02:42
KyleHa Let me see if I'm hallucinating... 02:43
Here it is: dev.pugscode.org/changeset/27503 02:44
02:44 araujo joined
wayland76 rakudo: say $*IN^methods 02:45
p6eval rakudo 0d4fe0: OUTPUT«Could not find non-existent sub methods␤» 02:46
wayland76 rakudo: say $*IN.^methods
p6eval rakudo 0d4fe0:
..OUTPUT«inseoflinessayprintgetprintfslurpcloseScalarreverseisapolarucfirstcombfmtfirsttranschoprindexvaluessubstelemschompindexkeyschrpairskvcapitalizepickevalfilep5choplcjoincharscanlcfirstrootsreduceComplextrim:dmap:ecis:flogminrandtruncatemaxbytessortsqrtIntgrepabsenducceilingp5chompunp…
wayland76 rakudo: say join ", ", $*IN.^methods
p6eval rakudo 0d4fe0: OUTPUT«ins, eof, lines, say, print, get, printf, slurp, close, Scalar, roots, uc, reverse, keys, isa, ucfirst, 1, fmt, bytes, 2, 1, join, trim, chr, floor, rand, 1, round, 1, 1, 1, split, 1, grep, words, values, can, lcfirst, 1, srand, 1, map, cis, kv, samecase, 1, min, capitalize,
..max, t…
wayland76 rakudo: say join ", ", grep { !/^\d+$/ } $*IN.^methods
p6eval rakudo 0d4fe0: OUTPUT«Statement not terminated properly at line 2, near "$*IN.^meth"␤in Main (src/gen_setting.pm:3390)␤»
wayland76 rakudo: say join ", ", grep { !/^\d+$/ }, $*IN.^methods 02:47
cognominal rakudo: say $*IN.^methods.perl
p6eval rakudo 0d4fe0: OUTPUT«slurp, close, Scalar, ins, eof, lines, say, print, get, printf, end, ceiling, trim, p5chomp, pairs, unpolar, ord, rand, grep, values, roots, reverse, isa, ucfirst, kv, samecase, capitalize, fmt, bytes, flip, does, p5chop, lc, reduce, chr, comb, floor, round, chop, split,
..words, can…
rakudo 0d4fe0: OUTPUT«[{ ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ...
..}, { …
cognominal :)
wayland76 rakudo: say join ", ", grep { !/^\d+$/ and /^.$/ }, $*IN.^methods
p6eval rakudo 0d4fe0: OUTPUT«Can't set self from this type␤in regex PGE::Grammar::_block62 (/tmp/FLsipYjmz9:2)␤called from method Any::grep (src/gen_setting.pm:172)␤called from sub grep (src/gen_setting.pm:295)␤called from Main (/tmp/FLsipYjmz9:2)␤»
02:47 xomas_ joined, arthur-_ joined, obra_ joined, omega_ joined, broquaint joined, ascent joined, ingy joined, dalek joined
wayland76 rakudo: say join ", ", grep { /^.$/ }, $*IN.^methods 02:48
p6eval rakudo 0d4fe0: OUTPUT«Can't set self from this type␤in regex PGE::Grammar::_block57 (/tmp/rP2PspiV0d:2)␤called from method Any::grep (src/gen_setting.pm:172)␤called from sub grep (src/gen_setting.pm:295)␤called from Main (/tmp/rP2PspiV0d:2)␤»
wayland76 No idea
02:49 carlin left 02:52 protorom joined 02:54 protorom left, protorom joined 02:58 Anaphora left 03:02 nixfu joined 03:05 nixfu left
ihrd hi 03:07
rakudo: 1.^methods.^methods.join(', ').say
p6eval rakudo 0d4fe0: OUTPUT«values, delete, Scalar, , shift, Array, splice, exists, push, unshift, item, pop␤»
ihrd why I have no 'name' in this list? 03:08
1.^methods>>.name.join(', ').say 03:09
03:09 dukeleto joined 03:10 japhb left
ihrd ah, I missed 03:10
03:10 molaf joined
ihrd rakudo: 1.^methods.[0].^methods.join(', ').say 03:11
p6eval rakudo 0d4fe0: OUTPUT«Scalar, multi␤»
ihrd rakudo:1.^methods.[0].name 03:13
rakudo: 1.^methods.[0].WHAT.say
p6eval rakudo 0d4fe0: OUTPUT«Code()␤»
ihrd rakudo:1.^methods.[0].name.say
03:15 ihrd left 03:16 ihrd joined 03:17 ihrd left 03:19 justatheory left 03:27 japhb joined, tak11 left 03:30 tak11 joined, molaf left 03:33 Limbic_Region left 03:34 jaldhar_ joined 03:38 justatheory joined 03:40 alester joined 03:43 molaf joined 03:44 molaf left 03:47 nihiliad left, _jaldhar left 03:49 khisanth_ joined 03:51 Khisanth left, khisanth_ is now known as Khisanth 03:59 KyleHa left 04:03 japhb left 04:11 fridim_ joined
cognominal rakudo: say Any.defined( Pattern ) 04:12
p6eval rakudo 0d4fe0: OUTPUT«Could not find non-existent sub Pattern␤»
cognominal rakudo: say Any.defined( ::Pattern )
p6eval rakudo 0d4fe0: OUTPUT«too many arguments passed (2) - 1 param expected␤in Main (src/gen_setting.pm:3390)␤»
04:13 rjh left, rjh joined 04:19 jauaor left 04:23 jrockway left, jrockway joined
mikehh rakudo (ae56d02) builds on parrot r40685 - make test/make spectest (up to 28042) PASS - Ubuntu 9.04 amd64 04:30
04:32 xomas_ left 04:39 zloyrusskiy joined 04:41 zloyrusskiy left
cognominal what is this method with an empty name? 04:48
my %a ; say join ', ', sort map { "'$_'" }, %a.^methods
rakudo: my %a ; say join ', ', sort map { "'$_'" }, %a.^methods
p6eval rakudo 0d4fe0: OUTPUT«'', 'ACCEPTS', 'Hash', 'Scalar', 'contains', 'delete', 'exists', 'hash', 'invert', 'push'␤»
04:49 zloyrusskiy joined 04:50 japhb joined 05:05 fridim__ joined
spinclad KatrinaTheLamia: re JPerl6: possibly of interest: pugs had a working javascript-emitting backend (likely badly bitrotten now). i seem to recall people at the time saying javascript was a fair piece friendlier environment for dynamic langs than JVM. nothing a few layers of abstraction wouldn't cure, i expect. 05:06
05:07 protorom left 05:14 frew__ joined 05:17 finanalyst joined 05:19 szabgab left, drbean left 05:21 fridim_ left 05:28 alester left 05:32 bpetering joined 05:35 frew__ left 05:37 bpetering is now known as missingthepoint 05:41 orafu joined, szabgab joined
missingthepoint wonders what an "impedance mismatch" is... 05:49
missingthepoint guesses though that an "impetdance mismatch" is when petdance is required, but not present. :) 05:50
Tene it's not usually used as a specific technical term, just a general idea that two conflicting worldviews are colliding.
missingthepoint oh hai Tene
Tene technology A does things one way, B does things a very different way, so they can't fit together.
horizontal tab inserted into vertical slot. 05:51
etc.
that help?
OH HAI MTP
missingthepoint does... Tene++ # meme education 05:52
missingthepoint-- # #perl6 -> meme school
Tene eh, nothing else important was going on ATM
wayland76 Well, impedance mismatch does have a specific sense in electronic engineering, and audio stuff, and things like that 05:53
Tene Right. 05:54
I just meant that its use elsewhere isn't a specific concept.
wayland76 But my Dad's the EE, not me, so I can't remember what at the moment :)
05:54 justatheory left
Tene en.wikipedia.org/wiki/Impedance_matching 05:55
en.wikipedia.org/wiki/Object-relati...e_mismatch is an example of a specific programming-related failure described by that term.
wikipedia++
missingthepoint: any other memes for me? I'm (hopefully) going to sleep soon. 05:56
missingthepoint no, sleep well :) 05:57
Tene Just recently found out I'm going on a surprise trip to Seattle next week, for work. Taking the gf with me this time. 05:58
missingthepoint ooh, have fun...
(if that's possible on a work trip) 05:59
05:59 Chillance joined
wayland76 Actually, now that I think about it, the impedance mismatch meme means that they can be made to sort of fit if you push hard enough 05:59
Tene missingthepoint: sure is.
06:02 reqamst[zZzZz] is now known as reqamst
missingthepoint night Tene, afk for a bit 06:06
06:07 cotto left 06:08 mikehh_ joined, cotto joined
moritz_ good localtime() Perl 6 folks 06:08
Tene hi moritz 06:09
missingthepoint hi moritz_ :) 06:10
06:15 rfordinal joined 06:16 tak11 left 06:23 rfordinal left 06:24 mikehh left
moritz_ just found a weird bug in array attribute initialization, and wonders if he can reduce it to a usable size 06:30
rakudo: class A { has @.b; method d { say @.b.perl } }; A.new(b => ([3, 4], [5, 6])) 06:31
p6eval rakudo 0d4fe0: ( no output )
moritz_ rakudo: class A { has @.b; method d { say @.b.perl } }; A.new(b => ([3, 4], [5, 6])).d
p6eval rakudo 0d4fe0: OUTPUT«[[3, 4], [5, 6]]␤»
moritz_ ok, not so easy :/ 06:32
06:33 frederico left
wayland76 ping ruz: if you're still around, good question time starts now :) 06:47
06:50 Su-Shee joined
Su-Shee good morning. :) 06:50
moritz_ good morning Su-Shee
Su-Shee the ircserver should serve coffee... 06:51
wayland76 But then if the Internet was down, you'd have no coffee :) 06:53
Su-Shee fell into the office a little early... 06:54
finanalyst good localtime everyone
06:55 rfordinal joined
Su-Shee looks at 10 years old perl. 06:58
06:58 dukeleto left
missingthepoint Su-Shee: my condolences. (at least it's perl.) 06:59
Su-Shee actually, it's rather ok. I've expected much much worse. 07:00
07:00 qp_pq left
Su-Shee and *hihi* from an archeological point of view it's interesting seeing a perl project which runs constantly for a decade now. 07:01
moritz_ Rakudo's spectest graph, recreated in Perl 6: moritz.faui2k3.org/tmp/progress-graph.svg 07:02
Su-Shee *plopp* nice :)
wayland76 remembers seeing some perl4 once, and giving up quickly :) 07:03
moritz_ there seem to be some small rounding errors
which lead to sub-pixel whitespaces between the bars 07:04
and when you zoom out, you see waves in the luminosity
07:11 drbean joined
finanalyst moritz_: how was graph created? can i see program? 07:29
szbalint ooo moritz_++
moritz_ finanalyst: with my SVG::Plot module...
finanalyst: github.com/moritz/svg-plot/ in the examples/ directory 07:30
finanalyst moritz_:++
Su-Shee some day, there will be a Cairo binding...
moritz_ rakudo: say 1/7 07:32
p6eval rakudo 0d4fe0: OUTPUT«0.142857142857143␤»
finanalyst moritz_: typo line 69 s/Dez/Dec/ 07:33
moritz_ rakudo: printf "%.30f", 1/7
p6eval rakudo 0d4fe0: OUTPUT«0.142857142857142849212692681249»
moritz_ finanalyst: thanks. Actually language confusion ;-) 07:34
07:34 rfordinal left
finanalyst moritz_: where is SVG.pm? 07:41
moritz_ finanalyst: in masak's github repo
07:41 mikehh_ is now known as mikehh
wayland76 He has a plot to keep it for himself. That's why it's called SVG::Plot :) 07:41
szbalint and SVG stands for Superbly Veiled Grand 07:46
:)
cotto Does Rakudo take advantage of Parrot's fact opcode yet? 07:51
moritz_ cotto: a quick grep says "no" 07:53
what does fact do?
cotto It wasn't a very serious question.
factorial 07:54
moritz_ oh.
cotto I'm surprised it hasn't been removed.
moritz_ sounds like a thing one would write to win in a specific benchmark ;-) 07:55
cotto I'm pretty sure that's why it was put there.
finanalyst in SVG.pm I found '$svg = :svg[...]' I havent come across :xx[]. Is this the same as 'xx'=>[] ? 07:56
moritz_ yes (and currently broken) 07:57
07:58 charsbar left 07:59 charsbar joined
reqamst I'm looking for perl6 bundle for textmate, anyone knows? 08:05
08:05 payload joined
moritz_ only know of Perl 6 support for vim, emacs and padre 08:06
missingthepoint is thinking of trying to add it to komodo... that may or may not involve solving the problem for other editors.... <o 08:09
08:09 ejs joined 08:10 rfordinal joined, rfordinal left 08:18 ejs1 joined
sri_kraih would like a perl6 bundle for textmate too 08:20
missingthepoint well, buy me a mac and i'll work on textmate :P 08:22
reqamst I am using textmate bundles in e editor for windows 08:23
many editors use textmate bundles and themes
08:23 payload left 08:24 cj_ joined 08:26 dukeleto joined 08:27 ejs left 08:30 payload joined 08:37 Chillance_ joined 08:45 zamolxes left 08:51 szabgab left 08:54 Chillance left, flip915 joined
flip915 Does someone know if there's something like a PASM to C converter or anything like that? 08:55
I'd like to compile perl6 into native code.
moritz_ flip915: perlgeek.de/blog-en/perl-6/my-first...table.html 08:56
I don't know if that works at the moment
cotto There was one built into Parrot quite a while ago, but it bitrotted from lack of love.
flip915 Yes, but that only puts the bytecode after some loader, doesn't it?
moritz_ yes, but it's an executable ;-)
flip915 I'm asking about letting a compiler run over it - with all available optimizations, like inlining and so on 08:57
cotto It's a "fakecutable".
moritz_ cotto: what about that parrot runcore that creates executables?
cotto flip915, we're also hoping to use LLVM as a backend, but that's a long-term project.
flip915 Because I believe that the accessor functions for classes would get a major performance boost if they'd get reduced to "load int from base+X"
instead of having to call a bytecode function 08:58
and yes, I know about JIT ... but I think that a compiler could/should do that *one* time, and not at each run
08:59 guest_007 left
flip915 LLVM sounds interesting 08:59
llvm.org/
cotto We need to do a lot of groundwork first.
but yes, it is
moritz_, I think that's the one that got bitrotted and removed. 09:00
moritz_ actually we has a Summer of Code project planned for that - but real life got in the student's way 09:01
(for an llvm JIT backend, that is)
cotto flip915, if you're interested in helping, head on over to #parrot on irc.perl.org and help us figure out what needs to go into Lorito. 09:02
dalek kudo: c06ba3a | moritz++ | docs/release_guide.pod:
[docs] small udapte to release_guide.pod, mentioning tools/test_summary.pl
cotto trac.parrot.org/parrot/wiki/L1Recap (Lorito is the currently favored name for L1). Also, I'll stop with the non-perl 6 stuff now. 09:04
flip915 cotto: Yes, I'm interested, but I won't find any free time for that ... I'm already overbooked 4 times in RL ;-[ 09:12
moritz_ well, you found time for IRC ;-) 09:13
mikehh rakudo (ae56d02) builds on parrot r40688 - make test/make spectest (up to 28042) PASS - Ubuntu 9.04 amd64
flip915 that's just while switching through the desktops 09:14
09:15 M_o_C joined 09:24 zamolxes joined 09:29 masak joined 09:31 szabgab joined
masak std: class A { method .new() {} } 09:40
p6eval std 28042: OUTPUT«===SORRY!===␤Malformed block at /tmp/MrPXoPfOoE line 1:␤------> class A { method ⏏.new() {} }␤ expecting any of:␤ block␤ subscript signature␤ terminator␤FAILED 00:02 37m␤»
masak std: class A { method !new() {} }
p6eval std 28042: OUTPUT«ok 00:02 38m␤» 09:41
masak a case could be made for the '.new' form (as a synonym for 'new') being a logical extension of the '!new' syntax.
moritz_ a case could be made indeed. 09:42
however I don't know if there's much benefit from increased punctuation
masak me neither. 09:49
but I saw Kevan's method declaration syntax on p6l, and I had this thought. 09:50
09:51 sjohnson sets mode: +o masak 09:59 rfordinal joined
reqamst paste.lisp.org/display/85787 10:01
Is it bug? I am getting spaces beetween numbers. 10:02
sjohnson how's it going masak
moritz_ reqamst: not a bug, that's how arrays stringify
masak sjohnson: fine. a bit hectic today, but not too bad.
moritz_ 0,0,0 creates an array (a list, actually), not a string
masak sjohnson: how're you doing? 10:03
sjohnson pretty good :)
10:04 missingthepoint left
masak food & 10:07
jnthn oh hai 10:15
moritz_ OLOLITSJNTHN 10:16
10:19 szabgab left, colomon left 10:21 szabgab joined 10:26 abra joined 10:28 guest_007 joined
mikehh rakudo (c06ba3a) builds on parrot r40691 - make test/make spectest (up to 28042) PASS - Ubuntu 9.04 amd64 (g++) 10:36
10:37 ihrd joined
jnthn looks at xkcd today and groans 10:44
wayland76 thinks xkcd website is slow due to OS upgrades using his internet connection :) 10:47
pugs_svn r28043 | moritz++ | [S02] small clarifications on Whatever comprehensions 10:49
wayland76 I experience a strange feeling when reading moritz_'s commit message :) 10:50
(out of context) 10:51
10:52 colomon joined
wayland76 I mean, how often do you tell people that you've been clarifying the whatever comprehensions? :) 10:52
reqamst We need nice module for bouild XML structure for Tufte. Scruffy uses builder.rubyforge.org 10:56
moritz_ reqamst: masak's SVG.pm (which is actually an XML writer) might do for a start
10:57 xomas_ joined 10:58 zloyrusskiy left
reqamst moritz_: Oh, I see. 10:58
10:58 Chillance_ left 10:59 mtve joined
moritz_ std: ** 11:03
p6eval std 28043: OUTPUT«ok 00:02 37m␤»
11:12 payload left
pugs_svn r28044 | moritz++ | [t/spec] tests for whatever codes with multiple stars 11:17
jnthn moritz_: Do you know what is ** parsing as? 11:18
rakudo: **
p6eval rakudo 0d4fe0: OUTPUT«Statement not terminated properly at line 2, near "*"␤in Main (src/gen_setting.pm:3390)␤»
moritz_ jnthn: probably as * * <missing term> 11:19
rakudo: say (** 3).(5)
p6eval rakudo 0d4fe0: OUTPUT«15␤»
moritz_ yes
jnthn moritz_: Wouldn't the missing term be a parse error though?
moritz_ ah wait, you meant STD.pm
jnthn moritz_: Right
moritz_ there's a term ** that's HyperWhatever
jnthn oh my... 11:20
OK.
moritz_ I wanted to add that to the grammar, but I couldn't find out how the * term is parsed
11:21 flip915 left
jnthn moritz_: Line 664 11:21
Inside token term
moritz_ jnthn: thanks 11:22
11:30 pmurias joined 11:34 fridim_ joined 11:40 fridim__ left
jnthn ooh, shiny 11:40
> multi trait_mod:<is>(AttributeDeclarand $a, :$mentioned!) { say "declared " ~ $a.name }
lambdabot <no location info>: parse error on input `)'
jnthn > class Test { has $.x is mentioned }
lambdabot <no location info>: parse error on input `class'
jnthn > Test.new
lambdabot Not in scope: `Test.new'
jnthn declared $!x
/kick lambdabot
(And yes, if you do Test.new again, it doesn't re-apply the trait. We get the applied-once semantics right-ish. :-)) 11:41
oh, akshually we kinda won't...but we're close. ;-) 11:42
ihrd hi there 11:43
jnthn oh hai
ihrd I just try make for test in lat rakudo and got
A method named 'clone' already exists in class 'Perl6Object'. It may have been supplied by a role.
moritz_ ihrd: it seems you don't have a pugs commit bit yet - do you want one? (to apply the test patch) 11:44
jnthn ihrd: In latest Rakudo from git?
11:44 Zloyrusskiy joined
ihrd I checked it this morning, will check now again 11:45
moritz_ ihrd: did you do a 'make clean'?
ihrd yes, only pod updated
I done make realclean 11:46
for rakudo and parrot, both
moritz_ and try to delete the installed parrot (rm -rf parrot_install if you built with Configure --gen-parrot)
ihrd okay, I will do
and yes, I like to have pusg commit bit 11:47
moritz_ ihrd: them tell (or /msg) me your email address
and desired nickname, if different from 'ihrd' 11:48
oh, I thin I found it on the november maling list
ihrd ok 11:49
moritz_ ihrd: you have mail. It's a custom to add yourself to the AUTHORS file as first commit (and to check your commit bit)
11:49 carlin joined
carlin rakudo: say Temporal.WHAT; 11:50
p6eval rakudo 0d4fe0: OUTPUT«Null PMC access in getprop()␤in Main (src/gen_setting.pm:3390)␤»
moritz_ that's less than awesome. 11:51
jnthn moritz_: Yeah, it's the general "if I declare class A::B then A.WHAT is has an explode".
Already ticketed (I saw the ticket a couple of days ago)
11:52 kidd_ joined
moritz_ rakudo: say *(42) 11:52
p6eval rakudo 0d4fe0: OUTPUT«invoke() not implemented in class 'Undef'␤in Main (/tmp/b42gX0yOwO:2)␤»
carlin rakudo: Temporal
p6eval rakudo 0d4fe0: OUTPUT«Null PMC access in getprop()␤in Main (src/gen_setting.pm:3390)␤»
eiro hello there 11:53
moritz_ helleiro ;-)
eiro long time ago, i complain here about the fact that there is no .parsehandle method for grammar classes. Afaik, jnthn said that it could be a good addition 11:54
did someone worked on it? how to know ? 11:55
carlin Ah, so it's already known?
moritz_ eiro: in perfect Perl 6 one can simply write that as Grammar.parse(cat $handle)
or $handle.cat or whatever it's called
but rakudo doesn't do Cat objects yet
jnthn moritz_: cat? 11:56
moritz_ jnthn: I forgot what the syntax for creating Cat objects is 11:57
wayland76 Yes, you didn't think all those examples in the specs that say Cat.meow() were just window dressing, did you? :)
moritz_ perlcabal.org/syn/S05.html#Matching...on-strings
jnthn Ah, found it in S03.
So Perl 6 can haz cheezburger? 11:58
wayland76 And various S32 docs
jnthn Anyway, it looks like cat would indeed deal with the issue. 11:59
dalek kudo: f39e739 | moritz++ | src/parser/ (2 files):
parse ** (HyperWhatever)
jnthn moritz_: Going to implement HyperWhatever somewhat too? :-)
moritz_ jnthn: I don't think it makes sense until we have multi-dimensional arrays ;-) 12:00
jnthn: but I don't like it when NYI features cause mis-parses
jnthn moritz_: Fair enough.
I see that you dind't just make it parse, but also put in an NYI message.
So that's fine. :-)
Well, I actually prefer that over silently failing. 12:01
But yes, parsing and saying NYI is even better.
moritz_ parsing **** as * ** * is plain wrong (although that would make an obfu much nicer)
jnthn: but I could have made the commit message clearer, for sure 12:02
eiro re (chat with boss) 12:03
moritz_, thanks
jnthn rips out a bunch of special case code, replaces it with a call to a trait_mod, and sees what the spectests make of it 12:04
eiro so now: what's the best strategy to build a filter that uses a grammar? i can grab all the content of stdin
moritz_ development by experiment ;-)
eiro but it can be huge
moritz_ eiro: right now that's your only option (unless you can do something line by line)
eiro moritz_, i can't as my parser will use more than one line 12:05
moritz_ eiro: then you have to live with that restriction for now, and wait for lazy lists and streams to be implemented 12:06
12:06 takadonet joined
takadonet morning all 12:06
eiro moritz_, no pb: it's just for test :)
ihrd moritz_: I reinstall rakudo 12:11
pugs_svn r28045 | wayland++ | [S02,S03,S09,S11] Changed any example that had the animal "Cat" to have "Squirrel"
r28045 | wayland++ | instead (both have kittens), because we already have a type called Cat and a
r28045 | wayland++ | method called "cat", and I could see some potential for confusion.
ihrd still the same error there
12:12 meppl joined, carlin left
jnthn hm 12:12
has $.inst is rw;
has $!priv is rw;
jnthn wonders what the "is rw" means on the private. 12:13
masak it's a no-op, no?
jnthn masak: Well, it's a "omg trait dispatch fail" right now... :-/
masak oh.
jnthn Well, in my branch that actually applies traits.
Not in master which doesn't try to do anything other than the compiler handled ones. 12:14
I guess I can just write a no-op trait multi to handle that though.
moritz_ sounds sensible
jnthn OK, good, thanks for the sanity check. :-)
moritz_ wayland76: + %cats\ .{'fluffy'} = Squirrel.new;
jnthn Squirrel is not a type of cat? 12:15
moritz_ well, it would be sensible to name the variable %squirrels in that case ;-)
jnthn Please note that 12:17
moritz_ anyway, I'lll fix that
jnthn + # to the type Fish and either the Squirrel or Dog type...
+ my Squirrel|Dog Fish $mitsy = new Fish but { Bool.pick ?? .does Squirrel
+ !! .does Dog };
Is not valid Perl 6.0.0.
moritz_ neither was the previous example, right?
jnthn No
You can't have multiple prefix constraints.
wayland76 Oops, I've fixed it too :) 12:18
pugs_svn r28046 | moritz++ | [S03] store Squirrels in %squirrels, not in %cats
moritz_ was faster ;-)
wayland76 Oh well :) 12:19
jnthn I suspect for now we're best keeping the spectests just having 6.0.0 stuff in them. :-)
moritz_ somehow my commit messages sound a bit surrealistic today
jnthn likes surrealism. 12:20
masak fish surrealism
is there a way to neutralize the caught exception in a CATCH {} block? 12:25
(I know the current behaviour is a Rakudobug, I'm looking for workarounds.)
12:25 payload joined
jnthn Wasn't there some $!.handled = 1 thingummy? 12:26
12:27 pmurias left
masak jnthn: heh, that put the CATCH block in an infinite loop. :P 12:28
dalek kudo: 527cb8f | moritz++ | src/setting/NYI.pm:
NYI-message for cat($)
jnthn *snort* 12:29
12:29 ihrd left
jnthn masak: Wait, do CATCH blocks re-throw exceptions? 12:29
masak jnthn: in Rakudo, it seems they do currently, yes. 12:30
jnthn wtf
that makes them, erm, vaguely uesless, no?
masak rakudo: die "ouch!"; CATCH { say "Gotcha!" }
p6eval rakudo 0d4fe0: OUTPUT«Gotcha!␤ouch!␤in Main (/tmp/1J46ZU1NsE:1)␤»
masak jnthn: aye.
jnthn rakudo: sub foo { die "ouch!"; CATCH { say "Gotcha!" } }; foo
p6eval rakudo 0d4fe0: OUTPUT«Gotcha!␤ouch!␤in sub foo (/tmp/lY3kLWxGOw:2)␤called from Main (/tmp/lY3kLWxGOw:2)␤»
jnthn aww shiesse 12:31
Tene: See ^^
masak rakudo: die "ouch!"; CATCH { say "Gotcha!"; $!.handled = 1 } 12:32
p6eval rakudo 0d4fe0:
..OUTPUT«Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Gotcha!␤Go…
masak well, at least it doesn't re-throw... :P
12:34 Satish joined 12:35 Satish left
frettled moritz_: You know, the cats may disagree and think that squirrels _should_ be stored in cats. Just mentioning it. 12:37
jnthn wantfud!
wayland76 well, those cats can go clarify their Whatever comprehensions for all I care :) 12:38
12:38 payload1 joined
masak one would think that cats have been evolved to store rodents. 12:38
12:38 payload left 12:39 kidd_ left
wayland76 I doubt the rodents think of it as "storage" :) 12:39
12:40 szabgab left, unitxt joined
masak squirrels have kittens? this is news to me. 12:54
wayland76 Or maybe kits -- I thought it was kittens, but I didn't check :) 12:59
13:03 NegativeParallax joined
frettled masak: they also have [citation needed], according to the Wikipedia article on kittens. 13:10
wayland76: 3: young of any of various fur-bearing animals; "a fox kit"
seems right, according to Wordnet
masak I learn something new every day, it seems. thanks, frettled. 13:12
Matt-W++ # use.perl.org/comments.pl?sid=43556&cid=70195 13:16
jnthn That's a very good response. 13:19
What it was in response to kinda pissed me off.
masak it was written in a style meant to piss people off. 13:20
I'm toying with the idea of creating a blog around that comment and its (so far) three responses.
er, blog entry. :> 13:21
(I'm ambitious, but not _that_ ambitious...)
jnthn "I'm writing this because I care about Perl, about the community, about Perl 6" => bluntly, those of us who are actually doing the work are showing a heck of a lot more care for all of those than somebody who writes a factually inaccurate comment on a blog post that mis-interprets some really quite clear statements
masak nod. 13:22
I've been thinking long about the dynamics of outsider misunderstanding of this kind.
I think it's inevitable, because the bottle neck that we can communicate through to outsiders is extremely narrow. 13:25
13:25 carlin joined
jnthn Misunderstanding is fine. Being an ass is less fine. 13:26
wayland76 If my Web connections start working again, I'm very tempted to say "You obviously have no clue about what's going on with Rakudo. Based on the fact that a single article doesn't tickle your fancy, you write the whole project off :)"
masak I'm not saying we should tolerate it, I'm saying it'll happen.
wayland76 But I should probably restrain myself
jnthn Sure.
masak wayland76: yes, I think you should. 13:27
wayland76 OTOH, he might respond well to people who write like him :)
masak wayland76: the three answers so far are impressing because they don't talk about the commenter. instead, they clarify the situation itself, and why it's a lot less dystopian than the commenter thinks. 13:28
jnthn Aye.
frettled Yep.
wayland76 But I will refrain. Don't worry :)
frettled I think it's best to leave it at that.
jnthn I didn't bother commetning because so many @other had written far better comments than I could.
frettled just thought "what a jerk".
masak note, also, that this is the type of account seemingly created just to troll. 13:29
13:29 payload1 left, payload joined
frettled «furry_marmot (9372) is all alone in the world.» 13:29
hee-hee.
masak when I looked, the activity was limited to that comment.
wayland76 Bedtime for me. 'night all 13:30
frettled I don't even have a use Perl account, I think, so it's very easy to refrain from answering.
masak wayland76: o/
frettled wayland76: sleep well
jnthn masak: Yeah, I noted taht. 13:31
wayland76 Will do my best, sah!
masak rakudo: "foo" ~~ /bar/; say $/.from; say $/.to 13:33
p6eval rakudo 0d4fe0: OUTPUT«3␤-2␤»
masak I see that the 3 is the length of the target, but what's -2?
13:34 ejs2 joined
moritz_ .from and .to of an unsuccessful match are meaningless 13:34
13:35 nihiliad joined
masak hokay. 13:35
moritz_ masak: speaking of which, have you seen my match object visualizations?
github.com/moritz/svg-matchdumper/tree/master 13:36
I wanted to blog about it, but I first have to fix some technical issues with my blog
masak no, I haven't. but I will, immediately.
moritz_: did you add the project to proto's projects.list yet? 13:37
moritz_ masak: don't think so - but I'll do 13:38
masak moritz_: great.
make sure to put svg in deps.proto in the project when you do. ;) 13:39
13:39 frew__ joined
jnthn awww...so close and then Null PMC Access. :-/ 13:39
masak ...so that the small benefit of using proto can work its insufficient magic. :)
jnthn rakudo: subset Even of Int where { $^n % 2 == 0 }; class Foo { has Even $.x }; Foo.new(x => 3) 13:40
p6eval rakudo 0d4fe0: OUTPUT«Assignment type check failed; expected , but got Int␤in Main (/tmp/ehru9l0rls:2)␤»
13:41 jaldhar_ is now known as jaldhar, Su-Shee left
masak
.oO( less than awesome error... probably ticketed already... )
13:43
jnthn masak: nod
13:44 ejs1 left
jnthn heh 13:47
When you know you really screwed it up: a test fails with "Assignment type check failed; expected C, but got C"
masak o_O 13:48
I'd call that a meta-error.
jnthn it might be a punny bug 13:50
We've also been silently getting away with one or two things up until now... 13:51
I won't be too surprised if when I push, somebody's code somewhere breaks... 13:52
frettled And you know who will report it, don't you? *grins at masak*
masak well... 13:53
jnthn Temporal.pm in the setting was actually getting away with one of those "looked OK but actually was not working" things...
:-/
13:53 ejs1 joined
jnthn In a nutshell, there were various cases where you could write has SomeType $.x 13:54
And if we failed in the lookup of that SomeType we'd silently ignore that.
masak ooh. 13:55
jnthn Well, we stored a Null PMC, which was then taken to mean "untyped".
masak rakudo: class A { has SomeType $.x }
p6eval rakudo 0d4fe0: OUTPUT«Malformed declaration at line 2, near "SomeType $"␤in Main (src/gen_setting.pm:3390)␤»
jnthn Which was OK when we had a special code-path that took care of typed attributes.
But now I've ripped that out and made it just work the standard way...it's broked. :-( 13:56
masak: No, no, you need more subtle than that.
13:56 payload left
jnthn masak: Declaring a lexical subtype was what Temporal.pm does. 13:56
my subset ...
masak subtle... ok, I can do subtle... :P
jnthn Then because of the lexicals over class boundaries issue, the lookup failed.
13:56 payload joined
masak rakudo: subset Subtle of Int where { $^n % 7 == 0 }; class A { has Subtle $.error }; say A.new(:subtle(14)).error.WHAT 13:58
p6eval rakudo 0d4fe0: OUTPUT«()␤»
frettled That was subtle. 13:59
jnthn rakudo: subset Subtle of Int where { $^n % 7 == 0 }; class A { has Subtle $.error }; say A.new(:subtle(13)) # should fail
p6eval rakudo 0d4fe0: OUTPUT«A()<0xb5686b58>␤»
jnthn fails at failing.
masak that's ticketed, I'm sure.
jnthn It is. 14:00
Thing is, it's fatal now.
Rather than a silent failure.
14:01 ejs2 left
jnthn If that really bothers people, I may be able to put in a hack to make it not so. 14:01
masak doesn't bother me.
14:04 frew__ left, sri_kraih_ joined 14:12 KyleHa joined
jnthn crosses his fingers and spectests again 14:12
takadonet jnthn: what are you changing ? 14:14
14:15 finanalyst left
moritz_ big scary trait changes, as I know him ;-) 14:15
jnthn Well, not that big and scary 14:16
Basically, traits on variables.
Which in itself doesn't seem so bad in that we haven't really supported it before officially, but actually "my Int $x" is just sugar for "my $x of Int". 14:17
Which means it's a dispatch to trait_mod:<of>
But also I've been tidying up how trait_mod:<of> worked.
Before we had to have some inline PIR. 14:18
So it was a bit of "fun" making sure we could do that stuff from Perl 6. 14:19
But deeper, we were really cheating on "has Int $.x"
14:19 _jaldhar joined, NegativeParallax left
jnthn We weren't even doing it in terms of the trait_mod 14:19
Nor were we supporting traits on attributes at all.
So it was a bit of a shuffle around to make that all work.
More special case code got deleted along the way though, so I think it's an overall win. :-) 14:20
14:21 sri_kraih left, ejs1 left 14:23 sri_kraih_ left 14:24 sri_kraih joined
moritz_ I'm sure pmichaud agrees ;-) 14:25
Tene jnthn: thanks for the note about the exception bug. I'll look into it.
jnthn Tene: Awesome, thanks. :-)
Tene++ 14:26
Tene: While you're looking at these things...
Tene: a return in CATCH I think goes infinite-ish too.
Tene: Plus return should look for a handler in the lexical rather than the dynamic scope.
Tene I gave up on working on exceptions stuff a while back when I couldn't get any feedback from anyone on how they should work.
jnthn Ah, the control exception vs non-control exception stuff? 14:27
Tene No. Just basic stuff like "In Perl 6, I want to catch an exception, and resume it. What's the API for that?" 14:28
"What's the API for marking an exception as handled or not?
etc.
14:29 omega_ left, omega joined 14:30 Psyche^ joined
Matt-W masak: I get ++ for telling the truth? cool! 14:31
14:31 jaldhar left
jnthn Tene: I'd imagine they're both going to be method calls on the exception object. 14:32
Tene: Ah, see here
svn.pugscode.org/pugs/docs/Perl6/Sp...eption.pod
masak Matt-W: no, you get ++ for putting the truth in a form that not everyone can.
14:33 ruoso joined
Matt-W masak: Oh so it has to be recognisable truth. Damn. 14:33
That's just hard work that is :P
jnthn Tene: Admittedly it needs some fleshing out though. :-/ 14:34
Tene A bit. :)
OK, sounds great. 14:35
AFK, class.
jnthn Tene: Don't feel you aren't allowed to do that fleshing out. :-)
masak Matt-W: no, I thought the tone and the maturity of the response were admirable. certainly way above what such a poster actually deserves. 14:37
jnthn I think that we have people who can write responses like that, and that others who can't have the restraint not to, is a real strength of the Perl 6 community. 14:39
14:39 hercynium left
masak works himself through that maze of negations 14:40
oh, I misparsed. :) it wasn't as bad as I read it.
jnthn Sorry. :-)
masak not your fault. :) my parser had a glitch. 14:41
jnthn It could have been slightly better put too. :-)
masak how to I force a {} block to be a hash block?
jnthn hash 14:42
rakudo: say (hash {}).WHAT
p6eval rakudo 0d4fe0: OUTPUT«Hash()␤»
masak rakudo: say (map { hash( 1, 2 ) }, 1, 2, 3).perl
p6eval rakudo 0d4fe0: OUTPUT«["1" => 2, "1" => 2, "1" => 2]␤»
14:43 Patterner left, Psyche^ is now known as Patterner
masak I want a list of hashes. 14:43
jnthn Should that really flatten, I wonder...
say (map { { 1 => 2 } }, 1, 2, 3).perl 14:44
rakudo: say (map { { 1 => 2 } }, 1, 2, 3).perl
p6eval rakudo 0d4fe0: OUTPUT«[{"1" => 2}, {"1" => 2}, {"1" => 2}]␤»
masak that's all good and well, but I don't have literal pairs in my code.
so I can't use that form of coercion.
jnthn "don't have literal pairs"? 14:45
Oh, you already have pair objects?
masak actually, I'm making them with an inner map. 14:46
Matt-W jnthn: It was good when that comment first appeared that there were people saying no, I can't reply to that properly. The instinctive urge to start a flame war was averted with no apparent effort.
masak but essentially, yes.
14:46 kidd_ joined
masak there will be more situations like that before Perl 6 proves itself to everyone. 14:46
Matt-W Naturally 14:47
I'm continually correcting misconceptions and spreading the word
This morning that nearly verged on translating #songsincode posts on Twitter... 14:48
Probably taking things a bit far, but a lot of them look better in Perl 6 :)
14:49 Zloyrusskiy left
jnthn OK, so I have my branch and I want to merge. 14:52
I've done git rebase master
And all looks good.
masak great.
rakudo: my %hash = a => "b"; say (map { {%hash} }, 1, 2, 3).perl
p6eval rakudo 0d4fe0: OUTPUT«["a" => "b", "a" => "b", "a" => "b"]␤»
masak it flattens! 14:53
what should I do?
jnthn Ouch, that doesn't look right.
masak "All I want for Christmas is an Array of Hashes..." :P
jnthn rakudo: my %hash = a => "b"; say (map { \%hash }, 1, 2, 3).perl
p6eval rakudo 0d4fe0: OUTPUT«[{"a" => "b"}, {"a" => "b"}, {"a" => "b"}]␤»
masak ah, there you go. jnthn++ 14:54
jnthn Matt-W: OK, so I know I could do git-gui and just merge in there.
I'm curious what the magical incantation is from the command line though.
Matt-W thinks jnthn meant masak
tab completion strikes again
jnthn yes, I wanted masak...sorry
Matt-W: If you know the answer you can tell me though. ;-) 14:55
masak jnthn: oh, it's just (in master) 'git merge <branch>'
14:55 Guest28989 left
Matt-W no I don't, sorry 14:55
not really done git merging yet
jnthn masak: Wow.
masak: It appears to have Just Worked.
masak jnthn: I'm teeling you! 14:56
it's heavenly.
jnthn masak: Do I need to now do any kind of commit, or is it just a push?
masak just a push.
jnthn OK
oh wait
I broke the occasional workingness of //=
With my
pmichaud good morning, #perl6
masak pmichaud: o/ 14:57
14:57 adam-pwgsc joined
jnthn Morning, pm 14:57
KyleHa The way git Just Works scares me sometimes. It Works but doesn't Say anything, and I think, "OMG! Is it OK?"
mkelly32 just add -v to everything, then 14:58
pmichaud KyleHa: you would prefer "I just did what you asked me to. I encountered a few problems, but took care of them for you. Yes, really, it works! You can thank me later."
?
KyleHa I think -v is what I want.
svn and svk are so much more chatty. It's comforting. 14:59
masak git is like chocolate and ponies and a good shower.
pmichaud I wonder if we should put an error message in Rakudo that says "Unable to find suitable error exception at foo.pl line 275"
masak I want to hug git with oven mittens!
jnthn has never taken chocolate or ponies in the shower with him
adam-pwgsc masak: But it comes with no instructions and you have to stay blindfolded for 24 hours :D 15:00
pmichaud i.e. -- perhaps we should throw a warning if we're not able to find anything that needs a warning
masak adam-pwgsc: that might have been true two years ago. not so now, I find.
KyleHa pmichaud: I'll write that into the spec.
pmichaud KyleHa: thanks!
adam-pwgsc masak: Git-gui still doesn't have a "git pull" command
masak adam-pwgsc: I wouldn't know, I'm a console person. 15:01
adam-pwgsc masak: That's what I mean. I want to code up a nice pretty GUI for Git.
I use the console as well 15:02
masak adam-pwgsc: in Perl 6? please do.
15:02 lionWrk joined
adam-pwgsc masak: Actually, that's a great idea 15:02
15:03 carlin left, unitxt left, dukeleto left, pugs_svn left, michaelr left, skids left, sjohnson left, jeekobu left, szbalint left, frettled left, rhr_ left, allbery_b left, larsen left, phenny left, Lorn left, c1sung left, avar left, LionMadeOfLions left, buubot left, pnu left, clkao left, ilbot2 left, ewilhelm_ left
masak adam-pwgsc: it's the right time, too. GUIs are just becoming possible with Rakudo. 15:03
15:03 frettled joined, carlin joined, unitxt joined, dukeleto joined, pugs_svn joined, larsen joined, LionMadeOfLions joined, rhr_ joined, ewilhelm_ joined, Lorn joined, ilbot2 joined, c1sung joined, clkao joined, buubot joined, pnu joined, szbalint joined, jeekobu joined, sjohnson joined, skids joined, allbery_b joined, avar joined, michaelr joined, phenny joined, irc.freenode.net sets mode: +oo frettled sjohnson 15:04 justatheory joined
adam-pwgsc masak: What gui toolkits are supported? Where can I find this out? 15:06
15:07 rfordinal left
masak adam-pwgsc: I know Tene has something Enlightenment-y working. Su-Shee had something also, I think. 15:07
Matt-W & 15:08
Tene Yes, if you want to use a pretty but obscure and awkward to obtain toolkit, I have bindings for some of the enlightenment libraries.
15:08 MoC` joined 15:09 M_o_C left
adam-pwgsc Cool. I'll have to look up what it's like compared to GTK+ (what I'm familiar with) 15:10
pmichaud Tene: rdice has been wanting to learn more about NCI stuff in Parrot, could I get him in touch with you? (and perhaps japhb also?)
15:10 gfldex is now known as Guest41865, Guest41865 left 15:11 gfldex_ joined
Tene pmichaud: Yes, that would be fine. 15:11
pmichaud okay, great. I'll send email.
jnthn meh, //= and friends dumped the LHS's PAST nodes into the PAST tree twice. 15:13
No wonder it was messed.
jnthn spectets again and hopes this will be the last thing he needs to do before pushing. 15:14
15:14 alester joined 15:15 nihiliad left
jnthn afk for 20-30 mins or so 15:15
15:16 alester left, alester joined
japhb pmichaud, you are welcome to pass my nick on. 15:18
pmichaud japhb: excellent!
Tene NO SHUT UP I GET TO HELP HIM 15:20
15:23 LionMadeOfLions left
carlin sub foo {}; say foo.WHAT; 15:25
oops
rakudo: sub foo {}; say foo.WHAT
p6eval rakudo 0d4fe0: OUTPUT«List()␤»
adam-pwgsc is confused how that is anything 15:26
pmichaud it's the same as
rakudo: sub foo {}; say foo().WHAT;
p6eval rakudo 0d4fe0: OUTPUT«List()␤»
moritz_ shouldn't that be Nil? 15:27
pmichaud I'm still waiting to find out if Nil is a type. As of YAPC::NA, it wasn't. :-)
15:28 kidd_ left
masak Nil feels like a subtype to me. 15:28
adam-pwgsc So it's nothing, and nothing can't be a scalar because a scalar is something, so it needs to be a list? Why is is a list? 15:29
adam-pwgsc should read more about perl6
pmichaud adam-pwgsc: I wouldn't take Rakudo as being accurate on this point.
There are still parts of the specification regarding lists and return values that are being fleshed out, so Rakudo is in a quasi-state of "do what seems to work even if it's not accurate by the spec" 15:30
adam-pwgsc Nifty. So Rakudo.state.WHAT eq "List()"? ;) 15:31
pmichaud "Yes." :-) 15:32
jnthn oh yay 15:34
Eliminating the special case code also eliminated a bug in it.
We win 2 TODO spectests
takadonet good job jnthn!
masak jnthn++ 15:35
jnthn That means I can close another masakticket. ;-) 15:36
KyleHa++ # writing spectests and noting which RT ticket they related to next to them
KyleHa In my documentation dream world, every bug refers to a spec/requirement that it violates and to the test that shows its presence or absence. Every requirement refers to the test that demonstrates it and vice versa. In the real world, I dream a lot. 8-) 15:39
adam-pwgsc In the future, would it be possibly for me to, theoretically, use a python library but write perl code that interfaces with it? Or do I not understand Rakudo and Parrot? 15:40
masak adam-pwgsc: you understand correctly.
Tene adam-pwgsc: that's exactly right.
jnthn adam-pwgsc: That is a goal of Parrot, yes.
PerlJam adam-pwgsc: if both python and perl are running on parrot.
jnthn adam-pwgsc: In fact, there's already (not for Python, but Ruby) been some early proof of concept demonstration. 15:41
Tene Today, you can write Perl 6 code that interfaces with any of Ruby, Scheme, and TCL.
I started adding support for Python, but lost momentum and didn't finish.
jnthn See blogs.gurulabs.com/stephen/2009/05/...ading.html
adam-pwgsc That's awesome. 15:42
PerlJam yeah, Tene++
adam-pwgsc Is it automatic, or will devs have to add specific interfaces for each language?
jnthn Happily, both TCL and Ruby on Parrot I know are seeing active development too. Scheme may well also be...
Tene++ indeed.
Tene adam-pwgsc: the language just needs to support a single interface. 15:43
and all languages can use that same interface from any other.
So you just need "inter-language library loading support", instead of support for each other individual language.
pugs_svn r28047 | jnthn++ | [t/spec] Unfudge a couple of tests for Rakudo. 15:45
jnthn KyleHa: Dreams of making things even better aren't a bad thing to have. :-) 15:46
15:46 dalek left
jnthn oops 15:46
That dalek flood was me comitting too much in one go.
;-)
15:47 dalek joined
jnthn dalek: You need to speak more slowly when there's a lot of commits. :-) 15:47
Not self-exterminate.
15:48 Infinoid joined 15:49 masak left
carlin rakudo: sub foo; # wrong ofc 15:51
p6eval rakudo 0d4fe0: OUTPUT«Malformed routine definition at line 2, near "foo; # wro"␤in Main (src/gen_setting.pm:3390)␤»
carlin rakudo: say foo;
p6eval rakudo 0d4fe0: OUTPUT«Could not find non-existent sub foo␤»
carlin bah 15:52
on the command line, when executed after each other I get
maximum recursion depth exceeded
?
jnthn That's quite an achievement.
jnthn tries it
dalek kudo: 59cb023 | jnthn++ | src/parser/actions.pm:
Fix //=, ||= and &&= to only evaluate the LHS once. Fixes various quirks, including a failure exposed by recent refactors as a result of the double-evanluation.
jnthn carlin: bwaha
Can reproduce it here too. 15:53
PerlJam carlin: that's what I get too.
15:53 adhoc_ joined
jnthn carlin: File rakudobug. 15:53
15:53 cj_ left, nihiliad joined
carlin filed bug 15:59
I finally found one that wasn't already known, heh
jnthn Congrats. :-) 16:00
16:02 rfordinal joined
PerlJam carlin: I bet you can find more in the same vein. Try it again with methods and submethods. 16:02
16:02 MoC` left, nErVe joined 16:05 adhoc left 16:08 jauaor joined 16:09 nErVe left 16:10 jan_ joined
pugs_svn r28048 | jnthn++ | [t/spec] Revise tests for traits on variables, and add tests for traits on attributes. 16:20
16:20 zamolxes left 16:21 duke_leto joined
duke_leto Hi! I have a problem using rakudo, I’m afraid… I installed it from git yesterday and added the install directory to $PATH 16:22
but whenever I try to run perl6, I get the message “Null PMC access in isa()” 16:23
dalek kudo: 99f4e45 | jnthn++ | t/spectest.data:
Add S14-traits/attributes.t and S14-traits/varialbes.t to spectest.data.
duke_leto I don’t think that one is new, but I haven’t found a solution :-(
does anyone know how to fix this?
jnthn duke_leto: make install 16:24
And then use the installed version.
duke_leto okay, I'll try :-) thanks. 16:25
duke_leto is happy.
jnthn :-)
duke_leto is that a common problem? 16:26
jnthn It's a change from how things used to be, so quite a few people have been asking about it.
duke_leto How to get Rakudo Perl 6 | Rakudo.org <rakudo.org/how-to-get-rakudo> says nothing about “make install”
PerlJam duke_leto: now that there's an install target, it's becoming common :)
jnthn It was noted in the release announcement and README.
duke_leto :-/
jnthn Oh, that page wasn't updated yet?
duke_leto I thought I had read those
jnthn I've got an edit bit there...
PerlJam it does say "$make install" 16:27
duke_leto oh, yes…
seems it has been too late yesterday :-/ sorry …
jnthn no probs :-) 16:28
PerlJam: Yeah, it does already.
:-)
I figure people will just get used to it with time. Just one of those changes. :-)
PerlJam Hrm. when I try to login to rakudo.org it takes me to a blank page: rakudo.org/node?destination=node 16:29
duke_leto I heard rakudo is quite usable for some time now. Gonna start a new project in p6 :-) So probably you'll see more of me for the time being ;-)
jnthn Cool
PerlJam duke_leto: what's the project? 16:30
carlin how difficult would it be to make it say about "make install" rather than just giving a Null PMC message? 16:32
jnthn Not sure
pmichaud very.
jnthn I guess we'd not handle it where it throws
pmichaud the underlying problem is that parrot doesn't throw an exception when a .load_library fails.
jnthn But instead figure out what it's fidning as null and just chck it at startup.
duke_leto PerlJam: ticgit is borked, so I put my tickets in a plain text file. I liked the style, so I'll put something together. Not a big thing
pmichaud We *could* do a test at the beginning to make sure the library got loaded. 16:33
jnthn pmichaud: It'd not hurt to do taht.
*that
duke_leto The plan is that the system can be used without the program, too… And *still* look good ;-)
pmichaud agreed. You want to do it or me?
make it part of the :load :init in perl6.pir
right before/after doing the load_bytecode of PCT 16:34
jnthn I can do it.
Do you know what specifically it finds null, off hand?
If not, I'll go hunt it down.
16:34 Front_slash joined
pmichaud we don't need to check for null 16:34
we need to make sure that the Rakudo PMC types are available and that the opcodes are available.
trapping the individual null exception is more of a symptom than the underlying problem. 16:35
jnthn No no
I meant, try and get the Rakudo PMC type or something 16:36
And if it gives us a null, that's how we know.
pmichaud any of the pmc types should be sufficient.
jnthn Aye.
takadonet Anyone else having trouble using a class with role when both are in different files in the same directory? The class cannot seem to find the Role. 16:43
jnthn takadonet: What error are you seeing?
takadonet Unable to parse class definition at line 1, near "does role1" 16:44
in Main (src/gen_setting.pm:1548)
jnthn takadonet: You did write a use statement, yes?
takadonet ...... 16:45
jnthn If it's not that, I'd be interested to see a nopaste (or cut down nopaste if you prefer) of the code.
(or you can pass one over anyway if you like)
If you are going to use some code from a different file, you need a "use" statement to load that module.
So file MyRole.pm has like role MyRole { ... } 16:46
Then in MyClass.pm you need
use MyRole;
class MyClass does MyRole { ... }
takadonet jnthn: I forgot my use statement..... hate doing stupid mistakes....
jnthn :-)
Phew, not a Rakudo bug this time. ;-)
PerlJam "unable to parse" probably needs to read "unable to find role X"
(that might point to the problem a little better) 16:47
jnthn std: class MyClass does MyRole { } 16:48
p6eval std 28048: OUTPUT«ok 00:02 37m␤»
jnthn erm, wtf?
std: my MyRole $x
p6eval std 28048: OUTPUT«===SORRY!===␤In "my" declaration, typename MyRole must be predeclared (or marked as declarative with :: prefix) at /tmp/nsMAbYyAKZ line 1:␤------> my MyRole⏏ $x␤FAILED 00:02 37m␤»
jnthn ...that's more like it...
16:49 synth^2 is now known as synth
jnthn TimToady: std surprised me a little by not barfing in class declaration above... 16:49
TimToady currently std doesn't check anything resembling a trait 16:50
jnthn TimToady: Ah, does trait_mod:<does> not look to parse a typename?
TimToady currently parses as module_name, fwiw 16:51
jnthn ok 16:52
dalek kudo: ef035f4 | jnthn++ | perl6.pir:
Check for when we have missing dynexts at startup and emit a nice error message.
16:53
16:53 bionoid joined, bionoid is now known as Guest4616 16:55 fridim__ joined 17:04 Front_slash left 17:05 pmurias joined
reqamst moritz_: I am trying to write simple SVG tree generator for tufte 17:07
moritz_: but it's no based on the svg-plot
not
17:07 _jaldhar left 17:08 fridim_ left
adam-pwgsc How soon should we be expecting Perl6 books, do you guys think? 17:08
reqamst eee... I am pretty sure that I saw one
moritz_ reqamst: that's good. svg-plot is a quick shot and not very good architecture
reqamst oreilly.com/catalog/9780596004996/ 17:09
17:09 Front_slash joined
TimToady that's getting pretty outdated 17:09
reqamst hmm... 2003... huh, yes
adam-pwgsc Hm 17:10
reqamst google for Perl 6 Books and Media
TimToady adam-pwgsc: I think next year we will have at least one good book. :)
reqamst first match
adam-pwgsc TimToady: I'll be buying yours, that's for sure :)
17:11 Su-Shee joined
Su-Shee back. 17:11
17:11 cdarroch joined
moritz_ wb Su-Shee 17:12
TimToady fails his social skills roll again... 17:15
takadonet what did you do TimToday? 17:18
TimToady saw Su-Shee come back and fail to welcome her; fortunately, moritz_++ stepped up to do it
at least I didn't roll a critical failure :) 17:19
I always liked Teenagers From Outer Space, where you could also roll "Overdoing It"
reqamst first match 17:20
17:20 payload left
TimToady can't, you already first matched 10 minutes ago 17:20
reqamst uhm
Su-Shee is perfectly fine with trading "greetings" for "getting perl 6 done" :) 17:21
17:21 fridim__ left
TimToady is gratified to hear it, and hopes backlogging counts :) 17:21
takadonet Can you determine if an attribute has been set before like 'predicate' in Moose? 17:23
PerlJam takadonet: you mean you want to distinguish between the default undef you get from "has $.foo" and an undef that was explicitly put there? 17:24
(because otherwise, you just do a definedness check)
takadonet PerlJams: Yes
17:25 carlin left
PerlJam takadonet: I don't know of a way right off 17:26
TimToady takadonet: unfortunately that will probably depend on the representation
a C struct is unlikely to be able to tell you that, for instance
takadonet TimToday: The attribute is an int and assigning 0 17:27
TimToady a P6opaque can *probably* tell you, if it's based on a hash 17:28
17:28 molaf joined
takadonet P6opaque? 17:28
TimToady it really comes down to whether the container supports "exists" or not
the default P6 object representation
not even the object is supposed to care what's inside a P6opaque 17:29
unlike in P5, where you might know it's a hash
jnthn If you promise to always change it by the accessor, you could have an accessor that mixes in a "changed" attribute on assign or something like that. 17:30
TimToady so basically, we could reserve some way to ask the question, but we cannot guarantee that the question has an answer
jnthn erm, s/attribute/property/
TimToady yes, but a C struct probably won't support such mixins very easily
in general it's better to rely on BUILDs firing off in the right order 17:31
jnthn True.
TimToady which is why we have BUILDALL as a builtin
dalek kudo: 0a5b07e | jnthn++ | src/ (2 files):
Fix up add_method on the metaclass to be more inline with the HOW API proposed by smop.
17:52
18:15 Front_slash left 18:19 Front_slash joined 18:21 hercynium joined
hercynium perl6: @foo = <x y z>.pick(); say @foo 18:22
18:22 rindolf joined
rindolf Hi all. 18:22
p6eval elf 28048: OUTPUT«Global symbol "$a_foo" requires explicit package name at (eval 123) line 3.␤Global symbol "$a_foo" requires explicit package name at (eval 123) line 4.␤ at ./elf_h line 5881␤»
..rakudo 0d4fe0: OUTPUT«Symbol '@foo' not predeclared in <anonymous> (/tmp/dRLQjoYfVr:2)␤in Main (src/gen_setting.pm:3390)␤»
..pugs: OUTPUT«*** ␤ Unexpected " ="␤ expecting "::"␤ Variable "@foo" requires predeclaration or explicit package name␤ at /tmp/DmpH3Uila6 line 1, column 5␤»
jnthn hi rindolf
rindolf jnthn: hi.
18:22 PZt left
hercynium sorry... will try ahain in prv 18:22
rindolf jnthn: there's a jonathan__ on #perl now.
jnthn: but he seems to be a newbie.
jnthn: what's cooking?
jnthn rindolf: Ah, not me... 18:26
rindolf jnthn: you're not getting cooked? 18:27
jnthn rindolf: Well thankfully not, actually that was more in regard to the jonathan__ on #perl. ;-)
Well, been doing various Rakudo bits...
Traits stuff.
rindolf cooks and eats jnthn
Q: What's cooking? A: You are! 18:28
jnthn: ah.
Been a while since I've played with Rakudo.
jnthn wonders if he causes indigestion...
rindolf Maybe I'll convert the CPAN Math::GrahamFunction to Rakudo.
jnthn May be worth trying. :-) 18:30
Su-Shee hi rindolf
rindolf Hi Su-Shee
Su-Shee: what's up?
Su-Shee: how was your first week at your new job? 18:31
Today I finalised www.shlomifish.org/philosophy/compu...nces-wars/
jnthn rindolf: Yeah, I just saw the post about that.
(On the Israel PM list)
rindolf jnthn: ah. 18:32
jnthn I'm somehow still subscribed. :-)
rindolf jnthn: didn't know you were subscribed.
I'm subscribed to lots of PM groups.
Su-Shee rindolf: well I've been told today "well, you're new and have fresh eyes on our code, tell us what you don't like" (gladly :))
jnthn Yeah, I subscribed around the time I was coming to the Perl Workshop there.
rindolf Melbourne , Chicago, LA, Sydney, Windycity, NY, San-Fran.
Su-Shee: :-)
Not on London.pm, though. 18:33
Su-Shee rindolf: besides that: friendly, relaxed collegues, not too bad perl for "it's a decade old".
jnthn New blog post: use.perl.org/~JonathanWorthington/journal/39504
rindolf Su-Shee: ah.
jnthn rindolf: Are there any US cities you do like, 'cus you just named a lot of the ones I know. ;-) 18:34
rindolf jnthn: I recall liking San-Fransisco.
jnthn Oh wait, did you mean those are the PM groups you subscribe to?
rindolf And Charlotte wasn't too bad.
jnthn :-)
rindolf jnthn: yes.
jnthn Ah
I thought it was what you didn't like globally. ;-)
rindolf jnthn: oh, no. 18:35
jnthn: I'm also on Birmingham.pm
jnthn isn't doing very well with the whole following conversations thing today.
rindolf But it's been awfully quiet lately.
Su-Shee: ah. 18:36
Su-Shee: is it using CGI.pm? 18:37
Su-Shee: is it really 1MegaLOCs?
duke_leto uhm… I knew I’d bug you ;-) What’s wrong with this line:
my @tickets[* ; *];
perl6 says: “Statement not terminated properly at line 7, near "[* ; *];\n\n"”
Su-Shee rindolf: it's short before CGI.pm - apache 1 with mod_perl 1 ;)
rindolf: 700.000 LOC 18:38
rindolf Su-Shee: ah.
Impressive.
Su-Shee: lots of replacement for CPAN stuff?
replacements even.
jnthn duke_leto: It's probably just fine Perl 6, we just don't support that syntax in Rakudo yet.
Su-Shee rindolf: but they got their basic idea right, so it's actually really just cleaning up the code style and modernize the "we're doing web differently today"
duke_leto :-( What else can I do to get multi-dim arrays 18:39
??
jnthn duke_leto: For now, I think folks just nest arrays in arrays.
duke_leto oh, I see :-)
jnthn duke_leto: As far as I know though, @foo[1;2] and @foo[1][2] will probably give you the same thing. 18:40
When we do support the former.
rindolf How is @foo[1;2,1;3] defined?
jnthn See section Cascaded subscripting of multidimensional arrays 18:41
In S09.
And sections around it.
svn.pugscode.org/pugs/docs/Perl6/Sp...9-data.pod
Yes, S09 agrees with what I just said.
18:42 zamolxes joined
adam-pwgsc Hey Su-Shee, are you the su-shee on schreibsturm.org? 18:43
rindolf Hmmm...
Su-Shee adam-pwgsc: yes. :) 18:44
18:45 _Pb joined
adam-pwgsc Sweet! After reading your latest blog post "Pretty Perl" I was wondering if there's any real-time graphic libraries, perhaps specifically for games, that you know of? 18:45
rindolf Su-Shee: I had falafel this evening.
adam-pwgsc: there's SDL.pm 18:46
adam-pwgsc: which has recently resumed maintenance.
Su-Shee adam-pwgsc: SDL would also be my first tip.
duke_leto Uhm… and what does “No applicable candidates found to dispatch to for 'push'” want to tell me? :-(
adam-pwgsc Really! I thought it was dead. This is interesting news :)
PerlJam duke_leto: what does the code look like? 18:47
Su-Shee adam-pwgsc: pay special attention to "clutter", they look like the next "graphical toolkit to use" candidate.
duke_leto my @tickets;
push(@tickets[$currentTicket], $line);
adam-pwgsc Would it be reasonable to use cairo for real-time graphics?
PerlJam duke_leto: no candidates means you have a multi, but what you tried passing didn't match any signatures.
(I think) 18:48
Su-Shee adam-pwgsc: cairo does 2d svg vector and only that.
jnthn duke_leto: What is @tickets[$currentTicket] initialized to?
duke_leto: Oh, actually...
Su-Shee adam-pwgsc: and only generating it, not loading existing svg files.
jnthn wonders if an array is meant to auto-vivify there anyway...
duke_leto jnthn: It isn’t…
adam-pwgsc Su-Shee: Oh, I see. So I would need some other library to merge the cairo stuff with bitmaps... hrm. 18:49
jnthn duke_leto: I can't remember off-hand if that is meant to auto-vivify, maybe smebody else does...
I see now why you wanted to declare a multi-dimensional array. :-)
duke_leto :-/ :-)
well…
jnthn No doubt you can work around it with @tickets[$currentTicket] //= [] 18:50
Su-Shee adam-pwgsc: hence me recommending clutter. take a look at it, it's kind of mix of cairo, gl and more
jnthn I'm sure others have been doing stuff with nested arrays of late...
18:50 ruoso left
duke_leto what does //= [] do? 18:51
adam-pwgsc Su-Shee: It does sound very nice! Thank you
PerlJam jnthn: I would *expect* it to autovivify there, dunno if that's what supposed to happen.
18:51 rindolf left
adam-pwgsc Probably exactly what I'm looking for actually. 18:51
jnthn // is "defined or"
[] is empty array
So it's just setting it - if it's undefined - to an empty array
Then the push would work.
Not ideal, I know.
PerlJam: Can't remember where the synopses say... 18:52
Su-Shee adam-pwgsc: and if you bind it to parrot and rakudo, I'll test every single line and write documentation.
jnthn =head1 Autovivification
In S09
duke_leto thanks, jnthn :-) 18:53
adam-pwgsc Su-Shee: I'll look into clutter a bit more, but I'll let you know if I do :) Thanks!
jnthn However, I need to eat something before I'm going to be able to understand that. :-) 18:54
jnthn fried his brain sorting out traits today
18:55 [particle] left
Su-Shee and another round of perl 6 bashing.. gee, this is such a nice community and so very much helpful to bring perl forward as a whole.. 18:58
19:00 Front_slash left
_Pb hehe 19:01
my fault, i guess
Su-Shee _Pb: no. it's the same every time. 19:02
but who cares.. let the people decide.. ;) 19:04
19:06 [particle] joined 19:13 tann joined
tann rakudo: (1..5).[*-1].say 19:14
p6eval rakudo 0d4fe0: OUTPUT«5␤»
tann rakudo: (1..5).[3-*].perl.say 19:16
p6eval rakudo 0d4fe0: OUTPUT«undef␤»
duke_leto yay! So far, it works quite well :-) I’ll return in a couple of hours… good night :-) 19:19
19:19 tann left, duke_leto left 19:20 tann joined 19:22 explore joined 19:27 _Pb left 19:52 masak joined, lucs left
masak TimToady: oh, I thought I was the only one who had seen "Teenagers from Outer Space". :) 20:01
sjohnson i think i should start a Perl 6 faq 20:03
jnthn yayitsmasak
sjohnson that answers the lesser known questions.. such as, "Will a Camel Book equivalent ever be available for Perl 6?"
Su-Shee sjohnson: wasn't there already one?
sjohnson: dev.perl.org/perl6/faq.html 20:04
20:04 lionWrk is now known as LionMadeOfLions
sjohnson this is a good faq 20:07
thanks Su-Shee
i was worried most faq's would be like, "What is Perl 6?"
as the only question
masak well... what is it? :)
Su-Shee maybe we can move it over to perl6-projects.org?
sjohnson masak: Perl 6 == a big deal
20:09 jrtayloriv joined
masak I want it to be known that Tene and I are no longer the only Perl 6 game developers: twitter.com/quietfanatic/status/3456400629 20:09
reqamst I'm rather new with perl6 and I think information should be stored in one place 20:10
masak reqamst: that's a laudable ideal; not so easy in practice.
reqamst it's difficult to search every other things on different places
masak reqamst: mostly beacuse this is a very distributed kind of effort.
reqamst masak: how about storing copies or links in one place? 20:11
masak that said, it could indeed be more centralized than it is today.
20:11 takadonet left
jnthn On dev.perl.org/perl6/ - does anyone actually have access to edit that? 20:11
masak reqamst: well, that's what perl6-projects is for.
jnthn I see a decent bit links to the wiki now... 20:12
sjohnson i would be happy to manage the faq, and ask some more questions
reqamst some are outdated and it's problematic for new ones
sjohnson ... noes 20:13
reqamst but it's something cool in this all chaos :) 20:15
Su-Shee no, it's not. It's really annoying if you're trying to start something and have to collect all the bits and pieces first. (I'd like to say "klauben" here, but I don't know it in english. ;) 20:16
20:19 adam-pwgsc left
masak Su-Shee: Google Translate says 'pick out'. maybe 'select' or 'weed out' is what you're looking for? 20:19
20:19 abra left
reqamst hmmm... right. I'm strenuous, but not everyone must be 20:20
Su-Shee masak: all not really fitting, I just checked my 2 kilo paper dictionary ;) too slang-ish in this context I think.
masak shame. I was curious. :)
reqamst digg? 20:21
20:21 rindolf joined
rindolf Hi all. 20:21
Su-Shee: here?
masak phenny: tell missingthepoint (when he's around) that I've made great progress on my Text::CSV module today. all but one TODO ideas have been implemented. would love to have chat about the merge soon. 20:22
phenny masak: I'll pass that on when missingthepoint is around.
Su-Shee ah, let's see what dict.leo.org says.. "to cull" hm.
rindolf: yes.
masak Su-Shee: I think 'cull' might be it, yes.
rindolf: oh hai.
rindolf masak: hai hai.
Su-Shee: what's up?
Su-Shee rindolf: planning the weekend between p6 and chores. ;) 20:23
rindolf Su-Shee: ah.
Su-Shee: what kind of chores? 20:24
Su-Shee rindolf: weekly round-up of washing clothes due to work and getting some real vegetables to eat. 20:25
rindolf Su-Shee: ah.
Su-Shee: are the stores open?
Su-Shee rindolf: yes. :) 20:26
rindolf Su-Shee: ah.
Su-Shee and I have to bake a bread, no good bread sucks.
rindolf Su-Shee: ah. 20:27
Su-Shee and I have to read the "dev lessons" from the office.
20:30 explore left
masak you can now get gamebase via github and proto. quietfanatic++ mikecanz++ 20:31
Su-Shee it's starting to look like the need for cpan6.
masak oh, and a tip: please surprise the guy with lots of patches and pull requests. he's done a really awesome job so far, and this is one thing that deserves all the attention/help it can get from helpful volunteers. win-win. 20:32
but first and foremost, try his breakout game, written in Rakudo. I know I will. 20:33
Tene v. slow 20:34
but, impressive.
masak yah, someone should speed Rakudo/Parrot up a bit. guys, is this a known issue? :P 20:35
Tene rakudo is something like 13% faster using latest parrot and rakudo than it is on the releases, iirc. 20:36
I hear the pcc branch should speed some things up.
but still failing some tests.
sjohnson along with parrot being a VM, is it also its own programming language? 20:37
masak hm, I'm getting "libSDL not found!" when trying to start the game. MacPorts tells me 'libsdl' is installed and active. what gives?
sjohnson: no. it's a VM.
Tene masak: probably installed under a different name
sjohnson what is rakudo written in then?
Tene a great deal of it is written in Perl 6. :)
masak sjohnson: there's something called PIR. 20:38
sjohnson: it's a sort of assembly language for Parrot.
sjohnson ahh i c
masak Tene: any idea of where I might find what name it's installed under, and what to change in SDL_.pir?
reqamst sjohnson: It's nice overview perlgeek.de/blog-en/perl-6/rakudo-overview.html
masak wants to play breakout :)
Tene: oh, found the answer to the latter question, no worries. 20:39
sjohnson thanks reqamst 20:43
Su-Shee good n8 all.
20:43 Su-Shee left
masak Tene: gist.github.com/172418 -- what should I try to make SDL_.pir find libSDL? 20:44
Tene libSDL.dylib
masak gotcha.
libSDL not found! 20:45
I'll just comment in passing that I have no idea how loadlib works under the hood.
Tene :) 20:47
I'll look at it tonight.
masak gracias.
Tene taking the gf to get pieces cut out.
masak I see.
Tene Some guy talked her into it. Called himself a "doctor" or something. 20:48
dunno.
:P
masak best of luck.
Tene Thanks.
masak rakudo: [+] 20:50
p6eval rakudo 0d4fe0: OUTPUT«Syntax error at line 2, near "[+]"␤in Main (src/gen_setting.pm:3390)␤»
20:53 payload joined 20:54 alester left
reqamst it should be 'too few arguments', I think 20:56
masak reqamst: no, actually, it shouldn't be a syntax error. 20:57
std: [+]
p6eval std 28048: OUTPUT«ok 00:02 37m␤»
reqamst is it not implemented yet? 20:58
masak reqamst: in the voodoo parlance of this channel, reduce-metaops parse like listops. :)
reqamst: well yes, but Rakudo seems to parse it slightly wrong.
reqamst i see 21:02
it's in builtins/op.pir to implement 21:03
or not... I don't get rakudo source 21:06
masak reqamst: in time, you will. :)
reqamst masak: I hope :) 21:10
masak reqamst: last summer, I sometimes dove into the Rakudo source to fix errors which bothered me. sometimes I succeeded, often I failed. I learned enough to find my way around, and it wasn't terribly difficult. so I think you will, too, if you're curious/motivated enough. 21:12
reqamst There is only problem with one thing - time. 21:14
masak you mean availability of same?
reqamst yes, only one week of vacation and school will begin 21:16
masak I understand.
still, you have to eat and sleep. :)
and no-one can stop you from coding Perl 6 while you eat or sleep. :) 21:17
reqamst last year of high school, big exams etc. ;)
masak nice!
hope you enjoy it.
reqamst thanks, I will 21:18
masak ...and you can always toy with Perl 6 (or come visit us here on #perl6) when time permits. :) 21:19
21:23 hercynium left 21:24 KyleHa left 21:25 Jedai joined 21:31 masak` joined, masak left 21:34 masak` is now known as masak 21:40 Whiteknight joined 21:50 arthur-_ left 22:08 REPLeffect joined, rindolf left
jnthn wonders just how many tests we're going to gain when we can bind named parameters to positionals. 22:14
I know it's somewhere in the hundreds. :-) 22:15
masak sounds like good news. 22:17
jnthn masak: Aye.
masak: Should happen at latest in October.
22:17 nihiliad left
masak what's blocking that ability? 22:17
jnthn That's an intresting question now. :-)
What has blocked it: Parrot doesn't provide any support for it. 22:18
Where we're going is roughly...
masak yes, but what does it depend on?
ah.
jnthn 1) Parrot is going to gain a way to just give us something capture-like containing all of the args.
2) We'll do all of the unpacking and binding ourselves based off the Perl 6 signatures. 22:19
1 fits well with the work allison++ is doing at the moment becuase Parrot really is going to be doing something more capture-like.
I'm still working out how we're going to do 2.
masak nice. 22:20
jnthn My current feeling is that I'll do a 2-step refactor (that is, two medium sized refactors compared to one huge one).
Basically, Signature objects inside are going to become a bunch more low-level.
They're going to get a lot cheaper to work with, and a lot cheaper to construct.
So that'll involve re-working signature construction and the multi-dispatcher, but I'll do some compatibility interface so we can keep doing the normal binding as we do it now. 22:21
Then deal with the fallout of all of that, get it all pushed, etc.
In refacotr 2, we start using the signature objects for all binding.
In that step, we'll gain the binding of named params to positionals. 22:22
It may just naturally happen as I implement the binding algorithm anyway.
But into all of the design for this, I need to figure out the design for unpacking too. 22:23
masak huh.
jnthn Which bit was "huh"? :-)
masak just taking it all in. :) 22:24
jnthn Anyway, the goals are basically more speed and more features. :-)
masak what's 'the binding algorithm'? 22:25
jnthn Signature binding. 22:26
e.g. I have a signature :(Int $x, Num $y) and the capture \(1, 4.5). 22:27
masak ah, and when you talk about implementing that, you mean the specific part that binds nameds to positionals?
jnthn The binding algorithm is what gets us from the capture to $x and $y containing 1 and 4.5 respectively.
masak yesyes.
jnthn No, I mean the whole process, that has a signature and a capture as its inputs and a bunch of bound variables as its outputs.
Now, we basically 22:28
masak surely there must be something like that already?
jnthn 1) Have Parrot do some of the work.
22:28 zetta joined
jnthn 2) Run through the signature object - which isn't all that efficient to introspect today - and do extra fixups. 22:28
Parrot isn't all that fast at doing its bit of the work, but (2) is what really kills us. 22:29
Not least because we call another PIR routine to actually do it.
So every invocation of any signatured block = 2 Parrot level sub invocations right now.
And we've got Parrot doing a bunch of stuff to bind parameters, followed by Rakudo going and doing some extra bits.
So it's not *so* surprising we're a tad slow on calling. ;-) 22:30
22:30 Limbic_Region joined
jnthn "tad" :-) 22:30
masak looking forward to the speedups this'll bring. 22:31
jnthn I'd not like to speculate how big they'll be, but I'm hoping for a pretty decent win.
Now we do a ridiculous amount of work.
Also, I want to use something like MMD_Cache but for non-multis. 22:32
masak and MMD_Cache is...?
jnthn Oh, and re-write MMD_Cache to not construct a darn GC-able object for every single lookup we want to do it in.
*in it.
MMD_Cache is basically a type-based cache for multiple dispatch. 22:33
masak sounds like interesting code to look at.
jnthn I hacked it up in like less than an afternoon's worth of effort.
So it's stupid. 22:34
But it made a multi-dispatch benchmark I had at the time run 3-4 times faster anyway.
Anyway, I want to make it less stupid. :-)
I plan to try and cache the caches (well, share the caches) based upon an identical type tuple in a signature too... 22:35
That is, :(Int $a, Int $b) and :(Int $c, Int $d) are clearly different signatures.
masak I remember that afternoon. :) it was fun to watch at the sidelines.
jnthn But they could share a - I'm coining the term - "type acceptance cache".
masak ok.
22:36 molaf left
sjohnson rakudo: say (1, undef, 2, 3); 22:36
p6eval rakudo 0d4fe0: OUTPUT«1Use of uninitialized value␤23␤»
jnthn Because they both care about having (Int,Int)
sjohnson rakudo: say (1, undef, 2, 3).WHAT;
masak oh right, under named binding those two signatures will not actually tie.
p6eval rakudo 0d4fe0: OUTPUT«List()␤»
jnthn Anyway, as you can see, I've had some productive brainstorming.
sjohnson rakudo: say (1, undef, 2, 3).perl;
jnthn masak: Yeah.
p6eval rakudo 0d4fe0: OUTPUT«[1, undef, 2, 3]␤»
masak that's good.
sjohnson rakudo: say (1, undef, 2, 3).collapse.perl;
p6eval rakudo 0d4fe0: OUTPUT«Method 'collapse' not found for invocant of class 'List'␤»
masak rakudo: sub foo($a,,$b) { say $a; say $b }; foo(1,2) 22:37
p6eval rakudo 0d4fe0: OUTPUT«Unable to parse multisig; couldn't find final ')' at line 2, near ",,$b) { sa"␤in Main (src/gen_setting.pm:3390)␤»
masak rakudo: sub foo($a,$,$b) { say $a; say $b }; foo(1,2,3)
p6eval rakudo 0d4fe0: OUTPUT«1␤3␤»
jnthn rakudo: say (1, undef, 2, 3).grep(*.defined).perl
p6eval rakudo 0d4fe0: OUTPUT«set_integer_keyed() not implemented in class 'Sub'␤in Main (/tmp/b1SPyP1atn:2)␤» 22:38
TimToady std: sub foo($a,,$b) { say $a; say $b }; foo(1,2)
p6eval std 28048: OUTPUT«===SORRY!===␤Malformed parameter at /tmp/IwfJIGTaHH line 1:␤------> sub foo($a,⏏,$b) { say $a; say $b }; foo(1,2)␤ expecting any of:␤ name␤ parameter␤ signature␤ whitespace␤FAILED 00:03 41m␤»
jnthn std++ on the error :-)
TimToady until recently it was the same a rakudo
*as
jnthn masak: I think above in that grep example is a Rakudo bug? 22:39
TimToady: I'll try and remember to steal it. :-)
masak jnthn: looks like.
somebody should ticket that.
masak submits rakudobug
jnthn How on earth did it managed to try and keyed index into a sub?! 22:40
rakudo: say (1, undef, 2, 3).map(*.defined).perl
p6eval rakudo 0d4fe0: OUTPUT«set_integer_keyed() not implemented in class 'Sub'␤in Main (/tmp/NOjT5edFML:2)␤»
jnthn rakudo: say (1, 2, 3).grep(*.defined).perl
p6eval rakudo 0d4fe0: OUTPUT«set_integer_keyed() not implemented in class 'Sub'␤in Main (/tmp/c1oQPcGXbf:2)␤»
jnthn rakudo: say (1, 2, 3).grep(*.defined) 22:41
p6eval rakudo 0d4fe0: OUTPUT«set_integer_keyed() not implemented in class 'Sub'␤in Main (/tmp/DdlMCyn6Co:2)␤»
jnthn rakudo: say (-1, -2, -3).map(*.abs)
p6eval rakudo 0d4fe0: OUTPUT«123␤»
jnthn rakudo: say (-1, -2, -3).map(*.defined)
p6eval rakudo 0d4fe0: OUTPUT«set_integer_keyed() not implemented in class 'Sub'␤in Main (/tmp/J7VIjSRvCY:2)␤»
jnthn oh, very odd.
masak live minimizing going on.
jnthn rakudo: say (*.defined).WHAT 22:42
p6eval rakudo 0d4fe0: OUTPUT«set_integer_keyed() not implemented in class 'Sub'␤in Main (/tmp/xgOaXEzI3J:2)␤»
jnthn rakudo: *.defined
p6eval rakudo 0d4fe0: OUTPUT«set_integer_keyed() not implemented in class 'Sub'␤in Main (/tmp/l4Nl6OPSVL:2)␤»
jnthn ...epic wtf...
Well, minimized. :-)
masak indeed.
jnthn rakudo: srsly why?
p6eval rakudo 0d4fe0: OUTPUT«Statement not terminated properly at line 2, near "?"␤in Main (src/gen_setting.pm:3390)␤»
jnthn Aww.
rakudo: sub srsly { }; sub why { }; sub postfix:<?>($) { }; srsly why? 22:43
p6eval rakudo 0d4fe0: ( no output )
jnthn \o/
masak rakudo: sub srsly { }; sub why { }; sub postfix:<?>($) { say "well, don't ask ME." }; srsly why? 22:44
p6eval rakudo 0d4fe0: OUTPUT«well, don't ask ME.␤»
sjohnson TimToady: could we have a collapse method added in the List() method list? 22:45
mikehh rakudo (0a5b07e) builds on parrot r40693 - make test/make spectest (up to 28048) PASS - Ubuntu 9.04 amd64 (gcc)
masak sjohnson: could you show a use case?
sjohnson i used it in ruby quite a lot 22:46
my case:
an example would be if i am going thru @ARGV's, sometimes i undef them after using them, and after its all said and done, i like to keep track of what was left over, by doing @ARGV.collapse() hypothetically 22:47
where it would just remove the undefs and reindex the array
masak rakudo: my @a = 1, 2, 3, undef, undef, 4, 5; @a .= map: { $_ }; say @a.perl 22:48
p6eval rakudo 0d4fe0: OUTPUT«Statement not terminated properly at line 2, near ": { $_ }; "␤in Main (src/gen_setting.pm:3390)␤»
masak rakudo: my @a = 1, 2, 3, undef, undef, 4, 5; @a = @a.map: { $_ }; say @a.perl
p6eval rakudo 0d4fe0: OUTPUT«[1, 2, 3, undef, undef, 4, 5]␤»
jnthn std: my @a = 1, 2, 3, undef, undef, 4, 5; @a .= map: { $_ }; 22:49
p6eval std 28048: OUTPUT«ok 00:03 39m␤»
masak rakudo: my @a = 1, 2, 3, undef, undef, 4, 5; @a = @a.map: { .defined }; say @a.perl
p6eval rakudo 0d4fe0: OUTPUT«[Bool::True, Bool::True, Bool::True, Bool::False, Bool::False, Bool::True, Bool::True]␤»
masak rakudo: my @a = 1, 2, 3, undef, undef, 4, 5; @a = @a.grep: { .defined }; say @a.perl
p6eval rakudo 0d4fe0: OUTPUT«[1, 2, 3, 4, 5]␤»
sjohnson it'd be a nice List() addition imo 22:50
*puppy dog eyes*
masak sjohnson: there you go.
the short form @a .= grep: { .defined } should work too
in my humble opinion, grep { .defined } says it better than collapse.
before you explained it, I thought it meant something completely different. 22:51
sjohnson: what's all this eagerness for blowing up the standard libraries, by the way? :)
sjohnson just getting too excited that's all
i thought it would be a nice addition after i saw that uniq() is in there
as well as pick
etc
and because Ruby has it
and i thought it was cute
jnthn uniq and pick take quite a bit more to write compared to just having those routines available. 22:52
masak right.
I was just going to say that. :)
jnthn .grep: { .defined } is fairly short.
masak and self-explanatory.
jnthn Yeah
Well, if you know .grep of course.
masak if you don't, a big list of methods ain't gonna help you much. 22:53
jnthn half wishes we called it .filter so shed the unixism.
masak jnthn: make a module!
jnthn .grep is, I admit, very clear in meaning to those with the right background.
But I came from the wrong one. ;-) 22:54
sjohnson grep == handy
jnthn (I used Perl before *nix.)
sjohnson what if i lied and said it was my birthday wish ;)
masak sjohnson: sorry, no bribes. :) 22:55
I just noticed that it's time to go to sleep over here.
jnthn in theory has a bbq tomorrow
22:55 dukeleto left
jnthn If it doesn't rain. 22:55
masak I've had a lot of fun hacking on my Text::CSV tonight. I'll blog about it, but I want to dock with missingthepoint first.
jnthn In my experience of bbq's here in Slovakia, bbq = all day drinking nice beer with the occasional bit of cooking meat. :-)
sjohnson pats masak on the back 22:56
jnthn Rain is forecast though, so... :-/
masak: Is it pushed?
masak jnthn: yup.
reqamst have perl6 something like ruby's method_missing? I was thinking about implement it... for example by catching and parsing exceptions
masak jnthn: the README is pretty comprehensive.
reqamst tfu, has
jnthn masak: BTW, I did wonder today about whether I should make that thing I wrote as an example in my blog post today into a module.
masak reqamst: see S12.
jnthn masak: As well as expanding out that class description stuff. 22:57
masak jnthn: sure, why not?
22:57 c9s__ joined
jnthn And making that into a module that gives everything a .describe method or whatever. 22:57
masak: OK, maybe I'll do that.
masak jnthn++
jnthn has $.foo is aliased<bar baz> # could be quite useful
And nice example of what people can do with traits. 22:58
masak oh, definitely.
we need nice examples of that kind.
jnthn BTW, before you sleep...
How is u4x going?
masak jnthn: well, I've been _thinking_ a lot about it lately.
jnthn OK.
masak jnthn: I think grok has very much promise.
it's a good basis to stand on.
jnthn I'm happy to write for it, but I'd rather not having to think too much about structure stuff and so on. 22:59
masak now I need to figure out a way to motivate me (and possibly others) to put in thousands of man-hours into writing entries.
jnthn I mean, write on some of the topics that can be trickier to write on that I tend to know decently.
Stuff like traits and parametric roles and type stuff.
masak jnthn: ok, I'll see about making the entry layout obvious.
that sounds like it could be a blog post as well.
jnthn masak: That'd help.
masak g'night. 23:00
jnthn To be honest, if you can say to me, "here are 3 empty topics that you know about"
And bully enough ;-)
masak :)
jnthn I probably will fill 'em out. :-)
masak excellent.
jnthn Anyway, I won't keep you from sleep any more.
masak I'll keep that in mind.
see you around.
23:01 masak left
jnthn see you 23:01
sjohnson byes
oops too late
23:02 c9s___ joined, payload left 23:11 c9s left 23:14 c9s__ left 23:15 M_o_C joined 23:25 frew__ joined 23:27 dukeleto joined 23:31 payload joined
diakopter oopsee dayzee 23:38
23:39 pmurias left 23:40 jrtayloriv left, jrtayloriv joined 23:41 jferrero joined 23:43 xomas_ left 23:56 wayland76 left 23:57 wayland76 joined