pugscode.org/ | sial.org/pbot/perl6
Set by agentzh on 7 June 2007.
bsb gweilo too 00:11
TimToady well, specbot6 and svnbot6 are sitting there waiting to be invited, if anyone can figger out how... 00:20
Tene /msg specbot6 ?join #perl6 00:21
/msg svnbot6 ?join #perl6
TimToady ah
so...intuitively obvious... 00:22
Tene It is if you read the code. >.>
TimToady but I don't know perl6 yet... 00:24
[particle] TimToady: write once, read many. 00:30
moritz TimToady: why didn't you design perl 6 to be a read only language? ie a self-writing one ;) 00:31
SamB moritz: how would you get it to write the programs that you want to read?
[particle] good idea... optimize the write op away
moritz SamB: I don't know, I'm not a language designer ;) 00:32
TimToady Tene: thanks, btw
Tene np
drowned ?eval class Chozzle1 {has $a;method set_a { $b = 1 }} my $c1 = Chozzle1.new; $c1.set_a; 00:39
evalbot_r16655 \1 00:39
drowned class Chozzle {has $a;method set_a { $::a = 1 }} my $c = Chozzle.new; $c.set_a;
drowned ?eval class Chozzle {has $a;method set_a { $::a = 1 }} my $c = Chozzle.new; $c.set_a; 00:40
evalbot_r16655 \1
dduncan I got some curious output on the last Pugs command line ... 03:55
?eval sub subish (:$fuzz) { say "got $fuzz"; }
evalbot_r16655 undef
dduncan it printed out a ream of stuff, originally 03:56
pasteling "dduncan" at 24.69.53.198 pasted "that ream of stuff" (67 lines, 2.4K) at sial.org/pbot/25524 03:59
dduncan that ream looks sort of like the AST for the sub I declared, plus a bunch of environmental stuff 04:01
svnbot6 r16656 | Darren_Duncan++ | ext/Muldis-DB/ : in Operators.pm, updated the way subs take args ; in mainly Validator.pm, updated named arg syntax 04:28
meppl good morning 05:01
gaal in the block-comment Syn update, "The entire final line counts as part of the comment". Does this imply that something after the closing delimiter but on the same line as it is taken as part of the comment? 05:31
TimToady yes 05:32
gaal also, must block comments start in the first column, or is leading whitespace allowed? the text suggests it must be flush to the margin.
TimToady must be flush, or it's an embedded comment instead 05:33
gaal what's the motivation for counting code outside the closing delimiter as if it were in it? 05:34
(sorry if this has been discussed here, I haven't backlogged yet)
TimToady the line is the delimiter, not the "#}"
the reasoning is that that's what line-ending comments would do too. 05:35
so it still works identically with # in front of all the lines 05:36
gaal but then if I nudge the comment opening marker a bit and it becomes an embedded comment, suddenly that trailing code becomes not-a-comment, right?
TimToady you win a few, you lose a few...
just don't put code after an initial } :) 05:37
gaal let's add a layout rule to Perl :-p
(since we have whitespace sensitivity anyway
)
TimToady sure, as long as you predeclare it with "use Python;" :P 05:38
gaal hey, haskell has a totally nice layout rule
because it's easy to turn it off when you want
TimToady definitely turns me off :) 05:39
gaal well, I have to say this comment-opener surprises me, then!
but I probably have to think on it some more<tm>. 05:40
svnbot6 r16657 | lwall++ | [STD.pm] cheated version parses again 05:43
Alias_ sigh... one of these days I'm going to have CPAN 1.5 in good enough shape to start on CPAN 2 05:54
I do, however, increasingly think the "layer" approach will work the best for the Perl 6 "core" definition 05:55
(if nobody else has been dealing with that yet)
Tene needs to come up with a decent project idea to use to start implementing Web and HTTP to support 10:56
Tene needs sleep before that, though.
akreal good night Tene! 10:57
thoughtpolice morning everybody. :) 11:22
akreal thoughtpolice: good morning! 11:26
moritz foo everybody! ;)
gaal Tene: port svk to p6? :) 11:34
moritz gaal: I don't think you need Web and HTTP for that (these two modules, I mean) 11:35
gaal Not Web, perhaps, but why not HTTP? 11:47
(And there are course plenty of support apps you could write that might employ Web.pm) 11:48
moritz ah right, sv(n|k) uses HTTP 1.1
lumi What would Web be? 11:51
moritz lumi: a kind of advanced CGI module I guess 11:53
lumi Something like the HTML parts of CGI.pm? Or ...?
gaal lumi: ext/Web, a less ad-hoc CGI.pm
there's just a sketch there
lumi Yeah, I'm looking 11:55
Do we have no way of making enums/tagged-unions other than '$x where { $_ eq any <a b c> } 11:56
'
?
g 11:57
lumi Sorry, wrong window, that last single character 11:58
svnbot6 r16658 | agentz++ | Makefile.PL - worked around GHC version numbers like 6.6.1 (reported by laye++) 12:00
thoughtpolice svnbot lives again?! 12:04
gaal there's an interesting enum spec in one of the latter Syns, but it's not implemented 12:10
gaal lumi: I think it was waiting on MO, actually. If you want to implement it, now may be a good time. 12:19
lumi It's a bit creepy that it looks at your identifier case to decide whether the representation should be boxed 12:43
gaal location? 12:45
but that's how types are arranged in Perl 6; int vs. Int etc.
lumi True, and yet 12:46
gaal ah, "If the declared type name begins with an uppercase letter, the default type is Int or Str, depending on the type of the first value. If the declared type is lowercase, the default return type is int or buf."
I didn't remember that
lumi See, creepy 12:47
gaal # perlcabal.org/syn/S12.html#Enums
lambdabot Title: S12
lumi Also, why are they not an actual type, but only aliases to Str/Int? 12:48
(or str/int, as the case may be)
gaal "A given enum value can function as a subtype"
lumi Ah so 12:50
gaal gotta moose& 12:55
rindolf Hi all. 13:06
eval: my $h = "Hello"; @a= map { "$_\n" } sort { lc($a) cmp lc($b) } ("Hi","Lo","$h\n"); [@a]
buubot rindolf: ['hello ','Hi ','Lo ']
ayrnieu eval: given my $h = "Hello" { [map { "$_\n" } sort { lc $a cmp lc $b } <<Hi Lo $h\n>>] } 13:46
buubot ayrnieu: Error: syntax error at eval line 1, near "#line 1 eval given my "
ayrnieu oh well. 13:47
er. 13:49
@evalgiven my $h = "Hello" { [map { "$_\n" } sort { lc $a cmp lc $b } <<Hi Lo $h\n>>] }
lambdabot Unknown command, try @list
ayrnieu ?eval given my $h = "Hello" { [map { "$_\n" } sort { lc $a cmp lc $b } <<Hi Lo $h\n>>] } 13:50
evalbot_r16658 Error: ␤Unexpected "["␤expecting "use", statements or "}" 13:50
Juerd rindolf: Interesting bug 13:51
ayrnieu ?eval [<a b>]
evalbot_r16658 ["a", "b"]
ayrnieu well, that's just odd then.
lumi ?eval given "Hello" -> $h { map { "$_\n" } sort { <<Hi Lo $h>>.sort({ lc $^a cmp lc $^b }).map: { "$_\n" } } 13:52
evalbot_r16658 Error: ␤Unexpected "sort"␤expecting ",", ":", operator or "}"
lumi Ehm
?eval given "Hello" -> $h { <<Hi Lo $h>>.sort({ lc $^a cmp lc $^b }).map: { "$_\n" } } 13:53
evalbot_r16658 ("Hello\n", "Hi\n", "Lo\n") 13:53
ayrnieu ?eval given "Hello" -> $h { [<<Hi Lo $h>>.sort({ lc $^a cmp lc $^b }).map: { "$_\n" }] } 13:54
evalbot_r16658 ["Hello\n", "Hi\n", "Lo\n"]
ayrnieu (Bad syntax results in fictitious declaration of bad syntax.) 13:55
Juerd Doesn't : work correctly yet? 13:57
?eval given "Hello" -> $h { [ <<Hi Lo $h>>.sort:{ lc $^a cmp lc $^b }.map:{ "$_\n" } ] }
lumi That should work? 13:58
evalbot_r16658 ["Hello\n", "Hi\n", "Lo\n"]
Juerd IIRC
lumi Pugs agrees
Juerd ?eval given "Hello" -> $h { [ <<Hi Lo $h>>.sort:{ .lc }.map:{ "$_\n" } ] }
evalbot_r16658 ["Hi\n", "Lo\n", "Hello\n"]
Juerd argless .sort doesn't work yet, apparently :) 13:59
?eval given "Hello" -> $h { <<Hi Lo $h>>.sort:{ $^a.lc cmp $^b.lc }.map:{ "$_\n" } }
evalbot_r16658 ("Hello\n", "Hi\n", "Lo\n")
Juerd ?eval [ given "Hello" -> $h { <<Hi Lo $h>>.sort:{ $^a.lc cmp $^b.lc }.map:{ "$_\n" } } ]
lumi Almost argless, anyway
evalbot_r16658 Error: ␤Unexpected "["␤expecting program␤postfix op 14:00
lumi Is this because 'given' is a statement?
ayrnieu 'given' has a return value; otherwise it may as well be perl5's for. 14:01
That error message, given the recent history of my evaluations, only says that 'some kind of syntax error occurred anywhere in your code after this point' 14:02
lumi Maybe this is like what Gaal was saying, that there's not enough <?> in the parser 14:03
I mean, not enough named constructions, I guess?
fglock Alias_: what you mean 'the "layer" approach will work the best for the Perl 6 "core" definition' - it's about CPAN? 14:10
moritz lumi: soory, I can't /msg on freenode... 14:32
lumi: and I don't know anything about Convert::Binary::C anyway :(
lumi moritz: k, thanks anyway :) 14:34
riffraff hi 15:47
gaal lumi: most rules in Parser begin with rule "moose" $ do ...real rule... 16:01
that's just \r -> do { (<?> "moose") r ; whiteSpace } 16:02
(the convention is "verbatim" doesn't eat trailing whitespace, "rule" does) 16:03
riffraff how is the plan to support per-object roles? 16:22
riffraff ruby-like hidden class in the lookup hierarchy? 16:22
svnbot6 r16659 | agentz++ | checked in docs/zh-cn/S01.pod which is a Chinese transcript for S01 16:23
moritz agentz++ 16:24
gaal anonymous classes, yes
riffraff I see 16:29
nothingmuch audreyt: ping 16:30
nothingmuch locale::maketext::lexicon's s/\\\*(?=[^*]+$)/\([-\\w]+\)/g or next; makes no sense to me 16:31
why aren't subsequent wilds allowed? i would replace just the first with the lang capture, and then leave the rest of em
which are handled by the next s///;
tell me if i can remove the $ assertion and rerelease
gaal nothingmuch: moose 16:32
nothingmuch moose
coming to steffi's on fri? 16:33
gaal no, can't make it :(
nothingmuch dueu to transportation or other?
i might be able to arrange a solution if the first
gaal other
but thanks
nothingmuch ah well
i will relay a cold, heartless goodbye on your behalf
gaal please do 16:34
nothingmuch if i remember ;-)
gaal you mean you might forget and relay a warm, effluently kind farewell instead? that also works 16:35
nothingmuch i forget
maybe i meant that I might not remember to show up
svnbot6 r16660 | agentz++ | oops...added the Makefile for real this time 16:36
svnbot6 r16661 | agentz++ | updated docs/feather/script/update-syn to auto-html-ify docs/zh-cn/syn/*.pod 16:42
svnbot6 r16662 | agentz++ | docs/zh-cn/syn/Makefile - specified --index when invoking podhtm 16:57
svnbot6 r16663 | lwall++ | [STD.pm] nested block comments now handled 18:39
svnbot6 r16664 | moritz++ | minor corrections in debian/pugs.docs and debian/pugs-modules.install 19:55
riffraff hi everyone 20:04
fglock hi
moritz hi 20:05
gaal aiieeeee r14420 appeals to a _brace_ style? that really looks wrong to me -- and that particular brace style happens the one I use, myself 20:12
I forget who it was that proposed languages should mandate a particular style and make all others compile errors. The idea being not to advocate that author's preffered stlye, but to eliminate the holy wars. 20:14
s/fer/err/ 20:15
also, what happens when there's an if/else in this style? 20:16
riffraff gaal, I think there is something like that in object oriented software construction 20:19
but it's more like "no language should have feature such that you have to tell 'this should not be done usually' " 20:20
WRT public member variables, and blaming C++ IIRC
gaal heh
Tene "system('rm -rf /'); # This should not be done usually"
gaal actually, it should _never_ be done. the correct thing is to turn off swap and dd if=/dev/urandom of=/dev/hda :-p 20:22
riffraff Tene, yay for languages withouth access to esystem 20:28
I always said that
thoughtpolice while you're at it you might as well cat /dev/urandom > /dev/dsp
Tene cat /dev/dsp > /dev/hda 20:29
riffraff exec* is a bad family of functions
gaal "real programmers dd if=/dev/dsp of=a.out and whistle" 20:31
or, if we're getting nostalgic: "Real Programmers dd if=/dev/urandom of=a.out and influence the Universal Randomosity Field" 20:35
b_jonas that doesn't really work in programming but the physicist students do use a very similar method for when they have to hand in experiment log homeworks 20:38
meppl good night 20:40
svnbot6 r16665 | lwall++ | [STD] unhide pod inside block comments 20:58
TimToady gaal: r14420 is merely making allowances for that style, not mandating it. 20:59
as far as I can see, the only style that the new rules make life difficult for would be people who puts single-line blocks flush against the left margin, since commenting such a line would introduce #{ with no corresponding #} line. 21:08
but that seems like a rarity, and you can always comment with '# ' or ## in that case
DrSlump hello 21:20
Tene Or we could get even more awkward and make block comments not work if the preceding and trailing lines also begin with # 21:23
;)
DrSlump: Hi!
DrSlump hi tene 21:30
Tene DrSlump: you new here?
DrSlump anybody in europe here?
tene: not really, and yet the best answer would be no... ;) 21:31
Tene Heh.
DrSlump i'm following the p6* mailling lists for several years
yet i'm far from sure i can help 21:32
b_jonas europe?
DrSlump yeah
i'm trying a new free-phone-calls
freecallcentral.com/ 21:33
my phone number is:
003263226355
b_jonas: could you try to call me? 21:36
b_jonas no, sorry
DrSlump k
b_jonas perhaps ask on a bigger channel
DrSlump I'm doing that already ;) 21:37
it's funny
it works in fact
Tene: what are you trying to do? 21:38
Tene DrSlump: I don't understand the question. 21:39
DrSlump <Tene> Or we could get even more awkward and make block comments not work if the preceding and trailing lines also begin with #
?
Tene DrSlump: it was a non-serious response to a statement a little while before you joined. 21:41
irc.pugscode.org/ has logs
DrSlump oh, hehe "system('rm -rf /'); # This should not be done usually"... 21:43
sorry
thoughtpolice yeah, i mean, it's okay to run every time you need some additional space and all
:) 21:44
DrSlump no at all it's a special command when "/" is cluttered with "bin", "sbin", "usr", and such that dont serves anything 21:45
rm -Rf is the way to leave purgatory clean, well if someone can leave the purgatory cleanly... i heard of a cat that left it really damaged, greebo he was called..., 21:48
he is against all the evidence, a sweet, harmless kitten: en.wikipedia.org/wiki/Greebo 21:50
moritz YaY, revision 16666 22:46
svnbot6 r16666 | moritz++ | [irclog] template and documentation update
diakopter ?eval ?{}??0!!?$_ 23:58
evalbot_r16666 Bool::False 23:58