»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! | Rakudo Star Released! Set by moritz_ on 1 September 2010. |
|||
masak | rakudo: multi infix:<->(Str $a, Str $b) { $a.subst($b, "") }; say "Perl 6 sucks rocks" - "sucks " | 00:00 | |
p6eval | rakudo 52f9ea: OUTPUT«Perl 6 rocks» | ||
masak | ingy: ^^ | ||
rakudo: multi infix:<->(Str $a, Str $b) { $a.subst($b, "") }; say 44 - 2 | |||
p6eval | rakudo 52f9ea: OUTPUT«42» | ||
masak | \o/ | ||
hugme: hug whoever fixed that | 00:01 | ||
hugme hugs whoever | |||
masonkramer | how does @urn.pick(*, :replace) work? What is :replace? | ||
masak | masonkramer: the combination of * and :replace will give you an infinite sequence of randomly picked elements. | 00:02 | |
masonkramer | I get what it does, but what is :replace? | ||
masak | masonkramer: :replace means that there's the option of getting an element that was already picked. | ||
masonkramer | I mean, what type of thing is it? | ||
masak | oh. | ||
masonkramer | I know what it means, but what do I call it? | ||
masak | it's called a named argument. | ||
it's sugar for :replace(Bool::True) | 00:03 | ||
masonkramer | ahhh | ||
there we go | |||
masak | sometimes, especially in the case of operators, we tend to call them "adverbs". | ||
masonkramer | I can't figure out what the difference between an operator and a method is, is there a clear definition? | 00:04 | |
you're calling .pick an operator, but it looks like a method to me | |||
masak | no, it's a method. | ||
masonkramer | ok | 00:05 | |
masak | I call things like + and ~~ and , operators. | ||
masonkramer | but those are functions with fancy syntax | ||
masak | though it's worth mentioning that in Perl 6... right. | ||
either they're subs or they're methods. | |||
postfix operators tend to be methods. | 00:06 | ||
masonkramer | a method is what? A function that has $self in socpe? | ||
masak | (though I admit I still haven't seen the real system there. I often get it wrong) | ||
masonkramer: a method is a separate thing in Perl 6. | |||
rakudo: class A { our sub foo() { say "sub foo" }; method foo { say "method foo" }; A::foo; A.new.foo | 00:07 | ||
p6eval | rakudo 52f9ea: OUTPUT«===SORRY!===Unable to parse blockoid, couldn't find final '}' at line 22» | ||
masak | rakudo: class A { our sub foo() { say "sub foo" }; method foo { say "method foo" } }; A::foo; A.new.foo | ||
p6eval | rakudo 52f9ea: OUTPUT«sub foomethod foo» | ||
masonkramer | that's not going to be confusing | ||
;) | 00:08 | ||
Just kidding, it's even more confusing in Perl 5 | |||
masak | it has been known to confuse some people, yes. | ||
I'm only starting to see the real wins with having a clean separation. | 00:09 | ||
masonkramer | what does method have in there? $ stands in for $self? | ||
masak | every method has a 'self' | ||
rakudo: class A { has $.x; method foo { say self.x } }; A.new(:x(42)).foo | 00:10 | ||
p6eval | rakudo 52f9ea: OUTPUT«42» | ||
masonkramer | rakudo: class A { method foo { say self } } | ||
p6eval | rakudo 52f9ea: ( no output ) | ||
masonkramer | rakudo: class A { method foo { say self } }; A.new.foo | ||
p6eval | rakudo 52f9ea: OUTPUT«A()<0x559fce0>» | ||
masonkramer | rakudo: class A { has $.x; method foo { say self.x } }; A.new(:x).foo | 00:11 | |
p6eval | rakudo 52f9ea: OUTPUT«1» | ||
masak | it says '1', but it should say 'True' | 00:12 | |
(according to the latest spec on enums) | |||
rakudo: class A { has $.x; method foo { say self.x.perl } }; A.new(:x).foo | |||
p6eval | rakudo 52f9ea: OUTPUT«Bool::True» | ||
masonkramer | I see .perl a lot, is that the p6 equivalent of Data::Dumper? | 00:13 | |
masak | yes. | ||
built in for your convenience. | |||
masonkramer | beautiful, beautiful | 00:14 | |
my programs already define a UNIVERSAL::Dump which dumps $self | 00:15 | ||
but I always feel bad about doing things like that, for the obvious reason of namespace pollution; it should be built in | |||
00:15
svetlins_ left
00:16
svetlins_ joined
00:17
sftp left
00:26
justatheory left,
svetlins_ left
|
|||
perigrin | masonkramer: Moose::Object implements one too | 00:42 | |
so you are at least in good company with p6 and moose. | 00:43 | ||
00:43
svetlins_ joined
|
|||
masak | perigrin: I didn't know that. cool. | 00:44 | |
masonkramer | very nifty | ||
perigrin | masak: yeah it has since forever. | ||
confess $obj->dump; is a *very* common debugging idiom in my world. | 00:45 | ||
I'm not sure what the p6 form of confess is/will be ... but $obj.perl is a nice feature :) | 00:46 | ||
masak | die | ||
00:46
svetlins_ left
|
|||
masonkramer | $obj.explode | 00:46 | |
masak | I don't know how to die in Rakudo *without* the backtrace. I want that sometimes. | 00:47 | |
gfldex | kill -9 ? | ||
perigrin | yeah ... when the masses arrive they'll do nothing but complain | ||
00:47
whiteknight left
|
|||
perigrin | it is one of the largest complaints about moose from people learning it | 00:47 | |
masak | what is? | 00:48 | |
perigrin | 300 lines of "garbage" when you trip an error | ||
catalyst can get kind of ... intense ... with it's debugging output ... if you trip something in say a runtime trait used in a controller that inherits from a controller ... | 00:49 | ||
00:53
Psyche^ joined
|
|||
tylercurtis | masak: maybe there should be a :quietly adverb for &die. | 00:54 | |
Or maybe :concisely would be more fitting. | 00:55 | ||
masak | oh, I wouldn't mind the error message as such. | ||
00:55
Psyche^ is now known as Patterner
|
|||
masak | but the stack trace is sometimes just not needed. | 00:55 | |
applications like pls are perhaps the most obvious example. | |||
right now I do &say, then &exit. | |||
or &warn, then &exit. | 00:56 | ||
or ¬e, then &exit :) | |||
gfldex | die :quietly | ||
looks about right :-> | 00:57 | ||
tylercurtis | :quietly seems more like something that would totally silence the error message, though. | ||
hugme hugs tylercurtis, good vi(m) user! | |||
00:58
hercynium left
|
|||
masak | hugme: that was a misfire, mind you. | 00:58 | |
gfldex | :q | ||
hugme hugs gfldex, good vi(m) user! | |||
gfldex | :-> | ||
perigrin | tylercurtis: no :silently would silence the error message ... | 00:59 | |
gfldex | i learned a new trick and therefor can go to bed now | ||
perigrin | :quietly would just muffle it | ||
hugme hugs perigrin, good vi(m) user! | |||
gfldex | good * #perl6 | ||
01:04
svetlins_ joined
|
|||
masak | o/ | 01:04 | |
sorear | really :concisely belongs on try, or maybe as a contextual | 01:05 | |
I hate confess; -MCarp::Always | |||
the call site is the wrong place to put knowledge of how much verbosity is needed | 01:06 | ||
01:06
svetlins_ left
|
|||
perigrin | yes | 01:06 | |
try { ... } catch :loudly { ... } | |||
masak | in the case of a die outside of any try, there wouldn't be a try to peg the adverb on. | 01:07 | |
perigrin | this is where my knowledge of exception in Perl6 and Rakudo falls down entirely | 01:08 | |
masak | perigrin: there's some info in S04. | 01:09 | |
perigrin: generally, CATCH blocks appear inside the try blocks. | |||
perigrin has to wait for November before he can multitask and look up S04 without losing SSH | 01:10 | ||
apple-- | |||
I will however check in a bit | |||
01:11
MarcoS joined
|
|||
MarcoS | Totally new here... Is it possible to install perl on Vista? | 01:11 | |
masak | there is a win32 installer for Rakudo Star somewhere. | 01:12 | |
MarcoS | OK, thanks! | 01:13 | |
01:13
justatheory joined
|
|||
masak | here. github.com/rakudo/star/downloads | 01:13 | |
the .msi file in the middle. | |||
nom & | 01:15 | ||
01:15
masak left
|
|||
MarcoS | ..getting it now... | 01:16 | |
sorear | perigrin: er... screen on the far side of ssh? | 01:17 | |
01:21
MarcoS left
01:23
svetlins_ joined
01:27
Italian_Plumber left
|
|||
Util | Instead of writing `for 0..@array.end -> $i {...}`, is there a convenience method on Array that returns a Range object equiv to `0..@array.end`? If not, should there be? | 01:41 | |
Oh, @array.keys. Doh! | |||
01:49
risou joined,
svetlins_ left
01:50
jhuni joined
|
|||
tylercurtis | Util: and if you want to get at the item at index $i, too, "for @array.kv -> $i, $v {...}" | 01:51 | |
Util | tylercurtis: Thanks! I actually showed this off at Atlanta.pm this month, and had already forgotten it. | 01:53 | |
lue | hai again o/ | 01:57 | |
02:04
araujo joined
|
|||
ingy | goto 17:00 | 02:04 | |
phenny: tell masak That's (the multi redef of <->) so cool! | 02:06 | ||
phenny | ingy: I'll pass that on when masak is around. | ||
ingy | thanks | ||
02:06
svetlins_ joined
02:13
_jaldhar left
02:15
Schwern joined
02:23
literal joined
02:27
bjarneh joined
02:36
risou left
|
|||
perigrin | sorear: yes | 02:36 | |
02:40
risou joined
02:53
risou left
03:18
Chillance left
03:25
masak joined
|
|||
masak | ingy: I know! Perl 6 <del>sucks</del> rocks! | 03:26 | |
phenny | masak: 02:06Z <ingy> tell masak That's (the multi redef of <->) so cool! | ||
03:29
tylercurtis left
|
|||
masak | today on Twitter we find something as unusual as a reformed Perl6/DNF-memer: twitter.com/batchout/status/22925307636 | 03:29 | |
and other examples of people generally getting it: twitter.com/outZider/status/22925279162 | |||
lue | I'm not a real person!? :*( | 03:34 | |
masak | lue: I sincerely believe you are. | 03:35 | |
note that e didn't write '*only* real people are playing...' | |||
or '*all* real people are playing...' | |||
he's basically just pointing out that the intersection of the two sets 'real people' and 'people who are playing a prerelease of Duke Nukem Forever' is non-empty. | 03:36 | ||
lue: oh by the way, I've been enjoying watching your progress with the <A::B> feature over the past few days. | 03:37 | ||
lue: I recognize the steps you've been going through from when I was discovering Rakudo back in 2008. | 03:38 | ||
lue | .proof(real people = duke nukem. me = !(duke nukem), ∴ me = !(real people). QED at my expense) | 03:39 | |
masak | I stand in awe at your use of the Unicode THEREFORE symbol. | 03:40 | |
I would advise, however, a slight refresher on the meaning of the assignment symbol, and its various uses. | 03:41 | ||
lue | I think all hope of me making <A::B> work was murdered when I found out there would be PIR involved on top of the parsing business. :) | 03:42 | |
masak | lue: luckily, you got pmichaud to promise to do it for you. | ||
lue | rakudo: say $_.WHAT | ||
p6eval | rakudo 52f9ea: OUTPUT«Any()» | ||
masak | lue: are you aware of the LHF exchange program over at RT? :) | 03:43 | |
03:43
_jaldhar joined
|
|||
lue | rakudo: use MONKEY_TYPING; augment Any { method oO($text) { ... }; }; .oO(I invented a useless method that behaves like a comment!) | 03:44 | |
p6eval | rakudo 52f9ea: OUTPUT«===SORRY!===In "augment" declaration, typename Any must be predeclared (or marked as declarative with :: prefix) at line 22, near " { method "» | ||
masak | lue: text still needs to be quoted. | ||
lue: you're not creating a new sublanguage, just doing a normal method signature. | 03:45 | ||
lue | Eh, it was a quick attempt to let you use .oO() thought bubbles. .oO(P6::Acme::Thoughts ?) | 03:46 | |
masak | if you want to get rid of the quotes, you need to make .oO() a quote operator. | ||
see S02 and S03. | |||
specifically, S02:3699. | 03:47 | ||
lue | I would much rather implement <A::B> myself, but I think we all learned today I wouldn't be able to do so anytime soon :) | ||
masak | lue: right. that's why I suggested the LHF exchange program. | 03:48 | |
it might be a simple way for you to show your gratitude to pmichaud++ for eventually implementing your feature. | |||
not that that need be your driving force, of course. | |||
you could do it just because it's fun! | |||
lue: rt.perl.org/rt3/Search/Results.html...'resolved' | 03:51 | ||
lue: I'll even review and apply any patch you write. | 03:52 | ||
lue | I believe I already have a search ready for LHF. Let me check | 03:53 | |
04:00
lue joined
|
|||
lue | don't you love random unexpected shutdowns of your 12-year-old laptop ? | 04:00 | |
04:04
JimmyZ joined
|
|||
JimmyZ | rakudo: say ~(my @Fibonacci := (0, 1, { * + * } ... 900)); | 04:10 | |
p6eval | rakudo 52f9ea: OUTPUT«0 1» | ||
lue | rakudo: say 10000000[1] | ||
p6eval | rakudo 52f9ea: ( no output ) | ||
JimmyZ | rakudo: say ~(my @Fibonacci := (0, 1, -> $a, $b { $a + $b } ... 900)); | 04:11 | |
p6eval | rakudo 52f9ea: OUTPUT«0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610» | ||
masak | 卓明亮! \o/ | 04:12 | |
04:12
jimi_hendrix left
|
|||
masak | 我看你读过一些博客文章。 哈哈 | 04:13 | |
lue | .oO(#perl6 reminds me almost every day to start learning japanese) |
04:14 | |
masak | for the record, those are hanzi, not kanji :) | ||
lue | the 1000000[1] error message only displays in the REPL, it's weird. | 04:15 | |
Could it be because the error mesage is invoked using fail ? | 04:18 | ||
masak | yes. | ||
JimmyZ | masak: 是啊 | 04:19 | |
masak: why { * + * } doesn't work? | 04:20 | ||
masak | JimmyZ: because it's a closure in a closure. | ||
JimmyZ: * + * already means { $^a + $^b } | |||
JimmyZ | yes | ||
masak | with the extra curly braces, you get two levels of curlies. and it doesn't work. | ||
JimmyZ | rakudo: say ~(my @Fibonacci := (0, 1, * + * ... 900)); | 04:21 | |
p6eval | rakudo 52f9ea: OUTPUT«0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610» | ||
JimmyZ | masak: my fault :0 | 04:22 | |
masak | no sweat. now you know :) | ||
JimmyZ | masak: yes, thanks ;) | 04:23 | |
\xF0 | nice | 04:24 | |
masak really likes Haskell's </> operator for FilePath. www.haskell.org/ghc/docs/6.6.1/html...A%3C%2F%3E | 04:25 | ||
maybe we should steal it. | |||
JimmyZ | rakudo: sub infix:<+-*/>($a, $b) { ( { $a + $b }, { $a - $b }, { $a * $b }, { $a / $b } ).pick(1) }; say 5+-*/2; | ||
p6eval | rakudo 52f9ea: OUTPUT«_block162» | 04:26 | |
masak | rakudo: sub infix:<+-*/>($a, $b) { ( { $a + $b }, { $a - $b }, { $a * $b }, { $a / $b } ).pick(1).() }; say 5+-*/2; | 04:27 | |
p6eval | rakudo 52f9ea: OUTPUT«10» | ||
masak | \o/ | ||
you have to call the block before you return it. | |||
s/ it// | 04:28 | ||
JimmyZ | 是的,我刚刚发现了 , 呵呵 | ||
masak | :) | ||
JimmyZ | 我刚刚在把perl6 介绍给同事 | 04:30 | |
masak | nice! what did they think? | ||
04:31
envi^home joined
|
|||
JimmyZ | 他们感觉非常强大和简单 | 04:31 | |
很有兴趣,呵呵 | |||
masak | excellent. | ||
JimmyZ | rakudo: sub infix:<+-*/>($a, $b) { ( { $a + $b }, { $a - $b }, { $a * $b }, { $a / $b } )>>.() }; say 5+-*/2; | 04:32 | |
masak | JimmyZ: you are our Chinese representative. :) | ||
p6eval | rakudo 52f9ea: OUTPUT«Tried to find null name in 'infix:<+-*/>' at line 22:/tmp/lAzbNODIkJ in main program body at line 22:/tmp/lAzbNODIkJ» | ||
JimmyZ | 呵呵 | ||
masak | 您是我们在中国内地的代表。 | ||
JimmyZ | Thanks | ||
masak | our pleasure :) | ||
JimmyZ | 这个代码有什么错误? | ||
04:33
isBEKaml joined
|
|||
masak | I don't know. It's related to the >>.(), to be sure. | 04:33 | |
JimmyZ | yes | ||
masak | but I'm not sure if it should be allowed or no. | ||
rakudo: say ( { 1 + 1 }, { 2 + 2 } )>>.() | 04:34 | ||
p6eval | rakudo 52f9ea: OUTPUT«Tried to find null name in main program body at line 22:/tmp/ogz7FsNuwd» | ||
masak | rakudo: say ( { 1 + 1 }, { 2 + 2 } )>>() | ||
p6eval | rakudo 52f9ea: OUTPUT«Tried to find null name in main program body at line 22:/tmp/ITMWg1XBhk» | ||
masak submits rakudobug | |||
JimmyZ | rakudo: say ( { 1 + 1 }, { 2 + 2 } ).>>.() | ||
p6eval | rakudo 52f9ea: OUTPUT«===SORRY!===Confused at line 22, near "say ( { 1 "» | ||
masak | not dot allowed before >> :) | 04:35 | |
JimmyZ | alpha: say ( { 1 + 1 }, { 2 + 2 } ).>>.() | ||
p6eval | alpha 30e0ed: OUTPUT«Can only transform an Object to p6opaquein Main (file src/gen_setting.pm, line 324)» | ||
JimmyZ | alpha: say ( 1,2 ).>>.say | ||
p6eval | alpha 30e0ed: OUTPUT«1211» | ||
masak | huh. | ||
JimmyZ | It's allowed | ||
by STD | |||
masak | I stand corrected. | ||
JimmyZ | std: say ( 1,2 ).>>.say | 04:36 | |
p6eval | std 32123: OUTPUT«ok 00:01 118m» | ||
masak submits rakudobug | |||
isBEKaml | std: say ( { 1 + 1 }, { 2 + 2 } )>>.() | ||
p6eval | std 32123: OUTPUT«ok 00:01 118m» | ||
isBEKaml | OHHAI,p6! | ||
JimmyZ | It's easy to fix, I had fixed it in alpha :) | 04:37 | |
masak | isBEKaml: hi! \o/ | ||
isBEKaml | masak! good release? | ||
masak | of Yapsi? yes, it was the easiest one so far, I think :) | 04:38 | |
soon I'll be ready to make someone else try to be the release manager. | |||
isBEKaml | :) | ||
Yapsi++ | |||
masak | the next big feature up ahead is definitely subs. | ||
a stepping-stone to that is first-class closures. | |||
isBEKaml | yes. I can see that. for my part, I'm looking to get some rudimentary expression eval working. | 04:39 | |
masak | when we have subs, we can start adding operators the way they're supposed to be added. | ||
I'm reluctant to add in a lot of ops before that... | |||
isBEKaml | not a lot, I said "rudimentary" | 04:40 | |
masak | :) | ||
also, I'd like to start exploring switching to STD as the frontend. | |||
JimmyZ | that's a great idea :) | ||
isBEKaml | yes, I looked at STD, then thought "we have a good syntax checker, why do we have to go all the way just to check syntax ?" | ||
masak | I meant using STD to get the parse tree. | 04:41 | |
(and better error messages, and a lot of error checking for free) | |||
isBEKaml | I don't know we can do that. Didn't check fully. That thing was huge. ;) | ||
masak | isBEKaml: there's a script called viv that'll give you a parse tree already. | 04:42 | |
isBEKaml | (almost hung up my editor until I disabled syntax and language features) | ||
masak | we can use the same mechanism viv uses to get the parse tree. | ||
the big question is which format to use to deserialize it into Yapsi. | 04:43 | ||
lue | STD spits out an AST, right? [in which case it's perfect for the beginnings of a gcc compiler] | ||
isBEKaml | the answer would be "Whatever's comfortable. " knowing full well Whatever's a term here. :) | ||
masak | lue: depends if you make a difference between "parse tree" and "AST". | ||
isBEKaml | lue: I made that mistake once. :) | 04:44 | |
masak | isBEKaml: I think optimizing for ease-of-reading on the Perl 6 side is pretty sane. it'll be a big performance hit no matter what. | ||
isBEKaml | masak: performance hit? as in, everytime we have to parse STD first? | 04:47 | |
masak | as in, there'll be a bottleneck shuttling the parse tree (in whatever form) from Perl 5 to Yapsi. | 04:48 | |
isBEKaml | hm, I see that now. | 04:49 | |
masak | rakudo: say ( 1,2 ).>>.say | ||
p6eval | rakudo 52f9ea: OUTPUT«===SORRY!===Confused at line 22, near "say ( 1,2 "» | ||
masak | especially if we read things using a grammar. | ||
isBEKaml | I already saw some slowness in blocks evaluation when doing infinite loop structure. | 04:50 | |
04:50
mfollett joined
|
|||
masak | yes, Yapsi is already a bit sluggish. | 04:50 | |
isBEKaml | it was just going on creating blocks. not just with 'loop' but with 'while', 'until' everything. Creating blocks seems to be slow. | ||
masak | huh. | 04:51 | |
there are a few linear scans in there; one in block calling and one in gotos. | |||
isBEKaml | consider this: my $a = 3; while --$a { say 42 }; loop { say 24 } | 04:52 | |
masak | I've just been to lazy to write faster variants. but a single pre-scan + hash population might speed things up considerably, now that I think about it. | ||
and it's LHF. :) | |||
isBEKaml | once that's parsed by yapsi, it'd print 42 twice and go doing the 24 prints infinitely. I'd expect it be faster from the first print. | ||
masak | yapsi: my $a = 3; while --$a { say 42 }; loop { say 24 } | 04:53 | |
p6eval | yapsi: ( no output ) | ||
masak | :/ | ||
isBEKaml | loop isn't in. | ||
masak | oh right. | ||
masak does 'while 1' locally | |||
it does about 2 iterations per second over here :) | 04:56 | ||
isBEKaml | 1 per second on my machine. | ||
masak | lue: I just saw your patch on the .[1] ticket. thing is, I think it should be a 'fail', not a 'die'. though there's something wrong with either p6eval or with Rakudo's &say function. | 04:58 | |
isBEKaml looks at viv | 05:01 | ||
lue | I'm trying to find the difference between fail and die, but google's stupid search engine won't let me :/ | 05:16 | |
masak | you might try the spec instead. | 05:17 | |
lue | Well, I tend to use the web version of the spec for convenience, and it uses google... [I'm trying straight from the repo now] | 05:18 | |
05:19
mfollett left
|
|||
lue | afk | 05:22 | |
sorear | someone said viv? | 05:25 | |
masak | yes. in the context of Yapsi. | 05:26 | |
the big question mark right now is how to marshal data from STD to Yapsi efficiently. | |||
sorear | I recommend writing a JSON::XS clone for Rakudo/Parrot | 05:27 | |
masak | does such a beast exist? | 05:28 | |
it sounds like a fine idea, fwiw. | |||
05:28
Schwern left
|
|||
sorear | masak: definitely not at the Rakudo level; the best we have is JSON::Tiny, and it uses nqp-rx so will be a lot slower than a hypothetical C version | 05:31 | |
05:32
alester joined
|
|||
masak | sorear: aye. | 05:32 | |
sorear | there might be something in the shadowy void of parrot/runtime/library | ||
masak | sorear: I will investigate this venue further. thank you. | ||
there seems to be a JSON.pir in there, yes. | |||
05:33
constant left
|
|||
masak | and it runs! | 05:33 | |
\o/ | |||
sorear | compilers/data_json is the corresponding reader | 05:34 | |
it seems to use PGE or NQP-rx, though | |||
masak | oh. | ||
sorear | <?PGE::util::die ''> # seems to be a tell | ||
masak | aye, it uses PGE. | 05:35 | |
sorear | how is PGE for speed? | ||
masak | pretty OK. | 05:36 | |
05:36
constant joined
|
|||
masak | might be a premature optimization to write something in PIR and expect it to be faster than PGE. | 05:36 | |
05:36
constant left,
constant joined
|
|||
masak | I doubt one'd get many percent speedup from that. | 05:36 | |
sorear | does PGE even work? | 05:37 | |
I don't recall it having been touched since the last two complete Parrot compatibility breaks | 05:38 | ||
masak | I don't know. haven't tried to run it for a while. | ||
but I'd expect it to, given that it has tests. | |||
sorear | (symmetric PCC and immutable strings) | ||
masak | nod | ||
masak tries to run the PGE tests | |||
make library_tests, apparently | 05:39 | ||
05:39
azert0x left
|
|||
masak | yep, tests still pass. | 05:39 | |
05:40
patch left
05:41
patch joined
05:55
cotto left
05:56
JimmyZ left
|
|||
masak | perl6: say substr("camel", 0|1, 2&3) | 06:07 | |
p6eval | rakudo 52f9ea: OUTPUT«all(any("ca", "am"), any("cam", "ame"))» | ||
..pugs: OUTPUT«all(VJunc any(VRef <Scalar::Proxy:0x2abd72eb26f1>,VRef <Scalar::Proxy:0x2abd72eb85f9>),VJunc any(VRef <Scalar::Proxy:0x2abd72eb6131>,VRef <Scalar::Proxy:0x2abd72eb9721>))» | |||
masak | ♥ | ||
Rakudo++ | 06:08 | ||
06:08
alester left
06:20
Ross joined
06:28
Alias_ left
|
|||
isBEKaml | masak: PGE? | 06:32 | |
I'd be rather happy if I don't have to install a lot of deps for viv. ;) | |||
masak | isBEKaml: it's the previous-generation grammar engine for Rakudo. it ships with Parrot. | 06:33 | |
and no, I don't think we'll be using PGE. that feels a bit silly :) | |||
isBEKaml | why? outdated grammar rules? :) | 06:34 | |
masak | outdated grammar engine. | 06:35 | |
but I'd much rather employ something like JSON::XS, like sorear said. | |||
isBEKaml | the json.pbc in parrot? | 06:36 | |
sorear | the json.pbc in parrot is a json emitter, not a json reader | 06:37 | |
the data_json.pbc in parrot's languages folder is a PGE-based json reader | |||
isBEKaml | I see. | ||
06:45
xinming_ is now known as xinming
06:50
molaf joined
07:04
masak left
07:12
isBEKaml left
07:35
chips joined
07:37
chips left
07:38
Elvin joined
|
|||
Elvin | anyone have Perl free software? | 07:38 | |
07:38
Elvin left
07:40
xinming left,
xinming joined,
Su-Shee joined
|
|||
Su-Shee | good morning. | 07:40 | |
araujo | perl ... free software ... | ||
07:55
justatheory left
07:56
Guest23195 joined
07:59
Ross left
08:00
svetlins_ left
08:01
tadzik joined
|
|||
tadzik | oh hai | 08:01 | |
08:08
karb joined,
wamba joined
08:12
svetlins_ joined
08:13
snearch joined
08:23
Mowah joined
08:33
Ross joined
|
|||
Quadrescence | anyone have Perl free software? | 08:38 | |
sorear | Parse error | 08:40 | |
tadzik | what do you mean? | ||
you mean do we have free software in Perl? Sure thing | |||
08:45
svetlins_ left
|
|||
_sri | in soviet russia Perl software frees you! | 08:45 | |
sorear | what is correct test form for when you commit something on purpose that breaks half the testsuite? | 08:50 | |
08:50
total joined
|
|||
total | how to learn perl 6 ? | 08:51 | |
sorear | the book would not be a bad start | ||
github.com/downloads/perl6/book/2010.08.a4.pdf | 08:52 | ||
total | thx for reply...but i cant find any book abt perl6 | ||
08:53
gfx joined
|
|||
total | dowloading | 08:53 | |
... | |||
thx... | |||
08:53
Siddy is now known as Trashlord
|
|||
total | the best os for learning perl 6 is ? | 08:53 | |
i m totally noobie... | |||
linux? | 08:54 | ||
sorear | you should not let language dictate your choice of OS | ||
unless you're completely new to computers, in which case, why are you diving right into programming? | |||
total | i m really interest in computing.. | 08:55 | |
but i dunno where to start ... | |||
i m a student in civil...so.... | 08:56 | ||
as hobby as weel... | |||
sorear | people in this channel use Linux, Mac OS X, and Windows | ||
at least | |||
so it's probably no object | |||
moritz_ | good morning | ||
sorear | good morning moritz_ | 08:57 | |
total | hi.. | ||
i using windows... | |||
i had install the rakudo star... | |||
its sth like terminal..??? | 08:58 | ||
right ? | |||
moritz_ | well, you have to open a terminal window to run the perl6.exe binary | 08:59 | |
total | i dowload from github...github.com/rakudo/star/downloads/ | 09:01 | |
the msi version... | |||
09:01
aloha left
09:02
svetlins_ joined,
bacek left
09:04
total left
09:08
ruiwk joined
|
|||
tadzik | yay newcomers | 09:08 | |
ruiwk | hi | ||
i am new learner in programming world | 09:09 | ||
tadzik | yeah, we can recognize you :) | ||
ruiwk | perl 6 is the 1st languague i hope to learn .. | ||
ha | |||
tadzik | ruiwk: as you can probably see, the Rakudo Star msi is not really up to date, but I doubt it would matter to you as to the newcomer | 09:10 | |
ruiwk | will it better to use linux to learn perl6 ? | 09:12 | |
tadzik | In my humble opinion yes, but as sorear says, language shouldn't dictate your working environment | ||
moritz_ | most developers work on linux, you might get help easier | ||
(at least in here) | 09:13 | ||
ruiwk | thx very much ...i will install 1 in the virtualbox.. | ||
u all always in this chat room ? | 09:14 | ||
tadzik | usually | ||
ruiwk | i m from malaysia..nice to meet u all. | 09:15 | |
sorear | it's a pretty nice international group here | ||
there's always someone here, time zones and all | |||
tadzik | people from various timezones, always someone to talk to :) | ||
sorear US | |||
ruiwk | u all student ? | 09:16 | |
sorear | many of us are, but I think it's a coincidence | ||
programmers tend to be young, and fond of learning | 09:17 | ||
karb | to make a positional parameter optional $pos?, to make a named parameter mandatory :$named! .. Is there a reason to use two different character (?, !) for similar markups | ||
dalek | ecza: cd6e7c1 | sorear++ | / (2 files): A couple more steps toward nrx |
||
ecza: 76cd7d9 | sorear++ | lib/ (2 files): [nrx] Kernel-level code for initial nrx |
|||
ecza: 568bfa6 | sorear++ | / (3 files): [nrx] fix non-regex build aspects (TESTS NOW BROKEN) |
|||
sorear | TimToady++ is most definitely not a student... | ||
karb: unambiguity; ! and ? always force a specific meaning | 09:19 | ||
ruiwk | *sorear how long u been learning programming ? | 09:22 | |
09:23
M_o_C joined
|
|||
ruiwk | & wat abt mac osx system ? | 09:23 | |
09:23
aloha joined,
bacek joined
|
|||
sorear | ruiwk: 12 years, give or take | 09:24 | |
09:24
Trashlord left
|
|||
sorear | mac osx is used by a couple people here, definitely not as many as windows or linux though | 09:25 | |
sorear leaves for the night | |||
09:26
Trashlord joined
|
|||
ruiwk | k...i dowloading the ubuntu ... | 09:26 | |
thx for all yo information & opinions ya... | 09:27 | ||
karb | sorear: ! stands for NOT. And ? stands for boolean context. With this viewpoint :$named! nots the optionality, but I dont seem to find $pos? intuitive. Maybe I'll get used to it :) | 09:31 | |
moritz_ | karb: beware of context. Sometimes a question mark is just a question mark | 09:32 | |
in particular your quoted meanings of ? and ! only apply when they stand in front of something | 09:33 | ||
karb | got it. but would $pos! not be more consistent? | 09:34 | |
moritz_ | if you understand it as human-language punctuation after a word, ? for optional and ! for mandatory make much more sense | 09:35 | |
ruiwk | moritz: hi | 09:37 | |
karb | i see it now | ||
09:38
dual left
|
|||
moritz_ gone for breakfast | 09:40 | ||
09:44
snearch left
09:53
cibs joined
|
|||
tadzik | perl6advent.wordpress.com/2009/12/21/ why doesn't this code run properly in Rakudo? | 10:02 | |
reminds me of my Config::INI grammar fsckup over some Rakudo update | 10:03 | ||
10:06
gfx left
|
|||
x3nU | ą | 10:13 | |
; | |||
oops | |||
10:17
karb left
10:21
envi^home left
10:23
dual joined
10:27
rgrau_ joined,
Trashlord left
10:28
Trashlord joined
|
|||
smash | mornin' everyone | 10:29 | |
10:29
M_o_C left,
M_o_C joined
|
|||
tadzik | hello | 10:30 | |
10:38
snearch joined
10:45
zulon joined
10:48
rgrau_ left
|
|||
ruiwk | hi...tadzik | 10:54 | |
tadzik | hi | 10:57 | |
10:59
M_o_C left
11:03
wamba left
|
|||
ruiwk | sorry.. | 11:03 | |
how did u start to learn perl ? | |||
tadzik | Perl 5 or Perl 6? :) | 11:05 | |
ruiwk | after done googleing... | ||
state tat...perl 5 is different from perl 6... | 11:06 | ||
tadzik | I see... no reason... for so many... dots | ||
ruiwk | i just start learning...ha..my idol is geohotz... | 11:10 | |
i m so curious,,,why by doing some tweaks...the thing totally change..so interesting | 11:11 | ||
11:11
drbean joined
11:14
meppl joined
11:23
smash left
11:42
TiMBuS joined
11:44
masonkramer left,
masonkramer joined
11:54
zulon left
12:00
Axius joined,
araujo left
12:01
araujo joined
12:11
jhuni left
12:13
whiteknight joined
12:16
envi^home joined
12:21
Axius left
12:23
jimi_hendrix joined
12:29
isBEKaml joined
|
|||
Juerd | I'm killing svn.pugscode.org | 12:41 | |
Whoever wants to look at it to make it behave and then maintain it, can perhaps get it back. | |||
12:41
ruiwk left
12:45
ruiwk joined
|
|||
ruiwk | how to install rakudo in ubuntu ... | 12:48 | |
isBEKaml | Juerd: The pugs repo is now fully migrated to git? Must have been some 3 days. | 12:49 | |
Juerd | isBEKaml: Sorry, I don't know. | ||
isBEKaml: I do know that svn was taking feather1's load over 20 again. | |||
ruiwk | nvm... | 12:50 | |
thx for reply | |||
Juerd | ruiwk: :) | ||
ruiwk: rakudo.org/how-to-get-rakudo does explain how to build from source | |||
isBEKaml | Juerd: yeah, I saw that a few days but never knew that svn took that much load on the server. | 12:51 | |
s/days/& ago/ | |||
Juerd | isBEKaml: It's just horribly broken in some way, and nobody wants to figure out exactly how. | ||
isBEKaml | Juerd: 20 is just pure agony for an svn admin server. | 12:52 | |
ruiwk | i had dowload it... | ||
isBEKaml | Juerd: I'd have liked to help but I'm clueless about svn admin servers. Sorry. :/ | ||
ruiwk | try d but dunno how to built from source...i m newbie...sorry | 12:53 | |
Juerd | ruiwk: How far did you get? | ||
isBEKaml | ruiwk: have you untarred the downloaded tar file? | ||
ruiwk | ya.. | 12:54 | |
and follow the readme.. | |||
isBEKaml | ruiwk: did you download just rakudo or the parrot sources too? I mean, did you download Rakudo Star? | ||
ruiwk | i dowload from here | 12:55 | |
github.com/rakudo/star/downloads/ | |||
12:55
mberends joined
|
|||
Juerd | Hoi mberends | 12:55 | |
ruiwk | the tar.gz file | ||
mberends | hoi Juerd: I'm able to come to amsterdam.pm on Tuesday! :-) | 12:56 | |
Juerd | Yay! | ||
Hm, killing SVN and SVNWeb made feather1 absolutely idle | 12:57 | ||
It has 2 GB unused RAM now. | |||
(of 2.5) | |||
isBEKaml | ruiwk: what do you have right now? | 13:00 | |
ruiwk: you can just follow the README. that says everything you need to do to properly build your Rakudo Star distribution. | |||
ruiwk | i had done the aptitude install | 13:01 | |
isBEKaml | ruiwk: Especially the section "Building Rakudo Star". Just type those instructions, you should be done. | ||
ruiwk | i shoud cd to the file 1st ? | ||
isBEKaml | ruiwk: You have done the aptitude install? Well, that's good. But you don't exactly need libicu-dev package. Just go the directory where you have untarred the Rakudo Star package (cd command) | 13:02 | |
and type those commands in the README. | |||
ruiwk | thx...i try again.. | ||
isBEKaml | ruiwk: You... are... welcome. (You don't need to type out those dots. You got sticky keys on your keyboard? ) :) | 13:04 | |
ruiwk | wow its running alrd thx very much | 13:05 | |
ha sorry | |||
isBEKaml | ruiwk: that's good. Welcome to perl6! and enjoy your time programming in it. | ||
ruiwk | the dots is typing habbit | ||
thx perl 6 the 1st programming lg i wanna learn after googleing | 13:06 | ||
isBEKaml | ruiwk: Not a problem. Just try to shake out that habit. Some find it pretty annoying on a text only screen. ;) | 13:07 | |
ruiwk | ok | ||
isBEKaml:thx | 13:08 | ||
isBEKaml | ruiwk++ (Newbie initiate) | 13:09 | |
13:09
orafu left,
orafu joined
13:11
karb joined
13:32
araujo left
13:33
araujo joined
13:36
bjarneh left
13:38
Axius joined
13:43
zby_home joined
13:54
risou joined
14:02
snearch left
14:09
karb left
|
|||
isBEKaml | phenny: tell masak yapsi fails on recent version of rakudo though it works on older 2010.07 and .08 versions. -->bin/yapsi -e 'say 42' | 14:18 | |
phenny | isBEKaml: I'll pass that on when masak is around. | ||
isBEKaml | Could not find sub &Nil | ||
tadzik | ruiwk: my friend has made a ppa for R* on Ubuntu, if you're interested | 14:19 | |
14:19
hans__ joined
|
|||
tadzik | alright, who's the grammar wizard around? | 14:20 | |
ruiwk | sorry wats tat ? | ||
moritz_ | isBEKaml: that means there's an old .pir file somewhere | ||
tadzik: usually pmichaud. I'm more of an apprentice :-) | |||
isBEKaml | moritz_: I built the new yapsi and removed any old .pir from PERL6LIB. | ||
tadzik | moritz_: I finally decided to learn grammars and actions, and see a strange issue | ||
moritz_ | tadzik: do tell | ||
did you read the book section? | 14:21 | ||
tadzik | pb.rbfh.de/rFFzXgaBMXVn | ||
not yet | |||
moritz_ | well, do it | ||
tadzik | so, this is day 21 from the Perl Advent Calendar | ||
moritz_ | it's not that long, and we wrote it for a reason :-) | ||
tadzik | hold on, take a look at this | ||
moritz_ takes a look | 14:22 | ||
tadzik | now it works, for I added \n to a header token | ||
after removing... | |||
isBEKaml | moritz_: the funny thing is, it works fine if I just change the shebang to point to earlier version of Rakudo. | ||
moritz_: the shebang in bin/yapsi | |||
tadzik | it no longer parses | ||
and the Advent version does not work due to it (there is no \n there) | |||
pmichaud | good morning, #perl6 | 14:23 | |
tadzik | now the thing is Q {} has the newline at the beginning. But adding \n on the top of, well, TOP, does not make it work | ||
good morning pmichaud | |||
moritz_ | it also probably needs | ||
tadzik | oh well, it does | ||
moritz_ | for $match<question>.flat | ||
tadzik | so the advent version needs fixes probably | 14:24 | |
moritz_ | tadzik: do you have a wordpress account? | ||
Juerd | juerd.nl/i/89a1f74d761c1dafe4807a12dff9d91b.png # The effect of killing svn on feather1 | ||
tadzik | moritz_: yep | ||
Juerd | That was memory. Here's load avg: juerd.nl/i/6cda7e2f6f4e940a9c2313c5c4c37296.png | ||
moritz_ | wow | 14:25 | |
tadzik | yes, works after those changes | ||
moritz_ | tadzik: what's your nickname on wordpress? | ||
Juerd | And the cleaning up of the gigabytes of tempfiles it left behind: juerd.nl/i/a19681e1e223cd10c285482dfc9398b0.png | ||
tadzik | moritz_: ttjjss I think. At least that's the blag url of mine | ||
tadzik checks | |||
moritz_ | what's the last svn revision of the pugs repo? | 14:26 | |
14:27
Axius left
|
|||
isBEKaml thinks Juerd is probably the most happiest guy here of all: "cleaning up of the gigabytes of tempfiles" :) | 14:28 | ||
tadzik | moritz_: yes, it's ttjjss | ||
Juerd | isBEKaml: I'm not happy about this thing at all | 14:29 | |
isBEKaml | Juerd: your words I quoted seemed to convey that impression. :/ | 14:30 | |
Juerd | I feel bad about disabling a useful service, and am using these charts to explain why I did feel the need to end it. | 14:31 | |
moritz_ | Juerd: can you re-enable it for a minute so that I can do a last git-svn rebase, and then disable again? | ||
Juerd | moritz_: Sure | ||
moritz_ | then the git copy can preserve full information | 14:32 | |
Juerd | moritz_: Could you do it yourself btw? You have sudo access. | ||
moritz_ | Juerd: when you tell me what you did to disable it... | ||
Juerd | moritz_: I removed a symlink | ||
moritz_: a2ensite svn.pugscode.org should enable it. | |||
pmichaud | svn? feather? | 14:33 | |
moritz_ | Util: and how do I disable it again? | ||
pmichaud feels like he's missed an important story/event. | |||
Juerd | pmichaud: Dead. | ||
moritz_ | sorry, meant Juerd | ||
Juerd | moritz_: a2dissite | ||
moritz_ | Juerd: thank you | 14:34 | |
14:34
risou_ joined
|
|||
Juerd | moritz_: Now that you know how to do it, you can do it again in case you need it | 14:34 | |
pmichaud | are we moving pugs to github, then? | 14:35 | |
moritz_ | yes | ||
I'm on it | |||
pmichaud | are you getting a copy with full history, I hope? | ||
moritz_ | yes | ||
pmichaud | okay. having done two migrations of svn to github, let me know if you need any help :-) | 14:36 | |
tadzik | moritz_: could you C-f Question::Answer on perl6advent.wordpress.com/2009/12/21/ ? It dies while parsing on the current Rakudo, and I wonder what's wrong with this one | ||
In "has" declaration, typename Question::Answer must be predeclared (or marked as declarative with :: prefix) at line 41, near " @.answers" | |||
14:36
risou left
|
|||
tadzik | ↑ that's a == SORRY == | 14:36 | |
moritz_ | pmichaud: since I already have a git-svn mirror, I'll just push that one | ||
pmichaud | moritz_: was that a full clone, or one that was created using the -r option? | 14:37 | |
moritz_ | pmichaud: that was full | ||
pmichaud | okay, excellent. | ||
moritz_ | tadzik: I guess typed array attributes are NYI | ||
in current master | |||
removing the type constraint should help | 14:38 | ||
tadzik | now it can't find sub Question::Answer, as it couldn't reach inside the class | 14:39 | |
pmichaud | try changing "class Answer { " to "class Question::Answer { " | ||
I know that rakudo master has difficulty with nested class and package names | |||
14:40
Ross left
|
|||
hans__ | Hello, how to pass a NULL password to postgresql with MiniDBI? | 14:41 | |
14:41
Trashlord left,
Ross joined
14:43
whiteknight left
|
|||
pmichaud | Juerd: I' | 14:44 | |
Juerd: I'm sure I speak for many in saying "Thank you" for having supported the pugs repository for all of these years. | |||
14:44
Trashlord joined
|
|||
pmichaud | (and much more in Perl 6, for that matter) | 14:44 | |
moritz_ | hans__: I don't know if it's possible... you likely need to dig into the source code tofind out | ||
indeed, Juerd++ Juerd++ Jurd += (1..2e6).pick | 14:45 | ||
14:46
kuzuha joined
14:47
karb joined
|
|||
isBEKaml | yes, Juerd++ : (1...2e6) { .say Juerd++ } | 14:48 | |
14:54
zulon joined
14:58
justatheory joined
15:03
s_mosher joined
15:04
Ross left
|
|||
ruiwk | why the $git clone git://github.com/rakudo/rakudo.git | 15:06 | |
is not running when i paste it on terminal and wait for so long ? | 15:07 | ||
15:07
Ross joined
15:08
timbunce joined
15:09
karb left,
sftp joined
15:15
zulon left,
ruiwk left
15:16
azert0x joined
|
|||
hans__ | method connect(Str $user, Str $password, Str $params, $RaiseError) { ... } - $password shoud be a postgresql Null pasword. | 15:16 | |
tadzik | iirc some Zavolaj examples use some fancy pir:: to produce NULL | 15:17 | |
you might want to look there | |||
hans__ | If you do not plan to use password authentication you can omit this option. If no password is specified, the password will be set to null - from www.postgresql.org/docs/8.3/interac...erole.html | ||
15:22
karb joined
|
|||
tadzik | duh, I wrote this whole actions class and my $match.perl is still returning this ugly Match.perl result | 15:22 | |
pb.rbfh.de/32mc3REtkl7SV -- am I doing something wrong? | 15:23 | ||
pmichaud | tadzik: maybe you're wanting $match.ast.perl ? | ||
matches always return the match object | |||
tadzik | ah, ast | 15:24 | |
Also stringifying the results before make()ing them helped a lot | 15:27 | ||
15:31
karb left,
Su-Shee left
|
|||
tadzik | hmm, the action methods are called on answers, but the resulting objects seem not to be put into the final object. pb.rbfh.de/288lue1INCFod -- debug info on line 42, result starting from 68. Can anyone take a look? | 15:36 | |
moritz_ | github.com/perl6/Mu/ is now live, and intended as the successor of the pugs repo. | 15:42 | |
if anybody wants commit access, please ping me | |||
pmichaud | tadzik: :answers => $<answer>».ast | ||
that looks.... weird | 15:43 | ||
did you really want the key to be a Pair? ;-) | |||
I suspect you want to omit the colon. | |||
moritz_ | I'll look into setting up hugme for the 'perl6' team | ||
which has access to the Mu repo | |||
15:43
karb joined
|
|||
pmichaud | or you can do :answers($<answer>».ast) | 15:45 | |
tadzik | oh, the typos! How boring life will be without you! | ||
pmichaud: thank you very much | |||
15:45
Trashlord left
|
|||
tadzik | ...and now I'm missing .pretty :) | 15:46 | |
isBEKaml | moritz_: I think we'll have to change that url in the Mu README about commitbit.pugscode.org. | ||
tadzik | moritz_: here I am | ||
15:47
Mowah left,
Trashlord joined
|
|||
tadzik | oh, I'm alredy added. moritz_++ | 15:47 | |
pmichaud | Can we perhaps move the spectests out of Mu? | 15:52 | |
either that, or we need some way for "make spectest" to retrieve just the tests, and not the entire Mu repo. | |||
moritz_ | pmichaud: github supports svn checkouts | 15:53 | |
pmichaud | also, I'm not sure that calling the repo "Mu" is a good name -- might be too many inadvertent puns with the Mu type | 15:54 | |
moritz_ finds it fitting | |||
isBEKaml too | |||
pmichaud | I think some may find it confusing. | ||
15:54
Trashlord left
|
|||
pmichaud | It's often confusing when one (unfamiliar) term is used to refer to two entirely different things. | 15:54 | |
anyway, I've noted my opinion. | 15:55 | ||
moritz_ | pmichaud: do you have a suggestion for a better name? | ||
tadzik | . o O ( once properly understood, Grammars and Actions are the most awesome thing I saw since... well, since Perl 6 ) | ||
pmichaud | moritz_: well, "pugs" is still a valid name. :) | 15:56 | |
but no, I don't have an immediate idea for a replacement. | |||
moritz_ | pmichaud: but even more confusing, since it doesn't contain pugs anymore | ||
pmichaud | how do I checkout a subtree via github? | ||
the only references I can find are for checking out the entire repo | |||
isBEKaml | you can just do svn co lik eyou do the spectests. | 15:57 | |
tadzik | doesn't git have something like 'subrepo'? | ||
pmichaud | currently for the spectests I do: svn co svn.pugscode.org/pugs/t/spec | ||
isBEKaml | yes, svn co github.com/perl6/mu/t/spec should work, I think | ||
pmichaud | hmmm | ||
pmichaud tries | |||
pmichaud@orange:~$ svn co svn.github.com/perl6/mu/t/spec | 15:58 | ||
svn: Server sent unexpected return value (500 Internal Server Error) in response to OPTIONS request for 'svn.github.com/perl6/mu/t/spec' | |||
oh, "Mu" works. | |||
ugh, you mean we have to have a capital 'M'? | |||
*sigh* | |||
isBEKaml | :) | 15:59 | |
tadzik | moritz_: I can has few suggestions about the G&A chapter? | ||
pmichaud | ECASESENSITIVITYSUCKSINURLS | ||
isBEKaml | ash_++ for telling me about the github specific git-svn mirrors. | ||
moritz_ | tadzik: sure | ||
pmichaud now officially dislikes "Mu" as a repo name. | |||
at least make it "mu" | |||
TimToady | that would be the native type :) | 16:00 | |
pmichaud | oh, checking out "t/spec" didn't work. | ||
it gives me the full repo. | |||
moritz_ | drat | ||
pmichaud | oh, it didn't give me the full repo. | 16:01 | |
it just didn't give me t/spec | |||
that's... weird. | |||
pmichaud@orange:~/spec$ ls | |||
moritz_ renamed s/Mu/mu/ | |||
pmichaud | AUTHORS docs INSTALL.v6 LICENSE README READTHEM READTOO SLAVES VICTUALS | ||
tadzik | moritz_: personally, I find JSON example pretty overwhelming. The grammar source alone is 3 pages long, the actions is a bit shorter, but I'd personally like to start with something more visible, less abstract than JSON. I liked the Perl6Advent Questions-Answers example, I think it'd be nice to include it there after fixing, pushing JSON a few pages further as a Real-World example | ||
16:02
Trashlord joined
|
|||
moritz_ | tadzik: I fear (because it's much work) that that's the way to go | 16:03 | |
tadzik | moritz_: I think I can handle this a bit | 16:04 | |
I was to fix Advent Calendar anyway | |||
moritz_ | who wrote the advent thing? Tene? | ||
tadzik | no eye deer | ||
Tene, yes | 16:05 | ||
moritz_ | we have to ask for permission first | ||
Tene: may we use your grammar examples from the advent calendar in the "Using Perl 6" book? | 16:06 | ||
pmichaud | the other reason for wanting the spectests in a separate repo is because we'll also want easy write support | ||
(and svn commits to github still look a little... experimental) | |||
moritz_ | agreed, we don't want svn commits when we move to git | 16:07 | |
16:12
karb left
|
|||
moritz_ | any idea how to extract the t/spec subtree into a separate repo, and still preserve history? | 16:13 | |
I've asked on #git, but they seem busy with another discussion | |||
mberends | hello moritz_, pmichaud: how about hosting just the t/spec subtree in a downsized subversion repo? | 16:16 | |
isBEKaml | moritz_: raise a support issue on support.github.com. They are usually closed pretty fast. | ||
moritz_ | mberends: and who maintains that? | 16:17 | |
tadzik | moritz_: asking on #github was always helpful for me | 16:18 | |
isBEKaml | #github too. forgot about that. :| | ||
pmichaud | when I created the rakudo repo, I extracted it as a subtree of the original svn | 16:19 | |
as opposed to converting the entire svn to git, and then trying to extract it from there. | 16:20 | ||
moritz_ | git filter-branch --subdirectory-filter t/spec # seems to help... still running | ||
pmichaud | for reference, to create the rakudo repository, I did | 16:21 | |
git svn clone -A parrot-names.txt svn.perl.org/parrot/trunk/languages/perl6 | 16:22 | ||
which just grabbed the languages/perl6 directory (and all of its history) | |||
(and parrot-names.txt was used to map svn commit identifiers to git email identifiers) | 16:23 | ||
mberends: (downsized subversion) yes, that's a possibility. In some sense it would be nice if we could get to a single vcs tool (more) | 16:24 | ||
16:24
s_mosher left
|
|||
pmichaud | and also I think the pugs repo may have grown to the point where we ought to have separate repos for its various components (docs, tests, sources, etc.) | 16:24 | |
mberends | moritz_: if there is interest in having a subversion t/spec repo, I think I (or someone) can arrange where it is hosted. The experience of Juerd++ can surely help us plan such a thing. | ||
pmichaud | personally, I think I'd like to see t/spec as a git repo | 16:25 | |
I'm not sure I see any big advantage to keeping it as subversion | |||
16:25
Trashlord left
|
|||
moritz_ | I know a lot of "it would be nice" things. To me what really matters is that we'll end up with one more usable repos, with full history preserved | 16:25 | |
16:26
hans_ joined
|
|||
moritz_ | I can offer that with git, and I can offer to extract subtrees into separate repos | 16:26 | |
mberends | pmichaud: +1 to separating pugscode into components. It's logical and fairly obvious. | ||
pmichaud | well, it may be logical to separate them, but I'm not sure we yet know what the logical separation should be :) | ||
moritz_ | if people want something else, they should do it *and* do the planning themselves; I don't feel qualified to do that (no offense to anybody intended) | 16:27 | |
how should I name the spectest repo? | 16:29 | ||
'spec' would be convenient, but confusing | |||
TimToady | these things are usually called "validation suites" | 16:30 | |
moritz_ | TimToady: do you have a github account? | 16:31 | |
TimToady | no | ||
moritz_ | TimToady: then you should create one | ||
TimToady | doubtless :) | ||
my inertial navigation system tends toward inertia... | 16:32 | ||
pmichaud | 'spectest' works for me | 16:33 | |
TimToady | is there anything to identify it as a p6 spectest? | ||
pmichaud | it's in the perl6 account? | ||
TimToady | ah | ||
pmichaud | github.com/perl6/spectest | ||
could even be 'spectests' | |||
16:34
snearch joined
|
|||
pmichaud | anyway, others will have to decide it for a bit -- I have errands that must be run :( | 16:34 | |
bbiaw | |||
16:34
ruoso joined
|
|||
moritz_ | pushing to perl6/spectes now - can be renamed later on | 16:35 | |
*spectest | |||
tadzik | bbl | 16:36 | |
16:36
tadzik left
16:37
Trashlord joined,
s_mosher joined
|
|||
TimToady | "vets: Valid E$_ Test Suite" for slurp("unixdict.txt").words.grep: *.subst(/^e/,'') | 16:38 | |
and because it vets your implementation | 16:39 | ||
moritz_ | anyway, I need to go shopping for a bit, will probably be back in about an hour or so | 16:40 | |
if people have suggestions for subrepository names, feel free to share them | |||
also you can think about having a separate repo for the specs (which would make the perl6-language mail hook easier) | 16:42 | ||
16:43
risou_ left,
jimi_hendrix left
16:46
ruoso left
|
|||
TimToady | Valid Enough Test Suite :) | 16:50 | |
Very Excellent Test Suite | |||
16:51
molaf left
|
|||
TimToady | or VI Enough | 16:51 | |
16:51
Trashlord left
|
|||
TimToady | Valid Essentials | 16:53 | |
Validate Everything | 16:54 | ||
16:56
Axius joined
|
|||
mberends | Velociraptor Extreme Torture System | 16:56 | |
TimToady | except we're the accelerraptor | 16:58 | |
or however that's spelled... | |||
VI Extreme Torture Suite | 17:00 | ||
except sounds like we're testing an editor | |||
17:00
snearch left,
ruoso joined
|
|||
TimToady | Six Under eXamination | 17:01 | |
mberends | lol | ||
TimToady | Wall's Really Obnoxious Xanadu | 17:02 | |
17:02
svetlins__ joined
|
|||
TimToady | Six Encounters X-rays | 17:03 | |
17:04
svetlins_ left
|
|||
TimToady | Six Is eXpected | 17:05 | |
17:06
Trashlord joined
|
|||
TimToady | Six is Xenophobic | 17:06 | |
mberends | Six Ain't eXperimental (anymore) | ||
TimToady | Six Is Generally Hard | 17:07 | |
mberends | Six Outwardly Feels Tricky While Actually Reads Easily | 17:10 | |
TimToady | :) | ||
but doesn't sound like a torture suite | 17:11 | ||
Six Candidate Acceptance Test | 17:12 | ||
Juerd | mberends: Oh, hosting is not the issue. Feather is still available for that, provided that it is cared for by someone | ||
mberends: It's just that svn + svnweb littered huge (100MB+) temp files, were responsible for extreme loads, had memory leaks, and were completely unmaintained | 17:13 | ||
17:14
Trashlord left
|
|||
TimToady | or Six Core Acceptance Test | 17:14 | |
mberends | Juerd: thanks. If pugscode were somehow locked down to be readonly, I wonder if many of the massive overheads would stop happening. | ||
Juerd | mberends: Not really. The majority of the issues with svnweb are common for all mod_perl crap: things stay in memory forever, and is multiplied by the number of apache processes over time, regardless of the number of users. | 17:16 | |
hans_ | \ | ||
Z | |||
TimToady | Really Obnoxious Torture System | ||
Juerd | mberends: svn was mostly CPU hungry, and with very little commits I doubt it had anything to do with commits. | ||
mberends: As for my experience with setting svn up: none, whatsoever. I don't know who originally set up svn on feather. | 17:18 | ||
TimToady | Rarely Obtained Feature List | ||
isBEKaml | Light On LoadTESTs | 17:19 | |
17:20
hans_ left
|
|||
isBEKaml | Six Ix Xanthippe | 17:21 | |
:D | |||
Juerd | juerd.nl/i/73ea6e3483eb7e949c942df8ddab5d30.png # It appears that svn was also responsible for the majority of traffic, with its gigantic diffs. | ||
isBEKaml | Six Is Xanthippe | ||
I think Xanthippe was the name of Socrates' wife. Generally perceived evil figure in history, but also was partly responsible for driving Socrates towards philosophy! lol | 17:23 | ||
17:24
Trashlord joined
|
|||
TimToady | Sucks Or Rocks Reliably Yet | 17:24 | |
isBEKaml | Times Reliably On Load Lines | 17:26 | |
moritz_ | Six Or Not Six, that's what the spectests answer | 17:28 | |
github.com/perl6/spectests now contains the spectests; I haven't removed them from mu yet | 17:29 | ||
17:29
Trashlord left
|
|||
moritz_ | I should do that now. | 17:30 | |
17:30
zulon joined
|
|||
TimToady | Sux Or Rox Test Of Functionality | 17:33 | |
17:33
isBEKaml left
|
|||
TimToady | I think I like sorry the best so far | 17:34 | |
17:35
tylercurtis joined
|
|||
TimToady | Larry's Obnoxious Language Core Acceptance Test | 17:37 | |
moritz_ | "you think this is cute today" | 17:38 | |
TimToady | that is wonderfully ambiguous, in the way of noun modifiers | ||
I bet jnthn++ would like it | |||
moritz_ | lol | 17:39 | |
dalek | kudo: 29fcf8e | chromatic++ | src/ (4 files): [src] Updated deprecated string_from_literal calls. Parrot's (not all that) new approach is to use Parrot_str_new(). |
17:50 | |
kudo: 6b1b030 | chromatic++ | src/binder/bind.c: [binder] Hoisted several constant Parrot STRINGs. |
|||
kudo: e36452e | chromatic++ | src/ops/perl6.ops: [ops] Hoisted constant Parrot STRINGs. |
|||
ingy | o/ | 17:51 | |
TimToady | trouble is, we want a word that doesn't occur too frequently in normal talk | 17:52 | |
so maybe something more like "visor", Verify Implementation Sucks Or Rocks | 17:53 | ||
17:53
molaf joined
|
|||
TimToady | but the word itself isn't very funny | 17:53 | |
moritz_ | otoh if we split off several repositories, the names should be as obvious as possible | ||
TimToady | censor or sensor would be funnier | ||
17:54
Axius left
|
|||
moritz_ | should I split off docs/ ? | 17:55 | |
17:55
tadzik joined,
molaf left
17:57
Ross left,
Trashlord joined,
Ross joined
17:58
karb joined
17:59
zulon left
|
|||
TimToady | valid: Verify All Language Implemenation Details | 18:00 | |
*ment | |||
18:00
rhebus joined
|
|||
rhebus | Hello everyone | 18:00 | |
TimToady | everyone says hello back | ||
rhebus | I've decided to jump in and learn Perl 6 using Rakudo* by doing the project euler problems | ||
TimToady | cool | 18:01 | |
rhebus | but my naive implementation of problem 3 seems to be doing some int overflow | ||
projecteuler.net/index.php?section=...s&id=3 | |||
(what's the largest prime factor of 600851475143) | |||
i will ask a question, just give me a minute :) | 18:02 | ||
TimToady | hmm, well, rakudo doesn't implement Int as bigint yet, but overflows to Num | ||
but that should fit in a double | |||
and %% is defined on doubles, methinks | |||
rakudo: say 600851475143 %% 7 | 18:03 | ||
rhebus | what is %%? | ||
p6eval | rakudo 52f9ea: OUTPUT«0» | ||
TimToady | same as % == 0 | ||
now that we have it, we find we use it all the time | |||
rhebus | rakudo: say 6 %% 2 | ||
p6eval | rakudo 52f9ea: OUTPUT«1» | ||
18:04
envi^home left
|
|||
rhebus | rakudo: say 600851475143 %% 71 | 18:04 | |
p6eval | rakudo 52f9ea: OUTPUT«1» | ||
18:04
rindolf joined
|
|||
rindolf | Hi all. | 18:04 | |
rhebus | (minor spoilers for that problem, sorry :) ) | 18:05 | |
but yeah, that looks good enough for me, thanks TimToady | |||
rindolf | Some of the "make spectest" tests failed on my Mandriva 2010.1 x86-64 Linux laptop. | ||
TimToady | we're more interested in the solution than the solution, as it were | ||
the interesting part is what the P6 code comes out looking like | 18:06 | ||
and whether it's intuitive to the reader | |||
rhebus | well I like it so far | 18:08 | |
but I haven't yet delved into hyper operators &c | |||
TimToady | we hope those end up intuitive too | ||
rhebus | tbh I'm just writing P5 in P6 atm | ||
"baby perl 6" | 18:09 | ||
TimToady | that's officially okay | ||
rhebus | can i have a certificate from the authorities to state that officially? | ||
TimToady | if you're looking for someone with a little authority around here, I have about as little as anyone... | 18:10 | |
rhebus | :) | ||
18:12
karb left
|
|||
rhebus | the irony is that I'm running win64 so I *should* be able to represent 600851475143 natively. But I'm lazy and downloaded the .msi which I imagine is 32-bit. | 18:12 | |
hooray for laziness | |||
ingy | what does p6 call a lexical namespace? | 18:13 | |
tylercurtis | Well, Rakudo (last I looked at the promotion to Num code) converts anything that would overflow a 32-bit integer to Num, regardless of the size of your integers. | ||
TimToady | ingy: lexpad or lexinfo, depending | 18:14 | |
the pad is usually an active one for a particular call | |||
but sometimes it's used generically for the static table too | 18:15 | ||
18:15
Axeman left
|
|||
ingy | I'm considering namespace, scope or stash. | 18:15 | |
TimToady | but we're trying to switch over to calling those lexinfos | ||
well, all of those are rather overloaded | 18:16 | ||
ingy | my meaning is a symbol hash that belongs to a function | 18:17 | |
a function object has a namespace object (just a hash) | |||
18:18
toebu left
|
|||
TimToady | yes, but "namespace" == "package" in parrotland currently | 18:18 | |
rindolf | Hi all. I'm getting svn: Server sent unexpected return value (403 Forbidden) in response to OPTIONS request for 'svn.pugscode.org/pugs/t/spec' | ||
TimToady | and "stash" == "package" in P5land | ||
ingy | does anyone else use lexpad? | ||
I really wish naming was more standard... | 18:19 | ||
TimToady | that's a p6ism, but historically didn't distinguish the name hash from the activation record it represents | ||
ingy | it's a really annoying hurdle in acmeist life. | ||
TimToady | actually "pad" is a p5ism for the whole structure, which has both elements | ||
well sometimes the common denominator is the empty set, and you have to just coin something new, like lexhash | 18:20 | ||
ingy | nod | 18:21 | |
TimToady | though that makes the other into something like pkghash, which is ugly | 18:23 | |
lstash and pstash would be how the old-timers woulda done it, which is how we got strange words like lvalue | |||
rhebus | i particularly like the C standard which distinguishes between lvalues and modifiable lvalues >_< | 18:24 | |
TimToady | orz | ||
ingy | well I'm sticking with namespace for now. Once you start following TimToady's lead it's a slippery slope :) | 18:25 | |
TimToady | I want the world, you can have the rest. :) | ||
ingy | rest is probably what I need most. | 18:26 | |
TimToady | a rest for ingy++ --> 𝄽 | 18:27 | |
at least it shows up in the log... | 18:28 | ||
assuming you're using a browser that does unicode for reals | |||
rhebus | grr, project euler seems to be more about maths than programming :/ | 18:30 | |
or at least the first 4 problems are | |||
TimToady | yes, that's they're stated purpose | ||
maybe you want to tackle rosettacode problems, though most of the low-hanging-fruit has solutions already | 18:31 | ||
rhebus | ooh, hadn't seen that | 18:33 | |
TimToady | see also www.oreillynet.com/onlamp/blog/2006...erl_6.html | ||
which have some proposed solutions in the test suite that you can check against | 18:34 | ||
or replace with better solutions :) | |||
the originals were written against pugs rather than rakudo | |||
rhebus | ooh that is also good | ||
sorear | good * #perl6 | 18:36 | |
TimToady | o/ | ||
pmichaud | back again, for a bit | ||
rhebus | aha they're also in github.com/perl6/perl6-examples | ||
rindolf | pmichaud: hi. | ||
TimToady | also in t/spec/integration, or wherever it ends up after this morning's svn meltdown | 18:37 | |
rindolf | TimToady: svn meltdown? | 18:38 | |
TimToady: WDYM? | |||
moritz_ | github.com/perl6/spectests/tree/mas...tegration/ | 18:39 | |
pmichaud | (svn meltdown) Juerd needed to disable svn on feather earlier today | 18:40 | |
which means svn.pugscode.org is no longer active | |||
rindolf | pmichaud: ah. | ||
Juerd | Is the github repository the main one now? | 18:41 | |
pmichaud | likely yes | ||
moritz_ | yes | ||
pmichaud | we'll still have some refactorings to make, I think | 18:42 | |
moritz_ | I've already split off the spectests | ||
rindolf | moritz_: well, you need to update the rakudo build-system to reference it. | ||
pmichaud | should we add TimToady as an owner of the perl6 organization? | ||
rindolf: s/you/we/ :-) | |||
rindolf | pmichaud: :-) | ||
moritz_ | I already have that locally; testing as we speak | 18:43 | |
pmichaud: +1 | |||
pmichaud | TimToady: do you have a github account yet? | ||
TimToady | working on it | 18:44 | |
moritz_ | pmichaud, TimToady: would you prefer a separate repo for docs/ (or maybe docs/Perl6/Spec) ? | 18:46 | |
pmichaud | I think a separate repo makes sense... but I defer to TimToady on that. He's the one that generally has to deal with it the most. | 18:47 | |
same goes for the other non-spectest parts of the pugs repo :) | |||
TimToady | it says the account TimToady is already taken | 18:48 | |
pmichaud | yes, I saw that | ||
said it was created in dec 2009 | 18:49 | ||
TimToady | did someone create it for me, I wonder... | ||
did I create it and not know it? | |||
pmichaud | yeah, not sure if it's a squatter or what | ||
dalek | kudo: ff5b4c0 | moritz++ | / (2 files): partially update build system to deal with spectests in git |
||
pmichaud | maybe request password recovery for the account and see what happens? | ||
moritz_ | missing: "make manifest" still uses the old repo | 18:50 | |
pmichaud | moritz_: I think I can correct that. | 18:51 | |
lue | wello there o/ | ||
sorear | Ay reason we don't just delete the 'perlsix' account? It has zero repositories | 18:53 | |
pmichaud | maybe keep it so that someone else doesn't create one for nefarious purposes | 18:54 | |
moritz_ | sorear: currently my only reason was "more important other things to do first" | 18:55 | |
18:55
plobsing joined
|
|||
sorear seems to have the delete privelege on perlsix | 18:56 | ||
pmichaud | sorear: yes, you were listed as an organization owner | ||
(along with about seven others :) | |||
TimToady | successful at resetting TimToady password, so I guess you can call me that; now for ssh token... | 19:00 | |
pmichaud | TimToady: added you as an organization owner for the perl6 account | 19:01 | |
"Owners have full access to all repositories and have admin rights to the organization." | |||
sorear | you now have the ability to delete perl6. | 19:02 | |
use it wisely. | |||
sorear blows away a 193MB pugs checkout | |||
TimToady feels the power going to his head, but as his head is too big, it gets lost somewhere. | 19:04 | ||
pmichaud | the current link for STD.pm6 is github.com/perl6/mu/raw/master/src/perl6/STD.pm6 | ||
or github.com/perl6/mu/blob/master/src...l6/STD.pm6 if you want it with creamy github formatted goodness | |||
TimToady | blob? | ||
moritz_ | Binary Large OBjection | 19:05 | |
pmichaud | I don't create the urls -- that's all github. :) | ||
lue | did pugs disappear permenantly, or just temporarily ? | ||
pmichaud | .oO( OBject*ion* ? ) |
||
moritz_ | pmichaud: :-) | ||
lue | .oO(blob = Big Lump O' Binary) |
||
sorear | github doesn't seem very good at formatting Perl6 | ||
lue: it didn't disappear, it moved to github | 19:06 | ||
pmichaud | sorear: I'm sure they would accept patches :) | ||
diakopte1 backlogs a bit | 19:09 | ||
sorear | seen diakopter | ||
aloha | Sorry, I haven't seen diakopter. | ||
lue | time to get rid of the pugs svn repo (and with it an unused commit bit) | 19:11 | |
sorear | What is docs/ in mu.git being used for? | 19:12 | |
moritz_, ping | |||
moritz_ | sorear: I'm about to delete it | ||
pmichaud | (keep in mind we're still in the middle of a largely unplanned migration) | ||
diakopte1 | Juerd: I suspect you were wrong about "svn" causing the high load/mem usage. | ||
pmichaud | oh, all of 'docs' became its own repo? | 19:13 | |
that feels.... wrongish | |||
I would've wanted to have just the spec docs separated out | |||
diakopte1 | Juerd: rather, I suspect it was (as sorear mentioned the other day) the SVN::Web links continually being spidered by all the search engines. | ||
moritz_ | pmichaud: that can be done too | 19:14 | |
pmichaud | in general, I think docs should live with whatever it is they're documenting | ||
indeed, perhaps what we really want is a perl6/spec repository, that contains docs, tests, and STD.pm | |||
diakopte1 | Juerd: otoh, *finally* this is prompting what I was strongly suggesting 1 and 2 years ago | 19:15 | |
tadzik | hmm, I added <![ ]> at the end of the regex, but the matched string still has trailing spaces. Any ideas? | ||
19:15
Trashlord left
|
|||
diakopte1 | (the very thing pmichaud just mentioned) | 19:15 | |
sorear | tadzik: use \s | ||
tadzik | sorear: I used \h, but it didn't work eithger | ||
* either | |||
sorear | and it's spelled <!before \h> | 19:16 | |
moritz_ | backslash escapes don't work in char classes yet :() | ||
tadzik | actually it is mentioned <![\h+]> | ||
oh | |||
sorear: so that would be <!before \h+> in my case? | |||
pmichaud | tadzik: nopaste or reference to what you're trying to do? | ||
sorear | <![\h+]> means "match if the next character is not \\, h, or + | ||
" | |||
pmichaud | sorear: by spec, or by what rakudo currently has? | 19:17 | |
tadzik | well, it wasn't working for the plain space | ||
sorear | pmichaud: by spec it | ||
tadzik | oh wait, this is token, backtrackint is disabled. Bad, isn't it? | ||
sorear | 's \h + | ||
tadzik: spaces in a token are ignored anyway | |||
tadzik | nah, nothing new after changing it to regex | ||
pmichaud | tadzik: nopaste url? | 19:18 | |
tadzik | well, I can just trim it in actions, but.. | ||
pb.rbfh.de/2r4JjtYeSxCgh | |||
lue | rakudo: say "hello " ~~ /\H+/ | 19:19 | |
p6eval | rakudo e36452: OUTPUT«hello» | ||
tadzik | oh by the way, about line 16 -- if I change the last \h* to \h+ it dies with "Couldn't match the final ']'", although the case is not about the ], is this intentional? | ||
pmichaud | if you change the last \h* to \h+, that rule will never match. | 19:20 | |
tadzik | I know, but it dies with a message about not finding the final ] | ||
pmichaud | right, because of the ~ that occurs earlier | ||
hmmmm | 19:21 | ||
why not write it normally, in this case? | 19:22 | ||
tadzik | normally? | ||
pmichaud | ^^ \h* '[' $<text>=[\w|\h]+ ']' ... | ||
i.e., why use the ~ ? | |||
tadzik | I just wanted to try it :) | ||
but it's not the issue, when I use proper \h* it works fine | |||
pmichaud | there are some definite oddities with the failure mode for that operator | 19:23 | |
tadzik | now what I want to achieve is 'autotriming' keys via tuning regexes | ||
so it won't catch the trailing \h | |||
pmichaud | trailing after the ']', you mean? | ||
tadzik | no, in key | ||
pmichaud | I don't understand "autotrimming" in this case | 19:24 | |
tadzik | so when I have keyval 'foo = bar' it is parsed to "foo " => "bar" | ||
foo has a trailing whitespace | |||
see the bottom of the paste | |||
pmichaud | oh, your problem is that <-[;=]>+ also grabs whitespace | ||
tadzik | yes | ||
pmichaud | you can't fix that with anything that comes afterwards | ||
tadzik | so I wanted to add <![\h+]> at the end | ||
pmichaud | well, you can, if it's a regex | 19:25 | |
tadzik | that's why I changed it | ||
pmichaud | what you really want is <!after> | ||
<!before> talks about what comes next, not about what you already scanned. | |||
tadzik | <!after \h+>, yes? | ||
pmichaud | yes, but !after is nyi in rakudo, iirc. | ||
tadzik | I see. I'll have to read the synopsis on this one | ||
TimToady | the + is useless | ||
tadzik | oh | ||
pmichaud | and yes, the + is useless. | ||
tadzik | even better | 19:26 | |
so what can I do in the current Rakudo? | |||
rhebus | hmm I disagree with the interpretation of perl6-examples/99-problems/P02-scottp.pl | ||
19:26
rindolf left
|
|||
rhebus | The second-last box of <a b c d e> is <d e> not 'd' | 19:27 | |
19:27
rindolf joined
|
|||
moritz_ | then fix it :-) | 19:27 | |
rhebus | will do | ||
moritz_ | rhebus: do you have a github account? if yes, what's the nickname? | ||
pmichaud | tadzik: [ \H && <-[;=]> ] ** \h+ # maybe | ||
rhebus | I'll get one set up | ||
tadzik | hmm | ||
I won't be able to read it after a few days I'm afraid. I'll go for .trim in actions, til Rakudo implements <!after> | 19:28 | ||
Juerd | diakopte1: svnweb didn't run on svn.pugscode.org, and feather.perl6.nl/server-status did show that the processes that appeared high in top(1) were often on that hostname | ||
19:28
Trashlord joined
|
|||
rhebus | what's the github way of doing things? Do I fork it, commit to my copy, and send you the url? | 19:28 | |
Juerd | diakopte1: It's possible, of course, that these svn requests were done *by* svnweb, which at those moments apparently did behave. | 19:29 | |
19:29
smash joined
|
|||
tadzik | thanks for help | 19:29 | |
moritz_ | rhebus: the #perl6 way is that I give you commit access | ||
pmichaud | rhebus: for perl6-examples? you get a commitbit. :) | ||
smash | hello everyone | ||
moritz_ | pmichaud: I've added perl6-examples to the 'perl6' team | ||
Juerd | diakopte1: Still, though, nobody volunteered to investigate or maintain it... | 19:30 | |
rhebus | my username is rhebus on github now | ||
moritz_ | rhebus: and you have commit access now | ||
pmichaud | moritz_: +1 | ||
moritz_: so, "perl6" is the team for generic "we give you commit access to all of the common repos" ? | 19:31 | ||
Juerd | moritz++: Thanks for moving everything to github and taking care of it, by the way :) | ||
moritz_ | pmichaud: yes | ||
pmichaud | moritz_: excellent | ||
smash | phenny: tell colomon gil.di.uminho.pt/users/smash/rakudo-bench.html updated with new test scripts | ||
phenny | smash: I'll pass that on when colomon is around. | ||
pmichaud | I still prefer the zero-based graphs. | 19:32 | |
tylercurtis | Can I (ekiru on github) have a perl6{*} commit bit? | 19:33 | |
moritz_ | tylercurtis: sure, just a sec | ||
19:33
Eevee joined
|
|||
moritz_ | tylercurtis: done | 19:33 | |
tylercurtis | moritz_++ thanks | ||
tadzik | smash: why there are faster things in Slower Scripts? | 19:34 | |
19:34
timbunce left
|
|||
tadzik | smash: graph shows as if they were faster than before | 19:34 | |
can I override the \n in grammars? | 19:35 | ||
smash | pmichaud: refresh | ||
pmichaud | smash: much better, thanks | ||
tadzik | smash: ah, slower means "longer running", I get it | 19:36 | |
pmichaud | now we need to re-do the iteration and recursion bench marks so they actually measure something meaningful :) | ||
smash | tadzik: maybe the title isn't the best, that just meanos that on the right are the scripts that take longer to run | ||
tadzik: right | |||
tylercurtis | And we need to figure out why pick-words.pl slowed down. :) | ||
tadzik | is there a way to override the \n, as in token ws {} ? | ||
moritz_ | tadzik: not yet | ||
tadzik | :( | 19:37 | |
pmichaud: btw, what's the state of require? | |||
pmichaud | tadzik: still nyi | ||
moritz_ has tried it, but couldn't get 'require <foo bar>;' to parse | |||
smash | tadzik: i changed it to Fast/Slow scripts, maybe this way is more clear | 19:38 | |
pmichaud | smash: if I change the benchmark scripts for iteration and recursion, will that update all of the values in this graph? | ||
smash | pmichaud: with the current script yes | 19:39 | |
pmichaud: s/script/harness for the benchmarks/ | |||
tadzik | smash: how about something like lighter/heavier? That's a suprisingly difficult case I think :) | 19:40 | |
it's hard not to disaumbiguate | |||
pmichaud: is there a chance for it in the near future? | |||
I know one how wishes to make testing and stuff :) | |||
smash | tadzik: i like light/heavy scripts, thks for the tip | ||
19:41
timbunce joined
|
|||
rhebus | should I rename P02-scottp.pl to my name or leave it as is? | 19:41 | |
moritz_ | rhebus: whatever you consider better | ||
or more convenient | |||
rhebus | ok | 19:42 | |
i think the first example is awkward and not the best example :/ | |||
tylercurtis | smash: does your harness manually distinguish between the light/heavy(or fast/slow or short-running/long-running or whatever) scripts? If so, could you perhaps move that information into the bench-scripts repo? That way, it's easier for new long scripts to be added. | ||
smash: ignore that if you automatically detect long-running scripts. | |||
tadzik | moritz_: JSON example in the book becomes extremely helpful once I got comfortable with Actions | 19:43 | |
moritz_ | tadzik: glad to hear | ||
rhebus | last <A B C D> should be the same as <D> in P01, based on the original LISP interpretation of returning a 1-element list rather than a single element | ||
however in perl6 generally a 1-element sequence is not the right thing | 19:44 | ||
lue | how do you modify a class's variables? Something like class A { has $.b }; my A $c .= new(3); $c.b = 5 . | ||
rhebus | maybe I should just leave it alone :/ | ||
smash | tylercurtis: when building the grphs it automatically chooses if the script goes to one grpah or another | ||
tadzik | lue: they have to 'is rw' | ||
smash | the rest is exactly the same | ||
tadzik | lue: so they can be lvalues | ||
tylercurtis | smash: good. :) That's even better. | ||
tadzik | lue: or you can modify them from inside the class, with the private accessor ($!b = 'asd') | 19:45 | |
tylercurtis | rhebus: well, in Perl 6, generally, a single element is also treatable as a 1-element sequence. | ||
lue | I was just thinking, it'd be better to not do what I wanted :) | ||
moritz_ | nopaste.snit.ch/23233 # I plan to send this to perl6-announce - any comments before I send it? | ||
tylercurtis | rakudo: say 5.[0]; | ||
p6eval | rakudo e36452: OUTPUT«5» | ||
smash | pmichaud: feel free to change the benchmark scripts, i'll re-run them and update the HTML page | ||
pmichaud | smash: changed and pushed. | ||
tadzik | moritz_: thereforE | 19:46 | |
tylercurtis | rakudo: say 5.map(* + 2); # curious | ||
p6eval | rakudo e36452: OUTPUT«7» | ||
rhebus | rakudo: say <5>.WHAT | ||
p6eval | rakudo e36452: OUTPUT«Str()» | ||
lue | (I can't seem to git clone the perl6/docs repository.) | ||
rhebus | rakudo: say <5>[0].WHAT | ||
pmichaud | moritz_: mention that people can get commit bits by asking on #perl6, also, instead of just email. | ||
p6eval | rakudo e36452: OUTPUT«Str()» | ||
tadzik | moritz_: to have commit -> to have commit access? | 19:47 | |
rhebus | rakudo: say <5 6>.WHAT | ||
pmichaud | we can add more meta-committers | ||
p6eval | rakudo e36452: OUTPUT«Parcel()» | ||
moritz_ | lue: I've deleted it again, after pmichaud convinced me it was a bad idea | ||
rhebus | tylercurtis: it seems there's no distinction at all. curious | ||
smash | pmichaud: pull'ed, running the benchmark now, i'll update the html page as soon as it finishes | ||
moritz_ | lue: docs/ is now still in the 'mu' repo, only the specs were extracted into a separate repo | ||
pmichaud | tylercurtis: scalars are considered to be lists of one element if asked to act that way | 19:48 | |
thus 'abc'.join(' ') becomes 'abc' | 19:49 | ||
tylercurtis | pmichaud: right. | 19:50 | |
pmichaud | tadzik: I don't know when I (or someone else) will get around to 'require' again. | 19:51 | |
19:51
Guest78701 left
|
|||
pmichaud | moritz_: message needs to go to p6l and p6c, also. and probably p6u. | 19:52 | |
moritz_ | pmichaud: ifyousayso | ||
pmichaud | I don't see any other message edits for now. | 19:53 | |
tadzik | yay, Config::INI fixed | 19:57 | |
moritz_ | ok, sending now | ||
lue | there's no such thing as =head0 in Pod, right? | 19:59 | |
19:59
hans__ left
|
|||
moritz_ | that only exists in PseudoPod | 19:59 | |
(git filter-branch)++ | 20:00 | ||
smash | moritz_: i add a commit bit on pugs, can i have one for the new ones ? | 20:01 | |
20:01
bartolin joined
|
|||
TimToady | note that <A> is just ('A') | 20:01 | |
pmichaud | smash: github id? | 20:02 | |
moritz_ | smash: you're also 'smash' on github? | ||
TimToady | smashz I think | ||
pmichaud | smash: added (as 'smashz') | ||
(I already had the page open from an earlier session :) | |||
smash | pmichaud, moritz_: my id on github s smashz, thank you | ||
moritz_ | fwiw I'm now moving perl6.org to a separate repo now too | 20:03 | |
smash | moritz_++ # pugs repo revamp | ||
bartolin | hi #perl6 | ||
pmichaud | good idea | ||
lue | could I get a commit bit as well? github id is lue | ||
moritz_ | lue: sure | ||
pmichaud | lue: added | ||
tadzik | bartolin: hi | ||
moritz_ | done | ||
pmichaud | lue: interesting gravatar image :) | 20:04 | |
20:04
pjcj left
|
|||
pmichaud | that's a lot of 42s | 20:05 | |
lue | 42 42's to be exact :) | 20:07 | |
smash | pugs, reminds me haskell, which reminds me the damn transpose function.. hmmm | ||
pmichaud | that's a bit square. :) | ||
pmichaud chuckles at the phrase "bit square" :) | 20:08 | ||
tadzik | mind me adding Config::INI back to R*? I got it all fixed | ||
pmichaud | tadzik: +1 | ||
afk, shopping | 20:09 | ||
20:09
svetlins__ left
|
|||
bartolin | rakudo: class Dog { has Int $.age }; my $dog = Dog.new( age => 'zzz' ); say $dog.age.WHAT; | 20:10 | |
p6eval | rakudo e36452: OUTPUT«Str()» | ||
tadzik | hah | 20:11 | |
bartolin | a newbie's question: why doesn't "has Int $.age" prevent setting age to 'zzz'? | ||
is this not yet implemented? | |||
tylercurtis | bartolin: rakudobug. | ||
It seems like I recall it having worked properly at one time, but I may be incorrect. | |||
bartolin | tylercurtis: a known one, probably? | ||
tylercurtis looks. | 20:12 | ||
20:13
jaldhar_ joined
|
|||
moritz_ | I'm pretty sure it's known and submitted to RT | 20:13 | |
we have failing tests for it | |||
bartolin | moritz_: ahh, thanks (tylercurtis++ too) | 20:14 | |
20:14
bluescreen joined,
rindolf left
20:15
bluescreen is now known as Guest58080
|
|||
rhebus | hmm, perl6-examples/99-problems/P08-viklund.pl fails for me with "Could not find sub &infix:<compress>" | 20:16 | |
20:16
_jaldhar_ joined,
_jaldhar left
|
|||
rhebus | which is a shame because it looks very impressive to a perl6 newbie | 20:16 | |
tadzik | x3nU was to fix perl6-examples, wasn't he? :P | 20:17 | |
20:19
jaldhar_ left,
jaldhar joined
|
|||
x3nU | tadzik: i can't do that on my own, also i was bit busy recently ;d | 20:22 | |
20:23
_jaldhar_ left
20:25
tadzik left
20:26
svetlins__ joined
|
|||
TimToady | why is perl6.org labeled JavaScript? | 20:27 | |
moritz_ | because it contains some .js files? | ||
Tene | moritz, tadzik: you can use anything I've ever published online for anything you want, without restrictions. | 20:28 | |
moritz_: oops, I forgot your _ | |||
moritz_ | Tene++ | ||
dukeleto is very excited to see specs and spectests repos on github! | 20:29 | ||
moritz_ is very stressed | |||
TimToady votes moritz_++ as one of the Ten Best-Stressed Men | 20:30 | ||
moritz_ | TimToady: do you want src/perl6/ also moved? if yes, what repo name? 'grammar' maybe? | 20:31 | |
lue thinks make stresstest deserves #2 | |||
20:32
tadzik joined
|
|||
tylercurtis | moritz_++ # For endangering his mental health for the rest of us. Try not to go crazy, though. | 20:32 | |
tadzik | Tene++ | ||
moritz_ | I'll got to bed very soon :-) | ||
tadzik | seen masak | ||
aloha | masak was last seen in #perl6 13 hours 57 mins ago saying "but I'd much rather employ something like JSON::XS, like sorear said.". | ||
TimToady | druther have something like std | 20:33 | |
tadzik | rhebus: iirc perl6-examples were written for the alpha branch of Rakudo, and most of them probably don't work now | ||
rhebus | I'll see what i can do to fix that | 20:34 | |
but I don't know perl 6 yet | |||
20:34
BillN1VUX joined
|
|||
moritz_ | TimToady: will do | 20:35 | |
tadzik | is there any working template engine? | ||
moritz_ | TimToady: but probably won't get around to it tonight | ||
tadzik | html I mean | ||
moritz_ | tadzik: I think szabgab++ fixed HTML-Template in the masak/web repo | ||
TimToady | wow, I haz 1 followers!!! | 20:37 | |
lue | how do I put restrictions on a parameter? Things like sub a($a when >=0) # although that doesn't seem to work | ||
moritz_ | sub a($x where { $_ >= 0 }) { ... } | ||
lue | aaah. thankyou | 20:38 | |
TimToady | rakudo: sub a($x where * >= 0) {...} # does this parse yet? | ||
p6eval | rakudo e36452: OUTPUT«===SORRY!===Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22» | ||
TimToady | std: sub a($x where * >= 0) {...} # does this parse yet? | ||
p6eval | std 32123: OUTPUT«Potential difficulties: $x is declared but not used at /tmp/_7FJoYF9Ir line 1:------> sub a(⏏$x where * >= 0) {...} # does this parseok 00:01 119m» | ||
Juerd | moritz_: Er, I never did maintain the pugs repository | 20:40 | |
rhebus | tadzik: are they expected to work once rakudo* implements more features? should I include some examples which work now? | ||
tadzik | rhebus: it's about them I think, not about Rakudo | ||
moritz_ | Juerd: I had the impression you maintained the apache part of it | 20:41 | |
rhebus | tadzik: so I should fix them then? | ||
tadzik | rhebus: would be great | ||
rhebus | see what I can do | ||
tadzik | poke moritz_ or someone for a commit bit | ||
rhebus | got one already | ||
moritz_ | Juerd: if not, you still deserve thanks for maintaining and providing feather | ||
Juerd | moritz_: I've prevented feather from crashing, which in some cases meant trying to make apache behave, or at least killing it when it didn't. | 20:42 | |
(It has crashed, several times, under the severe loads) | |||
20:42
Guest58080 left
|
|||
moritz_ | well, that's some form of maintenance | 20:42 | |
Juerd | Heh | ||
moritz_ | not the one you usually do if you are being paid for it | ||
but still | 20:43 | ||
Juerd | I'm afraid that the "community maintained" part of feather never got very popular, except for its first year of existence :) | ||
A lot of people have done maintenance tasks on feather | |||
TimToady | it turned out to be a bit too anarchical | ||
Juerd | TimToady: Certainly. | ||
But then, originally it was a box for compiling pugs and running irssi | 20:44 | ||
It's still used for irssi and compiling (not pugs anymore), so it's still true to its initial purpose :) | |||
9 irssis :) | 20:45 | ||
TimToady | now I just have to git learned | 20:46 | |
20:46
s_mosher left
|
|||
moritz_ | pushing to perlt/std as we speak | 20:47 | |
github.com/perl6/std | 20:48 | ||
TimToady | I seen it | ||
thanks | |||
moritz_ | you're welcome | 20:49 | |
20:49
Ross left
20:50
Ross joined
|
|||
moritz_ -> sleep | 20:50 | ||
TimToady | zzz --> moritz_++ | ||
I suppose that should be ==> | 20:51 | ||
20:53
timbunce left
|
|||
lue | Why is it that typing 'use A::B' in a certain file (let's call it X.pl) doesn't work when the file containing A::B isn't in A/B.pm, instead being in the same place as X.pl | 20:55 | |
20:55
CoCol joined
|
|||
TimToady | to the first approximation, because that's not how it works in Perl 5 | 20:58 | |
used modules don't autoadd themselves to the search path | |||
tylercurtis | lue: because that's what import is for, no? | ||
Or, wait.. what do you mean by "instead being in the same place as X.pl"? | 20:59 | ||
20:59
timbunce joined
|
|||
lue | typing `ls ./' would result in listing X.pl and C.pm [the file containing module A::B] | 20:59 | |
tylercurtis | lue: well, how would Perl 6 know that C.pm contains A::B? | 21:00 | |
moritz_ | lue: if you wrote a Perl 6 compiler, how would it know that A::B can be found in C.pm? | ||
dukeleto | Juerd++ # irssi :) | 21:01 | |
lue | I want it to search all the .pm files in ./ for A::B. What else are module declarations for? [I guess that's not happening though] | 21:03 | |
TimToady | eventually we'll move more toward a model where you register your modules in the database, and then it can track things like that | 21:05 | |
21:05
Mowah joined
|
|||
TimToady | in any case, the official library is supposed to work like that, and your local code could work like that, or more like the current PERL6LIB search model | 21:05 | |
but that isn't gonna just search a bunch of files on spec for you | |||
that would be slow and error prone | 21:06 | ||
lue | When I had A/B.pm to experiment, use A::B didn't work in the REPL. | 21:08 | |
tylercurtis | Was A/B.pm in a directory in your @*INC? | ||
lue | in ./ | 21:10 | |
moritz_ | and was . in @*INC? | ||
mathw | o/ | ||
lue | rakudo: say @*INC | ||
p6eval | rakudo ff5b4c: OUTPUT«lib/home/p6eval/.perl6/lib/home/p6eval//p1/lib/parrot/2.7.0-devel/languages/perl6/lib.» | ||
rhebus | does the reduce metaoperator work on user operators? | ||
TimToady | supposed to | 21:11 | |
rhebus | I've been having a go but I can't work it out: pastebin.com/kchCQev7 | ||
the line labelled #BOOM doesn't work | |||
TimToady | in rakudo you have to make them 'our' though | ||
moritz_ | rhebus: in rakudo it only works if you declare it with 'our' | ||
TimToady | which is a known bug | ||
rhebus | aha | ||
moritz_ | rakudo: our sub infix:<abc>($a, $b) { $a + $b + 1 }; say [abc] 1, 2, 3 | ||
p6eval | rakudo ff5b4c: OUTPUT«8» | ||
lue | I'm having an amazingly difficult time figuring out what is IMO a very confusing system for modules. | ||
TimToady | still the bogus design that came from parrot assuming it was re-implementing Perl 5 | 21:12 | |
rhebus | should I update the 99-examples to use "our" or should I leave it given it's a known bug | ||
moritz_ | update please | ||
tylercurtis | lue: What is confusing you? | ||
TimToady | our will still work later, since it does install a lexical alias | ||
moritz_ | (as long as the workaround is still valid Perl 6) | ||
moritz_ -> really sleep :-) | 21:13 | ||
rhebus | and should I comment that it's a bug workaround? | ||
TimToady | zzz ==> moritz_++ really | ||
rhebus | I'm not the person to ask if it's valid perl 6, I'm doing the 99 examples to learn it... | ||
TimToady | our is valid, if suboptimal in the long run | 21:14 | |
especialy if it causes global collisions | |||
lue | I just can't seem to get anything working. I do A/B.pm like you're 'supposed to', and then I can't use sub C, even after attaching `is export' to sub C and putting a redundant 'module A::B' at the top. | 21:15 | |
rhebus | I think that's worth noting in a comment | ||
21:16
Guest23195 left
|
|||
tylercurtis | lue: can you show us your code example? "module A::B; our sub C () is export {...}" should make C available to any scope that does "use A::B;". | 21:16 | |
lue | ... | 21:17 | |
lue is in stunned silence | |||
21:18
bluescreen joined
|
|||
lue | You mean to say all I had to do was add `our' in front of sub C !? *sobs to self* | 21:18 | |
21:18
bluescreen is now known as Guest62968
|
|||
TimToady | it's supposed to work with 'my' too, but as the other conversation was pointing out, rakudo is still kinda busted that way | 21:18 | |
lue | It solves why my experimenting failed, but it doesn't solve the originial problem of there being only OWTDI when it comes to modules. | 21:19 | |
tylercurtis | If @*INC works like Perl 5's @INC, you can stick callables in there (or maybe objects with an INC method?), and do whatever bizarre import magic you want with it. | 21:23 | |
Or, at least, it should for require. Not sure about use. | 21:26 | ||
tylercurtis hasn't written much Perl 5 and is just basing this on perldoc -f require. | |||
21:28
Italian_Plumber joined
21:29
CoCol left
|
|||
Tene | lue: you don't need 'our' | 21:32 | |
sec, I'll post | |||
lue | I just don't like the A/B.pm setup in a source code repository, and it shouldn't be the only way to do it. [after all, this *is* Perl 6 :)] | ||
Tene | lue: gist.github.com/565509 | 21:33 | |
lue: that example works fine for me. How does it differ from what you say doesn't work? | |||
lue | Hm. I wonder why it didn't work before. | 21:34 | |
Grr. Not even ./A::B.pm will work with "use A::B". | 21:38 | ||
21:38
hercynium joined
|
|||
Tene | whaaat? I don't follow what that means. | 21:41 | |
Oh. | |||
No, of course not. | |||
I don't think that that would be *unreasonable* to add to the spec. | 21:42 | ||
Having multiple possible locations for modules within a single search path would require a specced order to search them in, and possible confusion there, but that's doable. | 21:43 | ||
You'd have to specify the behavior when there *are* multiple locations. Would there be a warning? Would it be an error? Is A/B::C/D.pm allowed? A::B/C/D.pm? Only trailing /s can be replaced with ::s? | 21:44 | ||
This isn't anything that anyone involved with Perl 6 has addressed yet, or asked for. I think it would be a nice addition to the spec. | |||
lue | afk, but let me say this: imo, the use of modules in Perl 6 is not very Perl 6 right now, because There Is Only One Way To Do It. | 21:45 | |
rhebus | using ::s is a Good Thing, because it abstracts away the notion of a path separator | 21:46 | |
TimToady | for the official library, there will be only one way to do it, insofar as once something is official, it must be considered immutable; to change you must give it a different longname (which includes version) | ||
the local stuff can be looser, of course | 21:47 | ||
but I suspect some people would like their user view to work much like the official library writ small | 21:48 | ||
so every use is essentially a database query rather than a path search | 21:49 | ||
path searching just doesn't scale very well, and is somewhat fragile | |||
Tene | lue: if you want to do something else, you certainly can do it, there's just only one module loading style specified ATM. You could certainly write a lue_special_use 'A::B' that did what you wanted. | ||
21:50
tadzik left
|
|||
Tene | lue: I do recommend that you put together an initial proposal with a few open questions and submit to p6l | 21:50 | |
21:54
Ross left,
zby_home left
21:55
Ross joined
|
|||
TimToady | I dislike that specs/ and spectests/ are not very tab-friendly | 22:00 | |
so whatever we rename it to should probably not start with "spec" | |||
22:01
Chillance_ joined
|
|||
diakopte1 | testspec? | 22:01 | |
vs spec? | |||
TimToady | "valid" starts with a rare letter | ||
or something like, "inspect" | |||
Implementation Neutral SPEC Tests | |||
22:01
synth joined
|
|||
diakopte1 | heh | 22:01 | |
Implementation Neutered | 22:02 | ||
TimToady | or "respect", "prospect", etc | ||
tylercurtis | testsuite or official-test-suite if we want a boring name? | 22:03 | |
TimToady | validation is more officialese | ||
and I kinda liked Validate All Language Implementation Details | 22:05 | ||
but then I also liked Sucks Or Rocks Reliably Yet | 22:06 | ||
is the only way to rename a repo to fork it? | 22:07 | ||
diakopte1 | Backronyms Are Cool, Kinda, Rendering Order Naturally Yet Mnemonically | ||
TimToady | ++ | 22:08 | |
so we should first pick a word like TORTURE and then figure out what it means | |||
tylercurtis | TimToady: Going to the repo, click Admin, type in a different name in the Repository Name place and click Rename also works, I think (I haven't tried it, but I'm looking at the text field next to the button that says Rename). | 22:09 | |
TimToady | .oO(torcher) |
||
rhebus | rakudo: <1 2>.map: { $_ xx 2 } | ||
p6eval | rakudo ff5b4c: ( no output ) | ||
TimToady | just seems like this would be better done sooner than later | ||
if we can come up with a suitable name | |||
tylercurtis | rakudo: .say for <1 2>.map: { $_ xx 2}; | 22:10 | |
p6eval | rakudo ff5b4c: OUTPUT«1122» | ||
tylercurtis | rhebus: ^^ | ||
rhebus | rakudo: my @l = <1 2>.map: { $_ xx 2 }; @l.perl.say | ||
p6eval | rakudo ff5b4c: OUTPUT«["1", "1", "2", "2"]» | ||
rhebus | hmm | ||
tylercurtis | rakudo: my $l = <1 2>.map: { $_ xx 2}; say $l.perl; | 22:11 | |
p6eval | rakudo ff5b4c: OUTPUT«(("1", "1"), ("2", "2"))» | ||
diakopte1 | what are we naming again? | ||
rhebus | that's what I'm after | ||
tylercurtis: what do those round brackets mean? is it a flat list or not? | 22:12 | ||
TimToady | it means it's a parcel that hasn't decided flatness yet | ||
that's a lazy decision | |||
tylercurtis | rakudo: say (<1 2>.map: { [$_ xx 2] }).perl | 22:13 | |
TimToady | in slice context (not yet impl) it would turn into subsequences | ||
rhebus | when might it not be flat? | ||
p6eval | rakudo ff5b4c: OUTPUT«(["1", "1"], ["2", "2"])» | ||
tylercurtis | The above also works if you really want the result to not be flat. | ||
rhebus | no, i want the result flut | ||
*flat | |||
TimToady | most listy functions will assume flat by default | ||
rhebus | I'm confused, have I suceeded or not? | 22:14 | |
22:14
Ross left
|
|||
rhebus | here's my attempt at P12: pastebin.com/TzK9EZv2 | 22:14 | |
tylercurtis | "my @a = <1 2>.map: { $_ xx 2 };" flattened. | ||
TimToady | that would depend on what you want to do with the value | ||
rakudo: my $l = <1 2>.map: { $_ xx 2}; say $l.flat.perl | 22:15 | ||
p6eval | rakudo ff5b4c: OUTPUT«("1", "1", "2", "2")» | ||
rhebus | it's shorter and neater than the existing P12 but it's of ambiguous flatness | ||
TimToady | that's fine, the ~ will flatten | 22:16 | |
most operators that don't want a multidimensional argument will flatten | 22:17 | ||
you'd generally use slice to force it the other way | |||
rhebus | I think it's best to explicitly flatten | ||
22:17
timbunce left
|
|||
rhebus | so I'll do that | 22:17 | |
22:18
sahadev joined
|
|||
rhebus | tada: pastebin.com/34FaLSav | 22:18 | |
diakopte1 | were we naming the testsuite dir? | ||
niecza: say 3 | 22:19 | ||
p6eval | niecza 568bfa6: OUTPUT«3» | ||
diakopte1 | O_O | ||
cool | |||
TimToady | you can just say 'when Array' | ||
since $_ is already set | 22:20 | ||
well, not as the arg to ??!! though | |||
diakopte1 | std: say 4 ?? !! 4 | 22:21 | |
p6eval | std 32123: OUTPUT«===SORRY!===Found ?? but no !! at /tmp/MRT9qt2wvc line 1 (EOF):------> say 4 ?? !! 4⏏<EOL>Confused at /tmp/MRT9qt2wvc line 1 (EOF):------> say 4 ?? !! 4⏏<EOL>Parse failedFAILED 00:01 116m» | ||
diakopte1 | nits are always discoverable with a powerful enough microscope | 22:22 | |
TimToady | in any case, you can always leave the $_ off the front of $_.method | ||
22:23
aloha left,
bacek left
|
|||
rhebus | TimToady: ++ pastebin.com/nHeaMMZy | 22:23 | |
TimToady | that should work | 22:24 | |
rhebus | it does read nicer than ?? !! | ||
it does work | |||
22:24
M_o_C joined
|
|||
rhebus | and it's nicer than the other solution :) | 22:25 | |
TimToady | once you start getting used to smartmatching, things like .isa start looking like a code smell...er, smelling like an eyesore...er... | ||
rhebus | don't look at me in that tone of voice | 22:26 | |
TimToady | :) | ||
rhebus | perl 6 is really really nice so far | 22:27 | |
TimToady bows on behalf of a whole bunch o' folks | |||
mathw is always glad to hear somebody say that | 22:28 | ||
rhebus | I've known of it for a while, and heard Damian Conway do a talk at london.pm raving about it | ||
but today's the first day I've dived into it | 22:29 | ||
22:29
BillN1VUX left
|
|||
mathw | Perl 6 tends to get people to want to rave about it | 22:30 | |
diakopte1 | I presume the raving was intelligible? :) | ||
TimToady | we won't ask if it was mad, we already know the answer | ||
rhebus | as intelligible as Damian ever gets | ||
22:35
crythias joined,
bacek joined,
aloha joined
22:37
svetlins__ left
|
|||
rhebus | is there no infix !%% ? | 22:37 | |
rakudo: say 4 !%% 3 | 22:38 | ||
p6eval | rakudo ff5b4c: OUTPUT«===SORRY!===Infix !% is deprecated in favor of infix %% at line 22, near "% 3"» | ||
TimToady | rakudo: say 4 % 3 | ||
rhebus | :/ | ||
p6eval | rakudo ff5b4c: OUTPUT«1» | ||
rhebus | oh | ||
er | |||
yes | |||
that error message is confusing, but you have a very good point | |||
TimToady | in fact, %% used to be named !%, till we discovered that was confusing | ||
hmm | 22:39 | ||
rakudo: say 4 ![%%] 3 | |||
p6eval | rakudo ff5b4c: OUTPUT«1» | ||
rhebus | heh, it's nice to write an exercise and get pretty much exactly the same as what somebody else has got | 22:40 | |
a lot of these 99 problems are only actually difficult in a LISPy environment | 22:41 | ||
they'd be a lot trickier when having to decompose conses rather than just indexing arrays | 22:42 | ||
22:43
bjarneh joined
22:44
bjarneh left
|
|||
rhebus | i got 99 problems but lisp ain't one | 22:44 | |
22:45
jhuni joined,
hercynium left
|
|||
rhebus | does rakudo do tail-call? are recursive examples a sensible idea? | 22:49 | |
22:50
svetlins__ joined
22:56
Italian_Plumber left
|
|||
TimToady | p6 is specced to assume tail calls are optimized, but I doubt rakudo does it yet | 22:57 | |
22:57
xinming left
22:59
xinming joined
23:02
meppl left
|
|||
rhebus | right I've pushed my examples to github, time for bed | 23:14 | |
23:16
rhebus left
23:17
Mowah left
23:30
sahadev left
23:31
M_o_C left,
svetlins__ left
23:32
svetlins__ joined
23:37
cotto joined,
svetlins__ left
23:44
masonkramer left,
masonkramer_ joined
23:45
jedai joined
|
|||
tylercurtis | Has Perl 5 stolen ... yet? | 23:53 | |
TimToady | they have a problem: ... already means something else | 23:54 | |
it's a variant of scalar .. | |||
I'm thinking "roast" repo of all spec tests (or some such) | 23:55 | ||
23:55
svetlins joined
|
|||
TimToady | can be used as both a noun and a verb | 23:56 | |
23:57
svetlins left
|
|||
tylercurtis | perldoc.perl.org/perlop.html#Yada-Yada-Operator They seem to have "!!!", but it's named "...". | 23:58 | |
23:58
svetlins joined
|
|||
TimToady | that's different, where a term is expected | 23:58 | |
or were you asking about p6's yada? | |||
rather than series | |||
tylercurtis was unclear. | 23:59 | ||
I meant yada, yes. | |||
TimToady | spectests/ is now roasts/ | ||
er, roast/ | |||
23:59
svetlins left
|