»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! | Rakudo Star Released! Set by diakopter on 6 September 2010. |
|||
00:09
svetlins joined
00:13
sjn left
|
|||
sorear | TimToady: ping | 00:14 | |
00:17
araujo left
|
|||
TimToady | pang | 00:21 | |
00:27
meraxes left
00:31
svetlins left
00:32
meraxes joined
|
|||
supernovus | Well I'm off for the day. Anyway, it's far from finished, but the first version of Flower is now available on Github. Petal templates come to Perl 6 :-) | 00:36 | |
sorear | TimToady: Can you reflect on the meaning of 'sub foo { bar }; BEGIN { foo }; sub bar { }' for me? | ||
I think a lot of my questions about BEGIN are wrapped up in the interpretation of that | 00:37 | ||
00:37
supernovus left
|
|||
jnthn will be curious to see the reflections :-) | 00:38 | ||
TimToady | that should successfully call foo from the BEGIN, but fail to find a definition for bar | 00:40 | |
at most there would be a stub saying "we saw this name but we don't know what it means yet" | |||
sorear | What if I wrote 'sub foo { bar if 0 }; BEGIN { foo }; sub bar { }' ? | ||
TimToady | that would be fine | ||
sorear | The big question with stubs is where to put them | ||
TimToady | well, STD doesn't use stubs at all for that | 00:41 | |
it keeps a list of mysteries, and resolves them at CHECK time | |||
so in STD, if it could do BEGIN, it wouldn't find bar at all, not even a stub | |||
I think Perl 5 puts a stub, iirc | 00:42 | ||
but tracks whethere a body has showed up yet | |||
sorear | Well | 00:43 | |
std: sub foo { bar }; BEGIN { foo }; sub bar { } # This passes | |||
p6eval | std : OUTPUT«ok 00:01 116m» | 00:44 | |
sorear | std: BEGIN { bar if 0 }; sub bar { } # This doesn't | ||
p6eval | std : OUTPUT«===SORRY!===Undeclared routine: 'bar' used at line 1Check failedFAILED 00:01 117m» | ||
sorear | What's the difference? | ||
TimToady | BEGIN does its own CHECK for mysteries | ||
and determines there's been no def for bar yet | 00:45 | ||
sorear | Why doesn't BEGIN check for mysteries in foo? | ||
TimToady | because foo doesn't have to run immediately | ||
00:46
whiteknight left
|
|||
sorear | so you're saying that 'sub foo { bar if 0 }; BEGIN { foo }; sub bar { }' should work, but 'BEGIN { bar if 0 }; sub bar { }' should not? | 00:47 | |
what is the rationale for this? | |||
TimToady | foo runs in the context of the whole compilation unit, BEGIN can only run in the context of what has been defined so far | 00:49 | |
sorear | But BEGIN has a static dependency on foo. | ||
TimToady | I don't see what that has to do with anything | 00:50 | |
00:51
orafu left
|
|||
sorear | Both BEGIN and foo have to run before bar is seen | 00:51 | |
00:51
orafu joined
|
|||
sorear | They're no different | 00:51 | |
jnthn? | |||
00:52
PerlJam left,
thundergnat left,
thundergnat joined
|
|||
TimToady | it makes no sense to mention something that hasn't been defined yet at BEGIN, but it does make sense to mention something in foo that hasn't been defined yet. BEGIN is in some sense functioning as its own compilation unit, and the preceding text is its setting. | 00:53 | |
though it's more like a prelude | 00:54 | ||
the same would be true of any macro body that has to run at compile time that refers to something that hasn't been defined yet | 00:56 | ||
00:56
nymacro joined,
PerlJam joined
|
|||
TimToady | the main point of macros and BEGIN is to capture control at that point of the compilation, so they can't depend on the later code that depends on them | 00:57 | |
jnthn | TimToady: My concern with BEGIN calling subs that are outside of the BEGIN block is that we can't treat the whole file as a single compilation unit. We may have to do a chunk of compilation and then fix things up later on. | 00:59 | |
TimToady: It's all well and good if you're writing an interpreter, like Perl 5. But it's hell for compilers. | 01:00 | ||
sorear | I don't have issues with the "two compilation units" thing | ||
jnthn | I do. | ||
I really don't like it. | 01:01 | ||
sorear | What bothers *me* is that I might have to call subs with unresolved lexicals | ||
jnthn | It means you have to go and do a load of fixing things up later on. | ||
It may be worse than that. (more) | |||
Imagine that I have | |||
multi foo(T $x) { stuff }; BEGIN { foo(S.new) }; multi foo(S $x) { stuff }; # where S is a subtype of T | 01:02 | ||
sorear | I need to know, at compile time, how many pads up the definition of bar is | ||
jnthn | At the point of doing the call in the BEGIN we've only seen half of the candidates. | 01:03 | |
01:03
thundergnat left,
thundergnat joined
|
|||
jnthn | sorear: Well, there may not even *be* a bar defined later too | 01:03 | |
sorear | I wouldn't even mind supporting 'sub bar { ... }; sub foo { bar if 0 }; BEGIN { foo }; sub bar { }' | 01:04 | |
jnthn | We just don't know at that point | ||
TimToady | well, multi is kinda beside the point, insofar as a call is always to the proto, though adding candidates is certainly an issue | ||
jnthn | Well, the call can be a dynamic lookup through the outer chain if we don't have an entry to hand to compile it more optimally | ||
sorear | jnthn: Oh, I had forgotten about the possiblity of dynamic lookup | 01:05 | |
TimToady | as soon as we have a call, we already know statically if we have a target | ||
sorear | That will certainly wokr | ||
jnthn | The multiple compilation unit-y thing and having to merge them all is what bothers me more though. | ||
TimToady | std: sub foo {}; BEGIN { foo; sub foo {} } | 01:06 | |
p6eval | std : OUTPUT«===SORRY!===Lexical symbol '&foo' is already bound to an outer symbol (see line 1); the implicit outer binding at line 1 must be rewritten as OUTER::<&foo> before you can unambiguously declare a new '&foo' in this scope at /tmp/U9VYNVssRa line 1:------> [32… | ||
TimToady | see, it's already looked up BEGIN's foo call | ||
I think at worst you have to scrap any temporary candidate lists for protos | 01:07 | ||
jnthn | TimToady: You're still addressing specific issues rather than my overall dislike of having to compile up to a certain point, with lexical scopes left open so we can modify them further on. | ||
TimToady | well, I don't see how that's negotiable if we ever want macros | 01:08 | |
BEGIN is just a particularly stupid macro | 01:09 | ||
jnthn | TimToady: macros are rather more self-contained though, I figured? | ||
TimToady | macros can see their scopes too | ||
in fact, we have to be tricky to be careful which scope they're using at any spot | 01:10 | ||
hence :COMPILING and such | |||
and lift | |||
jnthn | *sigh* | ||
TimToady | BEGIN at least has the non-problem that it is defined and executed in the same scope | ||
01:13
flatwhatson_ left
01:18
lichtkind joined
|
|||
sorear | jnthn: if it was just leaving lexical scopes open, I could handle that | 01:19 | |
easily | |||
jnthn | sorear: I suspect it's more than that. | ||
sorear: Well, maybe I could do, if I could actually, you know, just go and fix the darn lexical implementation. | 01:20 | ||
sorear | what about | ||
lichtkind | jnthn: o/ | ||
01:20
thundergnat left
|
|||
sorear | #`( 1000 subs go here ); BEGIN { eval $unpredictable-string } | 01:20 | |
which subs need to be code-generated before BEGIN? | |||
jnthn | Well, probably all of them to be on the safe side... | 01:21 | |
01:21
thundergnat joined
|
|||
jnthn | Trouble is, we're compiling them with incomplete knowledge of what lies ahead | 01:21 | |
e.g. suppose we have more multi-candidates ahead after the BEGIN. | |||
We thus didn't know what candidates we had when we compiled those 1000 subs after all | 01:22 | ||
lichtkind | jnthn: excuse to disturb you will be in vienna? | ||
jnthn | So we can't apply any of the optimizations to avoid the mutli dispatcher. | ||
lichtkind: No, I don't plan to be there. | |||
Util | [S32]/Containers/Hash says: "With C<pairs> the values are references back to the original containers". | ||
perl6: my %h = A => 1, B => 2; .value = 9 for %h.pairs; %h.values.sort.say; | |||
p6eval | rakudo a204ba: OUTPUT«12» | ||
..pugs: OUTPUT«99» | |||
jnthn | It'd be fun, but budget/time, etc. | ||
Util | Is this a bug in Rakudo, or just a well-known "not implemented yet"? | ||
lichtkind | jnthn: i do was so good last time with you all :) | 01:23 | |
jnthn | lichtkind: Enjoy. :-) | ||
Util: Something looks wrong there either way. | |||
Util: pmichaud++ is planning some work on hashes and it would likely help with this. | 01:24 | ||
lichtkind | jnthn: im not quit shure what my talks will be aboput, will presenting enhanced version of my rebol talk, maybe some perl 6 stuff too | ||
if you will not be there nobiody can correct me :) | |||
sorear | lichtkind: hi | ||
lichtkind | sorear: hi | ||
sorear | you were looking for me on Tuesday | ||
but you were only on the channel the exact hours I have class | |||
jnthn | lichtkind: Well, you're just going to have to be right about everything then, aren't you. :-) | 01:25 | |
lichtkind | jnthn: aaaah | ||
sorear: you mena me? | |||
sorear: yes i anted ask you about your implementation i guess | |||
sorear | lichtkind: you are called lichtkind, yes? | 01:26 | |
lichtkind | but im now heading toward bed | ||
sorear: i think i should be now be visible as lichtkind too | |||
sorear | lichtkind: which of the 168 hours in the UTC week do you want to talk to me? | ||
jnthn: In general I think that if the user drops a BEGIN in the middle of a large scc of subs they should get what's coming to them | 01:27 | ||
lichtkind | sorear: what about in 10 hours? | 01:28 | |
sorear | "the call can be a dynamic lookup through the outer chain" was exactly the insight I needed | ||
lichtkind: that will be 4:30 am local time... | |||
Util | jnthn: thanks! | ||
jnthn | sorear: Happy to help. ;-) | 01:30 | |
sorear: I'm in more of a bind because Rakudo's current compilation model is rather more tied to the single compilation unit approach and closed lexical pads etc | |||
01:31
lichtkind_ joined
|
|||
lichtkind_ | sorear: please repeat had an 24h disconnect | 01:31 | |
sorear | jnthn: so is niecza's current compilation model; I'm trying to build a new one which can do everything Perl6 needs | 01:32 | |
lichtkind: which of the 168 hours in the UTC week do you want to talk to me? | |||
lichtkind: that will be 4:30 am local time... | |||
jnthn | sorear: Right, similar for 6model | ||
sorear | 6model seems to be focusing mostly on ClassHOW | ||
what I'm doing is more of a Sub overhaul | 01:33 | ||
lichtkind_ | sorear: allrigth the i have nothing missen | ||
01:33
lichtkind left
|
|||
lichtkind_ | what about 9:30 yor local time? | 01:33 | |
01:33
lichtkind_ is now known as lichtkind
|
|||
jnthn | sorear: Aye, but I expect what I'm working on to be the foundation of porting Rakudo to .Net and beyond. | 01:33 | |
sorear | lichtkind: problematic. 10:30 or 11:30 would work much better | ||
jnthn | sorear: My point more is that I can't really just decide "oh, I'll go and do X change to lexpads" because that lives inside Parrot. | 01:34 | |
sorear | 2:30-3:30 would also work, although you'll have to excuse any grumpiness :) | ||
lichtkind | :) | 01:35 | |
sorear | jnthn: I expect that in the long run Rakudo will need to treat Parrot like a more-dynamic JVM or CLR | ||
lichtkind | nop here | ||
sorear | so when? | 01:36 | |
lichtkind | but 9:30 pm here (11:30 am for you) fould be fine | ||
i have questions regardiing niecza for my articles and my docs | |||
jnthn: some regarding 6model i have too :) | 01:37 | ||
jnthn | lichtkind: OK, catch me tomorrow. | ||
sorear | I think I have a fairly solid understanding of 6model at this point | ||
jnthn | :-) | ||
sorear | SMOP is my big todo now | ||
jnthn | sorear: I hope it was reasonably penetrable. | ||
6model took some inspiration from SMOP | 01:39 | ||
Quite a bit, in fact. | |||
Though does some things quite differently. | |||
lichtkind | is smop still active? | 01:40 | |
01:41
synth left,
synth joined,
ZadYree left
|
|||
jnthn sleeps | 01:41 | ||
01:41
mtve joined
|
|||
lichtkind | good night | 01:41 | |
sorear | jnthn: I see Parrot's inner interpreter and pmc/dispatch system as potentially (post-lorito) much better than the JVM/CLR for Perl6 | ||
jnthn: but the standard PMC types are all junk | |||
lichtkind | sorear: what is lorito? | 01:42 | |
sorear | lichtkind: code name for a large set of parrot refactors aimed at reducing the coupling between parrot's core and libraries | 01:43 | |
to #parrot, a small core means maintainability and the ability to make a JIT with less than 100 man-years | 01:44 | ||
lichtkind | sorear: thank you | ||
bye | |||
sorear | to me, lorito means not having to use a bunch of pmcs designed by the PSF ;) | 01:45 | |
01:47
exodist_ is now known as Exodist
|
|||
lichtkind | :) | 01:47 | |
01:47
lichtkind left
01:48
meppl left
01:52
thundergnat left
01:54
molaf_ joined
01:56
amkrankruleuen left
01:57
molaf left
02:25
nymacro left
02:27
nymacro joined
02:31
clkao_ joined,
lue left
02:36
nymacro left
02:48
araujo joined,
araujo left,
araujo joined,
felipe__ joined,
felipe__ left
02:49
leprevost joined
02:50
petdance joined
02:59
satyavvd joined
03:01
orafu left,
orafu joined,
LaVolta joined
03:08
gfldex left
03:09
gfldex joined
03:10
masonkramer left,
makkksimal left
03:16
makkksimal joined
03:17
satyavvd left
03:19
nymacro joined
03:26
szabgab left,
szabgab joined
03:27
envi^home joined
03:29
makkksimal left
03:30
makkksimal joined
03:32
bluescreen left
03:33
flussence left
04:01
satyavvd joined
04:04
pythonian4000 is now known as pythonian4000afk
04:05
pythonian4000afk is now known as pythonian4000,
pythonian4000 is now known as pythonian4000afk,
pythonian4000afk is now known as pythonian4000
04:15
petdance left
04:17
pythonian4000 is now known as pythonian4000afk,
pythonian4000afk is now known as pythonian4000,
pythonian4000 is now known as pythonian4000afk,
pythonian4000afk is now known as pythonian4000
04:21
pythonian4000 is now known as pythonian4000afk,
pythonian4000afk is now known as pythonian4000
04:33
gfx joined
04:55
Chillance left,
satyavvd left
04:58
nymacro left
05:03
satyavvd joined
05:13
jaldhar left
05:14
jaldhar joined
05:27
araujo left
05:33
Guest23195 joined
05:39
orafu left,
orafu joined
05:46
orafu left,
satyavvd_ joined,
orafu joined
05:48
satyavvd left,
satyavvd_ is now known as satyavvd
|
|||
dalek | odel: 3f1d29b | mberends++ | java/runtime/Rakudo/Metamodel/SharedTable.java: [java] finish the last todo items in SharedTable (calling Runtime.Ops) |
06:07 | |
mberends | market & | 06:09 | |
06:15
frettled joined
06:20
am0c^ left
06:22
hercynium left
06:23
icwiener joined
06:26
pythonian4000 is now known as pythonian4000afk
06:27
nymacro joined
06:37
satyavvd_ joined
06:38
satyavvd left,
satyavvd_ is now known as satyavvd
06:53
nymacro left
06:57
satyavvd left
07:00
agentzh joined
|
|||
dalek | ecza: 8743f45 | sorear++ | src/Metamodel.pm: Start prototyping a BEGIN-time metamodel |
07:00 | |
ecza: eb45fca | sorear++ | / (2 files): [mm] First runnable prototype |
|||
07:01
xinming left,
xinming joined
07:42
tadzik joined
07:43
standz joined
|
|||
standz | Irssi 0.8.12 (20071006) - irssi.org/ | 07:48 | |
sorear | upgrade | 07:50 | |
07:50
satyavvd joined
|
|||
standz | Sat Sep 18 08:57:46 BST 2010 | 07:58 | |
07:58
ChanServ sets mode: +o sorear,
standz was kicked by sorear (Your client is malfunctioning and spamming the channel)),
sorear sets mode: -o sorear
08:41
tadzik left
09:00
gfx left
09:02
wamba joined
09:10
baest_ joined
09:12
baest left
|
|||
sorear out | 09:14 | ||
moritz_ | www.perlmonks.org/?node_id=860609 ideas for good replies welcome | 09:20 | |
phenny | moritz_: 17 Sep 22:49Z <diakopter> tell moritz_ I sigtermed your pugssvn on feather3; sorry if I wasn't supposed to | ||
moritz_ | diakopter++ | ||
09:31
jhuni joined
09:32
JimmyZ joined
|
|||
JimmyZ replies it. | 09:32 | ||
09:50
M_o_C joined
09:51
M_o_C left,
icwiener left,
icwiener joined
09:57
M_o_C joined
10:02
M_o_C left
10:04
M_o_C joined,
M_o_C left
10:06
M_o_C joined
10:10
M_o_C left
10:11
satyavvd left,
JimmyZ left
10:13
M_o_C joined
10:23
masak joined
|
|||
masak | y0, #perl6! | 10:23 | |
I wonder if twitter.com/2mad4milk/status/24759067704 is representative of a common sentiment among Perl 5 developers. :) | 10:24 | ||
10:32
timbunce joined,
pythonian4000afk is now known as pythonian4000
10:35
whiteknight joined
|
|||
moritz_ likes for %hash { and then using .key and .value } | 10:37 | ||
masak | I like it too, but I keep forgetting about it :) | ||
moritz_ | that's why I remind you :-) | 10:38 | |
masak | thank you :) | ||
today's plan: finish the conversion of the blog content, write skeleton outlines for my two talks at OSDC.fr, sniff at Web.pm in order to become less averse to digging into the last week of it. | 10:47 | ||
10:55
flatwhatson joined
10:56
Trashlord left
10:59
Trashlord joined
|
|||
masak | I'm looking for a "this line is too long but shouldn't really be broken here" symbol. I found ↩ -- any other suggestions? | 11:01 | |
moritz_ | .u # | 11:13 | |
phenny | U+0023 NUMBER SIGN (#) | ||
moritz_ | .u ↩ | ||
phenny | U+21A9 LEFTWARDS ARROW WITH HOOK (↩) | ||
moritz_ | masak: you could take a look at what the book uses | ||
might be the same | |||
masak | good idea; I will. | ||
11:21
kuzuha joined
11:22
araujo joined
|
|||
masak | didn't find any line continuation characters in the book. | 11:29 | |
11:31
icwiener left,
icwiener joined
11:33
flussence joined
|
|||
mberends | masak: digging into Web.pm is what I had in mind for our Swedish-Dutch Perl6 Summit :) | 11:48 | |
masak | excellent. I'm all for that. | ||
best I can do to prepare that is probably to get as much talk prepping out of the way as possible before that. | 11:49 | ||
mberends | ok, wfm | ||
11:50
agentzh left
|
|||
mberends | I bottled out of giving a talk at osdc.fr, btw :/ | 11:50 | |
masak | 'bottle out of'? | 11:52 | |
mberends | 'chickened out' | ||
masak | oh, ok. | 11:53 | |
mberends | british colloquialism | ||
masak | you seem to have been busy-ish lately; more difficult to plan talks then, perhaps. | 11:56 | |
11:56
M_o_C left
|
|||
mberends | aye, but October 2-10 is reserved exclusively for Perl 6 | 11:59 | |
flussence | my sticking-spectest_smolder-in-a-crontab idea didn't work so well :( | 12:00 | |
the box froze half an hour after starting apparently | 12:01 | ||
12:04
zulon joined
|
|||
moritz_ | flussence: I strongly recommend a script that sets an ulimit, and only the spectests | 12:11 | |
flussence | I'd probably be better off doing them on my desktop instead, that's got more RAM than I know what to do with... | 12:13 | |
12:14
ruoso joined
|
|||
moritz_ | finnaly I wrote a reply: www.perlmonks.org/?node_id=860630 | 12:17 | |
masak | moritz_++ # I agree. | 12:23 | |
12:24
zulon left
|
|||
masak | more generally, Perl 6 likes to put very powerful tools just out of reach of the oneliner scripter, to be used when you need them. OO, grammars, slangs, meta-OO... | 12:24 | |
Juerd | Besides that, proper OO in modules makes writing those 300 line scripts easier too. | ||
masak | that said, Perl 6 does trade a little bit of looseness on the low end for gains further on. | 12:26 | |
things like "don't put an infix '<' next to a term, because Perl 6'll think it's a postcircumfix" | |||
Juerd | But with the mandatory whitespace it does *look* a lot looser :) | 12:28 | |
I'll be happy to see less tight crammed code | |||
masak | maybe "looser" in the sense of "more air". | 12:29 | |
Juerd | Yes :) | ||
masak | but not "looser" in the sense of "I can write whatever I want". | ||
Juerd | Well, you can't make stuff up and expect it to work, so that was never possible anyway. | ||
masak | I'm not complaining, mind. I'm just talking about tradeoffs. | 12:30 | |
moritz_ | colomon: re justrakudoit.wordpress.com/2010/09/...y-actions/ I think you could factor out a deep_flatten sub or so | ||
colomon: which flattens the first level of itemized arrays from a slurpy arg | 12:31 | ||
rakudo: my @a = [1, 2], [3, 4]; say @a>>.flat.perl | |||
p6eval | rakudo a204ba: OUTPUT«([1, 2], [3, 4])» | ||
moritz_ | rakudo: my @a = [1, 2], [3, 4]; say @a>>.list.perl | ||
p6eval | rakudo a204ba: OUTPUT«([1, 2], [3, 4])» | 12:32 | |
moritz_ | rakudo: my @a = [1, 2], [3, 4]; say @a.map({@($_)}).flat.perl | ||
Juerd | rakudo: my @a = [1, 2], [3, 4]; say @a.flat.perl | ||
p6eval | rakudo a204ba: OUTPUT«(1, 2, 3, 4)» | ||
rakudo a204ba: OUTPUT«[[1, 2], [3, 4]]» | |||
Juerd | Now to find out which output belongs to which code :) | 12:33 | |
Yours first, I guess | |||
moritz_ | indeed | ||
Juerd apparently doesn't understand what .flat does | |||
moritz_ | .flat on an array or capture only flattens parcels | ||
Juerd | Oh | 12:34 | |
moritz_ | rakudo: say (<a b>, <c d>).perl | ||
rakudo: say (<a b>, <c d>).flat.perl | |||
p6eval | rakudo a204ba: OUTPUT«(("a", "b"), ("c", "d"))» | ||
rakudo a204ba: OUTPUT«("a", "b", "c", "d")» | |||
moritz_ | however I thougth that [1, 2].flat.perl would return (1, 2) | ||
*thought | |||
rakudo: say [1, 2].flat.perl | |||
p6eval | rakudo a204ba: OUTPUT«[1, 2]» | 12:35 | |
12:37
icwiener left
12:38
icwiener joined
12:42
ruoso left
12:43
patspam joined
12:46
icwiener left,
icwiener joined
12:51
jaldhar left
12:56
satyavvd joined
12:58
leprevost left
13:09
colomon left
13:13
colomon joined,
orafu left
|
|||
colomon | rakudo: my @a = [1, 2], [3, 4]; say @a>>.iterator>>.list.flat.perl | 13:13 | |
p6eval | rakudo a204ba: OUTPUT«(1, 2, 3, 4)» | ||
13:13
orafu joined
13:17
Patterner left,
colomon left
13:22
Mowah joined,
colomon joined
|
|||
jnthn | ahojte, #perl6 | 13:23 | |
colomon | \o | ||
13:27
thundergnat joined
|
|||
moritz_ | oh hai | 13:27 | |
thundergnat | hi perl6 | 13:28 | |
13:28
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
thundergnat | moritz_: there is a minor typo in the perl6 book in subs-and-sigs. | 13:29 | |
moritz_ | thundergnat: which one? | ||
thundergnat | In the Pairs table, beverage is spelled 'tea' and 'tee' | ||
13:30
rgr` joined
|
|||
colomon | reminds me, there is a repeated paragraph in the grammar section of the book. (or at least, there was as of the last PDF.) | 13:30 | |
moritz_ | indeed, thanks | ||
thundergnat: thanks, fixed | |||
colomon: PerlJam++ did a sweep through that chapter recently; might be worth checking whether he fixed it | 13:31 | ||
thundergnat | Also, the code markup for Pair in the table legend is being passed through to the pdf. | ||
colomon | starts "Regexes inside a grammar do not need a scope declarator," | ||
thundergnat | rendering as C<Pair> | 13:32 | |
moritz_ | colomon: that sentence doesn't seem to be in the source at all | 13:33 | |
13:33
wamba left
|
|||
moritz_ | at HEAD | 13:33 | |
colomon | latest PDF (that I've found anyway) must be behind HEAD. :) | ||
moritz_ | indeed | ||
I'll boot my Debian/Squeeze box later today and build a fresh one | |||
can't build on my laptop :( | 13:34 | ||
dalek | ok: 4ac3d50 | moritz++ | src/subs-n-sigs.pod: [subs-n-sigs] typo noticed by thundergnat++ |
13:35 | |
13:36
pythonian4000 is now known as pythonian4000afk
13:39
colomon left
13:41
satyavvd left
13:48
rgr` left,
rgr` joined
|
|||
LaVolta | did someone submit this article (www.riffraff.info/2007/5/20/a-spell...l6-part-3) to reddit or * :) | 13:51 | |
13:52
rgr` left
13:54
hercynium joined
|
|||
moritz_ | www.reddit.com/r/programming/commen...itted=true | 13:59 | |
I've also submitted it the perl reddit now: www.reddit.com/r/perl/comments/dfmq...rt_3_of_3/ | 14:00 | ||
14:01
risou joined
|
|||
LaVolta | cool :) | 14:07 | |
14:07
Mowah left
14:09
Mowah joined
14:12
colomon joined
|
|||
masak | I must confess that that blog post looks more like 2010 Perl 6 than 2007 Perl 6. | 14:13 | |
14:13
colomon left,
colomon joined
|
|||
colomon | stupid wi-fi | 14:13 | |
LaVolta | yes it is...and it's still a valuable post, i guess Peter Norvig should put that under "Perl 6" :) | 14:14 | |
masak | I guess what I'm wondering is... how come the date both in the URL and the post itself is 2007? | 14:15 | |
moritz_ | maybe updated? | 14:19 | |
14:20
colomon_ joined,
colomon left,
colomon_ is now known as colomon
|
|||
gfldex | std: sub infix:<>>-<<>(Hash %a, Hash %b){ return Mu; }; | 14:20 | |
p6eval | std : OUTPUT«Use of uninitialized value $starter in concatenation (.) or string at /opt/perl-5.12.1/lib/site_perl/5.12.1/CursorBase.pm line 2754.Use of uninitialized value $stopper in concatenation (.) or string at /opt/perl-5.12.1/lib/site_perl/5.12.1/CursorBase.pm line 2754.Use of uninitial… | ||
14:21
hercynium left
|
|||
gfldex | how do i overload >>-<< ? | 14:21 | |
14:24
colomon_ joined,
colomon left,
colomon_ is now known as colomon
|
|||
masak | gfldex: use » « outermost. | 14:25 | |
gfldex | std: sub infix:>>>>-<<<<(Hash %a, Hash %b){ return Mu; }; | ||
p6eval | std : OUTPUT«===SORRY!===Malformed block at /tmp/f3ufkwbXFP line 1:------> sub infix:⏏>>>>-<<<<(Hash %a, Hash %b){ return Mu;  expecting any of: coloncircumfix signatureParse failedFAILED 00:01 116m» | ||
masak | gfldex: sorry, meant « ». the important thing is not to use the same symbols as inside. | 14:26 | |
gfldex | std: sub infix:<<>>-<<>>(Hash %a, Hash %b){ return Mu; }; | 14:27 | |
p6eval | std : OUTPUT«Use of uninitialized value $starter in concatenation (.) or string at /opt/perl-5.12.1/lib/site_perl/5.12.1/CursorBase.pm line 2754.Use of uninitialized value $stopper in concatenation (.) or string at /opt/perl-5.12.1/lib/site_perl/5.12.1/CursorBase.pm line 2754.Use of uninitial… | ||
gfldex | rakudo: sub infix:<<>>-<<>>(Hash %a, Hash %b){ return Mu; }; | ||
p6eval | rakudo a204ba: OUTPUT«===SORRY!===Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 22» | 14:28 | |
colomon | gfldex: why do you want to overload >>-<<? | ||
moritz_ | gfldex: try infix:«>>-<<» | 14:29 | |
gfldex | it would simplyfy a lot what i am doing | ||
moritz_: does not work either | 14:30 | ||
moritz_ | if you overload infix:<->, and mark your operator as 'our', the >>-<< should pick up your operator | 14:32 | |
gfldex | i will try that | 14:33 | |
14:36
jhuni left
|
|||
gfldex | moritz_: Nominal type check failed for parameter '%a'; expected Associative[Hash] but got Num instead | 14:36 | |
:( | |||
14:37
pythonian4000afk is now known as pythonian4000
|
|||
moritz_ | it's a bit hard to diagnose without seeing the full code | 14:37 | |
14:39
LaVolta left
|
|||
gfldex | moritz_: i want to do something like this: gist.github.com/585725 | 14:42 | |
if i could overload the hyperoparator i could handle all cases myself | 14:43 | ||
moritz_ | hm | 14:53 | |
gfldex | i could try to overload infix:<*,-,+,/> too but that feels kinda wrong | 14:55 | |
moritz_ doesn't have a good idea at the moment | 14:59 | ||
14:59
pythonian4000 is now known as pythonian4000afk
|
|||
gfldex | is there a spectest for overloading hyperoperators? | 15:01 | |
15:02
thundergnat left
|
|||
flussence | trying to add -1 «*« %stock doesn't work either :( | 15:03 | |
well it works, but any key not listed in %stock vanishes from the list entirely | 15:04 | ||
15:05
whiteknight left,
thundergnat joined
|
|||
moritz_ | rakudo: say (^-2) | 15:11 | |
p6eval | rakudo a204ba: OUTPUT«» | ||
15:13
thundergnat left,
M_o_C joined
15:14
thundergnat joined
|
|||
masak | just found this: lolcathost.org/b/intro-p6/IntroPerl6.html | 15:20 | |
looks like a nice summary. | |||
jnthn was just about to point out that masak had pasted a link to localhost... | 15:21 | ||
masak | if it were, I sure hope I'd have recognized the page :) | 15:22 | |
jnthn | :) | 15:23 | |
oh noes, hunger strikes! | 15:25 | ||
jnthn pauses the solo hackfest to get some noms | |||
15:25
WinstonSmith joined
15:26
jaldhar joined
|
|||
TimToady | colomon: don't need temp arrays--something like: make do for @( $<line_of_music> )>>.ast -> @line { @line } | 15:34 | |
for loops return their list of values already | 15:35 | ||
moritz_ likes "make do for" | |||
TimToady is thinking about generalizing make to set the return value of any function without actually returning | 15:36 | ||
15:36
thundergnat left
|
|||
colomon has no idea why he didn't at least do gather / take instead of ugly push. | 15:36 | ||
moritz_ | because push is actually faster? :-) | 15:37 | |
TimToady | most of the gather/takes in rosettacode have turned out to be redundant with the loop's return value | ||
15:41
zulon joined
15:45
sECuRE joined
|
|||
sECuRE | before i do some unnecessary work: are you aware that in parrot/rakudo from rakudo-star 2010.08 there is no IPv6 support? do you accept patches for that or is there already some work in progress? | 15:46 | |
moritz_ | we are aware; we'll surely accept patches to Rakudo | 15:47 | |
15:47
s1n left
|
|||
sECuRE | i’d need to modify parrot aswell | 15:47 | |
moritz_ | and I also heard that the parrot folks think that IPv6 support is a laudable goal | ||
so I think the chances are pretty good | |||
sECuRE | alright, let’s start hacking :) | 15:48 | |
moritz_ | there's a #parrot on irc.perl.org | ||
15:48
s1n joined
|
|||
masak | sECuRE++ | 15:50 | |
pmichaud | good morning, #perl6 | 16:00 | |
masak | morning, pmichaud | 16:02 | |
jnthn | oh hai, pmichaud | ||
16:18
dual left
16:19
zby left
16:22
lue joined
|
|||
lue | o hai o/ | 16:23 | |
jnthn | o/ lue | 16:24 | |
masak | lue: \o | 16:25 | |
lue | .oO[ Once Perl 6 can use Ruby files, I'd be glad do help out with Diaspora :) ] | 16:37 | |
masak | Rakudo could, once. | ||
16:41
no2 joined
|
|||
dalek | osystem: da9bc8f | supernovus++ | projects.list: Fixed exemel definition, added the rest of my active projects. |
16:43 | |
lue | .oO[ Or I could learn Ruby itself... nah, language learning takes too long, and it'd only be for one thing ] | 16:44 | |
16:44
makkksimal is now known as makkksimal_off
|
|||
lue | I'm guessing it could in its alpha days? | 16:44 | |
16:44
makkksimal_off is now known as makkksimal
|
|||
lue | afk | 16:50 | |
masak | it was during the alpha days, but I think it might have stopped working again before the big switch to ng. | 16:56 | |
17:01
dual joined
17:02
cj left
17:04
cj joined
17:08
no2 left
17:13
makkksim1l joined
17:14
makkksimal is now known as makkksimal_off,
makkksim1l left
17:15
rgrau_` joined
17:17
cj left,
cj joined
17:20
cotto left
17:22
cotto joined
17:23
cottoo joined
17:24
cj left,
cottoo left
|
|||
moritz_ | seen KyleHa | 17:40 | |
aloha | KyleHa was last seen in #perl6 13 days 16 hours ago saying "I was thinking en.wikipedia.org/wiki/Roast_(comedy)". | ||
17:41
cj joined
|
|||
masak .oO( famous last words... ) | 17:45 | ||
dalek | ast: 280ebde | moritz++ | S32-list/reverse.t: test for RT #77914, .reverse shoudl flatten parcels Also removes some non-informative Pod |
||
ast: 8c3cfd3 | moritz++ | S02-builtin_data_types/hash.t: test for RT #75868, Match objects as Hash keys |
|||
sECuRE | ok, first step done: | 17:49 | |
Connecting to [::1]:5984 | |||
HTTP/1.1 200 OK | |||
17:50
rgrau_` left,
rgrau_`` joined
|
|||
dalek | ast: 5ca3dae | moritz++ | S02-builtin_data_types/array.t: test for RT #57790, scalars indexed with [1] should return a Failure |
17:51 | |
moritz_ | \o/ | ||
sECuRE: ship it! | |||
sECuRE | nah, still a lot missing ;) | ||
i want to have at least bind() and accept() working aswell | |||
moritz_ | release early, release often :-) | ||
sECuRE | yes, but at the moment it’s only getaddrinfo and connect | ||
and testcases are missing | 17:52 | ||
moritz_ | rakudo: my $x; $x &&= 5; say $x | ||
p6eval | rakudo a204ba: OUTPUT«5» | ||
moritz_ | somebody please confirm that this is wrong | ||
rakudo: my $x; $x = $x && 5; | 17:53 | ||
p6eval | rakudo a204ba: ( no output ) | ||
moritz_ | rakudo: my $x; $x = $x && 5; say $x | ||
p6eval | rakudo a204ba: OUTPUT«Any()» | ||
flussence | && is the same as in p5, right? | ||
moritz_ | yes | ||
jnthn | moritz_: Looks wrong to me. | ||
17:53
zulon left
|
|||
flussence | rakudo: my $x; say ?$x; | 17:53 | |
p6eval | rakudo a204ba: OUTPUT«0» | ||
flussence | looks wrong to me. | ||
17:55
hirschnase joined
17:56
envi^home left
|
|||
dalek | ast: 519bef8 | moritz++ | S03-operators/short-circuit.t: some basic tests for RT #77864, &&=, ||= etc. One of them fails |
17:56 | |
17:58
rgrau_`` left
|
|||
moritz_ | I see KyleHa++ has switched his mail reporter to 'roast' already | 18:01 | |
dalek | ast: 6a09536 | moritz++ | S03-operators/binding-scalars.t: test for RT #77462: binding should have list assignment precedence |
18:02 | |
18:02
cj left
18:03
cj joined,
rgrau joined
|
|||
moritz_ | 8 remaining tickets that needs test, but could be closed otherwise | 18:03 | |
18:04
bluescreen joined,
nexusone joined
18:07
lichtkind joined
18:11
cj left
|
|||
masak | nom & | 18:11 | |
18:11
masak left
18:13
cj joined
18:18
Mowah left
|
|||
moritz_ | Carcassonne & | 18:21 | |
18:24
jfried joined
18:26
patspam1 joined,
patspam1 left
18:27
risou left
18:29
patspam left
18:30
mariano__ joined
18:33
bluescreen left
18:38
mariano__ left
18:47
wamba joined
|
|||
dalek | odel: 3ccafcd | jnthn++ | parrot/src/ (5 files): Remove all the Parrot sketching stuff from 6model reop; everything that could be extracted from here has been, and development is now taking place in nom branch of the nqp-rx repository. |
18:56 | |
18:57
rgrau left
19:00
makkksimal_off is now known as makkksimal
19:05
nperez_ is now known as nperez
|
|||
sorear | good * #perl6 | 19:10 | |
lichtkind: ping. sorry I'm late | 19:11 | ||
lichtkind | sorear: everything is fine | 19:13 | |
so we talk later? | |||
sorear | not now? | ||
lichtkind | sorear: i thought you are now late for something else | 19:14 | |
moritz_: would it be possible to set up a chatbot for wiki changes? | |||
sorear | No, I'm late for you. | 19:15 | |
We agreed on an hour ago. | |||
lichtkind | sorear: yes but i was writing currently anyway | 19:16 | |
im always busy | |||
19:17
amkrankruleuen joined
|
|||
lichtkind | so how you came up with the name? | 19:18 | |
19:20
wamba left,
timbunce left
|
|||
lichtkind | sorear: i mean you :) | 19:23 | |
19:25
nexusone left
19:26
timbunce joined
|
|||
sorear | I asked masak++ | 19:27 | |
after a few minutes of brainstorming, he mentioned 'nie mas čas', and I butchered it into niecza | 19:31 | ||
lichtkind | sorear: but thats slovak and masak comes from somewhere in north i thought :) | 19:36 | |
jnthn | lichtkind: There was a joke video masak++ showed me on Youtube once where a Czech song had been annotated with Swedish words that they sounded like. | 19:38 | |
lichtkind: We've since made endless puns based around this. "my mame čas" was mis-heard as "nemame čas" by me when I first listended to the video, and I think the name niecza was derived from that. :-) | 19:39 | ||
(Yes, I know, it's insane. :-)) | 19:40 | ||
lichtkind understands now | |||
not insane | |||
but not as funny as zavolaj | |||
jnthn | Zavolaj is only the imperative form of "to call" :P | 19:41 | |
lichtkind | yes but it stand for native call interface | 19:42 | |
19:42
M_o_C left
|
|||
jnthn | Thus the name :-) | 19:42 | |
lichtkind | and while you where in bratislave the natives called "zavolaj" | ||
it was her communication interface | |||
genious | |||
jnthn | lol, you just managed to do a Slovak case declension while writing english. :-D | 19:43 | |
(in bratislave)++ :-) | |||
lichtkind | its my mother tonge ! | ||
english is just my third lang | |||
jnthn | :-) | 19:44 | |
19:44
PhatEddy joined
|
|||
lichtkind | indeed funny :) | 19:45 | |
sorear: still around? | |||
19:45
fab_ joined
|
|||
sorear | yes | 19:46 | |
lichtkind | great so name is clear even the cz in it leads the way | ||
so i read its about runtime improvements | 19:47 | ||
19:47
fab_ left
|
|||
lichtkind | you tring out a new architecture? | 19:47 | |
trying | 19:48 | ||
PhatEddy | The rakudo.org web site seems to be down. I can ping the domain but safari complains the "the server unexpectedly dropped the connection". | ||
19:50
alester left
19:51
Kodi joined
|
|||
Kodi | rakudo: say (+(0.Int)).WHAT; say (+(0.Int + 0.Int)).WHAT; | 19:51 | |
p6eval | rakudo a204ba: OUTPUT«Int()Num()» | ||
Kodi | Is that a bug? If so, is it known? | ||
sorear | lichtkind: no, I'm using i386 like nearly everyone else here | 19:55 | |
lichtkind | sorear: no i mean software architecture of niecza | 19:56 | |
i mean the german sense of the word architecture :) | |||
sorear | I don't really have one | ||
Or rather, I'm changing it daily | |||
lichtkind | meaning the logical structure of the compiler | ||
sorear | I'm not stuck to a single underlying layout like Rakudo is | ||
lichtkind | so you searching more for single ideas | 19:57 | |
not to proof a concept | |||
sorear | I'm trying to build a working compiler. The structure is secondary | ||
often I have to change the structure to get things done | 19:58 | ||
lichtkind | but then you could join rakuda do | ||
sorear | I tried that once. Didn't work out. | ||
lichtkind | :) | ||
20:07
nexusone joined
|
|||
sECuRE | alright, now i can get the effective remote socket address :) | 20:18 | |
lichtkind | sorear: i cant comprehent how niecza cant have an architecture? | 20:20 | |
sorear | lichtkind: it has one, but it's not an important part of the plan | 20:21 | |
Rakudo has an externally imposed architecture which it must follow | |||
niecza's architecture is an internal thing, and I like to change it often | |||
lichtkind | interesting | 20:22 | |
20:22
hercynium joined
20:33
nexusone left,
PhatEddy left
20:36
timbunce left
20:43
timbunce joined
20:48
icwiener left
20:51
hirschnase left
20:53
hirschnase joined
20:55
pythonian4000afk is now known as pythonian4000
|
|||
lichtkind | but nieczka uses rakudo as platform or something else? | 20:56 | |
20:56
hirschnase left
20:57
hirschnase joined
21:01
whiteknight joined
|
|||
flussence | lichtkind: niecza uses .Net | 21:01 | |
dalek | kudo: 12088a8 | KodiB++ | src/core/Temporal.pm: [core/Temporal] Fixed RT #77910 (DateTime attributes like .hour should always be Ints). |
21:02 | |
flussence | nothing to do with rakudo/parrot at all | ||
21:02
Mowah joined
|
|||
lichtkind | flussence: so .net has also some lex/yacc tools? | 21:04 | |
dalek | ast: a32217d | KodiB++ | S32-temporal/DateTime.t: [DateTime.t] Added tests for RT #77910. |
21:06 | |
flussence | I don't think it does, better to ask someone who knows it... | ||
jnthn | I believe Niecza uses its own grammar engine, just as Rakudo does (e.g. the one in nqp-rx) | 21:07 | |
21:08
rbuels left
|
|||
lichtkind | jnthn: thanks | 21:09 | |
21:26
timbunce left
21:29
flatwhatson left
21:32
flatwhatson joined
21:33
whiteknight left
|
|||
moritz_ | rakudo: say ~(1..6).roll(10) | 21:33 | |
p6eval | rakudo a204ba: OUTPUT«5 3 4 4 6 3 4 3 5 1» | ||
21:35
rurban joined
|
|||
rurban | rakudo.org down? | 21:36 | |
moritz_ | yep | 21:37 | |
rurban | only for short? | ||
moritz_ | it's the first report I've heard | 21:38 | |
Kodi++ # datetime hacking | 21:40 | ||
rurban++ # rakudo packaging | |||
sECuRE++ # IPv6 hacking | |||
enough karma give for today :-) | 21:41 | ||
rurban | I thought it should be time for a new star release somewhen. and I'm just testing the new icu-4.5.1 | ||
Before I only had libicu38 | |||
jnthn | BTW, a lot of my commits over the coming weeks are going to be to the branch github.com/perl6/nqp-rx/commits/nom | 21:42 | |
moritz_ | jnthn: then we should track that... | ||
jnthn | If there's interest, it could be added to the things dalek reports on by $people-with-ability | ||
moritz_ | jnthn: you are one of them :-) | ||
jnthn | Oh? | ||
moritz_ | rurban: I guess on Thursday there'll be another Star release | ||
jnthn: it's not yet documented properly, but there's a config file in the mu repo that controls dalek | 21:43 | ||
rurban | good. parrot is fine with my new icu, but I wanted to test rakudo-star also | ||
jnthn | moritz_: ah, oik | 21:44 | |
er, ok :-) | |||
moritz_: I'm deep in meta-model hackery at the moment, but feel free to add now or I can later :-) | |||
moritz_ | jnthn: I will | ||
21:46
Mowah left
|
|||
moritz_ | rakudo: say Q:PIR { %r = box 5 } | 21:47 | |
p6eval | rakudo a204ba: OUTPUT«5» | ||
moritz_ | sECuRE: see above | ||
sECuRE | alright | ||
dalek | : b65de19 | moritz++ | misc/dalek-conf.json: [dalek] track nqp-rx/nom |
21:48 | |
21:52
meppl joined
|
|||
moritz_ | rakudo: enum A <b c>; enum A <b c>; | 21:53 | |
p6eval | rakudo a204ba: OUTPUT«===SORRY!===Contextual $*PKGDECL not found» | ||
moritz_ | std: enum A <b c>; enum A <b c>; | ||
p6eval | std : OUTPUT«===SORRY!===Illegal redeclaration of symbol 'A' (see line 1) at /tmp/nv2tUGIUEQ line 1:------> enum A <b c>; enum A⏏ <b c>;Illegal redeclaration of symbol 'b' (see line 1) at /tmp/nv2tUGIUEQ line 1:------> enum A <b c>; enum A <b c>[33… | ||
moritz_ submits rakudobug | |||
sECuRE++ found it | |||
rakudo: sub a { }; sub a { }; | 21:55 | ||
p6eval | rakudo a204ba: OUTPUT«===SORRY!===Can not re-declare sub &a without declaring it multi at line 22, near ";"» | ||
moritz_ should wait for the spectest to finish before pushing patches :-) | 22:07 | ||
jnthn | moritz_: I've pushed a couple of patches to the branch - we'll see if dalek spots 'em. | 22:08 | |
dalek | kudo: e59e96d | moritz++ | src/Perl6/Actions.pm: check name clashes for enum names |
||
moritz_ | jnthn: I don't know how often the config file is read, so even if it doesn't pick up the feed yet, it might do so tomorrow | 22:10 | |
jnthn | moritz_: aha, OK | ||
dalek | kudo: ccde8dc | moritz++ | t/spectest.data: run enums/basic.t |
22:14 | |
ast: 895d239 | moritz++ | S12-enums/basic.t: fudge enums/basic.t for rakudo |
|||
moritz_ -> sleep | 22:15 | ||
sECuRE | sleep tight | ||
22:15
hercynium left
|
|||
sECuRE | "Could not find sub !YOU_ARE_HERE" < what exactly does this error message mean? (i’m compiling rakudo after changes to IO/Socket/INET.pm | 22:16 | |
22:19
hercynium joined,
hercynium left,
hercynium joined
22:22
LoRe left,
LoRe joined
22:24
M_o_C joined,
M_o_C left,
M_o_C joined
22:26
Guest23195 left
22:28
hirschnase left
22:38
renormalist joined
|
|||
TimToady | YOU_ARE_HERE is what the setting thinks your mainline code is called | 22:47 | |
dalek | p-rx/nom: f8aeada | jnthn++ | build/Makefile.in: Stub in stuff to build dynops and dynpmcs in the Makefile.in. |
22:48 | |
p-rx/nom: f8a9b8b | jnthn++ | src/ (2 files): Stub in STable structure and PMC. |
|||
p-rx/nom: a87a3a3 | jnthn++ | src/pmc/ (2 files): Stub in REPR and RakudoObject PMCs. Also group name should be nqp. |
|||
p-rx/nom: 4f0ee8c | jnthn++ | src/pmc/repr.pmc: Oops, forgot REPR stub in last commit. |
|||
22:48
dalek left,
dalek joined,
ChanServ sets mode: +v dalek
|
|||
jnthn | d'oh, it tried to report everything from this morning. :-) | 22:49 | |
22:54
Chillance joined
23:00
amkrankruleuen left
23:13
Kodi left
23:24
Alias left,
Alias joined
|
|||
dalek | p-rx/nom: af90644 | jnthn++ | src/metamodel/knowhow_bootstrapper.c: Implement (representation-polymorphic) type creation by KnowHOWs. Also implement add_method and find_method in the KnowHOW meta-object. This means we can create KnowHOWs, add methods do them and dispatch to them. |
23:34 | |
jnthn | *to them :-) | 23:35 | |
dalek | p-rx/nom: f13c33a | jnthn++ | src/metamodel/knowhow_bootstrapper.c: Add .^compose for KnowHOWs. |
23:51 | |
23:56
risou joined
|