»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! Set by wolfe.freenode.net on 30 October 2009. |
|||
00:01
k23z__ left
00:02
TiMBuS joined
00:04
cls_bsd joined,
mssm left
00:10
nihiliad left
00:20
sbilik joined
00:30
rgrau` left
00:31
ihrd joined
00:37
ihrd left
|
|||
jnthn | pmichaud: That's...very odd. | 00:38 | |
pmichaud: I suspect that's a regression of sorts. | 00:39 | ||
Dunno how we got it though, no immediate guesses, sorry. | |||
In theory, it just returns a list of the declared variables. | |||
00:40
lestrrat is now known as lest_away
|
|||
pmichaud | Tene: if a class declares a method called 'list', then it's impossible for 'list'(xyz) to continue to find the 'list' function | 00:42 | |
unless we change every call of the form 'list'(xyz) into a sequence of find_lex and get_global instructions | 00:43 | ||
in short, methods were polluting the subroutine namespace | |||
jnthn: do you know if list declarations ever worked in ng at all? | 00:44 | ||
jnthn | That's fixed now that sub names get an & prefixed, no? | ||
pmichaud: I spent some time making them work. | |||
pmichaud | jnthn: it's worked around, yes. but methods still shouldn't appear in the namespace. | ||
and nqp-rx doesn't use the & on subs, so it still suffers. | |||
jnthn | pmichaud: Oh, indeed. Unless declared our method foo... | ||
But methods are has-scoped by default. | 00:45 | ||
00:45
lumi left,
lumi joined
|
|||
jnthn | Which means only a call to add_method and no installation anywhere else. | 00:45 | |
pmichaud: I don't recall seeing that error before. | |||
pmichaud: So I suspect something may have broken between when I worked on list decls and now. | 00:46 | ||
pmichaud | jnthn: okay, was just curious | ||
I may look at it a bit later. Other than that, list assignment appears to be working again. | |||
jnthn | pmichaud: I certainly remember wroking on them, anyway. They're working because I put a little effort into it rather than by accident. | ||
pmichaud: Yay, great. :-) | |||
pmichaud | and I suspect fixing list declaration assignment won't be difficult. | ||
as you say, it just needs to return a list of the variables | |||
jnthn | I thought that's what I had it doing. | 00:47 | |
Something must be a bit off-ish somewhere though. | |||
colomon | \o/ | ||
pmichaud | today's set of changes also fixed lots of other bugs, like array initialization and list flattening | ||
ng: my $b = 5; my $a = [$b, $b]; $b = 7; say $a.perl; | |||
p6eval | ng 89fb62: sh: ./perl6: No such file or directory | 00:48 | |
pmichaud | d'oh! | ||
ng: my $b = 5; my $a = [$b, $b]; $b = 7; say $a.perl; | |||
p6eval | ng 89fb62: sh: ./perl6: No such file or directory | ||
jnthn | Time of month^Whour. :-) | ||
pmichaud | and several of the .perl's that were broken should be working again. | ||
say (3, (4, 5), 6).perl # just curious | 00:49 | ||
ng: say (3, (4, 5), 6).perl # just curious | |||
p6eval | ng 89fb62: sh: ./perl6: No such file or directory | ||
jnthn | Nice | ||
pmichaud | > say (3, (4,5), 6).perl | ||
(3, 4, 5, 6) | |||
00:49
cdarroch left
|
|||
jnthn | :-) | 00:50 | |
pmichaud | ...not sure about that one yet. | ||
jnthn | pmichaud: How's the laziness? | ||
pmichaud | it still needs a bit of work | ||
jnthn | OK. | ||
pmichaud | I'm still waiting for some spec clarifications there, also. | ||
jnthn | I guess working out the Iterator interface is part of that. | ||
I see we've a Proxy class now too. :-) | 00:51 | ||
pmichaud | that's temporary, it will go away. | ||
when we have WHENCE working again | 00:52 | ||
jnthn | It probably should stay anyway. | ||
So folks can write lvalue subs. | |||
pmichaud | that's what WHENCE is for | ||
(at least, that's what TimToady has been saying, iiuc) | |||
jnthn | Proxy is spec though, no? | ||
pmichaud | very old spec | 00:53 | |
jnthn | Or you think it may be relic? | ||
OK. | |||
pmichaud | yeah, it may be fossil | ||
00:53
sri- joined
|
|||
jnthn | OK, let's check before tossing it. :-) | 00:53 | |
pmichaud | ooc, does Iterator also imply Positional? | 00:54 | |
00:54
sri- left
|
|||
jnthn | I don't see why it has to. | 00:55 | |
pmichaud | I'm thinking of $range.list.[5] | ||
e.g. (1..$end).list.[5] | 00:56 | ||
jnthn | Being able to ask for the next value and if there are any values, and being able to index into something at a certain point, are different operations. | ||
pmichaud | well, then what does (1..$end).list return? | ||
is it eager? (I think no) | |||
00:56
sri- joined
|
|||
pmichaud | oh, I suppose it could return a List containing a RangeIterator | 00:56 | |
jnthn | I agree no, in general. | ||
Right. | 00:57 | ||
Lists can contains parts that aren't yet evaluated. | |||
Or have an evaluated and still-to-evaluate part. | |||
pmichaud | okay, wfm | ||
jnthn | That's how I've been thinking of lists for a bit, anyway. | ||
pmichaud | Lists (in ng) do already have evaluated/still-to-evaluate part | ||
so do Arrays | |||
jnthn | OK, cool. | ||
I think that'll work. | |||
I guess in a sense, Iterator is more fundemental than Positional. | |||
Since you can get the nth element by having an iterator that you can work through until you get to element n. | 00:58 | ||
pmichaud | basically, List has RPA $!values and has Int $!gen | ||
jnthn | Where $!gen is where we've generated up to? | ||
pmichaud | where $!gen indicates the number of elements of $!values that have been evaluated | ||
jnthn | OK, wfm. | ||
That scheme does mean you end up with lots of copying of the tail, but that's only expensive if the tail has lots of evaluated stuff in it, which I guess is rather unusual. | 00:59 | ||
pmichaud | ...copying of the tail? | ||
we do? | |||
the current impl doesn't copy the tail | |||
jnthn | Suppose you have 1..100 | ||
So you start with (I'll use | to indicate $!gen's position) | 01:00 | ||
| 1..100 | |||
then after evaluating an element you want | |||
1 | 2..100 | |||
But to get that 1 in place, you had to shuffle the 2..100 down a position into the RPA? | |||
Or have you done something different? | |||
pmichaud | yes, it's a splice | ||
and in reality, since Range is immutable | 01:01 | ||
what happens is that we start with | |||
| 1..100 | |||
then when we ask the Range for its first element, it gives us back (1, RangeIterator) | |||
which gets spliced in instead of the Range | |||
jnthn | Right | ||
pmichaud | and the RangeIterator holds a reference to the original immutable Range | ||
jnthn | Oh, sure | ||
pmichaud | after that we ask the RangeIterator for elements | 01:02 | |
and each time they get spliced in | |||
but that's not a copy | |||
jnthn | But you still need to shuffle that RangeIterator along one? | ||
It's not a copy in *that* sense, no. :-) | |||
It's a copy of the pointer to the range iterator to make space to put the poitner to the evaluated value at the low level, I guess. | |||
pmichaud | right, it's a pointer copy | 01:03 | |
jnthn | OK, what I'm saying is, that's cheap if there's just a single range on the end. | ||
pmichaud | which should be relatively quick in RPAs | ||
jnthn | But more costly if you've loads of unevaluated stuff on the end. | ||
01:03
lumi left
|
|||
pmichaud checks to see how RPA does splice | 01:03 | ||
01:03
lumi joined,
sri- left
|
|||
jnthn | But I don't think that's a common case, so the scheme is fine...just a possible slow case to keep in mind. :-) | 01:03 | |
01:05
sri_kraih joined
|
|||
pmichaud | yes, it's a bunch of pointer copies | 01:05 | |
jnthn | OK | ||
pmichaud | basically set_pmc_keyed_int and get_pmc_keyed_int | ||
jnthn | OK. | ||
We'll go with that for now, it'll be Good Enough. | 01:06 | ||
pmichaud | that could undoubtedly be optimized if we desired | ||
jnthn | Sure | ||
Well, I don't think any scheme is optimal for every situation. | |||
pmichaud | and yes, we could go with generated versus non-generated arrays, which avoids splicing, but also might make RPA management a bit trickier | 01:07 | |
right now it's nice because I can take any RPA and set it as $!values and we're good to go :-) | |||
including, e.g. :slurpy | |||
jnthn | Aye, I agree with the scheme. | 01:08 | |
Just wanted to make sure I understood it's strengths/weaknesses the same way as you. | |||
pmichaud | well, it'd be pretty quick to switch it out for another if we want | 01:12 | |
actually, after thinking about it a bit I'm kind of liking the generated/lazy two list approach | 01:13 | ||
although, even with the two list approach we end up doing splices | 01:14 | ||
anyway, work for another day | 01:15 | ||
dinnertime here -- I'll work on something else a bit later (like release announcement or non-release announcement or whatever) | |||
01:16
sri_kraih is now known as kraih,
kraih is now known as kraih_sri
01:17
mikehh_ joined
01:19
mikehh_ is now known as mikehh__,
mikehh__ is now known as mikehh
01:20
cognominal left
|
|||
jnthn | pmichaud: OK, sleep time here...I'll catch you tomorrow. o/ | 01:20 | |
01:21
kraih_sri left
01:25
kraih_sri joined
01:26
ash_ left
01:27
kraih_sri left,
ingy joined
01:28
sbilik left,
kraih_sri joined
01:31
lumi left,
lumi joined
01:39
nihiliad joined
01:45
lumi left
01:46
lumi joined
01:51
araujo left
01:54
drbean joined
01:56
lumi left
01:59
lumi joined
02:02
kraih_sri left
02:03
kraih_sri joined
02:10
meppl left
02:18
orafu left,
orafu joined
02:19
lest_away is now known as lestrrat
02:21
lumi left
02:24
lumi joined
02:29
kst` joined
02:30
kst left
02:34
diakopter joined
02:35
ChanServ sets mode: +o moritz_,
ChanServ sets mode: +o Juerd,
ChanServ sets mode: +o spinclad,
ChanServ sets mode: +o Tene,
ChanServ sets mode: +o diakopter
02:37
diakopter sets mode: +vvvv pugs_svn dalek buubot _ilbot2,
eternaleye joined
02:38
diakopte1 joined
02:41
diakopte1 left
02:43
lumi left,
lumi joined
03:08
stephenlb left
03:21
lumi left,
lumi joined,
kst` left
03:25
lestrrat is now known as lest_away
03:28
araujo joined,
_jaldhar joined
03:33
zz_Chazz is now known as Chazz
03:34
cotto_w0rk joined
|
|||
pugs_svn | r29576 | lwall++ | [S32/Containers] KeyWeight deletion critierion kept consistent for dbrunton++ | 03:39 | |
03:47
drbean left
03:48
drbean joined
03:50
cognominal joined,
cotto_work left
|
|||
colomon | pmichaud: ping? | 04:04 | |
04:05
hicx174 left
|
|||
colomon | ng: say (^10).perl | 04:05 | |
p6eval | ng 89fb62: 0..^10 | ||
colomon | For whomever backlogs this: Range.list should be implemented using some sort of iterator, right? Is there a guide or example somewhere in the code of how to go about doing this? | 04:09 | |
afk # bedtime | |||
04:10
lumi left,
lumi joined
04:15
kraih_sri is now known as sri_perl
|
|||
sjohnson | OT question: any fans of Clipper / Harbour hanging out in this channel? | 04:15 | |
04:15
sri_perl is now known as sri_freenode
04:17
sri_freenode left,
kraih_sri joined
04:19
kraih_sri is now known as sri_freenode,
sri_freenode left
04:20
kraih_sri joined
04:25
partisan joined,
hercynium left
04:29
kraih_sri left
04:31
nihiliad left
04:36
lest_away is now known as lestrrat
|
|||
s1n | how do i get my paws on ng? | 04:37 | |
04:37
sri_perl joined
04:42
sri_perl is now known as kraih_sri
04:44
lumi left
04:45
gfx joined
04:47
kraih_sri left,
lumi joined,
kraih_sri joined
05:11
cspencer joined
05:19
cspencer left
05:34
colomon left
05:35
colomon joined
05:40
lumi left
05:41
lumi joined
06:30
agentzh joined
06:35
[particle]1 joined
06:43
drbean left
06:53
[particle] left
07:08
kaare joined,
kaare is now known as Guest30425
07:13
lumi left,
lumi joined
07:18
patspam left,
patspam1 joined
07:19
werns joined
07:22
Su-Shee joined
|
|||
Su-Shee | good morning | 07:22 | |
07:27
vamped joined,
gfx left
|
|||
vamped | hi Su-Shee | 07:28 | |
07:32
werns left
07:36
Baggiokwok joined
|
|||
vamped | anyone - how to I execute ng commands in a private window? | 07:44 | |
07:48
tarbo2_ left
07:50
justatheory left
07:54
mssm joined
|
|||
eternaleye | vamped: /msg p6eval <engine>: <code> | 07:56 | |
It's in the /title | |||
08:04
cognominal left
08:05
cognominal joined
08:08
tarbo2 joined
08:10
werns joined
08:13
Su-Shee_ joined
08:15
werns left
08:18
flw joined
08:21
flw left
08:25
Su-Shee left,
mikehh left
08:26
mikehh joined
08:28
barney joined
08:33
k23z__ joined
08:35
Su-Shee_ is now known as Su-Shee
08:49
BinGOs left,
eiro left
08:50
eiro joined,
BinGOs joined
08:56
mssm left
08:57
mssm joined
08:58
mtve joined,
JimmyZ joined,
Chazz left
09:00
JimmyZ left,
Chazz joined,
Chazz is now known as Guest36383,
JimmyZ joined
09:02
JimmyZ left
|
|||
vamped | eternaleye: thanks! I swear I've read that title several times, and it's never popped out. | 09:04 | |
eternaleye | vamped: No problem :) | ||
09:06
dakkar joined
09:12
JimmyZ joined
09:14
JimmyZ left
09:16
JimmyZ joined
09:17
JimmyZ left
09:18
Jimmy_Zhuo joined
09:19
Jimmy_Zhuo left
09:24
cognominal left
09:30
agentzh left
09:33
k23z__ left
09:36
vamped left
09:37
cognominal joined
09:41
Baggiokwok left
09:57
mj41 left
10:00
mj41 joined
10:04
jonasbn joined
10:18
payload left
10:27
BinGOs left,
eiro left
10:29
eiro joined,
BinGOs joined
10:31
BinGOs left,
eiro left,
eiro joined,
BinGOs joined
10:33
BinGOs left,
eiro left
10:36
payload joined
10:37
lumi left,
lumi joined
10:38
agentzh joined
10:47
eiro joined,
BinGOs joined
10:48
BinGOs left,
eiro left
11:00
agentzh left
11:07
BinGOs joined
11:12
eiro joined
11:16
rodi joined
11:18
jonasbn left
11:20
meneldor joined
|
|||
meneldor | hello | 11:20 | |
11:21
mj41 left
11:24
mj41 joined
11:27
jonasbn joined
|
|||
colomon | quiet channel last night | 11:29 | |
jnthn | Maybe everyone went to the krcma. :-) | ||
I was surprised by the lack of backlog this morning, though. | 11:30 | ||
11:30
clintongormley joined
|
|||
mathw | I was at aikido | 11:32 | |
colomon | ng: my ($a, $b) = (1, "kj"); say $a; say $b; | ||
p6eval | ng 89fb62: Redeclaration of symbol $a at line 1, near " = (1, \"kj"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328) | ||
pugs_svn | r29577 | rodi++ | Thanks, TimToady++ for the clarification. | 11:33 | |
11:34
cotto_w0rk left
11:41
LaVolta joined
11:45
LaVolta left
|
|||
colomon | ng: my $a; my $b; ($a, $b) = (1, "kj"); say $a; say $b; | 11:46 | |
p6eval | ng 89fb62: 1kj | ||
11:46
lumi left,
LaVolta joined,
lumi joined,
payload left
|
|||
mathw | Executing loop { self.throw(target => $floor); self.get-up; }; | 11:55 | |
</delayed> | |||
Eventually self.get-up threw a JellyLegsException | 11:58 | ||
colomon | was that during aikido or after? | 12:00 | |
jnthn | Ah, I was doing loop { my $drink = request_from_waitress('pivo'); self.drink($drink); }; but after a few it threw a OMGYouHaveToWorkTomorrowException. :-) | 12:01 | |
12:07
bluescreen joined
|
|||
colomon | Hmmm... for me it was something like self.song(*) { rock boy & sing $_ }; watch "Chuck"; | 12:07 | |
mathw | colomon: during | 12:08 | |
jnthn: so you probably ache less than I do this morning | |||
colomon is insanely pleased with himself at figuring out which line is generating the my ($a, $b) error. | |||
mathw | I should have said $jnthn.ache < $mathw.ache | ||
Although it's not too bad really, it's when they say 'roll all the way down the dojo' | 12:09 | ||
when I get up at the far end I'm swaying and the room seems to be spinning | |||
It's a glimpse at what clothes go through in the washing machine | 12:10 | ||
colomon | :) | ||
mathw | fun though | ||
especially my partner's attempts to look threatening during goshin waza | 12:11 | ||
it's not so mcuh that he doesn't try, but that he starts laughing immediately | |||
colomon | jnthn: is there a way to do "say" from Actions.pm ? | 12:12 | |
jnthn | Try DEBUG('omg worreva') | ||
mathw | CATCH { when LunchTimeException { self.go(@lunch-shops.pick) } } | ||
colomon | jnthn: can you send it a variable? | ||
oooo, apparently yes! | 12:13 | ||
sweet, I'm watching all the variables be declared in core. | 12:14 | ||
12:14
TiMBuS left
|
|||
colomon | okay, so declare_variable is not getting called twice for $a. | 12:14 | |
12:17
meppl joined
12:21
LaVolta left
12:22
LaVolta joined
|
|||
LaVolta | hi all, I've got an error here while building Parrot. | 12:24 | |
-licuuc -licudata -lpthread -lm \c | |||
i686-apple-darwin10-g++-4.2.1: c: No such file or directory | |||
make: *** [blib/lib/libparrot.2.0.0.dylib] Error 1 | |||
12:25
drbean joined,
ashizawa left
|
|||
LaVolta | i've checked its make file...seems to be caused by the weird '\c' | 12:25 | |
the latest version of Parrot, just svn co'ed | 12:26 | ||
gcc 4.2.1 on Mac OS X 10.6.2 | 12:27 | ||
any ideas? | |||
ah...it's here ICU_SHARED := -lpthread -lm -L/opt/local/lib -licuuc -licudata -lpthread -lm \c | 12:28 | ||
12:29
payload joined
12:30
drbean left
12:39
SmokeMachine joined
|
|||
jnthn | LaVolta: Not sure...looks like some config or makefile generation bug. | 12:42 | |
LaVolta: You'd probably have more luck on #parrot, fwiw. | |||
colomon: You can concat any string(s) together you like and pass them in. :-) | 12:43 | ||
12:43
drbean joined,
ruoso joined
|
|||
colomon | jnthn: using ~ ? | 12:44 | |
LaVolta | jnthn, thanks! I just find someone sharing the same problem after I input some lines on #parrot | ||
jnthn, it's trac.parrot.org/parrot/ticket/890 | 12:45 | ||
jnthn | colomon: Indeedy. | ||
colomon | \o/ | ||
colomon is alternating between sticking DEBUGs in Actions.pm and reading picture books to his boy. | 12:46 | ||
LaVolta | jnthn, last time i got it around by passing icu related stuff in... | 12:47 | |
jnthn | colomon: Beats reading Actions.pm to your boy. :-) | 12:48 | |
12:48
lumi left
12:49
lumi joined
12:53
LaVolta left
12:58
SmokeMachine left
|
|||
colomon | jnthn: I dunno, at one point there I was "reading" him Treoir magazine -- flipping through looking for pictures and trying to tell him things about them. "And there was a fiddle player, and a flute player, and a concertina player, and they played music together. And a bunch of old guys listened to them." | 12:58 | |
meneldor | guys is Rakudo changed since Parrot is v2 ? | 12:59 | |
jnthn | "And there was a parse node, and someone made an AST node out of it!" | ||
colomon | Actually, he's flipping through the magazine on his own now. I think he's disappointed, because the back cover has a large picture of a really cute 5-yo girl with a fiddle, and he'd love to read an entire book about her... | 13:01 | |
13:02
LaVolta joined
|
|||
colomon | jnthn: I think I've got it. | 13:06 | |
when you say my ($a, $b) = blah | |||
both param_var and declare_variable try to add the symbol. | 13:07 | ||
13:07
patspam1 left
|
|||
jnthn | colomon: oh! | 13:07 | |
Ah...'cus it's parsing it as a signature first. | 13:08 | ||
Ugh. | |||
takadonet | morning all | 13:10 | |
13:12
rgrau left
13:13
kraih_sri left
13:14
nacho joined,
kraih_sri joined
13:24
rgrau joined
|
|||
mathw returns, full of food | 13:24 | ||
13:25
SmokeMachine joined
13:28
jho joined,
cognominal left
|
|||
jho | Is there something like unix_std_crypt (from Crypt::Passwd) for Perl 6? | 13:28 | |
rodi | jho: nothing in the pugs or rakudo repositories, AFAICT. | 13:38 | |
colomon | jnthn: was that enough of a clue for you to solve the issue, or do I need to be poking around more in Actions.pm? | 13:40 | |
13:43
literal left,
avar left,
buubot left
|
|||
jnthn | colomon: I understand the problem. I didn't come up with a Good Solution yet. | 13:44 | |
(That is, I understand it thanks to your digging. :-)) | 13:45 | ||
13:45
buubot joined
|
|||
colomon | which was only possible thanks to your handy DEBUG advice. :) | 13:45 | |
pugs_svn | r29578 | rodi++ | fixed link to S32 | 13:50 | |
13:51
lumi left,
lumi joined
13:52
payload left
13:54
payload joined
14:01
smash_ joined
|
|||
smash_ | hello | 14:01 | |
takadonet | smash_: hello | 14:03 | |
PerlJam | greets #perl6 | 14:05 | |
14:05
plainhao joined
|
|||
colomon | hello! | 14:06 | |
14:09
jonasbn left,
JimmyZ joined,
literal joined
14:10
cognominal joined,
rodi left
14:12
jho left,
avar joined
14:15
drbean left
14:21
LaVolta left
|
|||
meneldor | if i have for example $obj1.name = "name1"; $obj2.name = "name2"; @arr = ($obj1,obj2); | 14:22 | |
can i take the names | |||
somethink like: say @arr<name> | |||
jnthn | @arr = ($obj1,$obj2)>>.name; | 14:23 | |
14:23
mjk joined,
JimmyZ left
|
|||
meneldor | but i dont know how many objects are stored inside @arr | 14:23 | |
jnthn | Oh, that's fine | 14:24 | |
meneldor: You have an array of objects and you want an array of names, yes? | |||
(just making sure I understand what you want properly... :-)) | |||
14:24
rff joined
|
|||
meneldor | yes i want to take the names only | 14:24 | |
jnthn | my @names = @arr>>.name; | 14:25 | |
meneldor | if these objects are people i want to know only their names | ||
tnx | |||
let me test it :) | |||
nice ! it works :) | 14:27 | ||
jnthn | ;-) | ||
meneldor | there are tons of new operators | 14:28 | |
i cannot remember even half of them | |||
colomon | meneldor: and then there are the metaoperators... :) | ||
jnthn | meneldor: That one you can work out from a rule though. :-) | ||
mathw | You'll get used to it quickly enough | ||
They're actually pretty logical | |||
jnthn | meneldor: >>postfixop generally should work (though not done yet in Rakudo for the general case) | ||
So @arr>>++ would increment everything in the array | 14:29 | ||
meneldor | wow | ||
jnthn | So if you remember >> means "do a postfix operator for the whole array", you know 'em all. :-) | ||
meneldor | i see :) | ||
takadonet | I think someone is in love with Perl6.... | 14:30 | |
colomon | assuming you remember that .method is a postfix operator. :) | ||
meneldor | im currently learning the OO things | ||
ill show you my rebuilded game example soon for corrections | |||
14:32
Baggiokwok joined
|
|||
mathw | meneldor: have you met .= yet? | 14:34 | |
meneldor | no | ||
why? you scare me :) | 14:35 | ||
moritz_ | rakudo: my $x = 'foo'; $x.=uc; say $x | 14:36 | |
p6eval | rakudo 1d4928: FOO | ||
moritz_ | .= means "call a method and store the result in the variable" | ||
mathw | for contrast | ||
rakudo: my $x = 'foo'; $x.uc; say $x; | 14:37 | ||
p6eval | rakudo 1d4928: foo | ||
meneldor | ahaaaa :) | 14:38 | |
ill show you my game example now | 14:41 | ||
lisppaste3 | meneldor pasted "untitled" at paste.lisp.org/display/93735 | 14:42 | |
meneldor | please tell me if im starting to understand the p6 oo | ||
its main container map which contains players | |||
every player have a castle | |||
every castle has many heroes | 14:43 | ||
im trying to use Role too | |||
btw you can run the code, it works | |||
14:44
Guest30425 left
14:49
ash_ joined
14:54
Baggiokwok left
|
|||
ash_ | does anyone know who maintains the perl6 vim syntax? i just wanted to report a bug in it | 14:59 | |
oh, i found it on github, and someone's already reported the issue, so nevermind | 15:01 | ||
moritz_ | ash_: github.com/petdance/vim-perl/issues | ||
moritz_ too slow | |||
15:04
alester left
15:08
bluescreen left
15:21
bluescreen joined,
payload1 joined
15:29
bluescreen left
15:30
payload left,
barney left
15:31
nacho left,
nacho joined
15:32
viliomo joined,
viliomo left
15:33
payload1 left
|
|||
pmichaud | good morning, #perl6 | 15:42 | |
mathw | good afternoon pmichaud | ||
takadonet | morning pmichaud | ||
ash_ | jnthn: could the parameterized role issue be coming from passing the wrong things to set_signature_elem? | ||
morning | 15:43 | ||
colomon | morning! | ||
moritz_ | good localtime() | 15:44 | |
pmichaud | after starting to write the message explaining the release delay, I think I might want to go ahead and issue a release from existing master. Yes, I'm waffling. | ||
15:44
rodi joined
|
|||
jnthn | hi pm | 15:45 | |
ash_: Kinda - I think we probably need to construct the signature object per version of the role we produce. | |||
ash_: Otherwise it's going to look in the wrong lexical scope for the thunk sub that gives it the T. | 15:46 | ||
ash_ | gist.github.com/283857 is an example i am working from, in the generated pir, i see that is using a block to check the type of the parameter passed to the method (see line #281) which refers to a lexical T, which i think is where the T is getting messed up | ||
jnthn | ash_: That said, we may need to do something ever more clever to promote the thunks to actual type constraints. | ||
ash_: checking. | |||
ash_: oh, I see it. | 15:47 | ||
ash_ | line 268 is where it sets the sig for $a in that example | ||
jnthn | oh, wait, no | 15:48 | |
ash_ | which is the param thats constrained by T | ||
jnthn | Right. | 15:49 | |
Yes, it's something in that area that needs a fix. | |||
15:49
jonasbn joined
|
|||
pmichaud | ash_++ # ash's simple tests and discoveries regarding lists in ng made it *far* easier to get list assignment to work | 15:49 | |
ash_++ | |||
colomon | pmichaud: If we do release master today, can we release ng as master in a week or two? | ||
pmichaud | ash_++ # yes, *THAT* much easier | ||
colomon: yes, we can. | |||
I'd still plan to switch ng to master asap | |||
15:49
nihiliad joined
|
|||
jnthn | ash_: I still think it may be possible to fix it in the sub.clone call, fwiw. | 15:49 | |
ash_ | probably, but that area seems responsible for the problem | 15:50 | |
the lexical T is getting changed for whatever reason | |||
jnthn | Well, I know why. | ||
ash_ | so maybe on the assignment to the lexical T it should clone first? | ||
jnthn | It's because we're not cloning somewhere we should be. | ||
Right. | |||
ash_ /shrug not sure | |||
jnthn | But we're cloning too little. | ||
pmichaud | ...clone? | ||
15:50
Psyche^ joined
|
|||
jnthn | pmichaud: Create a closure. | 15:51 | |
pmichaud: If a sig uses a type variable, we need to make sure it is looking for the type parameter in the correct lexical scope. | |||
ash_ | duplicating T so you don't end up accidentally referring to the wrong instance of it later, whatever is needed for that | ||
pmichaud | right, but closures still tend to create/clone themselves automagically here | ||
jnthn | pmichaud: Tend to. :-) | 15:52 | |
pmichaud: I suspect part of the issue is the interaction between this and the lazy signature building, fwiw. | |||
pmichaud | maybe | ||
can I see the source that produced this PIR ? | 15:53 | ||
ash_ | its on the gist | ||
at the bottom | |||
there are 2 files in the gist | |||
pmichaud | got it | ||
15:53
gabiruh left
|
|||
ash_ | i was just isolating the test case from S14-something that caused the problem | 15:54 | |
pmichaud | where's the code that executes the body of the role? | 15:55 | |
ash_ | 124 | ||
the double :anon part | 15:56 | ||
seems all roles have that on their body definitions | |||
pmichaud | right, that's the body of the role. What *calls* that? | ||
jnthn | !select in Role.pir | ||
ingy | good morning | ||
jnthn | It's a multi candidate. | ||
pmichaud | I don't see that call in !select | 15:57 | |
jnthn | ? | ||
pmichaud | oh, is it selector(...) ? | ||
jnthn | Yes. | ||
ash_ | its inside the role how | ||
jnthn | add_variatn adds to that. | ||
No, it's not, it's in src/builtins/Role.pir | |||
RoleHOW's bits are just for constructing an individual variant. | 15:58 | ||
ash_ | ah, oops | ||
jnthn | The src/builtins/Role.pir is the object that deals with the role as an "aggregate" and supports keeping track of each variant. | ||
ash_: Aye, there's too many things called Role here. :-) | |||
15:58
thanasis joined
|
|||
jnthn | ash_: I did ask here on channel about trying to name the collection of possible roles and an individual one differently. | 15:59 | |
But didn't see any replies. | |||
15:59
justatheory joined
|
|||
jnthn | I still think it'd make this stuff easier to understand/discuss if we could do so though. | 15:59 | |
ash_ | yeah, it sounds like it might help people know what your referring to | ||
jnthn | For multi dispatch, we talk about "the multi" meaning the lot of them, and its "candidates" which are the individual options. | 16:00 | |
16:00
jan_ left
|
|||
jnthn | We kinda need an analog for roles, imho. | 16:00 | |
16:00
thanasis left
|
|||
pmichaud | "role candidate" | 16:00 | |
"parameterized role instance" | 16:01 | ||
16:01
justatheory_ joined,
Alias joined
|
|||
ash_ | Trait :P | 16:02 | |
16:02
Patterner left,
Psyche^ is now known as Patterner
|
|||
pmichaud | what does Method.new return? | 16:03 | |
16:03
uniejo joined
|
|||
pmichaud | lines 158-162 look suspicious to me | 16:03 | |
jnthn | pmichaud: a Method | 16:04 | |
pmichaud: Yes, that may be where the issue is too. | |||
pmichaud | I think we should be passing a cloned closure to .new, instead of cloning the Method that comes back | ||
still, if Method.clone() works (and remembers to clone its sub), then it probably shouldn't make a difference here. | 16:06 | ||
16:06
rgrau` joined
16:07
REPLeffect left
|
|||
pmichaud | ....do we still need fixup_cloned_sub ? | 16:08 | |
ash_ | doing an ack says its used in Mu and Routine still | 16:10 | |
I don't know what its for though | |||
jnthn | pmichaud: No, I think fixup_cloned_sub can die. | ||
16:10
snearch_ joined
|
|||
pmichaud | ash_: in master branch, we put most of the sub/method properties directly on the underlying Parrot Sub | 16:10 | |
ash_: in ng, we have Code objects that are wrappers around the Parrot Sub and hold the additional metainformation | 16:11 | ||
so, in master branch, we needed a special ability to clone subs and to keep track of the original Parrot Sub | |||
in ng, that may no longer be needed | |||
(and the places it exists still are fossils left over from the copy from master) | 16:12 | ||
16:12
Tideflat joined,
Tideflat left
|
|||
pmichaud | $P0 = getprop '$!p6type', do | 16:14 | |
what is $!p6type ? | |||
jnthn | pmichaud: Reference back to the Perl 6 wrapper. | 16:15 | |
pmichaud: So you can go Parrot Sub -> Perl 6 Object. | |||
pmichaud | "the" Perl 6 wrapper? | ||
hrm | |||
jnthn | ? | 16:16 | |
pmichaud | okay, I think that's the bug here | ||
as the code exists now, the same Parrot sub gets passed to .new | 16:17 | ||
jnthn | Ah. | ||
That sounds quite feasible. | |||
pmichaud | and so lines 52-54 of Code.pir short-circuit the Method object creation | ||
because the Parrot sub already has a $!do property | |||
jnthn | Ah. | ||
pmichaud | (from the first role instantiation) | ||
jnthn | That sounds feasible. | ||
pmichaud++ | |||
pmichaud | making the change I described above should fix this | 16:18 | |
16:18
mjk left
|
|||
jnthn | pmichaud: Fix in src/Perl6/Compiler/Role.pm's add_method method, I think. | 16:18 | |
pmichaud: To tweak the AST that calls the Method.new to pass in a clone. | |||
We probably only need to do it for roles, not classes... | |||
pmichaud | I'm wondering if Code.new should perhaps always clone the "do" parameter | ||
jnthn | Hm | ||
Wonder if that'd cause different issues...maybe not. | |||
Feel free to try it though. | 16:19 | ||
pmichaud | I need to think on it just a bit further | ||
if we do that, we'd probably want to keep a reference around to the "real" Parrot sub | |||
although maybe not. Are there any other properties being held on Parrot subs these days? | |||
jnthn | We keep the signature on the Parrot sub at the moment. | 16:20 | |
colomon | jnthn: just occurred to me that ($a, $b) = blah does work, it's just my ($a, $b) that fails. Does that suggest an easy fix? | ||
\ | |||
pmichaud | colomon: the problem is with list declarations, I think. | ||
jnthn | Just to avoid an extra indirection through the properties. | ||
pmichaud | ng: my ($a, $b); | ||
p6eval | ng 89fb62: Redeclaration of symbol $a at line 1, near ";"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328) | ||
16:20
justatheory left,
justatheory_ is now known as justatheory
|
|||
jnthn | pmichaud: Yes, it's because the signature handling enters the $a, and then the variable declaration code goes and re-enters it. | 16:20 | |
(into .symbol) | 16:21 | ||
colomon++ found that earlier. | |||
pmichaud | yeah, signature handling needs to not enter the $a | ||
*or* | |||
jnthn | Not having it do so will cause a different problem. | 16:22 | |
pmichaud | signature handling needs to enter the variables based on a dynamic var that identifies the scope | ||
jnthn | That could work out better. | ||
pmichaud | why does signature handling have to enter the variables? I thought we now have P::C::Signature objects that do this for us...? | 16:23 | |
jnthn | pmichaud: Because we need to know about some of the lexicals during the parse. | 16:24 | |
pmichaud: That is, during the parse of the method body. | |||
So they need to go in .symbol | |||
pmichaud | yes, but that would be after already building the P:C:Signature | ||
jnthn | We could reorganize things a bit - the insertion of the decls that makes happens too late ATM though. | 16:25 | |
(e.g. after we parse the body) | |||
I don't mind tweaking that if it's cleaner. | |||
pmichaud | okay, as STD sits now I agree that it needs to happen as part of the signature handler. | 16:26 | |
and that needs to be following $*IN_DECL | |||
or perhaps $*SCOPE | 16:27 | ||
kinda icky the way that's structured atm | |||
16:28
kst joined
|
|||
jnthn | pmichaud: In Rakudo, STD or both? | 16:30 | |
pmichaud | STD | ||
I wonder if it helps if rule multisig { ... } also sets :my $*SCOPE = 'my' | 16:31 | ||
16:31
rodi left
|
|||
pmichaud | that way a signature knows that its variables are lexically scoped | 16:31 | |
(as would be the case for signatures in routine_def and method_def) | 16:32 | ||
jnthn | That's a possibility. | ||
pmichaud | anyway, the logic I see is this: | 16:33 | |
jnthn | pmichaud: We do know the difference when we parse my $a and my (...sig here...) though. We can always just say for the second "oh, don't go re-entering the variables in .symbol". | ||
pmichaud | right | ||
but what about our (...sig here...) | |||
jnthn | Right, I was thinking about this in conjunction with your suggestion about using $*SCOPE. | 16:34 | |
pmichaud | here's another possibility, perhaps <multisig> should take care of handling variables for routines | ||
instead of <signature> | |||
jnthn | Perhaps, yes. | ||
TMTOWTDI. :-) | |||
pmichaud | routine_def and method_def never call <signature> directly -- they always call <multisig> | 16:35 | |
variable declarations don't call <multisig> | |||
colomon | std: my ($a, $b where { $b % %a == 0 }) = (3. 9); | ||
p6eval | std 29578: ===SORRY!===Decimal point must be followed by digit at /tmp/mAnsCR5dmP line 1:------> my ($a, $b where { $b % %a == 0 }) = (3.⏏ 9);Other potential difficulties: Variable %a is not predeclared at /tmp/mAnsCR5dmP line 1:------> my ($a, $b | ||
..wher… | |||
colomon | std: my ($a, $b where { $b % $a == 0 }) = (3, 9); | ||
pmichaud | so, if <multisig> handles the "enter symbols for body" component, <signature> doesn't have to do it | ||
p6eval | std 29578: ok 00:01 109m | ||
pmichaud | we can perhaps have a method on P::C::Signature that enters symbols according to a $scope we pass in as a parameter | 16:36 | |
then <signature> is simply responsible for building the P::C::Signature | |||
and the thing that calls <signature> is responsible for saying where to put the declarations | 16:38 | ||
jnthn | pmichaud: I like that. | ||
That feels neat. | |||
Plus multisig can then union all the decls too, if we need to do smart thingies like that. | 16:39 | ||
pmichaud | looking through STD, we also have a lot of places that call <signature> for things other than sub params directly | ||
right | |||
that's definitely nicer | |||
jnthn | OK, we can haz a winning stratergy. :-) | ||
ash_ | jnthn, i don't think i could of patched this btw, it seems beyond me :P | ||
pmichaud | looking at | 16:40 | |
wiki.github.com/rakudo/rakudo/ng-ma...res-needed | |||
how shall we divvy up the tasks? | 16:41 | ||
pmichaud updates the page | |||
jnthn | Is that really all we need? :-) | 16:42 | |
pmichaud | no | ||
we just add things as we go :-) | |||
cheap short-term ticket system :) | |||
jnthn | :-) | 16:43 | |
pmichaud: I don't mind sorting out "my XYZ $foo" | |||
I can probably work on hashes also. | 16:44 | ||
I'd rather leave lists and grammars to you. ;-) | |||
pmichaud | I was thinking I should do hashes, since it's also affected by slicing | ||
hash assignment is pretty straightforward | |||
jnthn | That's fine by me. | ||
It's not like there's a shortage of things I can be doing that aren't on the list, but potentially could be. | 16:45 | ||
pmichaud | updated page (more updates coming) | ||
jnthn | Right, I can do those two new ones. | 16:46 | |
pmichaud | just add yourself to the ones you think you're likely to tackel | ||
*tackle | |||
TimToady wonders if he'll have a brane tooday | |||
pmichaud | add any tasks you think need to be prioritized | ||
add me to any tasks you think I really need to look at :-) | 16:47 | ||
ash_ | brianes are useful when you have to think making | ||
pmichaud | colomon: ping | ||
ash_ | changing computer labs & | 16:48 | |
16:48
ash_ left
16:52
jackyf joined
|
|||
jonasbn | pmichaud: are you busy? | 16:53 | |
16:54
meneldor left
16:56
ash_ joined
|
|||
pmichaud | jonasbn: not terribly busy, no | 16:56 | |
jonasbn: what can I do for you? | |||
jonasbn | about the hackathon, you have given me 6 names | 16:57 | |
16:57
colomon__ joined,
colomon left,
colomon__ is now known as colomon
|
|||
jonasbn | do you want me to write format invites for all of the ppl on the list? | 16:57 | |
s/format/formal/ | |||
pmichaud | jonasbn: I actually created a separate list for this but never published it. we can do it there | ||
jonasbn | super | 16:58 | |
pmichaud | might be better to do it separately from the perl6-compiler list | ||
jonasbn | yes of course | ||
it is somewhat of topic :) | |||
pmichaud | I still need to subscribe people to that other list | ||
jonasbn | okay | ||
pmichaud | I can send you the email address of the invitees separately, though | 16:59 | |
jonasbn | that would be nice | ||
jnthn | plz use [email@hidden.address] for me, not the jonathan@... | ||
pmichaud | anyway, I need lunch here -- immediately after lunch I'll finish up the list, subscribe people to it (incl yourself), and make a list announcement | ||
jonasbn | super | ||
then I will write-up all the info I have for now | 17:00 | ||
pmichaud | anyone who wants to subscribe themselves directly: groups.google.com/group/perl6-workshops | ||
jonasbn | I have ordered an Act instance for registration, have not heard anything though | 17:01 | |
this will provide a Wiki etc. | |||
pmichaud | right | ||
that would be excellent | |||
17:01
cotto_work joined
|
|||
ash_ | when is the hackathon? | 17:01 | |
17:01
ive joined
|
|||
jonasbn | ash_: 5. & 6. March 2010 in Copenhageb | 17:02 | |
Copenhagen | |||
ash_ | would be cool to go to one but being in alabama, us, makes that difficult :P | 17:03 | |
17:03
aindilis joined
|
|||
pmichaud | ash_: I'm thinking of putting one together on the US East Coast, also | 17:03 | |
(likely eastern PA) | |||
jonasbn | pmichaud: are most/all of you guys going to the Dutch Perl Workshop or? | 17:04 | |
pmichaud | jonasbn: many are. I think we can find out everyone's schedule on the list | ||
jonasbn | sounds good | ||
my plan is to have the hackathon saturday and sunday | 17:05 | ||
pmichaud | works well | ||
jonasbn | monday will be reserved for the core team | ||
pmichaud | excellent | ||
jonasbn | you can then invite whoever you want if some of the attendees prove useful | ||
well I have subscribed to the list | 17:06 | ||
pmichaud | excellent. I'm going to do lunch now, will fix up the list in ~75 mins | ||
jonasbn | I will post the details there when you send out the announcement of it's existance - then we can take it from there | ||
pmichaud | perfect | ||
jonasbn | super | ||
jnthn | spiffing, chaps. | 17:07 | |
17:07
cotto_w0rk joined
|
|||
jnthn | </english_english> :-) | 17:07 | |
pmichaud | <english dialect="queen's">...</english> | ||
okay, afk, lunch | 17:08 | ||
jnthn | :-) | ||
pmichaud | oh, anyone have a mongers group to suggest for the Jan release? | 17:09 | |
(I'll check backscroll when I return) | 17:10 | ||
maybe the nlpw folks? | |||
17:11
cdarroch joined,
Alias left
|
|||
pmichaud | anyone know what this is...? perl6.org.uk/psdw2010/ | 17:13 | |
heh | 17:15 | ||
I think I'll name this release "Minneapolis" | |||
jnthn | pmichaud: Heh, curious... | ||
pmichaud: No idea though. | |||
17:15
k23z__ joined
17:18
cotto_working joined
17:20
jan_ joined
17:22
justatheory_ joined
17:24
cotto_work left,
cotto_work joined
17:25
justatheory left,
justatheory_ is now known as justatheory
17:31
nacho left
17:32
cognominal left
|
|||
[particle]1 | pmichaud: seems like this guy (search.cpan.org/~cosmicnet/) is behind it | 17:32 | |
17:32
[particle]1 is now known as [particle]
17:35
cotto_w0rk left
|
|||
dakkar | Lyle! | 17:36 | |
he was the main character is a couple of absurdly long half-flame threads on the london.pm list, a couple of years ago | 17:37 | ||
17:37
cotto_working left
17:38
nacho joined
17:39
ruoso left
17:41
ruoso joined
|
|||
ash_ | so, some people in here use linux a bunch right? just a quick question, i have used it before, but never had this problem. ./configure is failing on an ebuild for me because my C compiler (gcc) can't make executables... | 17:41 | |
i think i need to go find the gentoo channel | |||
dakkar | ash_: they'll probably be better equipped to help you, yes | 17:42 | |
ash_: #gentoo here on freenode | |||
ash_ | i just think its funny that you can have a gcc compiler that can't make executables, there is something ironic about that | 17:43 | |
dakkar | it happens frequently with cross-compilers | 17:48 | |
or, of course, if someone wrote a program called 'gcc' which is not what you'd think it were, and put it in the PATH | |||
18:02
stephenlb joined,
jackyf left
18:06
dakkar left
18:08
rff left
18:10
clintongormley left,
clintongormley joined
18:11
nihiliad left
18:12
ShaneC joined
|
|||
clintongormley | heya all, where is moritz_ these days? i heard a rumour that he was gainfully employed? | 18:13 | |
18:13
alester joined
18:14
nihiliad joined
18:17
nacho left
|
|||
colomon | pmichaud: pong # sorry, was out for lunch | 18:24 | |
18:29
colomon__ joined,
colomon left,
colomon__ is now known as colomon
|
|||
pmichaud | colomon: now that list assignment is working, what do you see as the biggest blocker(s) in the test suite? | 18:29 | |
colomon | hmmm... | 18:30 | |
the my ($a, $b) thing, that's why I was poking at that. | |||
Range | |||
there were issues with $_ working in map, grep, etc, but jnthn and I half fixed that, so I don't know how big an issue it is now. | 18:31 | ||
definitely it's still bugging grep: | |||
ng: (1...10).grep({ say $_; 1; }).perl.say | 18:32 | ||
p6eval | ng 89fb62: Mu()Mu()Mu()Mu()Mu()Mu()Mu()Mu()Mu()Mu()[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] | ||
colomon | but map on the other hand: | ||
ng: (1...10).map({ say $_; $_ * $_; }).perl.say | |||
p6eval | ng 89fb62: 12345678910(1, 4, 9, 16, 25, 36, 49, 64, 81, 100) | ||
ash_ | how do you do: my ($a, $b, undef) = &some_function_returns_three_items(); ? | 18:33 | |
colomon | ash_: isn't it just my ($a, $b) = &some_function_returns_three_items(); ? | ||
ash_ | but what if i wanted the 0 and 2 items? can you do that then? my ($a, undef, $b) ? | 18:34 | |
18:34
snearch_ left
|
|||
colomon | pmichaud: I don't remember really bumping any other sort of "universal" test suite issue, it seemed more like a collection of small troubling details. | 18:34 | |
18:38
Chillance joined
|
|||
colomon | ash_: maybe? I'd just naively use my ($a, $dummy, $b) there, though. :) | 18:39 | |
ash_ | colomon: you can do that in perl 5, i was just curious what the 'right way' in perl 6 is, since undef is gone if i am not mistaken | ||
colomon | ash_: right, duh! I dunno, Mu seems odd to use there. Errr... might be that just a $ works as a placeholder? I seem to recall that from sub signatures, and this should be the same as that... | 18:41 | |
ash_ | ng: my ($a, Mu, $b) = (1, 2, 3); # ? | 18:43 | |
p6eval | ng 89fb62: Redeclaration of symbol $a at line 1, near " = (1, 2, "current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328) | ||
ash_ | err | ||
well | |||
when that works right i guess | 18:44 | ||
Tene | std: my ($a, $, $b) = 1..3; | ||
p6eval | std 29578: ok 00:01 109m | ||
18:44
riffraff joined
|
|||
PerlJam | ng groks that syntax doesn't it? | 18:44 | |
ash_ | ah, cool | ||
thanks Tene++ | 18:45 | ||
Tene | ng: my ($a, $, $b) = 1..3; | ||
p6eval | ng 89fb62: Redeclaration of symbol $a at line 1, near " = 1..3;"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328) | ||
Tene | ng doesn't get list declarations ATM. | ||
jnthn | rakudo: my ($a, $, $b) = 1..3; | ||
p6eval | rakudo 1d4928: ( no output ) | ||
Tene | ng: my ($a, $b); | ||
p6eval | ng 89fb62: Redeclaration of symbol $a at line 1, near ";"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328) | ||
Tene | see? | ||
jnthn | Tene: It almost does, just a regression. | ||
18:46
nihiliad left
|
|||
ash_ | ng: my $a, $b; ($a, $, $b) = 1..3; | 18:46 | |
p6eval | ng 89fb62: Confused at line 1, near "($a, $, $b"current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328) | ||
jnthn | ng: my $a, my $b; ($a, *, $b) = 1..3; | ||
p6eval | ng 89fb62: too few positional arguments: 3 passed, 4 (or more) expectedcurrent instr.: 'perl6;Code;new' pc 11858 (src/builtins/Positional.pir:169) | ||
jnthn | hm | ||
18:47
riffraff left
|
|||
colomon | pmichaud: Range will be kind of huge for the test suite, I think. Though it is mostly easily worked around with ... -- so it's hard to say what its priority should be. | 18:47 | |
I just got that exact same error (3 passed, 4 (or more)) when trying to execute @push[0][*-1] in the test suite. | 18:48 | ||
18:48
nihiliad joined
|
|||
ash_ | is whatever working? | 18:48 | |
Tene | ng: my $x = 1,*,5; say $x(3); | 18:49 | |
p6eval | ng 89fb62: sh: ./perl6: No such file or directory | ||
colomon | pmichaud: also, I'd be happy to work on getting Range working (though I need to run some errands here and do some $work as well), but I'm not quite sure how to fit it into your new lazy List scheme. | ||
Tene | *sigh* | ||
pugs_svn | r29579 | colomon++ | [t/spec] Change .. to ..., fudge two tests for ng. | 18:56 | |
ash_ | ng: my $x = 1,*,5; say $x(3); | ||
p6eval | ng 89fb62: invoke() not implemented in class 'List'current instr.: '_block14' pc 29 (EVAL_1:0) | ||
ash_ | is that formatted right Tene? | 18:57 | |
doing $x(3) like that? | |||
Tene | ash_: I was checking to see if that was making a whatevercode, as that would have explained something else. | ||
But it's not. | |||
ng: my $x = *+5; say $x(5); | 18:58 | ||
p6eval | ng 89fb62: too few positional arguments: 3 passed, 4 (or more) expectedcurrent instr.: 'perl6;Code;new' pc 11858 (src/builtins/Positional.pir:169) | ||
colomon | pmichaud: it sounds stupid, but another obstacle is the lack of pi | 18:59 | |
pmichaud: and another is that right now, if you specify too many decimal places for a decimal constant, it fails (because it cannot construct a Rat with that precision). | 19:00 | ||
ng: say 3.141534234245242342342342342342 | |||
p6eval | ng 89fb62: PAST::Compiler can't compile node of type BigIntcurrent instr.: 'perl6;PCT;HLLCompiler;panic' pc 137 (src/PCT/HLLCompiler.pir:101) | ||
colomon | versus | ||
ng: say 3.14 | |||
p6eval | ng 89fb62: 3.14 | ||
19:01
lumi left,
lumi joined
|
|||
dalek | kudo/ng: 9c9e283 | (Solomon Foster)++ | t/spectest.data: Turn on push.t. |
19:02 | |
19:02
ash_ left
|
|||
TimToady | note, my $x = 1,*,5 is going to be a Useless use of * and 5, since you're assigning to a scalar | 19:03 | |
Tene | ... heh. | ||
19:08
dalek left,
dalek joined,
vamped joined
|
|||
pmichaud | I just posted some commits to rakudo master in preparation for a release (from the master branch) -- comments welcomed. | 19:09 | |
(especially if anyone can think of anything that should be modified in the announcements) | |||
(github.com/rakudo/rakudo/blob/maste...ce/2010-01 for those who don't want to clone/pull) | 19:10 | ||
otherwise I'll cut the release shortly. | |||
colomon | announcement looks reasonable to me. | ||
vamped | ash: I thought the syntax was ($x,*,$y)=1..3; | 19:11 | |
Tene | pmichaud: decided against releasing ng? | 19:13 | |
pmichaud | Tene: yes. I started to write an announcement about the delay, and then decided it was better/simpler to just cut another release. | ||
vamped | (slow on refresh. you got it.) | ||
pmichaud | (from old master) | ||
but by this time next week I plan to have switched rakudo master branch to be ng | |||
Tene nods. | 19:15 | ||
colomon | ng: 10.roots(3).perl.say | 19:19 | |
p6eval | ng 89fb62: sh: ./perl6: No such file or directory | ||
colomon | ng: 10.roots(3).perl.say | ||
p6eval | ng 89fb62: sh: ./perl6: No such file or directory | ||
Tene | that's almost bugging me enough to fix it. | 19:22 | |
colomon | ng: 10.roots(3).perl.say | ||
p6eval | ng 9c9e28: (Complex.new(2.15443469003188, 0), Complex.new(-1.07721734505219, 1.86579517234114), Complex.new(-1.07721734494344, -1.86579517240392)) | ||
colomon | ng: roots(4, 2).perl.say | 19:24 | |
p6eval | ng 9c9e28: (Complex.new(2, 0), Complex.new(-2, -5.82864638634609e-11)) | ||
colomon | ng: roots(4, 2).elems.say | ||
p6eval | ng 9c9e28: 2 | ||
colomon | ng: my @l = roots(4,2); say @l.elems | 19:25 | |
19:25
ash_ joined
|
|||
p6eval | ng 9c9e28: ( no output ) | 19:25 | |
colomon | that's more like it. seems to be an infinite loop on my machine at home? | ||
19:26
ash_ left,
mikehh left,
ash_ joined,
mikehh joined
19:27
colomon left,
colomon joined
19:30
lumi left,
lumi joined
19:37
mikehh left
19:38
mikehh joined
19:41
zloyrusskiy joined
19:44
ive left
|
|||
pmichaud | jonasbn: list is now set up, initial message has gone out. | 19:47 | |
[email@hidden.address] | 19:48 | ||
jnthn | pmichaud: recieved so, it looks like it's all working :-) | 19:49 | |
19:52
mikehh left
20:09
zloyrusskiy left
20:17
araujo left
|
|||
ash_ | gah, now i'll get even more spam from google groups :P | 20:19 | |
20:21
rjh left,
rjh joined
20:23
lumi left,
lumi joined
20:25
uniejo left
20:27
plainhao left
20:28
nacho joined
20:39
sharno joined
20:50
Salada345 joined
|
|||
Salada345 | Hi All..can someone help me with a formatting issue? I'm retreving some data from the CMD and it's not grabbing its format | 20:50 | |
colomon | er, what? Salada345, can you provide some more context? | 20:51 | |
ash_ | are you in perl 6 by chance? | 20:52 | |
Salada345 | This is the command i'm using | ||
open(POSHOUT, "|C:\\WINDOWS\\system32\\WindowsPowerShell\\v1.0\\PowerShell.exe @args"); | |||
print POSHOUT; | |||
close(POSHOUT); | |||
@arg being some arguements that results in a paragraph with double spacing , tabs etc | 20:53 | ||
PerlJam | Salada345: you're using Perl 5, try #perl or #perlhelp | ||
Salada345: this channel is about and for Perl 6. | |||
20:53
SmokeMachine left
|
|||
Salada345 | ok, thank you guys..sorry i didn't know there was much of a difference | 20:54 | |
PerlJam | no problem. | ||
colomon | pmichaud: I think something is still very wrong with the ListIterator. | 20:55 | |
If I say my @l = roots(4,2); almost anything I do which accesses the elements of @l hangs ng. | 20:56 | ||
20:57
jonasbn left
|
|||
colomon | roots uses map internally to generate the list of roots. | 20:57 | |
ng: say (1...10).map({ $^x ** 2 }).perl.say | 21:00 | ||
p6eval | ng 9c9e28: (1, 4, 9, 16, 25, 36, 49, 64, 81, 100)1 | ||
colomon | ng: say roots(4,2).WHAT | ||
p6eval | ng 9c9e28: List() | ||
colomon | ng: my @l = roots(4,2); say @l.WHAT | ||
p6eval | ng 9c9e28: ( no output ) | 21:01 | |
pmichaud | ng: say roots(4,2).perl | 21:05 | |
p6eval | ng 9c9e28: (Complex.new(2, 0), Complex.new(-2, -5.82864638634609e-11)) | ||
pmichaud | I suspect the issue is with returning lists from a function | ||
not with ListIterator itself | |||
colomon | The money line in roots is | 21:06 | |
(0 ... ($n-1)).map: { $mag.unpolar( ($angle + $^x * 2 * 312689/99532) / $n) }; | |||
pmichaud | oh, then it might be a problem with whatever map returns | ||
I bet map is returning something that isn't flattening | |||
or it could be with MapIterator (!Mapper) | |||
anyway, I'm not comfortable with the map implementation anyway, it's likely to get another significant revision | 21:07 | ||
colomon | Yeah, it's map: my @l = (0 ... 4).map: { $^x ** 2 }; say @l.WHAT also hangs | 21:09 | |
pmichaud | in many ways it's also a sentinel problem -- i.e., finding out if a given iterator is finished without actually iterating an element | 21:10 | |
21:10
japhb left
|
|||
colomon | BTW, currently gather / take returns an Array. Should it actually be a List? | 21:10 | |
pmichaud | it should return a List, yes. | 21:11 | |
well, gather returns a List | |||
Tene | pmichaud: lists refactoring coming along well? | 21:15 | |
pmichaud | lists, yes, iterators, not so much | ||
Tene | Aw. | ||
The gf is going out tonight, so I should be available. | |||
pmichaud | okay | ||
any ideas about how to handle the "test if a iterator is finished" issue? | 21:16 | ||
Tene | There's an issue? | ||
pmichaud | sure | ||
21:17
REPLeffect joined
|
|||
pmichaud | is there a general way to determine that an iterator is finished without having to generate the next element? | 21:17 | |
(yes, this is much like the problem of "is there a way to determine that we've reached eof without actually reading from af ile") | |||
*a file | |||
Tene | you can always have a buffer item, reading ahead by 1... I suspect there are issues with that. | 21:18 | |
colomon | Seems like in general you can't know that? | ||
Tene | No, there's no general way to do that unless we make one, by giving the generator function a way to signal "this is the last element". | 21:19 | |
colomon | I mean, for instance, something like gather for 1...1000 { take $_ if $_ % 3 } | ||
Tene | Hm. Even that wouldn't be "general", because we couldn't enforce usage. | ||
pmichaud | I suspect the generator itself can't always know which element is the last | 21:20 | |
colomon | Maybe that's not the best example, but it's easy to find examples where the generator doesn't know what element is last when that element is generated. | ||
pmichaud | gather for 1...* { last if (0,1).pick(1); take $_; } | ||
colomon | exactly. | 21:21 | |
21:21
justatheory left
|
|||
Tene | So, no, there's no way. Give iterators a buffer element, try to fill it when finished-ness is checked, and look there first when the iterator is kicked. | 21:21 | |
pmichaud | well, if we're doing buffer element, it might as well be buffer element*s* | ||
that way one can do pushbacks | 21:22 | ||
Tene | Ah, nice, yes. | ||
pmichaud | and if we're doing that, then iterators look a lot like List, in that they have generated and non-generated components | ||
which seems horribly recursive somehow | 21:23 | ||
colomon | it's exactly recursive, isn't it? | ||
pmichaud | well, somewhat. Actually, iterators look more like Array, since they're mutable. | ||
colomon | this is why I got confused last night when I tried to figure out how to implement Range now. | ||
pmichaud | well, Range isn't so bad, it's immutable. | 21:24 | |
then there's a RangeIterator, which simply keeps a position in the Range and returns the next element from the Range | |||
colomon | right, but what had me going was, can a list be built from a RangeIterator? Or is the RangeIterator built from a ListIterator? | 21:25 | |
21:25
justatheory joined
|
|||
pmichaud | a list can contain a RangeIterator | 21:26 | |
Tene | pmichaud: it's not recursive, just hierarchal. Iterator has-a Array. | ||
colomon | maybe that's not the best way of saying it, but thinking about how lists work now is recursive and tangly. | ||
pmichaud | Tene: that works. | ||
21:27
ash__ joined
|
|||
Tene | and array *can* contain an iterator. | 21:27 | |
pmichaud | ...except then the Array has to contain an Iterator | ||
colomon | but doesn't Array has-a List? | ||
pmichaud | Array isa List | ||
colomon | oh, right. | ||
pmichaud | or, perhaps, Array does List | ||
Tene | pmichaud: has to? | ||
pmichaud | Tene: well, it doesn't *have* to. | 21:28 | |
It does if we think that Iterator/Array/List unify somehow | |||
if Iterator hasa Array uses that array simply for buffer/pushback elements, then no. | |||
21:28
ash__ left,
ash__ joined
21:29
hercynium joined,
ash__ left,
ash__ joined
|
|||
Tene | the only place you'd see iterator's array containing an iterator is if someone pushback'd one. You could restrict the pushback API to only allow single items, if you want to avoid that. | 21:29 | |
21:29
ash__ left
|
|||
pmichaud | an iterator is a single item :-) | 21:30 | |
but yes, I get the idea there. | |||
Tene | Thanks. | ||
(I'm in a bit of a hurry. About to leave to pick up a car to replace the one I totaled.) | |||
pmichaud | we can discuss it more later, if you're around | 21:31 | |
(and if I'm around -- don't know what family activities will look like tonight) | |||
Tene | I will be. I definitely plan to work tonight. If you won't be, feel free to leave me a tasklist. | ||
21:31
ssm left
|
|||
pmichaud | well, it's mostly getting the iterator interface nailed down | 21:32 | |
Tene nods. | |||
I expect to be back in an hour or two. AFK. | |||
21:32
ssm joined
|
|||
colomon | pmichaud: can you sketch out what you're thinking for the iterator interface? | 21:35 | |
pmichaud | colomon: well, I have to keep revising it as I run across new oddities. Like with map above. | ||
essentially, there should be a .get that retrieves the next element | |||
there should be a way to ask an Iterator "are there more elements?" | 21:36 | ||
21:36
ruoso left
|
|||
pmichaud | ideally, there should be a batch mechanism to efficiently obtain /n/ elements | 21:36 | |
21:36
eternaleye left
|
|||
pmichaud | (for iterators that can do that) | 21:36 | |
21:36
eternaleye joined
|
|||
colomon nods | 21:37 | ||
pmichaud | if List, Array, and Iterator all need a mechanism for "keep track of generated and lazy elements", then it feels weird to be duplicating any code for them | 21:38 | |
colomon | so what you were just concluding there is for something like gather / take, it can't answer "are there more elements" without actually generating one. | ||
pmichaud | I suspect that's true for many iterators, not just those using gather/take | 21:39 | |
21:40
ash_ left
|
|||
colomon | sure, gather / take is just an easy example. | 21:40 | |
on the other hand, is there a reason not to simply have get return a control flag? | |||
my ($next_available, $next) = iter.get | |||
pmichaud | get needs to return the value gotten, I suspect. | ||
and as I mentioned earlier, many times .get doesn't know if there's another element available | 21:41 | ||
(if it's only retrieving one element) | |||
I'm not sure that .get should be responsible for any lookahead semantics | 21:42 | ||
something driving .get probably ought to do that | |||
colomon | no, what I'm suggesting is that .get either returns a value or a flag saying we're done! | ||
pmichaud | or throws an exception | ||
colomon | it's an ugly interface, but it's the simplest thing that would work. | ||
pmichaud | well, the problem with flags tends to be that they then can't appear in whatever your iterating over | 21:43 | |
I'd prefer that .get *not* be returning a list | |||
colomon | right, that's why I suggested a list. | ||
but obviously that's trouble too, eh? :) | 21:44 | ||
pmichaud | a list is bad | ||
I mean, my ($next_available, $next) = iter.get itself involves an iterator :-| | |||
(list assignment uses iterators) | 21:45 | ||
colomon | right. | ||
I forgot about that. | |||
21:46
japhb joined
|
|||
pmichaud | well, actually it uses arrays and shift | 21:46 | |
anyway, returning a list from .get feels very wrong | |||
diakopter | hah; Powershell from Perl. Funny since Powershell was written specifically to replace Perl. | 21:47 | |
pmichaud | taking a break here for a bit | 21:48 | |
21:54
[particle] left
|
|||
colomon | Hmmm... I guess we also need the interface for creating a List from an iterator, right? | 21:57 | |
21:57
clintongormley left
|
|||
pmichaud | that's easy -- it's a List with the iterator | 21:58 | |
accessing elements of the list cause it to iterate | |||
colomon | (sorry, didn't mean to disturb your break, just get my thoughts down for when you got/get back from it.) | 21:59 | |
21:59
clintongormley joined
|
|||
pmichaud | that's really all a "lazy list" is -- it a list where some of the elements need iterating | 22:00 | |
22:03
ash_ joined
|
|||
colomon | sure, I just was wondering what the actual syntax would look like. | 22:04 | |
something like List.new(iter) ? | |||
pmichaud | or even (iter,) | ||
colomon | wouldn't the later be a list containing an iterator, rather than a list generated by an iterator? | 22:05 | |
pmichaud | those are the same thing | ||
assuming the iterator flattens | |||
colomon | ?! | ||
pmichaud | in all likelihood, I'd expect it to be $iter.list() | ||
which gets a list from an iterator, same as any other item | |||
colomon | oooo, nice and simple. | ||
22:06
PZt left
|
|||
pmichaud | just like Range.list() produces a list that has a RangeIterator in it | 22:06 | |
colomon | would that be in the Iterator role? | ||
pmichaud | it could be.... but .list also fits pretty well in Any/Cool | ||
colomon | so that every Iterator type doesn't have to redo the basic logic? | ||
pmichaud | in general we've been treating .list as something standard in Any | ||
22:06
lumi left
|
|||
pmichaud | rakudo: say 1.list.perl | 22:07 | |
p6eval | rakudo 1d4928: [1] | ||
pmichaud | (rakudo still thinks that lists in item context become arrays) | ||
so no, I don't think that .list would need to be standard on Iterator | 22:08 | ||
I suspect that except for filehandles, it's pretty rare that we ever see an Iterator directly | |||
22:09
pnate left,
pnate joined
22:10
lumi joined
22:16
ash__ joined,
ash__ left
22:17
ash__ joined
22:18
PZt joined
|
|||
pmichaud | afk | 22:23 | |
22:24
Su-Shee left
22:28
clutbcfpfdpd joined
|
|||
clutbcfpfdpd | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 22:28 | |
Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 22:29 | ||
colomon | I'm figuring that iterators are the sort of detail that might not show up in everyday programming, but will be k | ||
clutbcfpfdpd | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | ||
colomon | of all the days not to be an op... | ||
22:29
clutbcfpfdpd left
22:30
PerlJam sets mode: +o colomon
|
|||
PerlJam | (If I had been paying attention a little sooner ...) | 22:30 | |
22:30
inzdk joined
|
|||
inzdk | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 22:30 | |
Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 22:31 | ||
ash__ | so, um... spam... | ||
22:31
inzdk left
|
|||
takadonet | boot them? | 22:31 | |
arnsholt | Someone op-enabled should do that, yeah | ||
sjohnson | he's already gone | ||
and i'm sure what he meant to say was... Perl 6 news for a quick and easy language!!! | 22:32 | ||
arnsholt | Yeah. Next time we'll get 'em =) | ||
22:33
ash_ left
|
|||
colomon | anyway, what I was trying to say was that iterators might not be everyday programming, but it seems to me they may be really handy sometimes for people writing library classes. (Like us, at the moment!) | 22:33 | |
22:34
takadonet left
22:36
s1n_mini joined
22:37
TimToady sets mode: +vv buubot dalek,
TimToady sets mode: +vv ilogger2 IRSeekBot,
TimToady sets mode: +vv lisppaste3 p6eval,
TimToady sets mode: +v pugs_svn
|
|||
s1n_mini | how do i get the ng branch out of rakudo? | 22:38 | |
PerlJam | s1n_mini: do you have a clone of the repo already? | ||
s1n_mini | PerlJam: yes | ||
ash__ | git checkout -t origin/ng | 22:39 | |
s1n_mini | ahh, i wasn't formatting that right | ||
i was just doing a git checkout ng | |||
22:39
Infinoid left
|
|||
s1n_mini | do i have to pull again? | 22:39 | |
22:39
Infinoid joined
|
|||
PerlJam | s1n_mini: nope | 22:40 | |
s1n_mini | thanks :) | ||
22:41
kloeri_ joined
|
|||
ash__ | when you git pull it mergers origin/ng into your local ng branch | 22:41 | |
and mergers origin/master into your local master | 22:42 | ||
s1n_mini | what does that mean to me? heh | ||
ash__ | if someone pushes a change to github, you only have to type pull (if your still in the ng branch) to get the changes | 22:43 | |
s1n_mini | if they push to origin/master? | ||
ash__ | to either | ||
s1n_mini | ah, great, it tracks both | ||
ash__ | when you did git checkout -t origin/ng it makes a tracking branch | ||
and the default master branch is a tracking branch too | |||
22:43
TimToady sets mode: +oooo arnsholt s1n_mini Infinoid japhb,
TimToady sets mode: +oooo Khisanth literal lumi s1n,
TimToady sets mode: +ooo szbalint wolverian xinming
|
|||
s1n_mini | is it just the -t that does that? | 22:44 | |
ash__ | yeah, -t makes it create a new local branch that tracks, technically you could write it like: git checkout -b ng --track origin/ng | 22:45 | |
but -t is a shortcut so you don't have to | |||
write all of that | |||
s1n_mini | excellent, thanks, the git errors are less than helpful | 22:46 | |
22:46
drbean joined
|
|||
ash__ | yeah, they can be confusing | 22:46 | |
s1n_mini | what's the progress of ng look like? | 22:47 | |
22:49
Salada345 left
|
|||
colomon | ng development is just taking off again. | 22:49 | |
definitely still not ready for prime time, but maybe next week... | 22:50 | ||
22:50
TimToady sets mode: +oooo ash__ frettled frettled gbacon,
TimToady sets mode: +oooo cj justatheory sjohnson smash_,
TimToady sets mode: +oooo Trey vamped allbery_b avar
|
|||
TimToady is stocking up on ops for the weekend :) | 22:50 | ||
s1n_mini | does it support proto regexes yet (similar to the ones in ng's perl6 grammar), outside of NQP-rx? | 22:51 | |
sjohnson | ( ° ー°) | 22:52 | |
colomon | I don't know. | ||
s1n_mini rebuilding to find out :) | 22:55 | ||
22:58
clintongormley left
22:59
dduncan joined
23:00
clintongormley joined,
lmc joined
|
|||
dduncan | is there an IRC channel specific to developing Rakudo or do they just use #perl6 or #parrot ? | 23:00 | |
sjohnson | the latter is correct | 23:01 | |
ash__ | rakudo uses this channel | ||
sjohnson | rakudo: say "hi dduncan" | ||
ash__ | well, #parrot too, some for parrot related issues | ||
p6eval | rakudo 1d4928: hi dduncan | ||
dduncan | I was wondering about release 25 ... | 23:02 | |
23:02
hgbvswsrfpni joined
|
|||
hgbvswsrfpni | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 23:02 | |
23:02
pwhixnupvnk joined
|
|||
pwhixnupvnk | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 23:02 | |
23:02
pwhixnupvnk left
|
|||
hgbvswsrfpni | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 23:02 | |
23:02
hgbvswsrfpni left
|
|||
sjohnson | there is one way to solve this issue, but it might make it annoying for freenode users... | 23:03 | |
dduncan | since I hear that as of last week Rakudo didn't build on Parrot 2 due to changes in continuations or something, is Rakudo 25 just going to be the ng branch even if it passes fewer tests than 24? | ||
sjohnson | you set a channel mode (+R i believe) that only allows registered users to connect | ||
colomon | dduncan: Rakudo master is fixed to build on Parrot 2. | ||
dduncan | so the non-ng works on Parrot 2 | 23:04 | |
colomon | yes. | ||
23:04
[particle] joined
|
|||
colomon | I believe you are correct that the current plan is that there will probably be some test regressions when ng is switched to master... should be in the next couple of weeks. | 23:04 | |
dduncan | still, my main question is whether the ng branch will come put as 25 or whether that will be put off ... | ||
Tene | dduncan: ng works on 2.0.0 also | ||
dduncan: current master is release 25. | |||
dduncan | so 26 then I guess | 23:05 | |
for ng | |||
colomon | Everyone wants 26 to be ng. | ||
Tene | dduncan: ng becomes master after the next release. | ||
dduncan | thanks, thats all I wanted to know | ||
s1n_mini | shouldn't that be in release 27 then? | ||
dduncan | 25 is this month's, I believe | 23:06 | |
s1n_mini | oh, i thought 25 was the most recent, not upcoming | ||
pmichaud | 25 is today's release | ||
Tene | current master is the release this month, whichever number that is. ng becomes master shortly after the release. :) | ||
dduncan | as I thought | 23:07 | |
s1n_mini | pmichaud: thank you for clearing that up :) | ||
23:07
lumi left,
yecfwmyvz joined
|
|||
yecfwmyvz | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 23:07 | |
23:07
lumi joined
|
|||
yecfwmyvz | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 23:07 | |
kloeri_ | sjohnson: +R is indeed the mode we recommend | ||
yecfwmyvz | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | ||
s1n_mini | ehh | ||
23:07
kloeri_ sets mode: +R ,
sjohnson sets mode: +b yecfwmyvz!*@*,
yecfwmyvz was kicked by sjohnson (sjohnson))
|
|||
dduncan | I look forward to 26 ... for my purposes it seems that ng is a better version to use when I want to write reams of Perl 6, as that is closer to the spec | 23:08 | |
sjohnson | kloeri_: wow, you use weechat too? | ||
kloeri_ | feel free to remove +R - I'll try not to interfere anymore as there's several chanops around :) | ||
sjohnson: no, irssi | |||
s1n_mini | pmichaud: does ng support proto regexes outside nqprx? | ||
sjohnson | im surprised you ever even able to set that mode | ||
kloeri_ | sjohnson: I just happen to be in rather a lot of different channels :) | 23:09 | |
sjohnson | kloeri_: i use weechat | ||
( `ー´) | |||
kloeri_ | sjohnson: I'm implicitly +o in all channels which is sometimes very useful in case of spam attacks | ||
sjohnson | kloeri_: are you a secret ircop? | 23:10 | |
and i just read on freenode it's lowercase r | |||
23:10
sjohnson sets mode: -R+r
|
|||
sjohnson | rizon is +R :) | 23:10 | |
23:11
rjh left
|
|||
diakopter | ? | 23:11 | |
23:12
Infinoid left
|
|||
sjohnson | i think kloeri_ is one of those freenode angels | 23:12 | |
kloeri_ | yeah, I'm one of the freenode staffers | ||
it's not a big secret though as it's easily given away by /whois :) | 23:13 | ||
sjohnson | just the staff part | ||
23:13
diakopter sets mode: -r
|
|||
sjohnson | i was looking for a IRC Operator line | 23:13 | |
diakopter: it was to keep out teh spam bots | |||
diakopter | yes, but there are usually plenty of unidentified innocuous users | ||
23:14
pnate left
|
|||
sjohnson | ya it was a double edged sword *sad face* | 23:14 | |
23:15
mjk joined,
[particle] left
23:16
lpdvnsxcnbs joined
|
|||
lpdvnsxcnbs | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 23:16 | |
23:16
lpdvnsxcnbs was kicked by diakopter (diakopter))
23:17
diakopter sets mode: +b *!*@user-0cdfpp4.cable.mindspring.com
|
|||
kloeri_ | diakopter: banning those bots isn't going to do anything besides filling up the ban list | 23:17 | |
23:17
diakopter sets mode: -b *!*@user-0cdfpp4.cable.mindspring.com
|
|||
diakopter | kloeri_: have you considered implemented a spam filter for all msgs? sorry if this is an uninformed question. | 23:18 | |
kloeri_ | we're not going to do any hyperion development this close to migrating to a new ircd | 23:19 | |
and seven have better options to limit spam | |||
diakopter | seven? | ||
23:20
sharno left
|
|||
Tene | new ircd | 23:20 | |
sjohnson | .google test | ||
Tene | ENOPHENNY | 23:21 | |
sjohnson | im surprised the bots aren't making us feel inadequate about our penis sizes | 23:22 | |
23:23
drbean left
|
|||
sbp | .g test | 23:23 | |
rats | |||
23:23
phenny joined
|
|||
sjohnson | sbp: ya they have this bot on Rizon in a few of their channels | 23:24 | |
Tene: speak of the devil | 23:25 | ||
Tene | oh, right, I was going to harass sbp about that a while ago... | 23:26 | |
23:28
nacho left,
colomon left
23:29
colomon joined,
diakopter sets mode: +v phenny,
ghedroshcdu joined
|
|||
ghedroshcdu | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 23:29 | |
23:29
ghedroshcdu left
|
|||
sjohnson | diakopter: the +R mode will still allow them to join, just not talk without warning.. fwiw | 23:30 | |
23:30
dduncan left
23:31
lumi left,
lumi joined
|
|||
sjohnson | if i do that and set the topic to just ask to plz register to combat recent spam, would you let me ? | 23:32 | |
23:32
mjk left
|
|||
diakopter | it's not my policy; it's just the #perl6 precedent for years | 23:32 | |
23:34
riffraff joined
23:36
vkzxpzhh joined
|
|||
vkzxpzhh | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 23:36 | |
23:36
flvs joined
|
|||
flvs | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 23:36 | |
23:36
wwacqdchrnfu joined
|
|||
wwacqdchrnfu | Your machine has been infected by the recent spam attacks - visit www2.freenode.pl/ for a quick and easy solution! | 23:36 | |
23:36
vkzxpzhh left,
flvs left,
wwacqdchrnfu left,
riffraff left
23:37
cbtpbuh joined
|
|||
cbtpbuh | Hi all. It seems we\'re again seeing javascript based flood spam. If you\'re experiencing this, please do not click the links in the messages as they will cause you to repeat the spam. More information is available at www2.freenode.pl. Thanks! | 23:37 | |
23:37
sjohnson sets mode: +r
|
|||
cbtpbuh | Hi all. It seems we\'re again seeing javascript based flood spam. If you\'re experiencing this, please do not click the links in the messages as they will cause you to repeat the spam. More information is available at www2.freenode.pl. Thanks! | 23:37 | |
23:37
cbtpbuh left
|
|||
sjohnson | »ö« | Spam bot alert: Please register to talk | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! | 23:38 | |
sjohnson | diakopter: you can take it off if you want :) | 23:38 | |
but would be a good temporary fix until the issue is resolved methinks | 23:39 | ||
»ö« | Spam bot alert: Please register to talk | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! | 23:40 | ||
sjohnson | they even sullied javascripts name dia, they crossed the line! | 23:41 | |
s1n_mini | sjohnson: what do you mean "register to talk?" | ||
sjohnson | »ö« | Spam bot alert: Please register your nick to speak in chan | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! | 23:42 | |
s1n_mini | sjohnson: ah, that's clear, thanks :) | 23:42 | |
sjohnson | i think this will effectively stop the problem until it's resolved | ||
diakopter | sjohnson: you got it backwards | ||
sjohnson | and allow us to think of happier things.. like Camelia | ||
s1n_mini | there aren't any bots out there to take care of it yet? | ||
diakopter | +r is block unidentified; +R is quiet unidentified | 23:43 | |
23:43
sjohnson sets mode: -r+R
|
|||
sjohnson | diakopter: oopsies | 23:43 | |
»ö« | Temporary spam alert: Please register your nick to speak in chan | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! | 23:44 | ||
sjohnson | there we go | 23:44 | |
i won't change it anymore | |||
starting to be worse than the spam bots themselves | 23:45 | ||
s1n_mini is not registered under this nick, my primary nick is though | |||
23:45
psdp joined
|
|||
sjohnson | s1n_mini: i believe your +o status stops that problem | 23:45 | |
s1n_mini | sjohnson: oh, i hadn't realized i was given +o heh | 23:46 | |
23:46
psdp left
|
|||
sjohnson | TimToday has good forsight | 23:46 | |
Tene | does +v do that too? | ||
23:46
sjohnson sets mode: -o sjohnson
|
|||
sjohnson | try | 23:46 | |
err | |||
i'm already regged.. :( | |||
that was silly | |||
i know how to test | 23:47 | ||
23:47
sjohnson_ joined
|
|||
sjohnson | please +v sjohnson_ | 23:47 | |
23:47
Tene sets mode: +v sjohnson_
|
|||
BinGOs | +r is must be registered to join the channel, +R is must be registered to speak in a channel | 23:48 | |
sjohnson_ | this is the real deal | ||
Tene | Okay, we can +v anyone who asks. | ||
s1n_mini | lol how do they ask? | ||
Tene | You could put "register, or ask someone with +o for voice" in the topic. | ||
s1n_mini | pm? | ||
sjohnson | can i have my ops back plz | ||
Tene | Yes. | 23:49 | |
23:49
Tene sets mode: +o sjohnson
|
|||
Tene | Yes, /msg | 23:49 | |
23:49
sjohnson_ left
|
|||
sjohnson | »ö« | Temporary spam alert: Please register your nick to speak in chan or /msg an op for +v | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend! | 23:50 | |
diakopter | Tene: the problem with that is that folks who aren't identified can't privmsg | 23:51 | |
s1n_mini: try privmsg me | |||
oh drat. | |||
23:51
ywbimpayxcwk joined
|
|||
Tene | diakopter: that's a per-user option. | 23:51 | |
23:51
cdarroch left
|
|||
diakopter | well, it used to be that way. | 23:51 | |
s1n_mini | heh | 23:52 | |
23:52
ywbimpayxcwk left
|
|||
BinGOs | I think you may have been glad of the +R then | 23:52 | |
Tene | I accept unregistered PMs, but some others don't. I don't remember which mode you set for that. | ||
diakopter | oh, oh yeah. | ||
Tene | is it mode +i ? | ||
no, that's ident. | |||
sjohnson | it's +E Tene | ||
Tene | dunno. | ||
BinGOs | +i is invisible | ||
Tene | sjohnson: is +E to allow or to refuse? | 23:53 | |
sjohnson | refuse | ||
Tene | Ah. | ||
colomon thinks he can talk again here... | |||
Tene | So you could list specific names in the topic, for now. | ||
BinGOs | freenode.net/using_the_network.shtml | 23:54 | |
sjohnson | hopefully they just register, as it's easy, painless, and guarantees your nick, helps stop world hunger, and builds freenodes constant userbase | 23:55 | |
s1n_mini | what about bots that auto register? | ||
sjohnson | well, i think that's a bit tougher to do.. but i could be wrong | 23:56 | |
so far it's a non-issue | |||
23:56
diakopter___ joined
|
|||
sjohnson | diakopter___: wink if you want +v | 23:56 | |
diakopter | heh | ||
'course, maybe all the spam attacks are freenode admins trying to get channels to +R/+r :) | 23:57 | ||
(not that I would blame them) | |||
sjohnson | haha | ||
herding us like sheep | 23:58 | ||
23:58
diakopter___ left
|
|||
sjohnson | *BAAAHH!!!* | 23:58 | |
s1n_mini | or maybe i really am infected with a virus and they're just doing a good deed | ||
s1n_mini clicky clicky | |||
sjohnson | i tried going to the link in firefox | ||
didnt resolve to any site | |||
out of sheer curiosity | |||
i was hoping to have my penis enlarged | 23:59 | ||
s1n_mini | i just want the virus off my computer! | ||
diakopter | heh | ||
23:59
alester left
|
|||
s1n_mini | every website i go to knows about that virus and nobody helps me! | 23:59 |