»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by wolfe.freenode.net on 30 October 2009.
00:00 meppl left, soupdragon left 00:14 ispeak joined 00:16 ihrd joined, ihrd left 00:29 rachelBROWN left
colomon master compiles, make test is fine. 00:29
and I'll know about make spectest in an hour or so.... 00:30
00:37 rachelBROWN joined
pugs_svn r29552 | Darren_Duncan++ | S02 : Blob does Stringy, or something similar 00:38
diakopter ng: while 3 { do {} } while 1 { do {} }; 00:39
p6eval ng 2717d0: ( no output )
00:42 araujo left
diakopter std: while 3 { do {} } while 1 { do {} }; 00:45
p6eval std 29551: ===SORRY!===␤Missing semicolon or comma after block at /tmp/2ytOu0lqdb line 1:␤------> while 3 { do {} } ⏏while 1 { do {} };␤FAILED 00:01 107m␤
diakopter std: while 3 { do {} }, while 1 { do {} };
p6eval std 29551: ===SORRY!===␤Confused at /tmp/7vWdp6ekLj line 1:␤------> while 3 { do {} }⏏, while 1 { do {} };␤ expecting blockoid␤FAILED 00:01 105m␤
diakopter less than perfect, but still more than awesome, error msg 'Missing semicolon or comma' 00:46
BinGOs did I miss something earlier in that perl6 still hasn't got threading support ? 00:48
diakopter I thought pugs did? 00:49
BinGOs it may have been a Rakudo related answer then
diakopter afaik, rakudo lacks threading 00:50
BinGOs I'm not going to huff
neither does perl5
diakopter huff?
BinGOs ducks.
>:) 00:51
diakopter I don't know what you mean by 'huff'. urbandictionary doesn't help either. :)
BinGOs www.merriam-webster.com/dictionary/huff 00:52
00:53 jhuni joined
diakopter ok, even if I knew which usage you meant, I still wouldn't get your point. :( sorry; I must be being obtuse today 00:53
BinGOs I was aimming for 2a with sarcasism
however it is spelt
00:55 lumi left, lumi joined
BinGOs also perl + threads has meant pain for years. 00:58
01:04 Chillance left 01:06 ispeak left 01:09 drbean_ joined 01:10 ashizawa joined
dalek kudo/master: 726b83a | (Solomon Foster)++ | (3 files):
Get master working with Parrot HEAD. Patch from Vasily Chekalkin.
01:11
colomon Other people should probably test that to make sure it works for them, but it worked perfectly on MacBook. 01:12
on my MacBook, I mean. OS X, anyway. 01:13
01:19 jhuni left 01:31 lisppaste3 left, [particle] left, nbrown left, Patterner left, colomon left, meteorjay left, am0c left, sunnavy left, xinming left, eiro left
pugs_svn r29553 | diakopter++ | [sprixel] begin porting over the declarative portions of STD.pm. 01:43
r29553 | add lookbehind (literal string only).
r29553 | add semicolons in places for the JS.
r29553 | fix the toString methods of many of the emitters.
r29553 | add a non-backtracking xopt (optional) combinator.
01:53 lisppaste3 joined, [particle] joined, nbrown joined, Patterner joined, colomon joined, meteorjay joined, am0c joined, sunnavy joined, xinming joined, eiro joined 01:54 drbean left, jhuni joined 01:58 lumi left, lumi joined 02:08 jaldhar joined 02:21 lestrrat is now known as lest_away 02:23 orafu left 02:24 orafu joined
diakopter std: say 3 unless 02:54
p6eval std 29553: Undeclared routine:␤ 'unless' used at line 1␤ok 00:01 106m␤
diakopter rakudo: say 3 unless 02:55
p6eval rakudo 3867ff: 3␤Could not find non-existent sub unless␤in Main (file src/gen_setting.pm, line 324)␤
02:59 drbean joined 03:01 drbean_ left
diakopter nice. the emitted parser routine is 200KB so far... 03:02
03:06 drbean_ joined 03:16 lest_away is now known as lestrrat 03:17 drbean left 03:19 lumi left 03:22 lumi joined 03:26 Baggiokwok joined, e6HQtmVwr joined 03:27 Baggiokwok left
e6HQtmVwr ?DCC SEND "􏿽xFD?I􏿽xFE􏿽xAE?􏿽xF9]"-?􏿽xF1􏿽xEF􏿽xA6?2?􏿽xB4qNx􏿽xB8?y?d􏿽x8A8􏿽xA8*􏿽xC0􏿽xFE??SX?????????^?r??􏿽xB133??S??􏿽xBB8????R?C??>􏿽xE7L" 0 0 0 03:28
03:28 e6HQtmVwr left, e6HQtmVwr joined, diakopter sets mode: +b *!*=b5z5OCHa@*.lnse2.ken.bigpond.net.au, e6HQtmVwr left 03:30 diakopter sets mode: +b *!*=*@CPE-121-216-123-77.lnse2.ken.bigpond.net.au 03:31 diakopter sets mode: -b *!*=b5z5OCHa@CPE-121-216-123-77.lnse2.ken.bigpond.net.au
diakopter ipkb needs some tweaking 03:31
03:35 Mantis joined, araujo joined, diakopter sets mode: -b *!*=b5z5OCHa@*.lnse2.ken.bigpond.net.au
Mantis pastebin.com/m6707f80 03:40
im pretty new
was just wondering if it looks like bad code
all it does is print out and concatenate files 03:41
diakopter nice try bryan[c1] 03:42
Mantis ummm, last time i was on someone was using it or i lagged out and logged back in 03:43
i'm not hiding, if that's what you're implying. 03:44
diakopter I'd recommend you visit #perl (it's Perl 5, not Perl 6, you're using), except your IP is banned there.
Mantis correct, which is why i'm asking on irc.perl.org, figured i would give it a shot here - people are usually friendly. 03:49
diakopter this isn't irc.perl.org
Mantis you win 03:50
is that what you want to hear?
diakopter hmm. no? is that what you want to hear? 03:51
Mantis well if that was the case then you would've just helped me 03:52
later
04:02 rekhajos joined 04:06 sjn left
diakopter TimToady: o_O rishida.net/code/normalization/nfc-...rsuppch.js 04:06
04:09 lestrrat is now known as lest_away 04:11 lest_away is now known as lestrrat, lestrrat is now known as lest_away 04:36 gfx joined 04:41 lest_away is now known as lestrrat 04:49 lestrrat is now known as lest_away 04:51 lest_away is now known as lestrrat 04:59 nihiliad left 05:01 lestrrat is now known as lest_away
pugs_svn r29554 | diakopter++ | [sprixel] more STD porting; some refactoring 05:02
05:20 xinming_ joined, xinming left 05:24 cognominal_ joined 05:26 cognominal left 05:27 beeboo joined
beeboo I'm here because google has failed me :( Does anyone know how to give a perl program a timer, and still take input while the timer is going? Ive tried while (1) loop but thats the same as sleep apparantly, also looked into Time::HiRes and failed too 05:28
diakopter have you tried on #perl ? how did Time::HiRes fail you (did you try the setitimer)? 05:30
beeboo yes, but it seems i have to create a loop to check when the timer has completed
and the loop i create is basically doing the same thing as sleep() 05:31
while (1) { check for value of timer to be less than 1
i cant join #perl for some reason
diakopter you don't need a loop... you can use the POSIX module and its pause()
then when your alarm is triggered, that subroutine will run. 05:32
beeboo wouldnt pause() pause the whole program like sleep though?
i have an infinite loop that i want still running so my program is still taking input
diakopter yes; it sounds like your timer isn't going off
beeboo i need like...program never stops taking input, aside from the timer, BUT, when the timer reaches 0, execute sub 05:33
diakopter I've exhausted my available help; this is the Perl 6 channel; I'd try #perl on the irc.perl.org irc network, if I were you
beeboo i knew i shouldve used POE
for this damned acrobot
oh, the perl 6 channel 05:34
ill ask in ruby then, probably have better luck~ 05:35
pugs_svn r29555 | diakopter++ | [sprixel] prevent statement_list from backtracking without using out-of-band state
diakopter :)
05:35 beeboo left 05:36 lumi left, lumi joined
pugs_svn r29556 | diakopter++ | [sprixel] add a few commit()s to ease backtracking 05:45
05:47 agentzh joined 05:48 agentzh left 05:59 gfx left
pugs_svn r29557 | diakopter++ | [sprixel] learning where commit()s should and shouldn't go... :) 06:09
diakopter std: if 3 {} else{} 06:16
p6eval std 29556: ===SORRY!===␤Missing semicolon or comma after block at /tmp/TzHJip0Hlj line 1:␤------> if 3 {} ⏏else{}␤FAILED 00:01 105m␤
diakopter std: if 3 {} else {}
p6eval std 29556: ok 00:01 105m␤
diakopter std: if 3 {}else {} 06:19
p6eval std 29556: ok 00:01 105m␤
diakopter std: if 3 {}elsif 3 {} 06:20
p6eval std 29556: ok 00:01 105m␤
06:31 lest_away is now known as lestrrat 06:45 kaare joined 06:46 kaare is now known as Guest91218, Guest91218 left 06:48 kaare_ joined 07:09 cognominal_ left 07:10 cognominal_ joined 07:17 Su-Shee joined 07:32 justatheory left 07:38 lumi left, lumi joined 07:42 iblechbot joined 07:49 agentzh joined 08:02 drbean joined 08:06 agentzh left 08:22 sjn joined 08:29 Exodist left, Baggiokwok joined 08:33 nemo__ joined 08:37 nemo__ left 08:40 ashizawa left 09:03 jjore left, jjore joined, jjore left 09:04 jjore joined, jjore left, mssm joined, drbean left, jjore joined 09:06 cosimo left, jjore left, jjore joined 09:07 dakkar joined 09:13 jjore left, jjore joined
moritz_ good morning 09:30
hejki good ugt 09:34
09:36 cognominal_ left
arnsholt Moin 09:36
09:47 lisppaste3 left
frettled Mojomojo. 09:55
09:58 Baggiokwok left
mathw Morning 10:00
Su-Shee "coffee for 6, please!"
moritz_ Perl 6 - gets you a job 10:01
frettled w00t
Su-Shee moritz_: you've got one? :)
moritz_ Su-Shee: I've got an offer, yes
including a contract; I just have to sign and return it
Su-Shee moritz_: oeh.. I would define that as "I got one" :) 10:02
moritz_: and does it involve p6? :)
moritz_ Su-Shee: nope
Su-Shee: but perl-5.10.1 and Moose
frettled moritz_: ah, well, you'll save the world later! But congrats! 10:03
Su-Shee moritz_: SO TELL US DETAILS. (it's not that perl jobs are growing on trees here.. :) 10:04
10:04 lumi left, lumi joined
moritz_ Su-Shee: when I moaned about writing applications 2 weeks ago, szbalint++ told me that his company is looking for perl devs 10:04
so I wrote a quick email to his boss, he replied, and phoned me 10:05
Su-Shee moritz_: now I'm satisfied. :) nice.
"hurray, there is still another perl company" 10:06
moritz_ and then on Wednesday I traveled to Vienna for the... "interview"
but it was more a "we feed you with technical details" than a normal interview
Su-Shee moritz_: I've never had a normal interview. not once.
moritz_ KyleHa++ # smartmach tests reorganization 10:07
10:09 am0c left 10:10 Baggiokwok joined 10:17 payload left
diakopter moritz_: hi 10:28
moritz_ hi diakopter
diakopter moritz_: for the next grammar feature, should I work on in-grammar slangs (for quoting), user grammar extensions/mutations, or the OPP 10:30
note that the 2nd one could involve figuring out how to get V8 to build an edition of itself with sprixel built-in/pre-compiled 10:31
jnthn morning, #perl6
moritz_ diakopter: depends on what you want to achieve
10:32 hanekomu left, hanekomu joined
moritz_ diakopter: but I think OPP would be very useful without being too intrusive 10:32
good morning jnthn
diakopter the 2nd one would help startup time alot; it's already >1second.... but it's doing all the phases/stages _with_every_execution_. build the grammar tree; compile it to JS; eval it in JS; execute the function resulting from the eval.. the generated parser routine is nearly 300Kchars long of JS source... it takes V8 about .5s to JIT it the first time... a minimal invocation of the routine is minimum 2ms after that, and about 4kchars/second on the success 10:35
sigh. too long.
it takes V8 about .5s to JIT it the first time... a minimal invocation of the routine is minimum 2ms after that, and about 4kchars/second on the success path.
but if the JS interpreter state is compiled down to a gigantic loadable byte array in a C++ source file (which is how V8 persists its state so as to "compile JS code"), the startup time would be a lot less. like, 15ms I'm guessing. 10:36
moritz_: still, I agree with you. :) 10:37
the OPP is better in the proof-of-concept sort of way.
moritz_ jnthn: I need your opinion about using latest parrot in ng
jnthn: with bacek's two patches, it builds and runs, but there are still some spectest failures 10:38
(will nopaste in a minute)
diakopter moritz_: colomon applied a patch
to rakudo trunk I think?
jnthn moritz_: OK, depends on what new fails it introduces.
10:39 payload joined 10:40 FCO left
moritz_ jnthn: paste.lisp.org/display/93550 10:40
thing is... parrot 2.0 is going to be released tomorrow 10:41
and if they screwed something up, rakudo has a problem.
10:42 Mantis left
diakopter scrolls STD.pm again and again 10:43
jnthn moritz_: I'm more concernted about the state of master than ng in a sense.
(for the release)
moritz_: checking paste
10:43 drbean joined
jnthn moritz_: hmm. Noisy. 10:44
10:48 lumi left, lumi joined 10:49 ashizawa joined 10:52 ruoso left 10:53 mssm left 10:54 cognominal joined 11:00 payload left 11:05 mssm joined 11:10 pnate joined 11:16 literal left 11:18 avar left 11:22 lumi left, lumi joined 11:24 pnate2 left 11:25 avar joined, literal joined 11:29 rachelBROWN left 11:38 rekhajos left 11:41 bluescreen joined 11:43 bluescreen left 11:44 bluescreen joined 11:55 payload joined
colomon morning! 11:57
moritz_ oh hai colomon 11:58
colomon you found a job!!!11!!
:D
11:59 Baggiokwok left
szbalint In #perl6, job finds YOU! 12:00
;-)
colomon szbalint++
moritz_ they do :-)
12:01 gfx joined
Su-Shee well let's race for the first perl 6 class/module/component used in "the product" :) 12:01
(whatever you folks are doing with perl.. :)
moritz_ web stuff. "of course" 12:03
colomon [[[[\ 12:04
12:05 SmokeMachine joined
bbkr Su-Shee - PERL makes the world go round :) If you ask for production usage of P6 I wrote GetResponse API connector using Moritz's JSON::Tiny from CPAN and my own JSON-RPC implementation. 12:08
Not to mention I use P6 grammars everywhere where P5 regexps gets too complicated and low speed is not the issue. 12:10
12:13 gfx left 12:14 payload left, payload joined
Su-Shee we have nothing where low speed isn't an issue :/ 12:16
colomon Right now, the main thing stopping me from using Rakudo as part of my build process for $work is the hassle of building the compiler on every platform I have. (Cough, I haven't figured out how to get quick, easy development builds of Rakudo on XP and Vista yet.) 12:22
bbkr we sometimes do ad-hoc tasks in P6. lack of DB connectors is often the issue for us. 12:23
colomon (It seemed like the process might start with "Get Strawberry Perl" for all Windows platforms, which is another hassle to worry about...)
jnthn colomon: I build using ActiveState Perl and the Visual Studio compiler, but that's probably even more hassle. That said, there's no reason afaik that if you build a binary one one platform you cna't just use it on others. 12:24
*on one
Su-Shee well I would have to be able to handle a TB of data in a postgres db, 10 mio documents/messages and about 25000 users per instance.. :/ 12:25
colomon jnthn: 32-bit versus 64-bit issues, or no?
jnthn colomon: 64-bit win can run 32-bit binaries, I think?
12:25 nadim joined
colomon jnthn: I do believe you're right. maybe I'll have to have a chat with you sometime about how you get Windows builds to work. 12:26
(All my Windows boxes have ActiveState and Visual Studio.)
12:27 cognominal left
jnthn colomon: Oh. With those two I tend to find it Just Works, provided you're lucky enough to have the VS environment set up. 12:27
12:27 cognominal joined
colomon Huh. It definitely didn't just work for me when I tried it earlier this month. 12:27
Might be the problem is I'm still using 5.8 ActiveState? 12:28
12:30 patspam left 12:31 ruoso joined 12:33 alexn_org joined
jnthn colomon: Maybe, though I built with that. 12:37
colomon: Main issue is having the path and other environment vars containing the Visual Studio compiler bits though.
12:37 payload left
colomon huh. guess it can't hurt to give it another go. 12:38
maybe I just gave up in frustration with the 32-bit after realizing I didn't have git yet for that platform. :)
12:43 payload joined 12:51 mariano__ joined 12:55 bluescreen left 13:06 Baggiokwok joined, SmokeMachine left
cognominal rakudo: grammar A { token TOP { <a> }; token a { a } }; A.parse("a"); say keys %( $/ ) 13:13
p6eval rakudo 3867ff: ( no output )
cognominal it prints 'a' here 13:14
now if I says: keys $/ it prints 0
bbkr i confirm. #24 release prints 'a' 13:16
cognominal hum, I guess I understand that the %( ) is necessary 13:17
on the other hand I dont explain the 0 if I suppress it
bbkr perl6 -e 'say $/.^methods' - match object has keys method, so %() can be written as $/.keys() i think 13:18
still - it does not explain why it acts in different ways 13:19
cognominal yea, I don't have the automatism to translate perl5 functions in their perl6 method equivalent
bbkr rakudo: grammar A { token TOP { <a> }; token a { 'a' } }; A.parse("a"); say keys %( $/ ) 13:20
13:20 takadonet joined
p6eval rakudo 3867ff: ( no output ) 13:20
takadonet morning all
bbkr hmm
13:22 iblechbot left 13:23 cognominal left 13:26 cognominal joined
cognominal rakudo: say < a b >.keys 13:26
p6eval rakudo 3867ff: 01␤
cognominal now I understand the 0 13:27
13:32 mariano__ left, mariano__ joined, meteorjay left 13:33 takadonet left 13:35 SmokeMachine joined 13:39 meneldor joined 13:41 takadonet joined
meneldor guys because this new class/role syntax in p6 is not familiar to me 13:49
could you please look at my example code
hmm this pastebot doesnt paste my code 13:50
well this is my example code paste.lisp.org/display/93553 13:52
i wanna ask if im on right way understanding class/role
cognominal I think so but I am no expert 13:57
meneldor this syntax is so different from perl5 one 13:58
and is a bit dificult to me 13:59
bbkr well, you make roles if you need the same method code in two or more classes. your syntax is correct but doesn't make any advantage of roles.
mathw It might though
It opens the way for more things that do Move 14:00
cognominal does Moose has an role quiavalent? 14:01
bbkr sure
mathw oh yes
bbkr use Moose::Role
and every sub you define and every attribute you define in package that has "use moose::Role" in it can be reused in classes 14:02
now about melendor's example: roles make sense when they are reused AND use class attributes. otherwise regular package with static methods will be better. 14:04
14:07 Exodist joined
meneldor but Move and Fight are reused in this example 14:12
probably for thousands of units
14:22 am0c joined
bbkr thousand of instances of Unit class? 14:23
meneldor nope, thousands of Fights/Moves 14:25
14:26 drbean left
meneldor but otherwise why not more instances of units 14:26
one instance for every type of Unit
14:26 Baggiokwok left, Baggiokwok joined 14:27 ignacio_ joined
bbkr meneldor - implement those roles and we will check. now it's too early to judge usage of roles in your code instead of placing methods in-class or using statics. 14:31
moritz_ I have a proposal for a Perl 6 talk at the Open Source Days in March 2010 in Copenhagen 14:33
nopaste.snit.ch/19288
I'd appreciated it if you could look over it and give me some feedback before I send it
bbkr meneldor - like i said - roles make sense when they are reused AND use class attributes (your roles don't yet) AND there is no common class for all classes that use particular role (hard to tell in your case because you used roles only in one class) 14:34
meneldor bbkr: because im trying to write an example 14:36
bbkr moritz: nice, I used your JSON::Tiny and it's perfect example.
meneldor if someone can rewrite my exaple to show me how it would be 14:37
14:41 charsbar_ left, charsbar joined
bbkr rakudo: role Noises { method dies { say $.name ~ " " ~ $.sound ~ "s"}}; class Unit does Noises {has $.name, has $.sound}; Unit.new(name => "Tank", sound => "explode").dies; class Castle does Noises {has $.name, has $.sound}; Castle.new(name => "Malbork", sound => "rumble").dies 14:44
colomon moritz_: Sounds like a very interesting talk.
p6eval rakudo 3867ff: error:imcc:syntax error, unexpected ')' (')')␤ in file 'EVAL_25' line 246␤error:imcc:syntax error, unexpected ')' (')')␤ in file 'EVAL_25' line 313␤ 14:45
jnthn moritz_: Looks cool. :-) 14:46
14:47 xinming_ left, xinming joined
moritz_ ok, three "upvotes" are enough for me to actually submit it 14:48
14:49 Baggiokwok left
moritz_ :-) 14:49
meneldor bbkr: i think i catch a bit from your example here :)
i fount an article in p6 advent calendar about roles
found* 14:50
moritz_ ng: role Noises { method dies { say $.name ~ " " ~ $.sound ~ "s"}}; class Unit does Noises {has $.name, has $.sound}; Unit.new(name => "Tank", sound => "explode").dies;
p6eval ng 2717d0: error:imcc:syntax error, unexpected ')' (')')␤ in file 'EVAL_1' line 247␤Tank explodes␤
moritz_ wow
imcc syntax error first, then it still runs 14:51
that's... unusual
bbkr meneldor - you're welcome :) a lot of people overuse roles while they should create parent class with all role methods. good examples are always welcome.
meneldor yes im trying to learn p6 with such an examples 14:52
and this game-like examples are good for understanding
bbkr mortiz: yes, same on 24 rakudo release. syntax error and... output
that's ultimate DWIMness :)
meneldor whats DWIM? 14:55
bbkr Do What I Mean
14:59 PacoLinux joined
cognominal rakudo: sub b( [ $a, $b ] ) { say "$a$b" } ; b < 1 2 > 15:05
p6eval rakudo 3867ff: 12␤
15:06 iblechbot joined
cognominal sub a( { :$a, :$b } ) { say "$a$b" } ; say { a<1>, b<2> } 15:07
rakudo: sub a( { :$a, :$b } ) { say "$a$b" } ; say { a<1>, b<2> }
p6eval rakudo 3867ff: Unable to parse multisig; couldn't find final ')' at line 2, near "{ :$a, :$b"␤in Main (file <unknown>, line <unknown>)␤
cognominal hum, probably asked too much here :) 15:08
15:08 alester joined
moritz_ sub a { $:a + $:b }; say a(:a(3), :b(7)) 15:08
15:08 alester left, alester joined
cognominal rakudo: sub a( { :$a, :$b } ) { say "$a$b" } ; say a { :a<1>, :b<2> } 15:09
p6eval rakudo 3867ff: Unable to parse multisig; couldn't find final ')' at line 2, near "{ :$a, :$b"␤in Main (file <unknown>, line <unknown>)␤
cognominal anyway that's what I meant
Juerd moritz_: wrt viral commitbits: Anyone with a commit bit can... commit something! Within a project, you could create a folder that is a queue for new commit bits. To hand out a bit, touch $queuedir/email@example.org - a cronjob can poll this and remove the files as messages are sent.
cognominal wrt?
moritz_ wrt = with respect to 15:10
cognominal ETOOMUCHTLA
jnthn rakudo: sub a(%h { :$a, :$b } ) { say "$a$b" } ; say a { :a<1>, :b<2> }
Juerd Or regard
p6eval rakudo 3867ff: Unable to parse multisig; couldn't find final ')' at line 2, near "{ :$a, :$b"␤in Main (file <unknown>, line <unknown>)␤
jnthn rakudo: sub a(%h ( :$a, :$b ) ) { say "$a$b" } ; say a { :a<1>, :b<2> } 15:11
p6eval rakudo 3867ff: Unable to parse multisig; couldn't find final ')' at line 2, near "( :$a, :$b"␤in Main (file <unknown>, line <unknown>)␤
jnthn gah, what's the syntax...
Juerd cognominal: I believe the proper term is TDM TLAs :)
jnthn rakudo: sub a(%h :( :$a, :$b ) ) { say "$a$b" } ; say a { :a<1>, :b<2> }
p6eval rakudo 3867ff: traits specified as colon pairs not yet understood at line 2, near ") { say \"$"␤in Main (file src/gen_setting.pm, line 892)␤
jnthn rakudo: sub a(%h :( :$a, :$b ) ) { say "$a$b" } ; say a({ :a<1>, :b<2> })
p6eval rakudo 3867ff: traits specified as colon pairs not yet understood at line 2, near ") { say \"$"␤in Main (file src/gen_setting.pm, line 892)␤
jnthn oh
hmm
I'm sure that did work at some point. :-/
ng parses it I guess
cognominal jnthn, matching on an hash as a first argument whoud have help me to avoid conflict with stuff passed to the slurpy hash 15:12
jnthn ng: sub a( { :$a, :$b } ) { say "$a$b" }
p6eval ng 2717d0: Unable to parse blockoid, couldn't find final '}' at line 1␤current instr.: 'perl6;Regex;Cursor;FAILGOAL' pc 1664 (src/stage0/Regex-s0.pir:907)␤
jnthn ng: sub a( :( :$a, :$b ) ) { say "$a$b" }
p6eval ng 2717d0: ( no output )
jnthn There you go.
cognominal does the spec says something about that? or is that something not yet implemented
jnthn cognominal: You can do sub-signatures, yes 15:13
cognominal: master doesn't parse all the variants, but the binder is aware of such things.
See S06 for more info on syntax.
cognominal ok, nice, I have a use for that.
so :( :$a, :$b ) is the syntax :) 15:15
looks like a smiley :)
jnthn It's unhappy. UNHAPPY. 15:16
:-(
:-)
cognominal jnthn, what do you think of that :
> (grammar { token TOP { $<a>=a }}).parse("a"); say $/<a> 15:17
a
> (grammar { token TOP { $<a>= a }}).parse("a"); say $/<a>
Use of uninitialized value
15:17 ruoso left
cognominal jnthn, when do you think you can land ng? 15:18
jnthn Hmm. I'm a tad surprised about that regex difference...I had thought whitespace was not meant to be so significant... 15:19
15:20 ruoso joined
cognominal I think that's a bug. it took me a while to figure out why my grammars did not work :) 15:23
I don't know if it is still in ng so.
15:26 jhuni left 15:34 pmichaud joined
pmichaud good morning, #perl6 15:34
phenny pmichaud: 13 Jan 22:39Z <jnthn> tell pmichaud In STD and Grammar.pm, in the signature rule, we use a construct like [ ...parameter... ] ** <param_sep>. However, unfortunately it seems the regex engine doesn't capture all of the parameter seperators, but instead only the last one. Tried a couple of possible workarounds, but no joy...any thoughts? kplzthnxbai.
takadonet pmichaud: morning
15:35 payload left
jnthn morning, pmichaud 15:36
cognominal bonjour, pmichaud
pmichaud, what do you think of that ? 15:37
> (grammar { token TOP { $<a>=a }}).parse("a"); say $/<a>
[16:17:02] <cognominal> a
[16:17:02] <cognominal> > (grammar { token TOP { $<a>= a }}).parse("a"); say $/<a>
[16:17:02] <cognominal> Use of uninitialized value
moritz_ it's aliasing something which is not a capture 15:38
should be... what? an error?
jnthn Oh, I'd read it as binding whatever the next atom matched against that name... 15:39
If it is meant to just alias a capture then I guess error for both...
15:40 ssm left, pnate2 joined
cognominal $a<a>=(a) ie an explicit capture, is not necessary 15:41
15:41 ssm joined, pnate left
cognominal $a<a>=a+ works too. The problem is with a space after the = 15:41
A space before the equal is not a problem 15:42
15:42 payload joined
pmichaud cognominal: is that in the master branch? 15:44
cognominal: if so, I think it's resolved in the ng branch.
cognominal ok, happy to learn that, I will wait for ng, then
15:44 moritz_ sets mode: +o pmichaud
moritz_ cognominal: no need to learn, you can test right now 15:44
15:44 moritz_ sets mode: +o cognominal
pmichaud ng: grammar XYZ { token TOP { $<a>= a } }; XYZ.parse('a'); say $<a>; 15:45
p6eval ng 2717d0: Method 'isa' not found for invocant of class 'Undef'␤current instr.: 'perl6;Perl6;Actions;_block956' pc 145831 (src/gen/perl6-grammar.pir:29583)␤
pmichaud okay, maybe not
anyway, it'll get fixed there if it's really a bug.
15:45 kaare_ left
jnthn Don't think grammars are back in palce yet? 15:45
moritz_ pmichaud: I think the problem is the $<a>
pmichaud ng: grammar XYZ { token TOP { $<a>= a } }; XYZ.parse('a'); say $/<a>;
jnthn *plaice
p6eval ng 2717d0: Method 'isa' not found for invocant of class 'Undef'␤current instr.: 'perl6;Perl6;Actions;_block956' pc 145831 (src/gen/perl6-grammar.pir:29583)␤
jnthn ...
place, gah.
moritz_ hash accesses are a problem
pmichaud right, we don't have grammars in ng yet. I can fix that today/tomorrow
moritz_ ng: grammar XYZ { token TOP { $<a>= a } }; XYZ.parse('a'); say ?$/
p6eval ng 2717d0: Method 'isa' not found for invocant of class 'Undef'␤current instr.: 'perl6;Perl6;Actions;_block956' pc 145831 (src/gen/perl6-grammar.pir:29583)␤
jnthn
.oO( my typing is apparenlty a big fishy today )
moritz_ oh
pmichaud sorry for my unexpected absence this past week... kids were sick on thursday, and I ended up with it over the weekend :-( 15:46
jnthn pmichaud: Ugh.
pmichaud yeah
jnthn pmichaud: Though apart from getting it from the kids, snap.
pmichaud but I'm feeling *much* better today, better than in weeks
moritz_ hope they and you are bett.. great
jnthn pmichaud: I spent a disproportionate amount of my weekend in bed with something also.
Guess it's the time of year for these thingies... 15:47
cognominal we are so happy to see you back, both of you :)
15:47 lisppaste3 joined 15:49 mberends joined 15:50 avar left, Psyche^ joined 15:56 Patterner left, Psyche^ is now known as Patterner, pnate joined 16:00 KyleHa joined 16:02 literal left 16:04 pnate2 left
mathw jnthn, pmichaud: As long as you're both feeling better, we're happy. 16:04
sbp I entreated the filer of perl6 bug #72070 to come here and explain his work in perl6, but he has not taken the bait 16:05
KyleHa I saw that ticket. It didn't seem too confusing except I don't know anything about PGE. 16:07
16:07 nihiliad joined
sbp yeah, it's not the bug that deserves his attention, but his work — he made a neat little app in perl6 and I was hoping he'd describe his problems and successes in developing it 16:08
ah well
mberends After trying out the "Empathy IM Client" in Ubuntu 10.4 alpha-2, it's not as functional or configurable as plain xchat. The new Ubuntu can be recommended - cdimage.ubuntu.com/releases/lucid/ 16:15
16:16 ash_ joined 16:36 avar joined 16:40 literal joined 16:44 zykes- left 16:54 payload left 16:55 meneldor left 17:01 lumi left, lumi joined 17:03 bbkr left 17:11 pnate2 joined 17:20 pnate left 17:24 mberends left 17:25 lumi left, meteorjay joined 17:26 lumi joined 17:28 pnate joined
colomon pmichaud: Good to see you back! We've had a family-wide bug as well, I'm still on the tail-end of it. I've gotten in about 2.5 days of work out of the last ten.... 17:28
17:37 pnate2 left 17:39 smash_ joined
smash_ hello 17:39
colomon hello 17:40
17:46 lumi left, lumi joined 18:00 nihiliad left 18:02 kst` is now known as kst, nihiliad joined 18:03 ShaneC joined 18:04 justatheory joined
cognominal ng: say <a b c> : kv 18:07
p6eval ng 2717d0: Confused at line 1, near "say <a b "␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328)␤
cognominal ng: say <a b c> :kv
p6eval ng 2717d0: Confused at line 1, near "say <a b "␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328)␤ 18:08
18:08 meppl joined
cognominal ng: say <a b c>[] :kv 18:09
p6eval ng 2717d0: Confused at line 1, near "say <a b "␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328)␤
cognominal ng: say <a b c>[]:kv
p6eval ng 2717d0: Confused at line 1, near "say <a b "␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328)␤
cognominal ng: my @a=<a b c>; say @a[]:kv 18:10
p6eval ng 2717d0: Confused at line 1, near "say @a[]:"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328)␤
cognominal hum, zen, even in slices, is a long path
rakudo: my @a=<a b c>; say @a[]:kv 18:11
p6eval rakudo 3867ff: Confused at line 2, near ":kv"␤in Main (file <unknown>, line <unknown>)␤
18:13 lumi left
cognominal rakudo: say <a b c>.kv 18:13
p6eval rakudo 3867ff: 0a1b2c␤
18:13 lumi joined
cognominal yea! 18:13
18:21 dakkar left
diakopter <yawn> 18:22
18:28 ignacio_ left 18:34 Chillance joined
colomon ng: say <a b c>.kv 18:35
p6eval ng 2717d0: Method 'kv' not found for invocant of class 'List'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
18:36 jackyf joined, cotto_working left, cotto_working joined, cotto_working is now known as cotto_work 18:37 ignacio_ joined 18:41 ispeak_ joined 18:42 Exodist left 18:43 kensanata joined, Exodist joined 18:44 ash_ left 18:46 Exodist left 18:50 smash_ left 18:54 Exodist joined 18:55 Exodist left 18:57 ash_ joined, ash_ left 18:58 ash_ joined, ash_ left, ash_ joined
ash_ colomon: strange, S32-Containers doesn't say List should have .kv, it says Array should 18:59
colomon ash_: Seems like Positional should have .kv 19:00
Not that we have Positional yet (as far as I know) in any meaningful sense, but I don't see why List wouldn't have kv. 19:01
I assumed it's just something we haven't gotten to yet in ng.
ash_ well, kv is used in hashes too, so should it also go into Associative? 19:03
jnthn Agree List should have .kv 19:05
ash_ as far as i can see, Positional and Associative only add postcircumfix:<[ ]> and postcurcomfix:<{ }>
jnthn Disagree it should be in Positional and Associative.
They just imply those methods ash_++ stated, plus .of 19:06
(where .of returns the type parameter) 19:07
colomon Well, I certainly won't claim to understand Perl 6's role structures yet. 19:08
I have just been thinking of Positional as "does that List and Array thang".
jnthn colomon: Positional really means "can be indexed into with [...] 19:09
"
And Accotiative the same for for {...}
19:09 Exodist joined
colomon and just that, I take it. 19:09
jnthn Yes.
It's what the @ sigil implies
sub foo(@x) { } is a bit like sub foo(Positional $x) { } 19:10
colomon no guaranteed .elems, for instance.
or .last
jnthn Correct.
It's a pretty minimal interface.
colomon then certainly it should not have .kv, either.
19:10 Exodist left
ash_ does Positional and Associative use any function to know how its supposed to get stuff based off of [ ] and { } or do they only garuntee that someone implemented those functions? 19:11
jnthn These roles are why you can have multi foo(@x) { }, multi foo(%x) { } and multi foo($x) { } and have things work out, btw.
ash_: Just says they should be implemented.
ash_ got ya, so they are like postcircumfix:<[ ]> { ... } methods?
jnthn Yes 19:12
ash_ or !!! possibly
cool
colomon Do they guarantee [] and {} fail gracefully if the key is not present?
19:12 Exodist joined
colomon is still trying to figure out what you can do with something if all you know about it is it does []... 19:12
jnthn role Positional[::T = Object] { method postcircumfix:<[ ]>(*@indexes) { ... }; method of() { T } } # or some such
colomon: You can do [...] on it... :-) 19:13
19:13 meppl left
colomon wait, what is [...] ?! 19:13
ash_ its the range from [ to ] ?
lol /doesn't know
jnthn colomon: I mean, if you have a $x and $x does Positional, then you can do $x[...] (where the ... means "some index here"
) 19:14
e.g. if you write a sub
colomon ah, I thought it was some mysterious operator I didn't know.
jnthn sub foo(@x) { }
colomon but how do you know how many elems are in the Positional.
?
jnthn Then in there you can be certain that @x[42] will work (for some meaning of work) for example.
As it's currently defined, Positional doesn't promise you can know that.
(I'm stating the status quo rather than how things have to be, fwiw.) 19:15
colomon I'll be very interested to see if that turns out to be useful in the long run.
jnthn Maybe it should also give a promise that you implement .list...if you can be coerced to a list, then All Things Are Possible. 19:16
Dunno. I'm sure TimToady will backlog and ponder. :)
colomon if @a only guarantees Positional, I think 90% of the @a-based subs written for p6 so far are probably wrong... 19:17
jnthn Well, I think anything in Cool probably is meant to listify first anyway. 19:18
Just as other things in Cool are menat to stringify, nor numify.
(anything that is a listy thing, that is.)
colomon Sure, but the idea of having a role there is that I can implement my own class that does it, right?
jnthn Sure.
I guess the question is, "is just promising postcircumfix:<[ ]> enough, or do we need to promise at least that". 19:19
colomon So what if I say something like class Square does Positional { postcircumfix:<[ ]>($a) { $a * $a } } ?
ash_ so... if you can do MyRole ~~ Role, how do you do MyClass ~~ ???
colomon and then my @a = Square.new ? 19:20
jnthn Then I guess say @a[5] # 25 :-)
colomon sure, but for @a { .say } will completely fail.
jnthn ng: class Square does Positional { postcircumfix:<[ ]>($a) { $a * $a } }; my @a = Square.new; say @a[5] # may even work... 19:21
p6eval ng 2717d0: Unable to parse blockoid, couldn't find final '}' at line 1␤current instr.: 'perl6;Regex;Cursor;FAILGOAL' pc 1664 (src/stage0/Regex-s0.pir:907)␤
jnthn oh
ng: class Square does Positional { method postcircumfix:<[ ]>($a) { $a * $a } }; my @a = Square.new; say @a[5] # may even work...
p6eval ng 2717d0: ␤
jnthn :-/ 19:22
ash_ ng: class Square does Positional { method postcircumfix:<[ ]>($a) { $a * $a } }; my @a = Square.new; say @a[0][5]
p6eval ng 2717d0: 25␤
ash_ \o/
jnthn oh!
Yes.
:-)
colomon ah!
ng: class Square does Positional { method postcircumfix:<[ ]>($a) { $a * $a } }; my $a = Square.new; say $a[13] 19:24
p6eval ng 2717d0: 169␤
jnthn :-)
colomon ng: class Square does Positional { method postcircumfix:<[ ]>($a) { $a * $a } }; sub trouble(@a) { for @a { .say } }; trouble(Square.new); 19:25
p6eval ng 2717d0: Method '!generate' not found for invocant of class 'Square'␤current instr.: 'perl6;List;!generate' pc 11248 (src/builtins/Str.pir:215)␤
colomon exactly.
ng: class Square does Positional { method postcircumfix:<[ ]>($a) { $a * $a } }; sub trouble(@a) { say @a.WHAT }; trouble(Square.new);
p6eval ng 2717d0: Square()␤
colomon yeah. 19:26
so you can easily create a variable @a which cannot do 90% of the stuff you automatically expect a @a to do.
I think adding .list to Positional is probably pretty desirable.
jnthn Yeah, I think there's a decent case for it. 19:27
colomon I suppose you could even come up with a default lazy implementation that returns @a[0], @a[1], @a[2] etc until one of them doesn't exist.
ash_ how do you make a typed list? does my Foo @a imply like my $a of List of Foo or something? 19:33
jnthn Yeah 19:35
sub foo(Int @a) { ... } # takes anything declare as doing Positional of Int (which is Positional[Int]). 19:36
ash_ so, what if you do sub foo(@a) { ... } with the Square colomon wrote above? will Square dispatch as an @ since it does positional? 19:37
colomon ash_: that example is already in the backscroll, and it works in ng.
ash_ oh, oops, totally missed that
colomon but "works" in the sense that the resulting @a can't do most of what you normally think it would be able to do. 19:38
ash_ yeah, i see what you were getting at from reading the above stuff
thats interesting functionality... 19:39
19:40 astrojp joined 19:42 lumi left 19:43 lumi joined 19:44 alexn_org left 19:50 Exodist left 19:53 ispeak_ left 19:57 canhope joined, canhope left 20:03 ash_ left, ash_ joined 20:11 pnate2 joined 20:12 cotto_work left, cotto_work joined 20:15 ilogger2 joined
ash_ ng: say 'y' if '~/.bashrc' ~~ :r & :w; 20:26
p6eval ng 2717d0: 2 unexpected named parameters passed (r, w)␤current instr.: '&infix:<&>' pc 192693 (src/gen/core.pir:1490)␤
ash_ is that formatted right for having multiple file tests 20:27
colomon seems like it would just be :r:w ? 20:29
not that I understand this stuff yet.
ash_ oh, i just found it, perlcabal.org/syn/S32/IO.html#Other_things has them, it says you do them as junction, so :r & :w seems the be the way according to that 20:31
so, functionally will that do each function in the junction, since 'a_file' ~~ :r is really 'a_file'.:r(), and make sure none of the results were false? 20:32
20:33 FCO joined, payload joined 20:40 jan_ joined 20:47 cognominal joined, cognominal left, cognominal joined 20:54 meppl joined
colomon rakudo: say "/etc/passwd".:f 20:58
p6eval rakudo 3867ff: Multiple Dispatch: No suitable candidate found for 'concatenate_str', with signature 'PSP->P'␤in Main (file <unknown>, line <unknown>)␤
colomon rakudo: say "/etc/passwd" ~~ :f 20:59
p6eval rakudo 3867ff: 1␤
cognominal rakudo: say "a" ~~ m/ ^ [ <print> & <-[>]> ]+ $/; 21:03
p6eval rakudo 3867ff: a␤
ash_ rakudo: say '/etc/passwd'.':f'(); 21:05
p6eval rakudo 3867ff: 1␤
21:05 mariano__ joined
ash_ rakudo: say ~''.^methods; 21:05
p6eval rakudo 3867ff: sprintf Scalar Complex Str pred succ encode perl ACCEPTS WHICH ord rand truncate sort sqrt rindex asin int atanh cosh cosec grep values chars roots reverse isa ucfirst kv samecase tan log10 cos capitalize fmt bytes flip does p5chop lc asinh acotan reduce cotanh chr acotanh :d :e :f
..comb f…
ash_ rakudo: Str.HOW.add_method(Str, ':say', method ($stuff) { say self }); 'foo' ~~ :say; 21:11
p6eval rakudo 3867ff: foo␤
ash_ i see an obfuscated perl program coming out of that, :P
21:15 rachelBROWN joined
ash_ rakudo: Str.HOW.add_method(Str, ':say', method ($stuff) { say $stuff, self }); 'foo' ~~ :say('Another '); 21:16
p6eval rakudo 3867ff: Another foo␤
ash_ aww it doesn't work in ng 21:18
jnthn ash_: Yes...I know. :-(
ash_: Think I may have to do a few tweaks...
ash_ jnthn: should that be add_method(Str or add_method(Str.HOW ? 21:19
jnthn Str.^add_method(':say', ...) should work
Which is Str.HOW.add_method(Str, ':say', ...)
ash_: There's a bit of an issue with the way things are currently set up though...
ash_ got ya, so i guess thats how you'd define a method with a funny character in the name? like ':' 21:20
jnthn Yes. 21:21
It should work.
21:21 FCO left
jnthn Braino on my part that it doesn't. 21:22
I'll try and fix it tomorrow...almost out of hack-energy today.
ash_ no worries, 21:23
so... umm, is there a test suite for the meta model yet? 21:24
jnthn ash_: There's some coverage of the introspective aspects of it.
But no|little coverage of the declarative aspects. 21:25
21:25 mariano__ left
pmichaud jnthn: how far along is role support in ng at the moment? 21:27
jnthn pmichaud: Quite far. 21:29
pmichaud okay, good.
jnthn pmichaud: Rough edges
pmichaud I'm likely to do Iterator as a role then.
jnthn pmichaud: See passes in S14-role in spectest.data to get a more concrete idea.
pmichaud: OK.
pmichaud: Let me know what you run into.
pmichaud: If anything. But there's always _something_. :-)
21:31 lumi joined 21:37 cognominal left
frettled Crikey, gource (code.google.com/p/gource/) looks evil ;) 21:37
colomon Iterator as a Role, \o/ 21:38
jnthn Yeah! The Pminator is back! 21:39
\o/
21:40 cognominal joined
ash_ jnthn did you ever figure out your lingering question with role's ^ methods? 21:40
jnthn ash_: Not yet...but didn't think so much on it yet either, tbh. 21:41
sjohnson hi
jnthn Haven't really been in a thinky state for the last week.
ash_ ah, just wondering
colomon frettled++ # that's some crazy stuff there. 21:42
jnthn The "we compose them into the class" approach is where I'm kinda leaning, but I'm not sure enough that I'd want somebody to spend time on coding that up...
ash_ yeah, make sense, i'd only be worried about if you want to say override ^compose, how do you do that? or can you do that? 21:48
21:51 smash_ joined
jnthn I'm not really keen that we encourage people to override declarative aspects like this anyway, tbh. 21:53
If people want to do that stuff properly, they should probably declare their own metaclass, probably by subclassing ClassHOW or some such. 21:54
Monkey-patching the meta-class on a per-class basis is kinda evil (which is why you *can* do it, but it'd hardly be something we want to promote as a best practice. :-))
And yes, it's not real monkey-patching, but still... :-) 21:55
21:56 alester_ joined
frettled Well, if a monkey did it... *g,d&r* 21:56
jnthn ook! banana!
frettled eek-ook ook!
Perl 6 BCP: monkeying around 21:57
colomon frettled: gource is taking a long time to install... 21:58
frettled colomon: ohrly :) 21:59
21:59 patspam joined
frettled colomon: I haven't even tried yet! 21:59
colomon frettled: well, it went and said on the page that Macports has it, so it's easy for me to try. Of course, Macports installs fail about 25% of the time in my experience, and this one seems crazy complex... 22:00
frettled colomon: heh :) 22:01
I haven't installed Macports yet here, so I'm kindof stuck with the shiny video.
22:04 alester_ is now known as alester
cognominal rakudo: sub a(Pair $a) { ... } ; a(:a) 22:07
p6eval rakudo 3867ff: Nominal type check failed for parameter '$a'; expected Pair but got Int instead␤in Main (file src/gen_setting.pm, line 324)␤
cognominal ng: sub a(Pair $a) { ... } ; a(:a)
p6eval ng 2717d0: Nominal type check failed for parameter '$a'; expected Pair but got Int instead␤current instr.: '&a' pc 109 (EVAL_1:49)␤
cognominal hum...
ng: sub a(Mu $a) { ... } ; a(:a) 22:08
p6eval ng 2717d0: ( no output )
cognominal I Mu-ted it
jnthn is not aMused. 22:10
22:10 lisppaste3 joined
frettled a Mu-sed? 22:12
cognominal ng: sub a(Mu $a) { ... } ; a((:a))
p6eval ng 2717d0: ( no output )
cognominal ng: sub a(Pair $a) { ... } ; a((:a))
p6eval ng 2717d0: Nominal type check failed for parameter '$a'; expected Pair but got Str instead␤current instr.: '&a' pc 108 (EVAL_1:49)␤
cognominal I forgot the correct incantation 22:13
22:13 sjohnson sets mode: +ooo cognominal colomon ash_
jnthn rakudo: sub a(Pair $a) { ... } ; a((:a)) 22:14
p6eval rakudo 3867ff: ( no output )
jnthn cognominal: Maybe ng issue.
frettled Where _is_ masak these days, anyway? 22:15
ash_ jnthn how would one go about changing the HOW of an object? if you wanted to make your own that is 22:18
colomon frettled: yeah, the install failed. :(
frettled colomon: :( 22:19
jnthn ash_: there's an example in metamodel.pod, iirc
ash_: Typically you'd introduce a new package_declarator that has that metaclass registered against it, or modify one of the package registractions to point to your metaclass, though. 22:20
ash_: Not something we can do in Rakudo just yet, mind.
22:20 patspam left
ash_ okay, thats fair, i'll read that example again 22:21
sjohnson hi ash_ 22:22
ash_ hi sjohnson
22:26 pnate joined 22:34 pmurias joined
diakopter pmurias: hi! 22:34
ash_ is the use of 'slang' documented somewhere? i haven't seen it before
pmurias diakopter: hi
jnthn ash_: S05, iirc. 22:35
ash_ awesome, thanks
pmurias diakopter: how are things?
my linux got hurt by file system errors and i get to reinstall it (now installing mildew dependencies) 22:36
jnthn ash_: Some is S02 also. 22:37
More in S02, even, it seems.
ash_ S05 uses it in 1 place it seems
cool, thanks, i'll read up on slang 22:38
jnthn We may need to extract more details from TimToady++ at some point. :-) 22:39
ash_ i'll make a list of ??? to ask him :P
diakopter pmurias: things are great 22:43
I'm ready to start writing actions for the tiny-subset-of-STD grammar I've got
ash_ so... to add your own role-like functionality with a custom HOW you'd augment slang MAIN ? to introduce your keyword? 22:48
diakopter pmurias: actually it's not all that tiny
pmurias: and actually I should implment the OPP first.
I got distracted by Codility 22:49
(today)
ash_ you'r really just need to associate a HOW with they keyword... so, extending the Perl6::Grammar.package_declarator:sym and adding a HOW to the appiropriate new HOW.... seems like a lot if you want to simply register a callback for when your role is inherited, but then again if its the 'safe' way thats cool 22:55
s/you'r/you/
23:03 cotto_w0rk joined 23:04 mikehh joined
pmurias diakopter: i would focus more on improving the regex engine then on hand-translating STD 23:05
jnthn ash_: For callbacky things, we maybe can get away with ^foo style things. 23:07
ash_: That may be a COMPOSE block perhaps though...like other phaser-ish things.
jnthn -> rest 23:12
diakopter pmurias: why is that 23:13
(why do you recommend not hand-translating STD)
23:14 rgrau` joined 23:23 pnate2 joined 23:30 lamedura joined, lamedura left 23:32 matreshat joined
matreshat hi 23:32
i am lerning perl language for programing
actually i am becoming computer professonal thats why its part of my course 23:33
23:33 pmurias left
matreshat so ur all perl programers 23:33
or not
or hha, lammers 23:34
23:36 pnate left
diakopter er 23:36
Juerd matreshat: This is a Perl 6 channel. Perl 6 is not finished yet. You may want to consider learning Perl 5 for now, if you want something that's actually applicable in production. 23:37
matreshat: Meanwhile, please improve your spelling :)
23:48 pmurias joined
pmurias diakopter: re hand translating STD, it's lot of work, i doubt it's fun, and is annoying to maintain 23:50
diakopter: and i don't see why that's nessesary 23:52
diakopter those 3 objections aren't true for me. how is it not necessary? 23:54
(wouldn't compiling STD's parse of itself to any other language just be even slower?) 23:55
23:56 matreshat is now known as ballsac 23:57 ballsac is now known as bal1sac