| Time |
S |
Nick |
Message |
| 00:17 |
|
buu |
Oh god, the reset function |
| 00:26 |
|
|
justathe1ry joined perl6 |
| 00:38 |
|
|
axarob joined perl6 |
| 00:45 |
|
|
justathe1ry is now known as justatheory |
| 01:07 |
|
|
Khisanth joined perl6 |
| 01:28 |
|
|
sanu790 joined perl6 |
| 01:30 |
|
sanu790 |
hi all |
| 01:30 |
|
|
jserv-- joined perl6 |
| 01:30 |
|
sanu790 |
hello |
| 01:30 |
|
sanu790 |
is anyone alive in this server |
| 01:30 |
|
jsiracusa |
I LIVE! |
| 01:30 |
|
TimToady |
nobody here but us chickens... |
| 01:31 |
|
|
jsiracusa is now known as siracusa |
| 01:31 |
|
sanu790 |
lol |
| 01:31 |
|
sanu790 |
how is it going chicken |
| 01:31 |
|
TimToady |
everything is all clucked up. |
| 01:32 |
|
sanu790 |
what? |
| 01:32 |
|
siracusa |
why do you encourage him |
| 01:33 |
|
sanu790 |
what does perl6 mean? |
| 01:33 |
|
TimToady |
perl5++ |
| 01:34 |
|
wolverian |
that doesn't bode well |
| 01:34 |
|
TimToady |
well, actually, it's perl7-- |
| 01:34 |
|
sanu790 |
lol |
| 01:35 |
|
wolverian |
now that's swell. did you see that Paul Graham mentioned perl6 in a recent (at least I think it's recent) interview? of course, all he said about it was that "it's even more like lisp [than ruby]". I don't think he ever says anything else about any language. |
| 01:36 |
|
wolverian |
(I mean, he always just compares them to lisp. I did not mean that he says that every language is more like lisp than ruby.) |
| 01:36 |
|
sanu790 |
lol |
| 01:37 |
|
mugwump |
sub postfix:<++>(Str where rx:/perl5/) { "perl7"-- } |
| 01:38 |
|
sanu790 |
so what do you ppls discuss here |
| 01:38 |
|
TimToady |
perl 6 design and development |
| 01:39 |
|
TimToady |
we specifically try to avoid discussing perl 5 problems here. |
| 01:39 |
|
wolverian |
mugwump, that should be a multi, probably. |
| 01:39 |
|
sanu790 |
which country are you from |
| 01:39 |
|
mugwump |
yeah, I figured that after I wrote it. It also does the wrong thing with "fooperl5ish"++ |
| 01:39 |
|
TimToady |
chicken's aint from turkey |
| 01:39 |
|
wolverian |
I guess 'where "perl5"' might work. |
| 01:39 |
|
sanu790 |
it is in europe and asia right? |
| 01:39 |
|
siracusa |
see what you've started |
| 01:40 |
|
TimToady |
s/'s ain/s ain'/ |
| 01:40 |
|
sanu790 |
I have no idea about perl5 |
| 01:40 |
|
TimToady |
would you like to help with perl 6? |
| 01:40 |
|
sanu790 |
what the hell is that |
| 01:41 |
|
sanu790 |
bye |
| 01:41 |
|
sanu790 |
I don't get this room |
| 01:41 |
|
sanu790 |
cya later |
| 01:41 |
|
|
sanu790 left perl6 |
| 01:41 |
|
mugwump |
gotta love irc |
| 01:42 |
|
TimToady |
bock bock |
| 01:42 |
|
wolverian |
good seeds today |
| 01:42 |
|
TimToady |
definitely up to scratch |
| 01:42 |
|
siracusa |
just think of how confused he would have been had you started to explain Perl 6 to him |
| 01:42 |
|
siracusa |
(or her) |
| 01:43 |
|
|
particle_ is now known as chicken |
| 01:43 |
|
|
chicken is now known as chicken_ |
| 01:43 |
|
|
chicken_ is now known as particle_ |
| 01:44 |
|
wolverian |
chicken particles, mmm |
| 01:45 |
|
wolverian |
I guess I'll have to take a course on shakespeare. this stuff is just too thick for me without someone forcing me to read it. |
| 01:47 |
|
TimToady |
chicken nuggets, as you like it... |
| 01:47 |
|
wolverian |
they had those back then? neat. |
| 01:47 |
|
|
pjcj joined perl6 |
| 01:47 |
|
TimToady |
what did you think "a pound of flesh" was? |
| 01:49 |
|
buu |
TimToady: Can I have a string prepend operator? |
| 01:49 |
|
wolverian |
a pound of flesh. |
| 01:49 |
|
PerlJam |
buu: All is fair if you predeclare |
| 01:49 |
|
particle_ |
wolverian: it's all about metaphor. |
| 01:49 |
|
buu |
PerlJam: Hrm.. |
| 01:49 |
|
TimToady |
yes, we'll call it "reset"... |
| 01:49 |
|
buu |
PerlJam: But I want it to be sexy and optimized |
| 01:49 |
|
buu |
TimToady: Reset eh? |
| 01:49 |
|
TimToady |
sorry, bad joke... |
| 01:49 |
|
wolverian |
buu, read the backbuffer .. |
| 01:49 |
|
particle_ |
reset 'my', 'interpreter'; |
| 01:50 |
|
buu |
wolverian: No I get it. |
| 01:50 |
|
buu |
wassercrats was in here. |
| 01:50 |
|
particle_ |
?eval reset |
| 01:50 |
|
buu |
eval: reset() |
| 01:50 |
|
p5evalbot |
buu: Return: 1 |
| 01:50 |
|
evalbot_10082 |
Error: No such sub: "&reset" |
| 01:50 |
|
buu |
heh |
| 01:50 |
|
wolverian |
particle_, I'm not very comfortable with metaphors. I feel excluded around them. |
| 01:50 |
|
buu |
I thought that got taken out of 5.8 =[ |
| 01:50 |
|
|
Quell joined perl6 |
| 01:50 |
|
buu |
What is string append now anyway? |
| 01:51 |
|
particle_ |
~ |
| 01:51 |
|
wolverian |
?eval my $foo = "foo"; $foo ~= " bar"; |
| 01:51 |
|
buu |
~= you mean? |
| 01:51 |
|
evalbot_10082 |
\"foo bar" |
| 01:51 |
|
particle_ |
yep |
| 01:51 |
|
buu |
Heh, we could almost do _= as a prepend |
| 01:51 |
|
wolverian |
finally there's a parser that's slower than me. |
| 01:52 |
|
TimToady |
so _ would mean reverse the args and append? :) |
| 01:52 |
|
particle_ |
~= also looks like assign in binary context |
| 01:52 |
|
|
Quell joined perl6 |
| 01:52 |
|
buu |
TimToady: Heh, not quite |
| 01:52 |
|
buu |
$x_=$y =:= "$y$x" |
| 01:53 |
|
PerlJam |
buu: isn't that what he said? |
| 01:53 |
|
buu |
I guess |
| 01:53 |
|
wolverian |
flip infix:<~> |
| 01:53 |
|
buu |
But 'reverse the args' sounds like it would modify $y, not $x |
| 01:53 |
|
particle_ |
how about #= :) |
| 01:53 |
|
wolverian |
$x.prepend($y) |
| 01:54 |
|
wolverian |
so, uh, is there a flip()? :) |
| 01:55 |
|
wolverian |
(haskellish) |
| 01:55 |
|
theorbtwo |
($x, $y) = ($y, $x) still works, AFAIK. |
| 01:56 |
|
PerlJam |
buu: how about just $x = "$y$x" ? That looks like a good prepend operator. |
| 01:56 |
|
wolverian |
&sub.flip(@foo) =:= &sub(@foo.reverse) |
| 01:56 |
|
|
Quell joined perl6 |
| 01:57 |
|
particle_ |
flip @off; |
| 01:57 |
|
|
Quell joined perl6 |
| 01:59 |
|
wolverian |
sleep 5`hours; |
| 02:00 |
|
buu |
PerlJam: But it is ugly |
| 02:01 |
|
buu |
PerlJam: And I dislike repeating the variable |
| 02:14 |
|
|
justatheory joined perl6 |
| 02:26 |
|
|
f0rth joined perl6 |
| 02:27 |
|
|
weinig|away is now known as weinig |
| 02:31 |
|
|
KingDillyDilly joined perl6 |
| 02:32 |
|
KingDillyDilly |
Best information on the future of the reset function that I've found: http://groups.google.com/group[…]/e86555009e886e36 |
| 02:36 |
|
KingDillyDilly |
Which sounds like it would be temporary in Perl 6 and go away once it's gone from Perl 5. |
| 02:37 |
|
nothingmuch |
remember the translator |
| 02:37 |
|
nothingmuch |
it's a compatibility library |
| 02:37 |
|
nothingmuch |
on top of the Perl 6 standard library |
| 02:39 |
|
KingDillyDilly |
So it would work with long-ago deprecated versions of Perl 5? Anyway, it's not an important function even to me. |
| 02:43 |
|
|
weinig is now known as weinig|sleep |
| 02:43 |
|
KingDillyDilly |
I'm glad I do CGI so I can install whatever Perl I want. I remember I was in a bookstore trying to decide what programming language to learn. If there had been a Perl 5 and Perl 6 book, I'd pick up the Perl 6 book, read that Perl 5 isn't going anywhere, be confused, and probably buy Perl 6. I think most people would do that. |
| 02:44 |
|
KingDillyDilly |
But now I feel I can stick with Perl 5 because my scripts won't run on other people's Perl. |
| 02:54 |
|
|
q[uri]_ joined perl6 |
| 02:59 |
|
KingDillyDilly |
...but at the same time, I want to be current and have skills that people need, so I'll probably be deciding to switch from Perl 5. |
| 03:02 |
|
|
Quell joined perl6 |
| 03:04 |
|
xinming |
KingDillyDilly: that's nonsense... No matter what perl 6 promised.... It still has a long way to go. And will you wait for 5 year again for perl 6? Maybe, there might be a candiate release this year.... Maybe next... and maybe the next year after next year... will you wait? Perl 5 is there, and works fine most times. Perl 6, at least, there is a long way to become production use... |
| 03:07 |
|
KingDillyDilly |
Perl 5 works absolutely fine for me right now, but it's possible in two years Perl 6 or Python or something will be a much more desired language to know. |
| 03:08 |
|
arcady |
ruby seems like the Cool New Thing at the moment |
| 03:08 |
|
KingDillyDilly |
So I'm not sure about starting any new projects with Perl 5, unless they're not really big. |
| 03:09 |
|
KingDillyDilly |
My web host doesn't support Ruby, I don't think. |
| 03:09 |
|
arcady |
you have to work with what you have, right now. because there will always be something better just over the horizon |
| 03:09 |
|
mugwump |
I don't feel so bad writing Perl 5, so long as I'm using Moose.pm |
| 03:09 |
|
|
q[uri]__ joined perl6 |
| 03:10 |
|
|
Quell joined perl6 |
| 03:13 |
|
|
Quell joined perl6 |
| 03:14 |
|
|
saorge_ joined perl6 |
| 03:15 |
|
KingDillyDilly |
I've been looking for predictions. I found http://freshmeat.net/articles/view/1339 but it's kind of old and very long. Maybe I'll look for something about Python's prospects for the future. But I'll be sticking with Perl 5 for now. I have no major projects planned. Just further developing current Perl 5 scripts. |
| 03:17 |
|
|
mako132_ joined perl6 |
| 03:19 |
|
* KingDillyDilly |
doesn't consider that an anti-Perl 6 webpage. There are comments at the bottom that disagree with the essay. |
| 03:19 |
|
spinclad |
whatever |
| 03:20 |
|
audreyt |
KingDillyDilly: hey |
| 03:20 |
|
audreyt |
rindolf (Shlomi Fish) |
| 03:20 |
|
KingDillyDilly |
The author's bio at the bottom of the essay isn't very impressive. |
| 03:20 |
|
audreyt |
that author is now a Pugs committer |
| 03:21 |
|
audreyt |
and has contributed several tests |
| 03:21 |
|
audreyt |
as well as spotting corner cases in the language |
| 03:21 |
|
|
Quell joined perl6 |
| 03:21 |
|
audreyt |
and has written examples/qotw/008e/graham.p6 |
| 03:21 |
|
audreyt |
etc |
| 03:22 |
|
KingDillyDilly |
Look at this...I try being nice and put down the author of an anti-Perl 6 article, and it backfires. |
| 03:22 |
|
audreyt |
so, that article is probably 1)outdated 2)not very relevant |
| 03:23 |
|
audreyt |
before 2005, the CPAN community isn't in general very happy about Perl 6 |
| 03:23 |
|
audreyt |
me included |
| 03:23 |
|
audreyt |
I wouldn't say it's "happy" now, but we've been slowly gaining goodwill. |
| 03:23 |
|
|
Quell joined perl6 |
| 03:23 |
|
|
stevan__ joined perl6 |
| 03:34 |
|
KingDillyDilly |
All I need is good documentation and the ability to somehow do what I want and that's enough. (basically) |
| 03:35 |
|
KingDillyDilly |
Tempting modules that I can't figure out ot won't run in Windows because they're not pure perl are --. |
| 03:37 |
|
audreyt |
re the win32 thing |
| 03:37 |
|
audreyt |
which module are you talking about? :) |
| 03:38 |
|
audreyt |
# http://www.cpan.org/modules/by[…]melpack-5.8.7.exe |
| 03:38 |
|
audreyt |
this small installer sets up everything you need to build non-pureperl modules |
| 03:41 |
|
KingDillyDilly |
Maybe it was Perlcc. I ended up using TinyPerl because it was the only free executable maker I could figure out, but I don't trust it's author. It was two or three years ago. Thanks for the link. |
| 03:42 |
|
KingDillyDilly |
I know Perlcc sucks anyway. |
| 03:45 |
|
audreyt |
I know someone who started a free executable maker. |
| 03:45 |
|
audreyt |
http://search.cpan.org/dist/PAR/ |
| 03:45 |
|
audreyt |
(my previous project before Pugs) |
| 03:45 |
|
|
FurnaceBoy_ joined perl6 |
| 03:45 |
|
audreyt |
it's... fairly widely used, I think |
| 03:46 |
|
KingDillyDilly |
Me too. The author of TinyPerl inexplicably plugged the guy's really bad executable maker. |
| 03:47 |
|
KingDillyDilly |
Oh...PAR...yeah...been there, tried that. I think that's what I couldn't understand. |
| 03:47 |
|
audreyt |
! |
| 03:47 |
|
audreyt |
pp your_script_here.pl |
| 03:47 |
|
audreyt |
that's all :p |
| 03:47 |
|
KingDillyDilly |
Basically tried everything that was free 2-3 years ago. |
| 03:49 |
|
KingDillyDilly |
I won't pick apart the docs. Don't want to review again them especially since I don't need them. I'll bookmark this chat page. |
| 03:50 |
|
audreyt |
# http://search.cpan.org/~smueller/PAR/script/pp |
| 03:50 |
|
audreyt |
I'm sorry then. I hope our documentation for PAR has improved in those 2-3 years |
| 03:50 |
|
KingDillyDilly |
Get back to Perl 6 talk before another flame war starts. |
| 03:50 |
|
audreyt |
sure :) |
| 03:54 |
|
KingDillyDilly |
I vaguely remember not even being sure Par was to be used as a regular module. It seemed really weird to me. But that's no reflection on you because I didn't know anything. |
| 03:55 |
|
* spinclad |
sits on hands |
| 04:04 |
|
KingDillyDilly |
Well, as long as nobody's speaking, I couldn't help looking at the docs for PAR. I bet two years ago I was looking for a way to specify an output file so I know where the executable would be saved. Still couldn't find a way now, but I didn't really look hard. |
| 04:05 |
|
KingDillyDilly |
Wouldn't have known what "# Pack 'hello' into executable 'a.out'" means. Still don't |
| 04:10 |
|
audreyt |
er. |
| 04:10 |
|
audreyt |
pp -o out hello.pl |
| 04:10 |
|
audreyt |
that's, like, that next line. |
| 04:10 |
|
audreyt |
% pp hello # Pack 'hello' into executable 'a.out' |
| 04:10 |
|
audreyt |
% pp -o hello hello.pl # Pack 'hello.pl' into executable 'hello' |
| 04:11 |
|
audreyt |
also, the line above reads |
| 04:11 |
|
audreyt |
Note: When running on Microsoft Windows, the a.out below will be replaced by a.exe instead. |
| 04:11 |
|
audreyt |
spinclad: hi! |
| 04:11 |
|
FurnaceBoy_ |
he can't answer right now |
| 04:11 |
|
* audreyt |
is releasing Locale::Maketext::{Lexicon,Simple} |
| 04:12 |
|
audreyt |
let's see if the CPAN toolchain can recognize the MIT license in META.yml... |
| 04:14 |
|
KingDillyDilly |
Well, I don't really know what was going through my mind then, but maybe "hellp" didn't look like a variable and didn't look like code and I didn't know what it was. |
| 04:14 |
|
KingDillyDilly |
s/hellp/hello/ |
| 04:17 |
|
KingDillyDilly |
The comment makes sense now. :-/ |
| 04:17 |
|
audreyt |
I'll fix the extensions |
| 04:18 |
|
audreyt |
thanks for the feedback |
| 04:18 |
|
KingDillyDilly |
Would have helped if "hello" was "hello.pl" I guess. |
| 04:18 |
|
audreyt |
how would you like to be credited in AUTHORS? |
| 04:18 |
|
audreyt |
(yup, going to make that change) |
| 04:18 |
|
KingDillyDilly |
As "Wassercrats...the man who terrorized PerlMonks. |
| 04:19 |
|
KingDillyDilly |
But, no, don't credit me. |
| 04:21 |
|
audreyt |
ok... as you wish :) |
| 04:22 |
|
audreyt |
done |
| 04:22 |
|
audreyt |
thanks! |
| 04:23 |
|
KingDillyDilly |
Always glad to complain. :) |
| 04:23 |
|
|
khisanth_ joined perl6 |
| 04:25 |
|
audreyt |
I think clkao will absolutely love you ;) |
| 04:25 |
|
KingDillyDilly |
Well, my work is done here. |
| 04:25 |
|
audreyt |
(it's known that audrey projects, such as PAR/Pugs, is primarily motivated by appreciation, while clkao's projects is motivated by complaints) |
| 04:26 |
|
KingDillyDilly |
Oh. I'll seek out more of clkao's work then. |
| 04:26 |
|
|
KingDillyDilly left perl6 |
| 04:30 |
|
svnbot6 |
r10095 | spinclad++ | - first tweaks to optable.h |
| 04:32 |
|
* audreyt |
looks forward seeing KDD on #svk |
| 04:32 |
|
spinclad |
audreyt: hey |
| 04:33 |
|
spinclad |
sorry, wasn't attending the trollfest |
| 04:33 |
|
FurnaceBoy_ |
he'd be a hit on #svn too |
| 04:33 |
|
FurnaceBoy_ |
they have ... ways of dealing with the type |
| 04:36 |
|
spinclad |
audreyt: i've seen what judy's about, and ci'd some minimal non-fixes to optable.h |
| 04:38 |
|
spinclad |
i think my next steps are to look over patrick's code. |
| 04:38 |
|
audreyt |
yup |
| 04:38 |
|
audreyt |
https://svn.perl.org/parrot/br[…]e/PGE/OPTable.pir |
| 04:39 |
|
spinclad |
on the whole, i expect to push for pushing just the very core into C... but no concrete proposals yet |
| 04:39 |
|
audreyt |
OPTable is 519 lines PIR |
| 04:40 |
|
audreyt |
which is likely less than that in C |
| 04:40 |
|
spinclad |
oh, right, not the whole of PGE. heh. |
| 04:40 |
|
mugwump |
just think of all the extra SPEEEEEEEED you'd get from writing it in C |
| 04:40 |
|
|
q[uri] joined perl6 |
| 04:40 |
|
mugwump |
when are you rewriting pugs in C, audreyt ? |
| 04:40 |
|
* FurnaceBoy_ |
ducks |
| 04:41 |
|
mugwump |
:) |
| 04:41 |
|
spinclad |
speed in writing it, yes? |
| 04:41 |
|
* FurnaceBoy_ |
lies prostrate |
| 04:41 |
|
mugwump |
nonono, "doing it right" takes longer you see. but you get a "real" application at the end |
| 04:41 |
|
audreyt |
mugwump: it makes sense to put the hotspot bottleneck code in C |
| 04:42 |
|
audreyt |
also, maximizes sharing between pir/p5/hs |
| 04:42 |
|
spinclad |
and one hopes the glue code won't overwhelm the content |
| 04:43 |
|
audreyt |
certainly FFI and XS is fast enough |
| 04:43 |
|
audreyt |
and Parrot NCI should be fine as well |
| 04:43 |
|
audreyt |
if it's not fine, just wrap it in a .pmc |
| 04:43 |
|
audreyt |
and vtable would be fine. |
| 04:44 |
|
audreyt |
I think it also makes sense to have default "ws" callbacks |
| 04:44 |
|
audreyt |
that parses perl6 comments |
| 04:44 |
|
audreyt |
but that's for future |
| 04:44 |
|
audreyt |
for now static loop would do very well :) |
| 04:45 |
|
spinclad |
FFI, XS, NCI: all the best tools. my resume will be unbeatable. |
| 04:45 |
|
audreyt |
:D |
| 04:52 |
|
* audreyt |
finally realized KDD = Wasssercrats |
| 04:52 |
|
audreyt |
(and read the backlog) |
| 04:53 |
|
audreyt |
why is it that I never got the chance to participate in a trollfest? |
| 04:53 |
|
audreyt |
I'd prefer them over licensefests :) |
| 04:53 |
|
* audreyt |
goes back hacking parsec into pieces, hopefully this is the last batch |
| 04:54 |
|
FurnaceBoy_ |
oh, there'll be no shortage of future opportunities, I fear |
| 04:55 |
|
spinclad |
apropos of nothing, do you think we could get a couple of ops bits in here? they could come in handy now and then... |
| 04:56 |
|
audreyt |
I believe /ignore over /op... |
| 04:56 |
|
audreyt |
and freenode has realadmins |
| 04:56 |
|
audreyt |
for really noncommunicable destructive behaviours |
| 04:57 |
|
audreyt |
so... maybe not :) |
| 04:57 |
|
* audreyt |
was almost kicked out of #perl by lathos the first time she got there |
| 04:57 |
|
audreyt |
(so I'm quite wary of ophood) |
| 04:58 |
|
|
LumberCartel joined perl6 |
| 05:00 |
|
spinclad |
yeah, the tension over using ophood wisely (or at all) just adds to the tension over marginal characters |
| 05:01 |
|
spinclad |
and being marginal in responding to them |
| 05:02 |
|
audreyt |
yeah, so (as you may have noticed) I'd like to unraise this tension :) |
| 05:02 |
|
|
pdcawley joined perl6 |
| 05:04 |
|
spinclad |
i have noticed, and that you do so better than me |
| 05:05 |
|
audreyt |
maybe it's because of the estrogens... |
| 05:05 |
|
* FurnaceBoy_ |
wonders where he can get some of em |
| 05:06 |
|
audreyt |
try not to take them without doctor supervision... |
| 05:06 |
|
audreyt |
...but if you really want, there's plenty of online ordering outlets. |
| 05:06 |
|
FurnaceBoy_ |
what, in the room? |
| 05:06 |
|
FurnaceBoy_ |
:) |
| 05:06 |
|
audreyt |
lol |
| 05:07 |
|
LumberCartel |
You should advocate online ordering outlets that were written with Perl. |
| 05:09 |
|
audreyt |
but how do I really know they are written with Perl? |
| 05:09 |
|
spinclad |
[oestrogens] could be... i do know that when my anger buttons get pushed, i can direct some of the energy usefully, but a lot is still directed towards the other person. |
| 05:09 |
|
LumberCartel |
Look for Camel tracks. |
| 05:10 |
|
mugwump |
that everthatsdfasdfkjhadsfasdfasdf |
| 05:10 |
|
mugwump |
bah |
| 05:11 |
|
spinclad |
.oO{example?} |
| 05:12 |
|
|
KingDillyDilly joined perl6 |
| 05:12 |
|
spinclad |
.oO{example} |
| 05:13 |
|
|
stevan_ joined perl6 |
| 05:15 |
|
KingDillyDilly |
FurnaceBoy: the type who does what? I though you didn't remember anything. |
| 05:16 |
|
spinclad |
? |
| 05:17 |
|
KingDillyDilly |
When I said "All I need is good documentation and the ability to somehow do what I want and that's enough. (basically)" I was thinking of FurnaceBoy, spinclad, and a few others, the likes of which I don't want in the community. |
| 05:18 |
|
KingDillyDilly |
When I said "basically" |
| 05:18 |
|
audreyt |
KingDillyDilly: I understand. I agree good docs is a must - the docs/Perl6/Overview/ tree can be improved |
| 05:18 |
|
audreyt |
and docs/Perl6/Tutorial/ and API/ is missing |
| 05:19 |
|
audreyt |
KingDillyDilly: if you have some time to look over the overview tree: |
| 05:19 |
|
audreyt |
http://svn.openfoundry.org/pug[…]s/Perl6/Overview/ |
| 05:19 |
|
audreyt |
before we upload it to CPAN |
| 05:19 |
|
KingDillyDilly |
Ok, ok... |
| 05:19 |
|
audreyt |
and commit improvements to them |
| 05:19 |
|
audreyt |
I'd be very happy |
| 05:20 |
|
audreyt |
if you don't yet have a commit bit (the username/passwd to check into pugs repository), tell me your email address and I'll send you one. |
| 05:23 |
|
LumberCartel |
I'm looking forward to getting into Perl6, and especially anticipating mod_perl6. |
| 05:23 |
|
KingDillyDilly |
Yeah, well, get back to your camel hunt. Don't want a commit bit. |
| 05:23 |
|
|
KingDillyDilly left perl6 |
| 05:23 |
|
audreyt |
oh well :) |
| 05:23 |
|
audreyt |
it worked better with rindolf... |
| 05:23 |
|
LumberCartel |
Those overview docs are the first I've seen of Perl6, and so far the File stuff looks better. |
| 05:24 |
|
audreyt |
LumberCartel: cool. mod_parrot supports pugs bindings for some time now, but we don't yet have a ModPerl::* module tree |
| 05:24 |
|
LumberCartel |
Yikes! Built-in functions are empty for now? I would love to offer to help, but I've not looked into Perl6 at all. |
| 05:24 |
|
audreyt |
the more near-term way would be compiling perl 6 to perl5 |
| 05:24 |
|
audreyt |
and use mod_perl |
| 05:24 |
|
LumberCartel |
Heheh. |
| 05:25 |
|
audreyt |
that's okay, 14 months ago I know nothing about perl6 as well :) |
| 05:25 |
|
LumberCartel |
I use mod_perl heavily now. |
| 05:25 |
|
audreyt |
for builtin functions there is |
| 05:25 |
|
audreyt |
http://svn.openfoundry.org/pug[…]pec/Functions.pod |
| 05:25 |
|
audreyt |
but it's heavily disorganized |
| 05:25 |
|
audreyt |
should be split into per-class bits and put into API |
| 05:26 |
|
LumberCartel |
Similar to Perl5's built-in functions list? |
| 05:26 |
|
audreyt |
yeah, except perl 6's objects sometimes have methods that is not exposed as functions |
| 05:27 |
|
audreyt |
like @array.elems |
| 05:27 |
|
audreyt |
you can still write elems(@array) |
| 05:27 |
|
audreyt |
but elems(1,2,3,4,5) wouldn't work |
| 05:27 |
|
audreyt |
as it's really a method call on the array, not a general global function |
| 05:27 |
|
LumberCartel |
So the requirements for the documentation will require more sophistication then. |
| 05:27 |
|
audreyt |
indeed |
| 05:27 |
|
LumberCartel |
What about documenting them separately? |
| 05:27 |
|
LumberCartel |
Sort of how it's done with Java? |
| 05:28 |
|
audreyt |
cf. http://www.ruby-doc.org/core/classes/Array.html |
| 05:28 |
|
audreyt |
I like that style a lot |
| 05:28 |
|
audreyt |
and that's what I think the docs/Perl6/API/Array.pod should contain |
| 05:28 |
|
LumberCartel |
That's sort of what I meant. |
| 05:28 |
|
audreyt |
nod |
| 05:28 |
|
audreyt |
the size of perlfunc.pod is already a problem with perl5 |
| 05:29 |
|
audreyt |
and it's going to be worse if we don't refactor out... |
| 05:29 |
|
audreyt |
so, an easy first-step task is to split Functions.pod above |
| 05:29 |
|
audreyt |
by class boundaries |
| 05:29 |
|
LumberCartel |
Perhaps it's time to start using subdirectories to split the files apart. |
| 05:29 |
|
audreyt |
and commit them into separate .pod using docs/ tree |
| 05:29 |
|
audreyt |
docs/Perl6/API/ |
| 05:29 |
|
audreyt |
I mean |
| 05:29 |
|
audreyt |
would you be interested in doing that? :) |
| 05:29 |
|
LumberCartel |
I don't see a problem with deeper directory structures, especially since most Operating Systems these days can handle very deep trees. |
| 05:30 |
|
LumberCartel |
I would be... |
| 05:30 |
|
audreyt |
cool! your email? |
| 05:30 |
|
audreyt |
I'll send you a commit bit :) |
| 05:30 |
|
LumberCartel |
...once I've had a chance to learn some more about Perl6. |
| 05:30 |
|
audreyt |
aww |
| 05:30 |
|
LumberCartel |
I'm going to create a special eMail for Perl6 stuff, I'll be right back... |
| 05:31 |
|
audreyt |
k |
| 05:31 |
|
TimToady |
seems fine to classify even MMD functions by first arg... |
| 05:32 |
|
LumberCartel |
I need a functioning Perl6 interpreter to experiment with. |
| 05:33 |
|
arcady |
I think pugs is pretty functioning |
| 05:33 |
|
arcady |
then again, my test of functioning is if it do 2 + 2 |
| 05:34 |
|
LumberCartel |
I'm not expecting production quality, just something to play around with. |
| 05:34 |
|
LumberCartel |
arcady: What's the matter, 1 + 1 isn't good enough for you? ;-) |
| 05:34 |
|
audreyt |
LumberCartel: you can check out pugs with |
| 05:35 |
|
audreyt |
svn co http://svn.openfoundry.org/pugs |
| 05:35 |
|
audreyt |
cd pugs ; perl Makefile.PL ; make |
| 05:35 |
|
audreyt |
(wait a while, say 15 minutes) |
| 05:35 |
|
audreyt |
and then you'll have a ./pugs to play with |
| 05:35 |
|
audreyt |
("make install" should also work) |
| 05:36 |
|
LumberCartel |
I can wait, that's no problem. |
| 05:36 |
|
audreyt |
waiting for the GHC compiler, not for humans :) |
| 05:36 |
|
audreyt |
so, what's your email? |
| 05:37 |
|
audreyt |
TimToady: I think for MMD that biases toward the first arg, like push(), that's fine |
| 05:37 |
|
audreyt |
to classify it under Array.pod |
| 05:37 |
|
audreyt |
otherwise probably makes sense to list it under the Role that mandates the interface |
| 05:37 |
|
TimToady |
SMD is just slightly more biased. ) |
| 05:37 |
|
audreyt |
like the comparisons |
| 05:37 |
|
TimToady |
:) |
| 05:37 |
|
audreyt |
sure, but infix:<+> doesn't not bias toward the first arg :) |
| 05:37 |
|
TimToady |
cross refs are fine... |
| 05:38 |
|
audreyt |
yay |
| 05:39 |
|
TimToady |
but people don't know how to do MMD lookups in an index yet... |
| 05:39 |
|
spinclad |
if it's clear which arg to index it under, i could see putting the main doc for a function as close to the root as applies, with entries on classes/roles that add something notable |
| 05:40 |
|
audreyt |
right. |
| 05:40 |
|
audreyt |
agreed |
| 05:41 |
|
arcady |
though cross references are good |
| 05:42 |
|
arcady |
one of the things that annoys me in ruby's docs is that I know what methods, say, Array has |
| 05:42 |
|
arcady |
but then have to figure out which of them come from mixins |
| 05:42 |
|
arcady |
to actually look up the docs for them |
| 05:43 |
|
LumberCartel |
Sorry audreyt, I had something urgent to deal with. Anyway, my eMail address is: [email hidden.address] |
| 05:43 |
|
audreyt |
sent. welcome aboard! |
| 05:43 |
|
LumberCartel |
Thanks! |
| 05:43 |
|
spinclad |
yay! |
| 05:43 |
|
audreyt |
please test your commit to http://svn.openfoundry.org/pugs/ by adding yourself to AUTHORS |
| 05:43 |
|
LumberCartel |
And there it is... |
| 05:43 |
|
audreyt |
I need to run to $job |
| 05:44 |
|
audreyt |
be back in an hour or so |
| 05:44 |
|
LumberCartel |
Thanks Audrey... |
| 05:44 |
|
audreyt |
thank _you_ :) |
| 05:44 |
|
audreyt |
& |
| 05:44 |
|
|
Quell joined perl6 |
| 05:44 |
|
LumberCartel |
Oh, with regards to which sections to document functions in, what's wrong with documenting the same in multiple places? |
| 05:44 |
|
LumberCartel |
With some sort of an alias? |
| 05:45 |
|
audreyt |
LumberCartel: if the doc changes we'dneed to change many places? |
| 05:45 |
|
audreyt |
better to use L<> for now |
| 05:45 |
|
LumberCartel |
This way if someone's looking for a function that fits into two categories, they'll be able to find it faster no matter which category they look into? |
| 05:45 |
|
audreyt |
until ingy & dconway implements =include |
| 05:45 |
|
LumberCartel |
That's why I'm mentioning aliases. |
| 05:45 |
|
audreyt |
sure, then |
| 05:45 |
|
TimToady |
=does is more like it... |
| 05:45 |
|
audreyt |
that's the way it should be |
| 05:45 |
|
audreyt |
=does then. |
| 05:45 |
|
LumberCartel |
Have one set for the actual documentation, and multiple things can reference it. |
| 05:46 |
|
TimToady |
can de-genericize the role's doc while it's at it. |
| 05:46 |
|
LumberCartel |
Ah, but that will require a lot of changes on the client side where a server or scripting isn't in effect. |
| 05:46 |
|
TimToady |
as long as the derived text is marked well, it can be dealt with. |
| 05:47 |
|
LumberCartel |
This will obviously require careful planning. |
| 05:47 |
|
LumberCartel |
Am I correct to assume that the documentation hasn't really be considered very deeply yet? |
| 05:47 |
|
audreyt |
it would require swarm tactics and nonstop refactoring :) |
| 05:47 |
|
audreyt |
LumberCartel: that is correct. |
| 05:48 |
|
LumberCartel |
So we sort of have an empty slate to work with in the context of organization. |
| 05:48 |
|
audreyt |
btw, if I'm not around to hand out commit bits, people are more than welcome to rt.openfoundry.org |
| 05:48 |
|
audreyt |
and nvite people using the UI in http://rt.openfoundry.org/Foun[…]embers/?Queue=270 |
| 05:48 |
|
audreyt |
LumberCartel: yes. Skud did some initial sketch |
| 05:49 |
|
audreyt |
see docs/Perl6/README and docs/Perl6/Doc.pod |
| 05:49 |
|
LumberCartel |
My real name is Randolf Richardson. |
| 05:49 |
|
audreyt |
but please feel free to add or change the README |
| 05:49 |
|
audreyt |
gotcha. |
| 05:49 |
|
LumberCartel |
I'm going to make a concerted effort to understand the updating procedures first because others will obviously be making contributions too. |
| 05:49 |
|
audreyt |
cool |
| 05:50 |
|
TimToady |
this whole thing is predicated on plunging ahead fearlessly. |
| 05:50 |
|
LumberCartel |
Is there a system like CVS that you're using now? I'm not advocating CVS. |
| 05:50 |
|
audreyt |
yes, it's called Subversion |
| 05:50 |
|
LumberCartel |
Larry Wall style, right? |
| 05:50 |
|
audreyt |
svn co http://svn.openfoundry.org/ |
| 05:50 |
|
audreyt |
well, consider that TimToady _is_ Larry Wall... |
| 05:50 |
|
audreyt |
not very surprising :) |
| 05:50 |
|
audreyt |
svn co http://svn.openfoundry.org/pugs/ |
| 05:50 |
|
audreyt |
sorry, that line above is the command to use |
| 05:51 |
|
spinclad |
our style is to commit early and often, and merge on collisions |
| 05:51 |
|
audreyt |
but really, gotta run. see you in a bit & |
| 05:51 |
|
LumberCartel |
Okay. I haven't used any of those versioning systems so far, so this will be a learning curve for me. Oh well, it's about time I dived into the 21st century I guess. =) |
| 05:51 |
|
LumberCartel |
Thanks a lot. |
| 05:51 |
|
LumberCartel |
I'll see you around. |
| 05:52 |
|
gaal |
oops, audreyt, I keep missing you |
| 05:52 |
|
TimToady |
though all things considered, if you have a choice between plunging ahead fearlessly stupidly like Larry Wall, or plunging ahead fearlessly cleverly like Audrey Tang, I know which to pick... :) |
| 05:52 |
|
gaal |
morning all :) |
| 05:52 |
|
spinclad |
(just like highway traffic) |
| 05:52 |
|
audreyt |
gaal: I miss you too, but I really gotta run :) |
| 05:52 |
|
audreyt |
& |
| 05:52 |
|
gaal |
bye |
| 05:52 |
|
LumberCartel |
audreyt: Zai Jian! |
| 05:53 |
|
LumberCartel |
afk |
| 05:55 |
|
LumberCartel |
Good night everyone. Happy tree felling! |
| 05:55 |
|
spinclad |
sweet dreams |
| 05:59 |
|
|
pdcawley joined perl6 |
| 06:02 |
|
gaal |
there was a question floated here a while ago, I don't think I saw the answer to. say I have a few multis with the same name, how do I bind something to one of them? |
| 06:03 |
|
gaal |
and, can I .wrap one variant? |
| 06:03 |
|
gaal |
and, do we in fact call them variants? |
| 06:03 |
|
gaal |
ugh, that's three questions. |
| 06:04 |
|
spinclad |
good questions though |
| 06:04 |
|
|
Cryptic_K joined perl6 |
| 06:04 |
|
gaal |
spinclad: the first one was yours, wasn't it? |
| 06:07 |
|
audreyt |
use variant selectors |
| 06:07 |
|
audreyt |
multi f (Int $x) {...} |
| 06:07 |
|
audreyt |
multi f (Str $x) { ... } |
| 06:07 |
|
audreyt |
think &f as a passthru proto |
| 06:08 |
|
audreyt |
&f:(Int) is a variant selector |
| 06:08 |
|
audreyt |
shorthand for &f.variant(Int) |
| 06:08 |
|
spinclad |
gaal: don't think so, maybe i've forgotten |
| 06:08 |
|
audreyt |
just like &f\(3) is &f.assuming(3) |
| 06:08 |
|
svnbot6 |
r10096 | audreyt++ | * Parser.Operator: -e -w etc should be under "named" not |
| 06:08 |
|
svnbot6 |
r10096 | audreyt++ | "symbolic" prec level. |
| 06:08 |
|
audreyt |
each selected variant is in itself another Sub object |
| 06:08 |
|
audreyt |
(or Method object) |
| 06:08 |
|
audreyt |
which are mutable |
| 06:08 |
|
audreyt |
so you can indeed .wrap them. |
| 06:08 |
|
audreyt |
you can also .wrap the toplevel &f if you want. |
| 06:08 |
|
audreyt |
end of explanation |
| 06:09 |
|
audreyt |
(and yes I'm still primping ;)) |
| 06:09 |
|
TimToady |
:) |
| 06:09 |
|
TimToady |
I presume we can wrap something that's partially selected... |
| 06:09 |
|
audreyt |
sure... but then the MMD engine has to consider those wraps separately |
| 06:09 |
|
TimToady |
sort of a .assuming on the dispatch process |
| 06:10 |
|
audreyt |
yup |
| 06:10 |
|
audreyt |
that's fine w/ me |
| 06:10 |
|
audreyt |
the ordering though |
| 06:10 |
|
audreyt |
is not guaranteed beyond the usual LTR positionals |
| 06:10 |
|
gaal |
does the wrapper have to have the same proto as the wrapee? |
| 06:10 |
|
audreyt |
(because &f\(y=>3) can trigger a variant) |
| 06:11 |
|
audreyt |
gaal: a compatible one, I think, as in subtype-of |
| 06:11 |
|
audreyt |
as in "all that binds here must still bind here" |
| 06:11 |
|
gaal |
and, once wrapped, isn't a variant guaranteed inaccessible except of through the wrap? |
| 06:11 |
|
audreyt |
the wrap is modifying a mutable doubly-linked list |
| 06:11 |
|
gaal |
so MMD must be wrap-blind |
| 06:11 |
|
audreyt |
so to the MMD it's as if the variant havn't chanced |
| 06:12 |
|
audreyt |
the question is whether you can wrap the subset selected |
| 06:12 |
|
audreyt |
which means a separate non-blind process |
| 06:12 |
|
audreyt |
and a more elaborate data structure |
| 06:12 |
|
audreyt |
but I think if we spec so that a wrapped subset-selection just distribute back to its concrete members |
| 06:12 |
|
gaal |
hmm, yes, which may need to introduce more variants no? or possibly change mmd selection |
| 06:13 |
|
audreyt |
i.e. &f.wrap is really .wrap (recursively) to all its variants |
| 06:13 |
|
audreyt |
then that works transparently |
| 06:13 |
|
TimToady |
until you add a new one... |
| 06:13 |
|
audreyt |
and is I think easier to teach people. |
| 06:13 |
|
spinclad |
can we unwrap (and can we unwrap one of several wraps)? |
| 06:13 |
|
audreyt |
TimToady: yes, but the new one should arguably not be affected... |
| 06:13 |
|
audreyt |
TimToady: basically I'd like to distinguish &f.wrap with &f:(Something).wrap |
| 06:13 |
|
TimToady |
depends how AOPish you're thinking of it... |
| 06:14 |
|
audreyt |
the first changes the toplevel and affects newly introduced |
| 06:14 |
|
audreyt |
but the later is really a shallow set |
| 06:14 |
|
audreyt |
it can't (easily) have identity |
| 06:14 |
|
audreyt |
but if you think full wupport for that is needed |
| 06:14 |
|
TimToady |
it's more like a rule-defined set rather than enumerated, but we can leave it go for now. |
| 06:14 |
|
audreyt |
I can certainly figure out a data structure that supports it :) |
| 06:14 |
|
audreyt |
*nod* |
| 06:15 |
|
audreyt |
whew |
| 06:15 |
|
gaal |
sub cristmas (Code &f) { 1 while &f.=unwrap != &f } |
| 06:15 |
|
|
PseudoPlacebo joined perl6 |
| 06:15 |
|
audreyt |
is the opposite of === =!=? ;) |
| 06:16 |
|
gaal |
yeah and with an h somewhere up there too |
| 06:16 |
|
gaal |
and a more binding form of .= I suppose? |
| 06:16 |
|
spinclad |
but &f.=anything == &f always |
| 06:16 |
|
audreyt |
===, please :) |
| 06:17 |
|
audreyt |
@a.=push; # not == @a anymore |
| 06:17 |
|
audreyt |
I mean .=push(1) |
| 06:17 |
|
spinclad |
or else unspecified as to order of eval |
| 06:17 |
|
audreyt |
it's not sure how code numifies, anyway. |
| 06:17 |
|
audreyt |
probably an error, I hope, though arity makes some limited sense. |
| 06:18 |
|
audreyt |
or maybe just .id. |
| 06:18 |
|
audreyt |
(the perl5 way) |
| 06:18 |
|
TimToady |
Obviously, it should return its Godel number or some such... |
| 06:19 |
|
audreyt |
that's entirely too obvious... |
| 06:19 |
|
spinclad |
@a.=push(1) # still == the new @a |
| 06:19 |
|
audreyt |
.perl.as(buf); # Godel number, yay |
| 06:19 |
|
TimToady |
that's why I said "or some such", just to throw you off... |
| 06:19 |
|
audreyt |
spinclad: oh sure |
| 06:20 |
|
gaal |
audreyt: modulo '...' |
| 06:20 |
|
audreyt |
gaal: Illegal modulus undefined |
| 06:22 |
|
gaal |
.perl:recurse_limit{undef}.as:type<buf>:filter<bz2> |
| 06:22 |
|
gaal |
or something. |
| 06:22 |
|
audreyt |
I prefer something :) |
| 06:22 |
|
audreyt |
& |
| 06:24 |
|
|
Quell joined perl6 |
| 06:31 |
|
|
Cryptic_K joined perl6 |
| 06:31 |
|
|
marmic joined perl6 |
| 06:33 |
|
|
ghenry joined perl6 |
| 06:46 |
|
|
Quell joined perl6 |
| 06:49 |
|
|
iblechbot joined perl6 |
| 06:56 |
|
|
hugues23 joined perl6 |
| 06:57 |
|
|
KingDiamond joined perl6 |
| 06:58 |
|
|
Cryptic_K joined perl6 |
| 07:06 |
|
|
premshree_ joined perl6 |
| 07:06 |
|
|
rgs joined perl6 |
| 07:38 |
|
|
drrho joined perl6 |
| 07:48 |
|
|
nail__ joined perl6 |
| 07:48 |
|
|
drrho joined perl6 |
| 07:48 |
|
|
iblechbot joined perl6 |
| 07:48 |
|
|
stevan_ joined perl6 |
| 07:48 |
|
|
q[uri] joined perl6 |
| 07:48 |
|
|
jserv-- joined perl6 |
| 07:48 |
|
|
SamB joined perl6 |
| 07:48 |
|
|
perlbot joined perl6 |
| 07:48 |
|
|
obra joined perl6 |
| 07:48 |
|
|
qwacky joined perl6 |
| 07:48 |
|
|
miyagawa joined perl6 |
| 07:48 |
|
|
sri_ joined perl6 |
| 07:48 |
|
|
hcchien joined perl6 |
| 07:48 |
|
|
rmoriz joined perl6 |
| 07:48 |
|
|
rashakil joined perl6 |
| 07:48 |
|
|
amv joined perl6 |
| 07:48 |
|
|
buu joined perl6 |
| 07:48 |
|
|
tcliou joined perl6 |
| 07:48 |
|
|
Soga joined perl6 |
| 07:48 |
|
|
gaal joined perl6 |
| 07:48 |
|
|
PerlJam joined perl6 |
| 07:48 |
|
|
oozy joined perl6 |
| 07:48 |
|
|
SubStack joined perl6 |
| 07:48 |
|
|
dbrock joined perl6 |
| 07:48 |
|
|
arguile joined perl6 |
| 07:48 |
|
|
Odin- joined perl6 |
| 07:48 |
|
|
Grrrr joined perl6 |
| 07:48 |
|
|
xern joined perl6 |
| 07:48 |
|
|
scw joined perl6 |
| 07:48 |
|
|
weinig|sleep joined perl6 |
| 07:48 |
|
|
nothingmuch joined perl6 |
| 07:48 |
|
|
arcady joined perl6 |
| 07:48 |
|
|
hlen joined perl6 |
| 07:48 |
|
|
ruz joined perl6 |
| 07:48 |
|
|
merlyn joined perl6 |
| 07:48 |
|
|
kane-xs joined perl6 |
| 07:48 |
|
|
Aragone joined perl6 |
| 07:48 |
|
|
drbean joined perl6 |
| 07:48 |
|
|
mugwump joined perl6 |
| 07:48 |
|
|
theorbtwo joined perl6 |
| 07:48 |
|
|
dvtoo joined perl6 |
| 07:48 |
|
|
p5evalbot joined perl6 |
| 07:48 |
|
|
meppl joined perl6 |
| 07:48 |
|
|
Gothmog_ joined perl6 |
| 07:48 |
|
|
broquaint joined perl6 |
| 07:48 |
|
|
jabbot joined perl6 |
| 07:48 |
|
|
kcwu joined perl6 |
| 07:48 |
|
|
webmind joined perl6 |
| 07:48 |
|
|
wolverian joined perl6 |
| 07:48 |
|
|
knewt joined perl6 |
| 07:48 |
|
|
masak joined perl6 |
| 07:48 |
|
|
jiing_ joined perl6 |
| 07:48 |
|
|
rw-rw-r-- joined perl6 |
| 07:48 |
|
|
cookys joined perl6 |
| 07:48 |
|
|
orafu joined perl6 |
| 07:48 |
|
|
Maddingue joined perl6 |
| 07:48 |
|
|
gugod joined perl6 |
| 07:48 |
|
|
ingy joined perl6 |
| 07:48 |
|
|
locksy joined perl6 |
| 07:48 |
|
|
TreyHarris joined perl6 |
| 07:48 |
|
|
Aankhen`` joined perl6 |
| 07:48 |
|
|
marmic_ joined perl6 |
| 07:48 |
|
|
obra joined perl6 |
| 07:48 |
|
|
revdiablo joined perl6 |
| 07:48 |
|
|
buu_ joined perl6 |
| 07:48 |
|
|
chip joined perl6 |
| 07:48 |
|
|
xerox joined perl6 |
| 07:48 |
|
|
rgs_ joined perl6 |
| 07:48 |
|
|
qmole_ joined perl6 |
| 07:48 |
|
|
integral_ joined perl6 |
| 07:48 |
|
|
pmichaud_ joined perl6 |
| 07:49 |
|
|
DesreveR joined perl6 |
| 07:53 |
|
|
elmex joined perl6 |
| 07:53 |
|
|
GeJ_ joined perl6 |
| 07:55 |
|
|
geoffb joined perl6 |
| 07:58 |
|
|
KingDiamond joined perl6 |
| 08:00 |
|
|
rgs_ is now known as rgs |
| 08:04 |
|
|
Shabble_ joined perl6 |
| 08:14 |
|
|
scook0 joined perl6 |
| 08:25 |
|
|
Aragone is now known as Arathorn |
| 08:31 |
|
|
GeJ_ is now known as GeJ |
| 08:49 |
|
|
scook0 joined perl6 |
| 10:05 |
|
|
kanru joined perl6 |
| 10:05 |
|
|
meppl joined perl6 |
| 10:13 |
|
|
dakkar joined perl6 |
| 10:19 |
|
|
cdpruden joined perl6 |
| 10:41 |
|
meppl |
guten morgen |
| 10:46 |
|
|
hugues23 joined perl6 |
| 10:53 |
|
|
ruz joined perl6 |
| 11:03 |
|
* dakkar |
is away: pranzo |
| 11:11 |
|
|
integral_ is now known as integral |
| 11:16 |
|
|
Odin-LAP joined perl6 |
| 12:09 |
|
|
froh-doh joined perl6 |
| 12:14 |
|
|
Limbic_Region joined perl6 |
| 12:22 |
|
|
iblechbot joined perl6 |
| 12:25 |
|
* dakkar |
is back (gone 01:21:29) |
| 12:29 |
|
audreyt |
scw++ |
| 12:29 |
|
audreyt |
http://yaphb.blogspot.com/ |
| 12:29 |
|
audreyt |
# " Yet Another Pugs Hacker's Blog " |
| 12:33 |
|
szbalint |
hey audreyt |
| 12:33 |
|
szbalint |
I've received an email from openfoundry that you made me an 'admin' on the project, was that intentional (didn't you mean someone else?) |
| 12:39 |
|
audreyt |
that was intentional |
| 12:39 |
|
audreyt |
http://rt.openfoundry.org/Foun[…]embers/?Queue=270 |
| 12:39 |
|
audreyt |
you can log in openfoundry and invite people over |
| 12:40 |
|
audreyt |
and hand out commit bits in #perl6 |
| 12:40 |
|
audreyt |
I do that (handing out metacommitter bits to #perl6 regulars) now and then |
| 12:41 |
|
audreyt |
to minimize time from a newcomer's arrival and receiving a commit bit |
| 12:41 |
|
audreyt |
don't hesitate to preemptively send invitations even before the newcomer asked for it :) |
| 12:42 |
|
* xinming |
would sell the every commit bit for $ 5.... :-D |
| 12:43 |
|
audreyt |
nothingmuch did that in OSDC.il... |
| 12:43 |
|
audreyt |
in an auction |
| 12:44 |
|
nothingmuch |
yeah |
| 12:44 |
|
nothingmuch |
but i sold it to my darcs repo too |
| 12:44 |
|
nothingmuch |
and we made it very clear that you can get them for free =) |
| 12:44 |
|
xinming |
No, I don't mean auction... I mean sell it over the internet... :-P |
| 12:44 |
|
audreyt |
like, ebay? :p |
| 12:45 |
|
nothingmuch |
oh |
| 12:45 |
|
nothingmuch |
hmm |
| 12:45 |
|
nothingmuch |
that is deceiving |
| 12:45 |
|
nothingmuch |
i think |
| 12:45 |
|
|
lichtkind joined perl6 |
| 12:46 |
|
audreyt |
probably not a good idea :) |
| 12:46 |
|
xinming |
nothingmuch: yes, that's deceiving... :-) |
| 12:46 |
|
nothingmuch |
you could make a pyramid scheme |
| 12:46 |
|
|
jsiracusa joined perl6 |
| 12:46 |
|
nothingmuch |
for every comitter you invite you get 50% of your investment back |
| 12:46 |
|
nothingmuch |
=D |
| 12:46 |
|
szbalint |
audreyt: oh cool |
| 12:46 |
|
szbalint |
:) |
| 12:47 |
|
nothingmuch |
(50% of what's left) |
| 12:48 |
|
xinming |
nothingmuch: It's illegal in China, If you do that... Something like ä¼ é , Sorry, I don't know how to say in English. :-) |
| 12:48 |
|
xinming |
wait for someone will translate it... :-) |
| 12:49 |
|
nothingmuch |
=) |
| 12:49 |
|
audreyt |
multilevel marketing |
| 12:50 |
|
xinming |
audreyt: I see I am admin, But I don't know where to send the invite... :-/ |
| 12:51 |
|
nothingmuch |
in the box for "invite external staff" |
| 12:51 |
|
audreyt |
xinming: in the url above |
| 12:51 |
|
nothingmuch |
under the member administration pane |
| 12:51 |
|
audreyt |
login first, then http://rt.openfoundry.org/Foun[…]embers/?Queue=270 |
| 12:51 |
|
audreyt |
then type in email, click "invite" |
| 12:51 |
|
audreyt |
that's all |
| 12:51 |
|
audreyt |
normally it's very obvious |
| 12:51 |
|
audreyt |
but the pugs project page's member list is a bit long |
| 12:51 |
|
audreyt |
(cough) |
| 12:51 |
|
audreyt |
so you may need to scroll down to see it |
| 12:52 |
|
xinming |
found it. :-) |
| 12:54 |
|
theorbtwo |
"multilevel marketing" is a nice term for "pyrimad scheme". |
| 12:55 |
|
audreyt |
I think pyramids are too nice to be associated with this :) |
| 12:55 |
|
audreyt |
and scheme is nice too, but that's in another context |
| 12:56 |
|
xinming |
audreyt: do you know about why 'multilevel marketing' will be banned here? |
| 12:56 |
|
audreyt |
I have no idea |
| 12:57 |
|
audreyt |
I suspect because it's rather hard to ensure government control of product/service quality |
| 12:58 |
|
xinming |
hmm, å°±æ¯ï¼ä¸çº¿é½å¨éªä¸çº¿çé±ï¼ç¶å让ä¸çº¿ç»§ç»éªèªå·±çæåï¼ ææååå
³ç³»å¥½çå
å¼ï¼ æä»ä»¬çé±éªäºä»¥åããã ç»§ç»è¿æ ·æããã |
| 12:58 |
|
xinming |
sorry, I don't know how to say that, that's why I use Chinese. :-) |
| 12:58 |
|
audreyt |
I know what it is :) |
| 12:59 |
|
xinming |
audreyt: that's one reason, but the more important is the reason I told you.... |
| 12:59 |
|
|
scook0 joined perl6 |
| 12:59 |
|
audreyt |
sure, that it will encourage dishonesty and one-off transactions instead of long term commitment |
| 13:01 |
|
xinming |
audreyt: class A is A { }; <--- This error is reported at compile time or runtime? |
| 13:03 |
|
xinming |
I mean, it will reported when it sees `class A is A` or, when A.new is invoked |
| 13:03 |
|
audreyt |
I suspect compile time is the correct answer |
| 13:03 |
|
audreyt |
you can certainly test for it |
| 13:04 |
|
xinming |
IMO, if it is detected as compile time, "perl 6" is not so dynamic... |
| 13:05 |
|
audreyt |
well, "dynamic" means what you can do with it |
| 13:05 |
|
audreyt |
regardless of what you want to do with a class |
| 13:05 |
|
audreyt |
a circular inheritance doesn't really makes it easier to do something |
| 13:05 |
|
audreyt |
I think perl6 is "dynamic if needed, static if possible" |
| 13:06 |
|
audreyt |
i.e. if a static analysis doesn't prevent dynamic functionality, only improves the performance or error-detection |
| 13:06 |
|
audreyt |
then we go ahead and do it statically |
| 13:06 |
|
audreyt |
it's the same as perl5 really |
| 13:20 |
|
|
particle_ joined perl6 |
| 13:40 |
|
Limbic_Region |
audreyt - the Win32 error was a perl error when I promised to track it down and fix it - last night when I synced up and built, it became a new error (ghc internals - please send message off to ...) |
| 13:40 |
|
Limbic_Region |
something about undefined symbols |
| 13:41 |
|
Limbic_Region |
I didn't have time to do the research but I wanted to let you know I didn't forget our deal |
| 13:41 |
|
Limbic_Region |
I ended up not using Judy though |
| 13:41 |
|
Limbic_Region |
as saucy as she is - she was a bit too much |
| 13:41 |
|
Limbic_Region |
I realized I could waste 4k and use an array as my hash since all my values were known to be less than 1K |
| 13:42 |
|
|
pdcawley joined perl6 |
| 13:42 |
|
audreyt |
sure |
| 13:42 |
|
|
xerox is now known as xerox- |
| 13:42 |
|
audreyt |
is that faster, though? |
| 13:43 |
|
Limbic_Region |
of course - no inserts or deletes |
| 13:43 |
|
audreyt |
have you benchmarked? :) |
| 13:43 |
|
audreyt |
I suspect Judy uses a bitmap underneath too |
| 13:43 |
|
audreyt |
but arrays are easier to deal with |
| 13:43 |
|
audreyt |
so you are probably fine |
| 13:44 |
|
Limbic_Region |
I would be amazed if Judy actually outperformed a native type |
| 13:44 |
|
Limbic_Region |
plus - no function call |
| 13:46 |
|
|
aeon__ joined perl6 |
| 13:47 |
|
|
cdpruden joined perl6 |
| 13:50 |
|
audreyt |
the J1U etc are inlined macros :) |
| 13:51 |
|
audreyt |
but yeah, probably won't be faster than a native type, for this small a key space. |
| 13:51 |
|
|
autark joined perl6 |
| 13:51 |
|
audreyt |
re undefined symbols, that's probably an incrremental build |
| 13:51 |
|
audreyt |
nuke dist/ and try again |
| 13:52 |
|
|
vel joined perl6 |
| 13:52 |
|
audreyt |
obra: add http://yaphb.blogspot.com/ to planet? |
| 13:56 |
|
|
xinming joined perl6 |
| 13:56 |
|
audreyt |
another $job day tomorrow... and then it'd be weekend |
| 13:56 |
|
* audreyt |
journals and sleeps :) |
| 13:56 |
|
audreyt |
*wave* & |
| 13:58 |
|
dakkar |
g'night |
| 14:00 |
|
xinming |
G'night... |
| 14:00 |
|
lichtkind |
:) night |
| 14:02 |
|
|
frederico joined perl6 |
| 14:03 |
|
scw |
audreyt: how can you find it out so fast |
| 14:03 |
|
audreyt |
egogoogling of course |
| 14:04 |
|
audreyt |
(blogsearch.google.com) |
| 14:04 |
|
audreyt |
I can write about this in my journal, surely? :) |
| 14:04 |
|
|
jserv-- joined perl6 |
| 14:05 |
|
scw |
audreyt: sure |
| 14:05 |
|
scw |
audreyt: That'll also encourage me on writing :) |
| 14:06 |
|
|
macroron joined perl6 |
| 14:06 |
|
audreyt |
nice :) |
| 14:07 |
|
|
chris2 joined perl6 |
| 14:07 |
|
scw |
audreyt: BTW, IIRC, you mentioned that we can only use a limited subset of perl 6 in the production rule |
| 14:07 |
|
audreyt |
to simplify parsing, yes |
| 14:08 |
|
audreyt |
$obj.method is probably not practical |
| 14:08 |
|
scw |
does it means that there is already some tool on translating? |
| 14:08 |
|
audreyt |
there is already a simple ->p5 tool |
| 14:09 |
|
audreyt |
misc/pX/Common/Pugs-Compiler-Rule/lib/Pugs/Emitter/Rule/Perl5.pm |
| 14:09 |
|
audreyt |
line 184 |
| 14:09 |
|
audreyt |
just 4 lines, very crude |
| 14:09 |
|
audreyt |
which is why fglock and I think it's better to parse the minip6 separately |
| 14:09 |
|
audreyt |
and gen p5+haskell from the same place |
| 14:10 |
|
audreyt |
so line 184 can invoke your P::C::MP6 |
| 14:10 |
|
audreyt |
just like my .hs preprocessor can invoke the same thing |
| 14:10 |
|
audreyt |
does that make sense? |
| 14:10 |
|
scw |
Oh, it's already there... |
| 14:10 |
|
scw |
but it doesn't translates ~ to . :( |
| 14:10 |
|
audreyt |
I wouldn't call it "there"... |
| 14:11 |
|
audreyt |
it doesn't handle anything other than one level deref |
| 14:11 |
|
audreyt |
we need at least a function-call form, and recognize known literals |
| 14:11 |
|
scw |
you mean "parse" it with out a parser? |
| 14:12 |
|
audreyt |
I mean we'd need to use a real parser to parse minip6 chunks in {closure} |
| 14:12 |
|
audreyt |
instead of treating it as p5 and fix some brackets |
| 14:12 |
|
audreyt |
because that makes it perl5-specific and not sharable with PIR or Haskell |
| 14:13 |
|
audreyt |
so a uniform parser is quite important |
| 14:14 |
|
scw |
So, ain't I going to translate rule to haskell? |
| 14:14 |
|
audreyt |
sure, but that is |
| 14:14 |
|
audreyt |
Pugs::Emitter::Rule::Parsec |
| 14:14 |
|
audreyt |
it needs to be supported by MiniP6 |
| 14:14 |
|
scw |
but before that we need MiniP6 |
| 14:14 |
|
audreyt |
both are needed |
| 14:14 |
|
audreyt |
yes |
| 14:14 |
|
scw |
got it |
| 14:15 |
|
audreyt |
otherwise we can't usefully do production |
| 14:15 |
|
audreyt |
we can parse into Match, but that's not fun to work with |
| 14:15 |
|
scw |
can I do this: write a *mixed* rule whose production rules are in perl5 |
| 14:16 |
|
scw |
those rule translates miniP6 to haskell (?) |
| 14:16 |
|
scw |
then P::E::R::Parsec |
| 14:17 |
|
scw |
but that's weird, since after the module is used, the mixed rule itself is invalid input for it |
| 14:20 |
|
audreyt |
you can parse perl5 with PPI |
| 14:20 |
|
audreyt |
but I'm not sure it makes so much sense... |
| 14:20 |
|
audreyt |
the idea of miniP6 is that it's for bootstrapping |
| 14:20 |
|
audreyt |
once we get the first cycle running, we can use fullP6 to parse that |
| 14:20 |
|
audreyt |
and existing productions needs no change |
| 14:21 |
|
audreyt |
otoh, you described a level-0 bootstrap |
| 14:21 |
|
audreyt |
namely using p5-productions to parse minip6 |
| 14:21 |
|
audreyt |
I guess it's fine... you can always do |
| 14:22 |
|
audreyt |
rule foo { moose :P5 (?{ ...production code in perl5! ... }) } |
| 14:22 |
|
audreyt |
or, less awkwardly: |
| 14:23 |
|
audreyt |
rule foo { moose { use v5; ...some perl5 code here... } } |
| 14:23 |
|
audreyt |
I think I like "use v5" better |
| 14:23 |
|
audreyt |
so yes, you can make P::E::R::P5 recognize this form |
| 14:23 |
|
audreyt |
and pass it thru untranslated |
| 14:23 |
|
audreyt |
and use those to parse minip6 |
| 14:23 |
|
scw |
and it still work when real perl6 is used |
| 14:23 |
|
audreyt |
I think it does make a lot of sense |
| 14:23 |
|
audreyt |
yes |
| 14:24 |
|
audreyt |
because "use v5;" can be specced to mean "lexically this is p5 code" |
| 14:24 |
|
scw |
ok, that's what I'll do |
| 14:24 |
|
audreyt |
scw++ sc++ scw++ |
| 14:24 |
|
* particle_ |
hands audrey a 'w' |
| 14:24 |
|
audreyt |
w! |
| 14:25 |
|
scw |
should I then drop the w to match the sc++ then? :p |
| 14:26 |
|
szbalint |
online version of three cheers? :) |
| 14:27 |
|
gaal |
aloha |
| 14:29 |
|
audreyt |
yo |
| 14:32 |
|
gaal |
eep, you're asleep? i thouht we'd hack some :( |
| 14:32 |
|
audreyt |
I guess I'm not asleep then |
| 14:33 |
|
audreyt |
what do you feel like hacking on? Parser? Capture? Pad? |
| 14:33 |
|
gaal |
uh, yay? :) |
| 14:33 |
|
gaal |
parsec, sure, but i don't grok the recent changes yet |
| 14:33 |
|
gaal |
don't stay up if you need to work tomorrow... |
| 14:33 |
|
|
justatheory joined perl6 |
| 14:35 |
|
audreyt |
I think I'll recap the changes for you |
| 14:36 |
|
audreyt |
look at Pugs/Parser/Types.hs |
| 14:36 |
|
audreyt |
all the magick is in there |
| 14:37 |
|
audreyt |
I redefined two key prims |
| 14:37 |
|
audreyt |
"satisfy" and "string" |
| 14:37 |
|
audreyt |
all CharParser is built on one of them |
| 14:37 |
|
audreyt |
so they now register the last char's class in the UserState |
| 14:37 |
|
audreyt |
namely ruleCharClass |
| 14:37 |
|
audreyt |
so far so good? |
| 14:38 |
|
gaal |
where's CharClass defined? |
| 14:38 |
|
gaal |
got ir |
| 14:38 |
|
audreyt |
line 89 |
| 14:38 |
|
gaal |
it |
| 14:38 |
|
gaal |
okay |
| 14:38 |
|
audreyt |
now, an unexciting job is |
| 14:38 |
|
audreyt |
see if making the CharClass field lazy |
| 14:38 |
|
audreyt |
can save time |
| 14:38 |
|
audreyt |
I doubt it though |
| 14:39 |
|
gaal |
time prove ; s/!//; time prove? :) |
| 14:39 |
|
audreyt |
another idea is to avoid the statetransition |
| 14:39 |
|
audreyt |
well, just pugs -c on Test.pm |
| 14:39 |
|
audreyt |
you can avoid state transition |
| 14:39 |
|
nothingmuch |
does anybody know how the accomodations for the chicago hackathon are going to turn out? |
| 14:40 |
|
audreyt |
by only do the setstate |
| 14:40 |
|
audreyt |
when an implicit param is true |
| 14:40 |
|
audreyt |
i.e. |
| 14:40 |
|
audreyt |
string :: (?trackClass :: Bool) -> String -> RuleParser String |
| 14:41 |
|
audreyt |
that may not be the best idea |
| 14:41 |
|
audreyt |
note that there is very limited use for "gets ruleCharClass" |
| 14:41 |
|
audreyt |
just one place in line 1260 |
| 14:41 |
|
audreyt |
Parser.hs |
| 14:41 |
|
particle_ |
nm: i think the SSL dorm will be the place, and it's good through sunday morning |
| 14:41 |
|
audreyt |
to determine whether postfix applies to something |
| 14:42 |
|
particle_ |
this is per obra, as of tuesday |
| 14:42 |
|
audreyt |
so another idea is to somehow lookBehind one char |
| 14:42 |
|
audreyt |
another idea (maybe better this time) |
| 14:42 |
|
gaal |
lookBehind is in PArsec? |
| 14:42 |
|
audreyt |
no it's not |
| 14:43 |
|
audreyt |
I have a better idea now |
| 14:43 |
|
audreyt |
just maintain a lazy userstate of Char |
| 14:43 |
|
audreyt |
instead of casing every char for class |
| 14:43 |
|
audreyt |
and then case that in line 1259 |
| 14:43 |
|
audreyt |
ch <- gets rulePreviousCharacter |
| 14:43 |
|
audreyt |
it can be strict too if that helps perf |
| 14:43 |
|
audreyt |
not sure |
| 14:44 |
|
audreyt |
but should be faster than charclassing |
| 14:44 |
|
audreyt |
in any case, once you get that working |
| 14:44 |
|
audreyt |
write \b and <ws> combinators |
| 14:44 |
|
audreyt |
I mean assertions |
| 14:44 |
|
audreyt |
doesn't need to be fancy; just |
| 14:44 |
|
audreyt |
getPrevCharClass :: RuleParser CharClass |
| 14:45 |
|
audreyt |
can be helpful already |
| 14:45 |
|
audreyt |
if you manage to go that far |
| 14:45 |
|
audreyt |
then add another two states, rulePos and ruleNam |
| 14:45 |
|
audreyt |
for captures |
| 14:45 |
|
audreyt |
and write combinators to populate them |
| 14:45 |
|
audreyt |
but by that time I think I'll be awake :) |
| 14:46 |
|
gaal |
okay, I'll see what I can get to |
| 14:46 |
|
audreyt |
(i.e. by the time you finish Pos/Nam populating) |
| 14:46 |
|
audreyt |
captureNamed :: String -> RuleParser a -> RuleParser a |
| 14:47 |
|
audreyt |
and you can reuse "Match" structure |
| 14:47 |
|
audreyt |
or write one of your own... it can be just two SourcePos for .from and .to |
| 14:48 |
|
gaal |
? what's .from and .to? :) |
| 14:48 |
|
audreyt |
$/.from and $/.to |
| 14:48 |
|
lichtkind |
?eval sub b {say}; b 'b'; |
| 14:48 |
|
audreyt |
registering the text ranges of the match |
| 14:48 |
|
evalbot_10082 |
OUTPUT[ ] bool::true |
| 14:48 |
|
audreyt |
see "data MatchRule" in src/Text/Parser/Rule.hs |
| 14:49 |
|
lichtkind |
?eval sub b {say}; b( 'b'); |
| 14:49 |
|
evalbot_10082 |
OUTPUT[ ] bool::true |
| 14:49 |
|
audreyt |
$_ is not bound |
| 14:49 |
|
audreyt |
?eval sub b ($_) {say} b 'b' |
| 14:49 |
|
evalbot_10082 |
OUTPUT[ ] bool::true |
| 14:49 |
|
audreyt |
?eval sub b {say @_} b 'b' |
| 14:49 |
|
evalbot_10082 |
OUTPUT[b ] bool::true |
| 14:49 |
|
audreyt |
?eval sub b ($_) {say $_} b 'b' |
| 14:49 |
|
evalbot_10082 |
OUTPUT[b ] bool::true |
| 14:49 |
|
audreyt |
oy, I wonder if defaulting is borken |
| 14:50 |
|
audreyt |
hm it works here |
| 14:50 |
|
svnbot6 |
r10097 | scw++ | Pugs::Grammar::MimiPerl6 README, illustrates the goal of it |
| 14:50 |
|
audreyt |
gaal: anyway, just play around :) the ultimate goal is to be able to write some part of parsec functions into p6 rules |
| 14:50 |
|
audreyt |
I'll sleep now for real :) |
| 14:51 |
|
gaal |
night |
| 14:51 |
|
TimToady |
night |
| 14:51 |
|
audreyt |
scw: your blog has been pugsblogged |
| 14:51 |
|
lichtkind |
night |
| 14:51 |
|
audreyt |
:) & |
| 15:02 |
|
|
weinig|sleep is now known as weinig |
| 15:02 |
|
xinming |
scw++ README is understandable. :-) |
| 15:03 |
|
scw |
xinming: thanks :) |
| 15:04 |
|
xinming |
scw: From your README, there is still some questions, Is MiniPerl 6 always needed to self-hosting perl 6? or after the self-hosting, the MiniPerl 6 isn't needed. |
| 15:05 |
|
scw |
xinming: it can be dropped |
| 15:05 |
|
scw |
xinming: I think I refer to the grammar as "full perl 6 grammar" every time after thep 2? |
| 15:05 |
|
scw |
s/thep/step |
| 15:06 |
|
gaal |
data point, making ruleCharClass :: CharClass in RuleState lazy doesn't speed things up -- in fact it may slow 'em down. |
| 15:09 |
|
xinming |
perl 6 rule whose production rules |
| 15:09 |
|
xinming |
are written in perl 5 <-- what does the phrase 'production rules' mean here? |
| 15:10 |
|
|
Odin-LAP joined perl6 |
| 15:10 |
|
scw |
xinming: rule foo { moose { return 23 } } |
| 15:11 |
|
scw |
The "{return 23}" is the production rule |
| 15:11 |
|
lichtkind |
?eval sub b ($_) {say $^a} b 'b' |
| 15:11 |
|
scw |
Which will do some AST constructing work in a real grammar :) |
| 15:11 |
|
evalbot_10082 |
Error: unexpected "b" expecting comment Cannot mix placeholder variables with formal parameters |
| 15:11 |
|
lichtkind |
?eval sub b {say $^a} b 'b' |
| 15:11 |
|
evalbot_10082 |
Error: Undeclared variable: "$^a" |
| 15:12 |
|
xinming |
lichtkind: I'd suggest to write the test.... As these will be used for testing self-hosting perl 6. |
| 15:12 |
|
lichtkind |
yeah but i never wrote tests :) |
| 15:12 |
|
|
amnesiac joined perl6 |
| 15:12 |
|
lichtkind |
and i dont have client to commit |
| 15:12 |
|
xinming |
... |
| 15:12 |
|
xinming |
Ok, I'll write these later... |
| 15:13 |
|
xinming |
lichtkind: paste all the bugs to pastebin. |
| 15:13 |
|
xinming |
lichtkind: As I don't scroll back the chat log. :-) |
| 15:14 |
|
xinming |
lichtkind: Don't you use Linux? Most distributions can install subversion in their way easily. |
| 15:14 |
|
lichtkind |
not currently still winXp |
| 15:15 |
|
gaal |
lichtkind: svn is available on cygwin and also with native windows |
| 15:15 |
|
xinming |
lichtkind: Ok, paste the bugs to pastebin please. :-) |
| 15:15 |
|
cognominal |
audreyt: foo($x); # not a provisional call; it's a method call on $x |
| 15:16 |
|
cognominal |
did you meant "foo($x:)"? |
| 15:16 |
|
lichtkind |
what is pastebin? |
| 15:16 |
|
cognominal |
ho, she is gone :( |
| 15:16 |
|
xinming |
cognominal: she goes to sleep. |
| 15:16 |
|
xinming |
pasteling: url |
| 15:17 |
|
xinming |
don't know if pasteling is or bot... :-P Sorry if troubled you. |
| 15:17 |
|
xinming |
http://paste.lisp.org/new/perl6 |
| 15:17 |
|
xinming |
lichtkind: http://paste.lisp.org/new/perl6 |
| 15:18 |
|
xinming |
s/is or/is a/ |
| 15:19 |
|
lichtkind |
what is this bot for? |
| 15:20 |
|
xinming |
lichtkind: if you post data in that site, the bot will tell us... |
| 15:21 |
|
TimToady |
cognominal: single argument calls always assume SMD over MMD |
| 15:21 |
|
lichtkind |
yes so far i guessed it but its a kind bugtracker or general info tracker? |
| 15:21 |
|
TimToady |
so the : is assumed, or $x.foo() is assumed, same thing. |
| 15:22 |
|
xinming |
lichtkind: No, It's just a waste-basket, which you can post anything.... and after a period, they'll dissappear... |
| 15:24 |
|
ingy |
hola |
| 15:25 |
|
ingy |
miyagawa-san is itmfhy |
| 15:26 |
|
nothingmuch |
itmfhy? |
| 15:26 |
|
* Steve_p |
blinks |
| 15:26 |
|
lichtkind |
?eval sub b {say $^a}; b 'b' |
| 15:26 |
|
evalbot_10082 |
Error: Undeclared variable: "$^a" |
| 15:26 |
|
TimToady |
< lichtkind> ?eval sub b {say $^a} b 'b' |
| 15:26 |
|
TimToady |
< lichtkind> ?eval sub b {say $^a} b 'b' |
| 15:26 |
|
TimToady |
placeholders arent allowed in normal subs, only bare blocks. |
| 15:27 |
|
TimToady |
they're just a workaround for not having the possibility of a signature. |
| 15:27 |
|
ingy |
miyagawa-san is in the mutha fsckin haus, yo |
| 15:27 |
|
nothingmuch |
ingy: oh |
| 15:27 |
|
nothingmuch |
=) |
| 15:27 |
|
nothingmuch |
miyagawa: welcome to the house |
| 15:27 |
|
miyagawa |
yay |
| 15:27 |
|
nothingmuch |
oedipal complexes to your right |
| 15:27 |
|
nothingmuch |
the bathroom is down the hall |
| 15:27 |
|
ingy |
he just arrived in Taiwan |
| 15:28 |
|
ingy |
nothingmuch: you funny |
| 15:28 |
|
lichtkind |
xinming but why should i post there i it can only be seen for a moment and not when audrey is back? |
| 15:30 |
|
xinming |
TimToady: my &ttt := { $^a.say }; ttt("bbbb"); |
| 15:30 |
|
xinming |
TimToady: Is that valid? |
| 15:30 |
|
TimToady |
should be. |
| 15:31 |
|
ingy |
xinming: in Perl 7 any stream of characters is valid syntax |
| 15:31 |
|
TimToady |
?eval my &ttt := { $^a.say }; ttt("bbbb"); |
| 15:31 |
|
xinming |
TimToady: hmm, how about we calling it using ttt "bbbb" ? (without parens) |
| 15:31 |
|
evalbot_10082 |
OUTPUT[bbbb ] bool::true |
| 15:32 |
|
TimToady |
that should work too, according to the recent rulings. |
| 15:32 |
|
xinming |
ingy: perl 8 will be able to understand what we say, Is all valid syntax... |
| 15:32 |
|
xinming |
:-) |
| 15:32 |
|
xinming |
?eval my &ttt := { $^a.say }; ttt "bbbb"; |
| 15:32 |
|
evalbot_10082 |
Error: unexpected "\"" expecting comment, "(", term postfix, operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input |
| 15:32 |
|
TimToady |
well, if Perl 7 is specced as perfect, then Perl 8 has to be beyond perfect... :) |
| 15:33 |
|
TimToady |
that's a bug |
| 15:33 |
|
xinming |
TimToady: from example, my &tmp := { ... }; isn't ======= sub tmp { ... } ? |
| 15:34 |
|
TimToady |
my &tmp should be good enough to declare tmp just like sub. |
| 15:34 |
|
TimToady |
the definition doesn't happen till := runs, though. |
| 15:35 |
|
TimToady |
kind of an autoload situation without the auto part. |
| 15:35 |
|
TimToady |
the recent "provisional call" changes also mean that |
| 15:35 |
|
TimToady |
ttt "bbbb"; my &ttt ::= { $^a.say }; |
| 15:36 |
|
TimToady |
should work, but note the ::= |
| 15:36 |
|
|
elmex joined perl6 |
| 15:36 |
|
xinming |
that's why I wonder, why can't place holder work in sub, but in a "manual" sub. :-) |
| 15:36 |
|
TimToady |
:= would pass compilation |
| 15:36 |
|
TimToady |
but would fail at runtime |
| 15:36 |
|
TimToady |
because at ttt call time it wouldn't have bound it yet. |
| 15:36 |
|
xinming |
Ok, I think I understand. |
| 15:37 |
|
xinming |
::= is runtime binding, so that works, but for :=, It isn't. |
| 15:37 |
|
TimToady |
we don't want to encourage people to use placeholders for anything but short bare blocks. |
| 15:37 |
|
TimToady |
you mean ::= is compile time |
| 15:37 |
|
xinming |
??? |
| 15:37 |
|
* xinming |
goes to check synopsis |
| 15:37 |
|
TimToady |
:= is runtime binding |
| 15:39 |
|
TimToady |
another way to look at it is that placeholder variables autogenerate a signature, and if there's already a signature it's a conflict. |
| 15:39 |
|
|
hexmode joined perl6 |
| 15:41 |
|
|
FurnaceBoy joined perl6 |
| 15:43 |
|
xinming |
so, for compile-time binding. placeholder will become positional arguments internally. why does runtime-binding will fail? IMO, pointy-sub will be able to generate the signature. there is no signature for a closure. |
| 15:43 |
|
xinming |
s/will// |
| 15:44 |
|
TimToady |
the run-time binding is fine if it happens soon enough, but in my example it doesn't. |
| 15:44 |
|
TimToady |
pointy sub is just a different way to add a signature to a block. |
| 15:46 |
|
TimToady |
there is no difference between { $^a <=> $^b } and -> $a, $b { $a <=> $b } |
| 15:46 |
|
TimToady |
except that if you introspect it, the parameter names have caret |
| 15:47 |
|
TimToady |
the -> form also has the possibility of adding type declarations to the parameters. |
| 15:48 |
|
TimToady |
but both forms are considered blocks rather than routines, so they are both transparent to a "return". |
| 15:58 |
|
obra |
audreyt: send me mail about the add to planetsix? i can't do it from here |
| 15:59 |
|
|
kolibrie joined perl6 |
| 15:59 |
|
TimToady |
scw: your blog seems to be written a month in the future. :) |
| 16:00 |
|
|
xern joined perl6 |
| 16:05 |
|
FurnaceBoy |
does it mention any lottery numbers? |
| 16:06 |
|
TimToady |
scw: perhaps you are really not in +0800 timezone but in the +075200 timezone? |
| 16:06 |
|
TimToady |
unfortunately, no... |
| 16:07 |
|
TimToady |
maybe scw already won the lottery and spent all the money on a time machine... |
| 16:08 |
|
gaal |
yay, it starts on my birthday |
| 16:08 |
|
gaal |
will start, that is |
| 16:10 |
|
FurnaceBoy |
:) |
| 16:10 |
|
FurnaceBoy |
yeah that should work ... that's about as plausible as going backwards to fix something |
| 16:11 |
|
FurnaceBoy |
hmm, extended timezones. |
| 16:11 |
|
FurnaceBoy |
makes one wonder how we will handle extraplanetary zones |
| 16:11 |
|
FurnaceBoy |
we should make sure Perl6 is ready |
| 16:12 |
|
TimToady |
this is actually the mini-timemachine that will be used to bootstrap the TimeMachine 6, which will be used to go 582 years into the future and kidnap Audrey. |
| 16:12 |
|
gaal |
%TZ |
| 16:12 |
|
FurnaceBoy |
:-))) |
| 16:12 |
|
FurnaceBoy |
I *knew* she was from the Future! |
| 16:12 |
|
FurnaceBoy |
it all starts to make sense... |
| 16:12 |
|
FurnaceBoy |
she must be very frustrated, having seen and used Perl 17... |
| 16:12 |
|
FurnaceBoy |
she knows we need baby steps |
| 16:13 |
|
TimToady |
no, she was stuck in a timeline with Python 9000. |
| 16:13 |
|
FurnaceBoy |
LOL! |
| 16:13 |
|
pmichaud_ |
TimToady: I have a question about :pos and :continue arguments (more) |
| 16:13 |
|
TimToady |
<hides> |
| 16:13 |
|
TimToady |
:) |
| 16:13 |
|
FurnaceBoy |
Is that the language that has never been known to make a mistake? |
| 16:14 |
|
pmichaud_ |
TimToady: last week we discussed that :ratchet and :words adverbs would be evaluated at compile-time -- is the same true for :continue and :pos ? |
| 16:14 |
|
TimToady |
I'm sorry FurnaceBoy, I can't allow you to do that, |
| 16:14 |
|
FurnaceBoy |
"def Daisy() # Daisy, give me your answer do..." |
| 16:14 |
|
* particle_ |
uses an io call to flush out timtoady *squeak* *squeak* |
| 16:14 |
|
TimToady |
er, yeah. Oops. |
| 16:15 |
|
pmichaud_ |
I don't have a problem (from an impl perspective) if some adverbs are compile-time and others are run-time |
| 16:15 |
|
FurnaceBoy |
the scary thing, TT, is that HAL was born in Urbana(Champaign?) Illinois, where the supercomputing centre *IS* ... and Wolfram Research is located |
| 16:16 |
|
* FurnaceBoy |
puts on tinfoil hat |
| 16:17 |
|
theorbtwo |
...and clearly Wolfram & Heart ^W^W is evil. |
| 16:18 |
|
TimToady |
possibly :pos{ $x } would give us run-time semantics, being a closure. |
| 16:18 |
|
TimToady |
but it needs to be thunk through from a general adverb policy perspective. |
| 16:18 |
|
|
Toaster joined perl6 |
| 16:21 |
|
xinming |
TimToady: thanks for your "tutorial" on the difference between binding a closure and a sub. :-) |
| 16:21 |
|
FurnaceBoy |
theorbtwo, it was just closing the circle on a discussion of Mathematica we had here recently ... TT would like Perl6 not to lack anything neat that Mma does, language wise ;-) |
| 16:22 |
|
svnbot6 |
r10098 | yiyihu++ | Small fix in self_inheritance.t |
| 16:22 |
|
svnbot6 |
r10097 | scw++ | Pugs::Grammar::MimiPerl6 README, illustrates the goal of it |
| 16:23 |
|
pmichaud_ |
<rambling thoughts> :pos at runtime is neat and useful -- subrules can especially make use of it. evaluating :words and :ratchet at runtime is evil, because it greatly reduces the opportunities for optimization (more) |
| 16:23 |
|
svnbot6 |
r10099 | yiyihu++ | Added a test for testing closure binding with placeholder variables according to a bug lichtkind++ found... |
| 16:24 |
|
lichtkind |
thanks yiyihu but i thought this was no bug according to Tims revealings |
| 16:24 |
|
pmichaud_ |
<more> I don't think it would be too difficult for the rules compiler to optimize if the adverb is obviously a constant, otherwise defer to runtime. (And perhaps we say that some adverbs cannot be deferred.) |
| 16:25 |
|
xinming |
lichtkind: my &ttt := { $^a.say }; ttt "bbbb"; ;-) |
| 16:25 |
|
xinming |
lichtkind: this should be valid, It is just call ttt with "bbbb" without parens. |
| 16:26 |
|
lichtkind |
xinming but pugs didnt it? |
| 16:26 |
|
xinming |
?eval my &ttt := { $^a.say }; ttt "bbbb"; |
| 16:26 |
|
evalbot_10082 |
Error: unexpected "\"" expecting comment, "(", term postfix, operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input |
| 16:26 |
|
lichtkind |
ok |
| 16:31 |
|
TimToady |
if all adverbs are really named arguments, then it's really only macros that are ambiguous, since other subs are by definition deferred till runtime. |
| 16:31 |
|
lichtkind |
i thought about to take over the p6summeriesies but there are 2 major cons: im no native speaker and i still have an bigger perl project tagged on my leg |
| 16:31 |
|
lichtkind |
but i would like to help |
| 16:33 |
|
|
Arathorn is now known as Aragone |
| 16:35 |
|
|
Aankhen`` joined perl6 |
| 16:35 |
|
pmichaud_ |
well, of the various answers I was expecting, "Oops" wasn't one of them. :-) |
| 16:36 |
|
pmichaud_ |
for the time being I'll implement assuming some are compile-time and others are run-time, I'll work out the details afterwards. |
| 16:48 |
|
TimToady |
perhaps macro named args auto-evaluate at compile time when given a type that is incompatible with AST. |
| 16:54 |
|
TimToady |
or maybe everything just comes in AST and the macro simply evaluates some of them. |
| 16:55 |
|
TimToady |
but probably the former is better. |
| 16:56 |
|
TimToady |
If a macro declares Bool :$flag it should probably Just Work. They can always leave out the Bool to get the AST. |
| 16:57 |
|
theorbtwo |
I like it. |
| 16:57 |
|
|
r0nny joined perl6 |
| 16:57 |
|
theorbtwo |
Why only the named, though? |
| 16:58 |
|
TimToady |
Hey, I thought this channel had /goodquestions disabled... |
| 16:59 |
|
theorbtwo |
Nice to know that I can still come up with them from time to time. |
| 16:59 |
|
TimToady |
so if all your macros are types non-AST, it's just an immediate subroutine. Hmm. |
| 16:59 |
|
TimToady |
void macros. Yum. |
| 17:01 |
|
TimToady |
so basically keyword "macro" calls immediately and changes the *default* typology of parameters and return values. Explicit types can override though. Seems cool. |
| 17:02 |
|
TimToady |
makes me wonder if ASTs should have their own sigil, though... |
| 17:03 |
|
TimToady |
this "incompatible with AST" criterion is ill defined. |
| 17:03 |
|
spinclad |
make 'flatten' mean eval? |
| 17:04 |
|
spinclad |
(not quite right) |
| 17:04 |
|
TimToady |
An AST is rather like a Capture. |
| 17:05 |
|
spinclad |
haskell would use !, but that's something else here |
| 17:05 |
|
* pmichaud_ |
's implementations of ASTs are all Captures already :-) |
| 17:06 |
|
pmichaud_ |
PGE uses Captures for its AST, and the current perl6 implementation basically does the same |
| 17:06 |
|
pmichaud_ |
(presuming that Match isa Capture) |
| 17:06 |
|
TimToady |
so what would be a clear way of marking a macro signature for auto-evaluation of an AST parameter? |
| 17:07 |
|
TimToady |
that is, marking a particular component to be auto-evaled? |
| 17:07 |
|
pmichaud_ |
how about changing the macro keyword? |
| 17:07 |
|
pmichaud_ |
oh, for a particular component |
| 17:07 |
|
pmichaud_ |
hmmm |
| 17:07 |
|
TimToady |
I think the default should be autoeval unless marked AST somehow. |
| 17:08 |
|
spinclad |
does 'Bool !$name' mean something else already? |
| 17:08 |
|
TimToady |
which is why I was floating a sigil, but that might be too violent. |
| 17:08 |
|
spinclad |
'Bool !:$name', even |
| 17:08 |
|
TimToady |
does that mean an AST that will eventually return boolean? |
| 17:08 |
|
pmichaud_ |
somehow I think that sigil is too violent |
| 17:09 |
|
TimToady |
or an AST of subtype Bool? |
| 17:09 |
|
spinclad |
no, that returns it now, because you're evaling it |
| 17:09 |
|
TimToady |
I think that might be the wrong default. |
| 17:09 |
|
TimToady |
does it make sense to type an AST other than as "AST" or a subtype of it? |
| 17:10 |
|
particle_ |
does immedieate |
| 17:10 |
|
spinclad |
is immediate |
| 17:10 |
|
* spinclad |
is immediate |
| 17:11 |
|
TimToady |
I'm saying that maybe immediate should be the default, if it's easy enough to mark ASTs somehow. |
| 17:11 |
|
spinclad |
is evaled |
| 17:11 |
|
TimToady |
the ASTs are the special thing. |
| 17:11 |
|
TimToady |
and should look special. |
| 17:11 |
|
spinclad |
.oO( is AST ) |
| 17:12 |
|
TimToady |
that would work. |
| 17:12 |
|
spinclad |
AST :$name |
| 17:12 |
|
TimToady |
that would work differently |
| 17:12 |
|
TimToady |
the latter is probably more proper |
| 17:13 |
|
spinclad |
except some functions pass around AST at runtime, so you couldn't write a compiler properly |
| 17:13 |
|
TimToady |
it returns an AST |
| 17:13 |
|
TimToady |
why not? |
| 17:14 |
|
spinclad |
because it's got lots of runtime things typed as AST, which would be a flag for compile-time eval, when they're not actually ready |
| 17:14 |
|
TimToady |
It's only macros that would autoeval. |
| 17:15 |
|
spinclad |
so 'is AST' makes more sense to me |
| 17:15 |
|
TimToady |
that would turn the variable into a container type of sorts. |
| 17:16 |
|
spinclad |
(take a macro meant for manipulating AST's at runtime...) |
| 17:18 |
|
spinclad |
(sorry, a macro that wants to eval an argument to its compile-time AST value) |
| 17:18 |
|
TimToady |
still don't quite follow... |
| 17:21 |
|
spinclad |
macro foo (Bool :$flag #(evaled)#, AST :$tree #(evals to a piece of code)#, :$body is AST #(a quoted piece of code)# ) |
| 17:21 |
|
spinclad |
don't know if that makes enough sense |
| 17:22 |
|
TimToady |
Yes, I see where you're going. Let me think about it some more. |
| 17:23 |
|
pmichaud_ |
TimToady: please do, but I'm not in a hurry for it atm. From the PGE perspective it just means there will be a way to have some adverbs evaled at compile time and others at runtime, which I think is the right approach |
| 17:23 |
|
pmichaud_ |
we (mostly you) can work out the syntactic details when we need to commit :-) |
| 17:23 |
|
TimToady |
I just have a feeling that we want normal evaluation to look normal, and make non-normal look abnormal somehow. |
| 17:24 |
|
TimToady |
but not verbose, because in a sense *that's* the default for macros... |
| 17:24 |
|
TimToady |
so most args will be labelled as abnormal. |
| 17:27 |
|
spinclad |
.oO( macro foo (Bool :$flag, AST :$tree, =:$body) #( = marking non-normal )# ) |
| 17:27 |
|
TimToady |
a different sigil would allow easy differentiation in a quasi-quote interpolation... |
| 17:29 |
|
|
hexmode joined perl6 |
| 17:29 |
|
|
froh-doh joined perl6 |
| 17:31 |
|
TimToady |
.oO( macro foo (Bool :$flag, AST :$tree, :&&body) ) |
| 17:33 |
|
TimToady |
my goodness, the left side of macro infix:<&&> would be a &&cond |
| 17:33 |
|
spinclad |
it's a sign from heaven! ship it! |
| 17:34 |
|
TimToady |
well, it's of some small mnemonic value, anyway... |
| 17:34 |
|
pmichaud_ |
it could also be a sign from the nether world. :-) |
| 17:34 |
|
TimToady |
wouldn't conflict with the actual && operator, since term vs operator |
| 17:34 |
|
spinclad |
heretic! blasphemer! |
| 17:35 |
|
TimToady |
well, something to stew on for a while. At least there's prior art with @@. |
| 17:35 |
|
TimToady |
(admittedly recent) |
| 17:35 |
|
pmichaud_ |
"@@" looks like eyes to me. So does && in the font I'm using :-| |
| 17:35 |
|
pmichaud_ |
actually so does ":", now that I think about it. :-) |
| 17:35 |
|
TimToady |
aye, aye! |
| 17:35 |
|
TimToady |
you sure you don't just have a reflective screen? |
| 17:36 |
|
particle_ |
8-) |
| 17:36 |
|
spinclad |
*<8*O)) |
| 17:37 |
|
TimToady |
my screen seems to have some of those reflective LCDs that rotate the image 90°... |
| 17:38 |
|
|
ruoso joined perl6 |
| 17:38 |
|
TimToady |
only looks more like B-{) |
| 17:39 |
|
spinclad |
is that that TFT stuff? i've got one too |
| 17:39 |
|
TimToady |
so maybe @@ is something like an array, while && is something like code... |
| 17:39 |
|
particle_ |
** is something like whatever... |
| 17:39 |
|
TimToady |
but I want it Right Now!!! |
| 17:40 |
|
TimToady |
I want the world, I want the whole world, I want it now!!! |
| 17:40 |
|
spinclad |
tree-shaped code, like multi-dimmed arrays |
| 17:40 |
|
particle_ |
i don't want the world, i just want *your* half |
| 17:40 |
|
TimToady |
so maybe (*) should be named World, as in gimme the... |
| 17:40 |
|
TimToady |
0..* is half the universe |
| 17:40 |
|
spinclad |
*..0 is the other half |
| 17:40 |
|
TimToady |
*..^0 |
| 17:41 |
|
particle_ |
^-* |
| 17:41 |
|
particle_ |
or is that -^* |
| 17:41 |
|
TimToady |
can you negate a range? |
| 17:41 |
|
pmichaud_ |
hmmm... ".." looks like eyes to me, too. |
| 17:41 |
|
TimToady |
hmm... |
| 17:42 |
|
pmichaud_ |
"Perl6: The Smiley Language!" |
| 17:42 |
|
spinclad |
0..* is a black eye |
| 17:42 |
|
TimToady |
you need to chop those fishheads off before you cook 'em, Patrick... |
| 17:42 |
|
particle_ |
negating a range seems kewl: @foo[^*] = @foo[-^*] |
| 17:44 |
|
TimToady |
I...hesitate to think what uses the PDLers will put * to... |
| 17:44 |
|
pmichaud_ |
lunchtime |
| 17:44 |
|
TimToady |
I need to vamoose too. Finally over this fever, I think... |
| 17:45 |
|
pmichaud_ |
thanks once again for the rapid response, TimToady |
| 17:45 |
|
TimToady |
so no excuse to stay away from $job. |
| 17:45 |
|
TimToady |
sure thing. |
| 17:45 |
|
* pmichaud_ |
is glad TimToady is over the fever -- pmichaud can't keep up with the synopsis changes that result |
| 17:45 |
|
pmichaud_ |
:-) |
| 17:45 |
|
|
fglock joined perl6 |
| 17:45 |
|
TimToady |
later & |
| 17:46 |
|
* spinclad |
is amazed that fever-dreams made such good synopsis-fodder |
| 17:48 |
|
gaal |
okay, I don't understand how come, but all the speedup ideas for the one-char lookbehind are actually slower than storing a state. |
| 17:49 |
|
particle_ |
perhaps storing a state has been prematurely optimized :) |
| 17:49 |
|
gaal |
hmmm come to think of it, none of these is even correct, including the current one! (unicode ws) |
| 17:53 |
|
|
shachaf joined perl6 |
| 17:57 |
|
|
nurey joined perl6 |
| 17:57 |
|
|
nurey left perl6 |
| 18:03 |
|
|
Eimi joined perl6 |
| 18:52 |
|
|
dduncan joined perl6 |
| 18:56 |
|
|
vel joined perl6 |
| 19:00 |
|
|
KingDiamond joined perl6 |
| 19:03 |
|
dduncan |
ping mugwump |
| 19:04 |
|
|
vel joined perl6 |
| 19:05 |
|
dduncan |
or to whomever knows ... I have a question about the Set data type |
| 19:05 |
|
|
aufrank joined perl6 |
| 19:05 |
|
PerlJam |
dduncan: I probably don't know, but I can speculate right along with you :-) |
| 19:05 |
|
dduncan |
and that is ... is ext/Set/lib/Set.pm meant to implement the built-in Set type referred to in S06? |
| 19:06 |
|
dduncan |
I can understand if ext/Set/ is out of date, but I was wondering if that is the intent |
| 19:07 |
|
dduncan |
if so, then I notice that S06 lists the Set type as being an immutable type, but the current Set.pm has some methods which mutate existing objects, such as insert() |
| 19:07 |
|
PerlJam |
dduncan: WEll, the POD sdoes say "Sets for Perl 6" |
| 19:07 |
|
PerlJam |
s/sd/d/ |
| 19:07 |
|
dduncan |
will that removed, or will there be multiple Set implementations, some that are immutable and some that are mutable? |
| 19:08 |
|
dduncan |
likewise, remove() is a mutator |
| 19:08 |
|
dduncan |
most methods in Set.pm are not mutators, though |
| 19:10 |
|
PerlJam |
Though maybe Sets should be mutable so we can use them for select() and the like. |
| 19:12 |
|
dduncan |
my understanding of select() is that it is not a mutator |
| 19:12 |
|
dduncan |
er, or maybe it is in some contexts |
| 19:13 |
|
PerlJam |
No, I was thinking of the 4-arg select used to chekc the status of various file handles. The "traditional" mechanism uses a bit vector, but that could easily be a Set of filehandles that you'd change at run-time. |
| 19:13 |
|
dduncan |
like making a particular socket the current one, if that's what you meant |
| 19:13 |
|
dduncan |
yes, so in that context, it would be a mutator, since 'current' would change |
| 19:14 |
|
dduncan |
unless 'current' is defined externally to the Set class |
| 19:14 |
|
dduncan |
but in that context, select() is kind of like an iterator |
| 19:15 |
|
dduncan |
in the Java sense |
| 19:16 |
|
* PerlJam |
is still boggling that they have internet access in this little hurricane ravaged airport in Gulfport MS. |
| 19:21 |
|
dduncan |
on a separate matter related to data types, there doesn't appear to be an immutable bit string type, and I propose that it be added |
| 19:21 |
|
dduncan |
perhaps it could be named 'Raw' |
| 19:26 |
|
|
bpphillips joined perl6 |
| 19:45 |
|
lichtkind |
g'night boys n girls |
| 19:45 |
|
PerlJam |
dduncan: why do we need a bitstrign type ? |
| 19:45 |
|
PerlJam |
er, bitstring |
| 19:46 |
|
dduncan |
to represent things that are strings of non-character data |
| 19:46 |
|
|
buu_ is now known as buu |
| 19:46 |
|
dduncan |
why do we need a Buf type? |
| 19:47 |
|
PerlJam |
Buf == mutable Str |
| 19:47 |
|
dduncan |
no, Buf is a sequence of bits or bytes, not characters |
| 19:47 |
|
dduncan |
characters <> bytes |
| 19:48 |
|
particle_ |
parrot allows non-char data in strings, using the raw: encoding |
| 19:49 |
|
dduncan |
so the question is, does 'Str' imply Character? |
| 19:50 |
|
dduncan |
see the definition from S06: Str Perl string (finite sequence of Unicode characters) |
| 19:50 |
|
|
FurnaceBoy_ joined perl6 |
| 19:50 |
|
dduncan |
but other things, such as a graphic or sound, are not composed of characters |
| 19:52 |
|
PerlJam |
that's an array of bits |
| 19:53 |
|
dduncan |
yes, but bit strings are common enough to deserve their own base type like character strings |
| 19:53 |
|
dduncan |
otherwise just have a type storing a single character and have an array of those |
| 20:09 |
|
|
bpphillips left perl6 |
| 20:12 |
|
svnbot6 |
r10100 | gaal++ | * Parser: keep a Char state rather than a CharClass, and add |
| 20:12 |
|
svnbot6 |
r10100 | gaal++ | a getPrevCharClass :: RuleParser CharClass function. |
| 20:12 |
|
svnbot6 |
r10100 | gaal++ | Checking this in despite it not appearing to speed things |
| 20:12 |
|
svnbot6 |
r10100 | gaal++ | up, because, well, it oughta have! |
| 20:14 |
|
|
DaGo joined perl6 |
| 20:17 |
|
gaal |
where will the parsecside \b assertion be used? |
| 20:18 |
|
gaal |
and, <ws> consumes, right? |
| 20:18 |
|
gaal |
...is it an atom, or greedy? |
| 20:21 |
|
|
particle_ joined perl6 |
| 20:22 |
|
|
KingDillyDilly joined perl6 |
| 20:25 |
|
KingDillyDilly |
I need to ask rindolf something. He chats here? |
| 20:27 |
|
|
borkened joined perl6 |
| 20:28 |
|
avar |
It just occoured to me how wonderful rules are |
| 20:30 |
|
Odin-LAP |
avar: 'cause you have so much fun breaking them? |
| 20:30 |
|
ruoso |
heh |
| 20:30 |
|
avar |
No, because when you have a given parsing task it' so much easier than using regexes, and so much more fullproof. |
| 20:31 |
|
Odin-LAP |
avar: Drunk or stoned or something? |
| 20:31 |
|
avar |
Odin-LAP: .. |
| 20:31 |
|
ruoso |
avar, I had the same feeling when playing with lrep |
| 20:31 |
|
Odin-LAP |
avar: You're making a lot of smelling errors. What do I know? |
| 20:32 |
|
avar |
Odin-: I always do that |
| 20:32 |
|
avar |
See, just there I got your nick wrong. |
| 20:32 |
|
* ruoso |
wonders what a smelling error is |
| 20:32 |
|
avar |
Well actually I just refuse to talk to your lap. |
| 20:32 |
|
KingDillyDilly |
rindolf: I'm adding a pro and con section to Wikipedia's Perl 6 article and I'd like to know if you still basically agree with your Critique of Where Perl 6 is Heading at http://freshmeat.net/articles/view/1339/ . I think you've been active enough in the Perl 6 community and in developing Perl 6 to make your editorial worthy of a Wikipedia external link from the Perl 6 article if you have the same opinions now. |
| 20:32 |
|
avar |
Odin-: I feel degraded. |
| 20:32 |
|
Odin-LAP |
ruoso: It's one letter off. ;p |
| 20:33 |
|
Odin-LAP |
avar: Oh? Does that mean you feel like a negative number? |
| 20:33 |
|
avar |
no, I'm unsigned at all times |
| 20:33 |
|
Odin-LAP |
'cause I figure you were a zero to start with... >;) |
| 20:34 |
|
Odin-LAP |
(Huh. Seems I'm in a foul mood right now. Sowwy.) |
| 20:34 |
|
avar |
Yes, this is Odin-, he just loves everybody. |
| 20:35 |
|
KingDillyDilly |
rindolf: So, if you still believe what you wrote, please say so here. Wikipedia editors can't do original research, but I think a comment on an official, logged perl6 channel would be ok. |
| 20:38 |
|
avar |
== References == |
| 20:39 |
|
avar |
oops |
| 20:40 |
|
KingDillyDilly |
Avar: trying to beat me to rindolf's link? |
| 20:41 |
|
avar |
oh, no, wrong paste |
| 20:42 |
|
KingDillyDilly |
Those equal signs are used in Wikipedia's notation. I didn't know they were used elsewhere. |
| 20:44 |
|
|
SamB joined perl6 |
| 20:51 |
|
ruoso |
KingDillyDilly, Wikipedia's notation is just "mediawiki" notation which happens to be almost the same as any wiki... |
| 20:51 |
|
|
ayrnieu joined perl6 |
| 20:51 |
|
FurnaceBoy_ |
article is discredited |
| 20:52 |
|
* KingDillyDilly |
discovers whois command |
| 20:52 |
|
KingDillyDilly |
If it's discredited by someone with credentials, maybe I'll mention that. |
| 20:54 |
|
ayrnieu |
it doesn't matter what credentials the person has; what matters is what that person says. |
| 20:55 |
|
KingDillyDilly |
Yes, I think public opinion has a place on Wikipedia, but I wouldn't mention a specific post by someone without credentials. |
| 20:56 |
|
|
ayrnieu left perl6 |
| 20:56 |
|
KingDillyDilly |
I won't be adding a cons section without a pros section. |
| 20:56 |
|
FurnaceBoy_ |
you could ask audreyt's impression of that article. |
| 20:56 |
|
FurnaceBoy_ |
or anyone 'with credentials' |
| 20:56 |
|
FurnaceBoy_ |
before 'propagating confusion' |
| 20:58 |
|
KingDillyDilly |
I could peobably find the opinion of an elite Perl 6 guru in a more authoritative looking place than a chat room. I don't think I'll try to present different opinions on that specific article, but I'll still have various pros from various places. |
| 20:58 |
|
cognominal |
KingDilly, Shlomi Fish has not the slightest clue about Perl6. |
| 21:00 |
|
KingDillyDilly |
His journal makes it sound like he knows his stuff now. At least his latest posts. His first post is at http://use.perl.org/~Shlomi+Fish/journal/24040 |
| 21:01 |
|
FurnaceBoy_ |
that should be a warning sign about his old, old article then? |
| 21:01 |
|
FurnaceBoy_ |
good idea to see if he still stands by it I guess, but opinion on it is massively negative |
| 21:01 |
|
cognominal |
ho sorry, I must be wrong, he certainly knows better than all the #perl6 regulars :) |
| 21:01 |
|
FurnaceBoy_ |
ergo, it's not a helpful contribution |
| 21:02 |
|
FurnaceBoy_ |
interesting how it takes a credentialed person to dismiss an article by an obviously uncredentialled writer... |
| 21:02 |
|
FurnaceBoy_ |
and that's how the world slowly gets less intelligent... |
| 21:02 |
|
KingDillyDilly |
Yeah, but I've found that saying negative things in a discussion venue full of those supporting what you're criticizing gets that kind of reaction. |
| 21:04 |
|
KingDillyDilly |
I wouldn't link to his editorial based on the author's bio in that editorial. Only based on his current credentials, maybs. |
| 21:04 |
|
KingDillyDilly |
"Author's bio: Shlomi Fish once defined himself as a "Programmer, Writer, Amateur Mathematician, Wannabe Philosopher, and someone who studied in the Technion in the vain hope of becoming an Electrical Engineer". He does not consider himself a sane person, but is quite certain that only makes him more interesting." |
| 21:05 |
|
cognominal |
the problem is not saying negative things, the problem is critic without understanding. It brings no progress. |
| 21:06 |
|
particle_ |
cog: s/critic/critique/ |
| 21:07 |
|
cognominal |
ho, just like in French |
| 21:07 |
|
particle_ |
a critic criticizes, or writes critiques |
| 21:08 |
|
KingDillyDilly |
English could do without the word critique. |
| 21:09 |
|
KingDillyDilly |
We probably wanted to show our appreciation for the Statue of Liberty or something. |
| 21:10 |
|
KingDillyDilly |
I tend to not use blog type entries in Wikipedia, but I had a hard time finding other critiques. |
| 21:11 |
|
|
Ymmv joined perl6 |
| 21:11 |
|
arcady |
there's not too much else on perl 6 |
| 21:11 |
|
arcady |
and especially on opinions of perl 6 |
| 21:12 |
|
KingDillyDilly |
I mean something encyclopedic. And I don't want to scour the literature. |
| 21:13 |
|
KingDillyDilly |
It's just Wikipedia, which I'm no big fan of, but I plugged several of my webpages there so I kind of owe them something. |
| 21:14 |
|
cognominal |
thx particle_ |
| 21:15 |
|
KingDillyDilly |
It's kind of like being able to personally convince someone from Google that your webpage deserves a better rank. In Wikipedia, you rank it yourself and it's up to someone else to review it and remove it. |
| 21:16 |
|
KingDillyDilly |
Never had a link to my webpage deleted, and I posted about three. |
| 21:17 |
|
* ruoso |
never thought someone would abuse wikipedia this way... |
| 21:18 |
|
|
nirgle joined perl6 |
| 21:18 |
|
arcady |
perl 6 is not an encyclopedic topic. it's too fresh and unsettled, I think |
| 21:18 |
|
KingDillyDilly |
It's allowed. I read the linking policy. They're really good links. |
| 21:21 |
|
|
iblechbot joined perl6 |
| 21:21 |
|
svnbot6 |
r10101 | gaal++ | * whiteSpace and ruleWordBoundary rules. |
| 21:21 |
|
svnbot6 |
r10101 | gaal++ | (Do we need a non-consuming version of whiteSpace? Not sure.) |
| 21:23 |
|
aufrank |
gaal++ |
| 21:24 |
|
|
pdcawley joined perl6 |
| 21:30 |
|
KingDillyDilly |
arcady: There was discussion about that at http://en.wikipedia.org/wiki/Talk:Perl_6#.7B.7Bfuture_software.7D.7D_inappropriate.3F |
| 21:32 |
|
arcady |
encyclopedias are, essentially, summaries of existing information, collected in one place for convenience |
| 21:33 |
|
arcady |
perl 6 doesn't have much existing information |
| 21:33 |
|
arcady |
so I think at this point, it makes much more sense to work on the original sources |
| 21:33 |
|
arcady |
we could always use more good documentation |
| 21:40 |
|
cognominal |
arcady++ |
| 21:43 |
|
|
Limbic_Region joined perl6 |
| 21:51 |
|
gaal |
17:46 < audreyt> captureNamed :: String -> RuleParser a -> RuleParser a |
| 21:51 |
|
gaal |
why isn't that just |
| 21:51 |
|
gaal |
captureNamed :: String -> RuleParser a |
| 21:51 |
|
gaal |
? |
| 21:52 |
|
gaal |
captureNamed name = modify $ \state -> state{ ruleName = name } |
| 21:52 |
|
gaal |
? |
| 21:53 |
|
xinming |
gaal: she is asleep. |
| 21:53 |
|
gaal |
xinming: that's been known not to slow her down |
| 21:53 |
|
gaal |
also, she backlogs :) |
| 21:53 |
|
|
weinig joined perl6 |
| 21:54 |
|
gaal |
I'm trying to do this parametrically over parsers, but so far I'm not handing withState correctly |
| 21:55 |
|
xinming |
gaal: hmm, after I read the README in misc/pX/Common/Pugs-Grammar-MiniPerl6/ I got 2 questions. :-) |
| 21:55 |
|
gaal |
and I'm not sure this isn't a wild moose chase: how's it going to be used that it needs to parametize over parsers? |
| 21:55 |
|
gaal |
xinming: haven't read that myself, looking now... |
| 21:56 |
|
gaal |
what path did you say? I don't have a MiniPerl6 dir.. |
| 21:56 |
|
xinming |
the one is, for self-hosting, perl 6, we need self-hosting miniperl, and after the miniperl self-hosted. then, we can make perl 6 self-hosting |
| 21:56 |
|
xinming |
am I right, that's one question. |
| 21:57 |
|
xinming |
revdiablo: path.. it is in misc/pX/Common/Pugs-Grammar-MiniPerl6/ |
| 21:57 |
|
xinming |
update first.. |
| 21:57 |
|
xinming |
oops |
| 21:57 |
|
gaal |
yes, got it now |
| 21:57 |
|
xinming |
s/revdiablo:/re:/ |
| 21:59 |
|
|
dduncan left perl6 |
| 22:00 |
|
gaal |
well, none of these steps is a miniperl like miniperl or tinyperl are for p5 |
| 22:00 |
|
gaal |
(btw miniperl in p5 isn't very mini, it's not a good name but basically it just doesn't have dynamic loading IIRC) |
| 22:01 |
|
xinming |
gaal: In fact, no matter what it is for, I think they are all run on top of parrot. :-) |
| 22:01 |
|
gaal |
er |
| 22:01 |
|
xinming |
gaal: hmm, Ok, I just wish to confirm my understanding... :-) |
| 22:01 |
|
gaal |
the things mentioned in that README? I don't think so |
| 22:02 |
|
gaal |
why do you think parrot? |
| 22:02 |
|
gaal |
oh, because the grammar is in the parrot project? |
| 22:02 |
|
xinming |
gaal: No, that's not mentioned, But I think It would be run on parrot. :-) |
| 22:02 |
|
xinming |
gaal: As Parrot lives for perl 6. ;-) |
| 22:03 |
|
gaal |
If I understand correctly, the gammar should eventually be one grammar, used by parrot, pugs, maybe lrep too.... |
| 22:03 |
|
gaal |
not sure though, sorry. |
| 22:03 |
|
gaal |
maybe I can help better with your other question? :) |
| 22:03 |
|
xinming |
gaal: hmm, It's ok, And another question is... |
| 22:04 |
|
xinming |
after it generates PIL, can we translate the PIL to PIR? I mean easily... Not painfully... :-) |
| 22:04 |
|
xinming |
hmm, or "transform" |
| 22:05 |
|
gaal |
heh, don't know about that either, I've not worked on backends much |
| 22:05 |
|
gaal |
but I think the plan is that yes :) |
| 22:05 |
|
xinming |
if the "transform" isn't that hard, then, I think the perl 6 release date isn't too far.... :-) |
| 22:08 |
|
xinming |
how much is the self-hosting plan is finished do you think? I mean to PIR stage... |
| 22:09 |
|
gaal |
well, there are a million other things to engineer, like package management and stuff, that aren't part of the "hard" compilation problems but have always been tough cookies |
| 22:09 |
|
arcady |
getting a basic compiler going is not that hard, it seems |
| 22:09 |
|
arcady |
since it's been done, independently, a few times |
| 22:10 |
|
gaal |
we already used to have a -CPIR too, no? |
| 22:10 |
|
gaal |
I don't really use parrot much (other than for Rules) |
| 22:11 |
|
xinming |
gaal: In fact, Why I want a self-hosting perl 6 is all because... pugs is tooooo slow right now... |
| 22:11 |
|
gaal |
yeah, we all wish it were faster |
| 22:12 |
|
theorbtwo |
I suspect the best way to get speed is to compile to an existing language with a good optimizer... but that's a pretty left-field suggestion. |
| 22:14 |
|
xinming |
theorbtwo: hmm, In fact, I believe that if "pugs" is run on parrot, It will be much faster... It will be faster even if it is un-optimized on parrot IMO. :-) |
| 22:15 |
|
theorbtwo |
I meant C, or haskell, or ... |
| 22:16 |
|
theorbtwo |
haskell -O, that is, which I suppose is C with extra steps. |
| 22:19 |
|
arcady |
well, parrot does have a JIT compiler |
| 22:20 |
|
arcady |
the trick is to compile perl 6 to parrot (or whatever else) rather than running it on pugs |
| 22:20 |
|
theorbtwo |
Well-written parrot code can be quite fast, yes. |
| 22:20 |
|
theorbtwo |
The trick is that poorly-written parrot code can be quite horrible, I suspect, and generate code has a way of being horrible unless you're careful with it. |
| 22:21 |
|
theorbtwo |
However, probably still faster then the pugs builtin style. |
| 22:21 |
|
arcady |
and, parrot can be optimized for the generated code, i imagine |
| 22:22 |
|
Limbic_Region |
perlbot nopaste |
| 22:22 |
|
perlbot |
Paste your code here and #<channel> will be able to view it: http://sial.org/pbot/<channel> |
| 22:22 |
|
pasteling |
"Limbic_Region" at 24.35.57.240 pasted "A new Win32 build failure" (14 lines, 1K) at http://sial.org/pbot/16933 |
| 22:24 |
|
gaal |
Limbic_Region: repeatable? |
| 22:24 |
|
gaal |
looks like an internal ghc error, which can happen on running out of memory, or actual hardware failure |
| 22:25 |
|
gaal |
GHC is a good canary, as I found out mylsef |
| 22:26 |
|
gaal |
okay, wakies up for me. good night everybody |
| 22:26 |
|
gaal |
zzZ & |
| 22:26 |
|
avar |
audrey did some radio interview, where can I get it? |
| 22:26 |
|
gaal |
pugscode.org ? |
| 22:27 |
|
avar |
what? where? |
| 22:27 |
|
Limbic_Region |
gaal - what do you mean repeatable? |
| 22:27 |
|
gaal |
http://www.perlcast.com ? |
| 22:27 |
|
Limbic_Region |
I can repeat it here if that's what you mean |
| 22:27 |
|
gaal |
Limbic_Region: run make again |
| 22:27 |
|
gaal |
same error? |
| 22:28 |
|
avar |
gaal: w00t, thanks. |
| 22:28 |
|
gaal |
try to edit your config.yml, up the heap size there, perl Makefile.PL && make again |
| 22:28 |
|
Limbic_Region |
checking gaal |
| 22:28 |
|
Limbic_Region |
gaal - I get a completely different error when heap is the problem |
| 22:28 |
|
gaal |
Limbic_Region: hope it helps; I'm off to bed |
| 22:28 |
|
Limbic_Region |
and another make allows it to finish |
| 22:28 |
|
Limbic_Region |
this isn't that |
| 22:28 |
|
Limbic_Region |
TTFN - sleep well |
| 22:28 |
|
gaal |
Limbic_Region: memory-related problems can manifest in different way.s |
| 22:29 |
|
gaal |
& |
| 22:50 |
|
Akiyuki |
.sub _main |
| 22:50 |
|
Akiyuki |
print "Hello world!\n" |
| 22:50 |
|
Akiyuki |
end |
| 22:50 |
|
Akiyuki |
.end |
| 22:50 |
|
Akiyuki |
er |
| 22:50 |
|
Akiyuki |
C:\Documents and Settings\Tux\Desktop\parrot-win32>parrot.exe test.txt |
| 22:50 |
|
Akiyuki |
error:imcc:syntax error, unexpected $undefined, expecting $end |
| 22:50 |
|
Akiyuki |
in file 'test.txt' line 58 |
| 22:50 |
|
Akiyuki |
That's the error I get. |
| 22:55 |
|
|
larsen joined perl6 |
| 22:56 |
|
|
cdpruden joined perl6 |
| 23:12 |
|
|
loud- joined perl6 |
| 23:13 |
|
|
Pz joined perl6 |
| 23:13 |
|
Pz |
How do I install perl6 modules, or use perl5 modules? |
| 23:28 |
|
|
Veritas joined perl6 |
| 23:34 |
|
|
Quell joined perl6 |
| 23:35 |
|
|
Khisanth joined perl6 |
| 23:47 |
|
|
particle_ joined perl6 |
| 23:49 |
|
|
KingDillyDilly left perl6 |
| 23:51 |
|
buu |
Fascinating. |