|
»ö« | 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 moderator on 20 October 2009. |
|||
| zaslon | lolfrettledhazblogged! frettled++ 'What stops me from using Perl 6, today?': howcaniexplainthis.blogspot.com/200...today.html | 00:01 | |
| frettled | ooh, zaslon worked, yay! carlin++ | 00:05 | |
|
00:05
chromatic joined
|
|||
| japhb | Linguistics question: has there ever been any research into the maximum amount of text (or speech, for that matter) that can be written/spoken in any two different natural languages, such that the meaning is *different*, and yet the text can still be successfully "parsed" in both languages? | 00:09 | |
|
00:10
meppl joined
|
|||
| japhb | I was just thinking about a parser that doesn't know which language the user will input, but wants to be able to signal understanding of the *meaning* of the input as soon as possible. | 00:10 | |
|
00:11
nihiliad joined
|
|||
| frettled | Meaning is dependant on both textual and cultural context, so that may be difficult. | 00:12 | |
| English, for instance, isn't a language with even relatively uniform usage. | |||
| Some of us like to pretend that it is, and blunder about using it as if it was, because it _is_ the de facto world trade language, but even in long texts, you may find that even two US Americans disagree on what the semantics were. | 00:13 | ||
| Caveat lector: I'm not a linguist. | |||
| japhb | frettled, assuming the context is the same. For example, let's say you have a kiosk at a major museum, like the Louvre or Smithsonian. You want tourists to be able to walk up to the kiosk and ask a question about one of the exhibits in the Smithsonian. And you want them to be able to do it in their own language, without having to pass a stupid "press the button indicating your language" screen. Just start typing. | 00:14 | |
| diakopter | first question, which keyboard to provide | ||
| japhb | diakopter, OK, I'll grant you that point. Let's take that out of the equation. | 00:15 | |
| frettled | japhb: do you want to take into the account that most people don't know how to spell write? | ||
| ;) | |||
| japhb | frettled, *chuckle*. | ||
| diakopter | japhb: I think it's a central problem (keyboard).. | ||
| (solution to one is similar to the solution to another) | 00:16 | ||
| frettled | You can get quite far by asking for clarification in case of ambiguous input. | ||
| The keyboard problem can be solved by having people pressing a button signifiying their language first! ;) | 00:17 | ||
| japhb | I grant both of you your points about the implementation. I'm curious about whether the "parsing an unknown natural language" problem is completely insoluble from the get-go, because you can write complete correct sentences in two languages that share an alphabet, and yet mean completely different things. | ||
| frettled | As the length of the sentence increases, the likelyhood of that decreases, though. | 00:18 | |
| japhb | sure. That was my assumption. | ||
| frettled | There are few sentences in e.g. Castillian Spanish and American English that are similar. | ||
| But Austrian German and German may be too similar. | 00:19 | ||
| Some of the Slavic languages are also fairly close. Danish and Norwegian can be too similar in written form, depending on the skill of the one inputting the question. | 00:20 | ||
| jnthn | japhb: Google Translate has a feature to automatically "detect" (guess ;-)) the language of the thing it's being asked to translate. | 00:22 | |
| frettled | That works nicely for some Unicode character sets. | ||
| It is, for instance, eminent at guessing when you're writing Greek or Japanese. | 00:23 | ||
| jnthn | japhb: I'm not sure if it does it by attempting a parse of any kind or just on statistical properties of the text though. | ||
| arnsholt | jnthn: I'd guess n-gram language models generated from Google's indices | 00:29 | |
| japhb: Parsing and understanding text when you know what language you're getting in isn't even close to being solved yet | 00:30 | ||
| frettled | arnsholt: that seems to be quite close to the mark, judging from Wikipedia's N-gram article | ||
| arnsholt | So the answer to your question is pretty much that at the moment we don't have even a remote chance at making that work | ||
| frettled | It's something that human brains struggle with, all the time. | 00:31 | |
| arnsholt | frettled: When it comes to language technology today n-grams are a pretty safe bet | ||
| And yeah, bilingual people have quite a bit of trouble at times, so excpecting computers to be able to handle it is a bit optimistic =) | 00:33 | ||
|
00:33
orafu joined
00:37
mikehh joined
|
|||
| frettled | You don't even need to be bilingual to have problems. You just have to be from different cities in the same country. | 00:40 | |
| arnsholt | True, true | 00:42 | |
| BTW, you're the one who works at the University of Oslo, right? | |||
| frettled | Nopes :) | 00:43 | |
| But I have a perpetual alumni account there. | |||
| arnsholt | Ah, right | 00:44 | |
| Then it was you I noticed the other day logged in from the login cluster | |||
| frettled | sjn used to work for the meteorological institute, but he quit a week ago or so. | ||
| arnsholt | (I'm a student at UiO, so I noticed the hostname) | ||
| frettled | aha | ||
| I'm still using the login cluster. | |||
| I had a part-time job with tech support in 1997-1999, though. | 00:45 | ||
| arnsholt | I see | 00:46 | |
| jnthn | frettled: Aww, so I should stop mailing sjn asking him to fix the weather now? ;-) | 00:47 | |
| frettled | jnthn: yeah :( | ||
| jnthn | Aww. | ||
| Hope he's got something good lined up. | |||
| OK...time for me to get some sleep now. :-) | 00:48 | ||
| diakopter | 'nite | ||
| frettled | He quit his job so that he could work on his idealist project: open teaching (well, that's an over-simplification, but close enough) | 00:49 | |
| jnthn: sleep tight! | |||
| I hope sjn succeeds well enough to make a living from that. | 00:50 | ||
| jnthn hopes sjn++ does well with it. :-) | |||
| And sjn++ again for pursuing what he cares about. :-) | |||
| Anyway, night! | |||
| frettled | Oh, yes, sjn++ for doing that! | ||
|
00:50
Wolfman2000 joined
|
|||
| Wolfman2000 | evening | 00:51 | |
| arnsholt | Good night =) | 00:52 | |
| frettled | Yeah, good night, I really should get to bed two hours ago. :-/ | 00:53 | |
| Wolfman2000 | ...guess I came at a bad time if everyone's leaving. | ||
| frettled | Wolfman2000: nah, no worries, the Americans are probably going to be partying all night! ;) | 00:54 | |
| japhb | Damn, I'm just getting back (had been pulled away by unexpected arrival) | ||
| diakopter starts partying | |||
| Wolfman2000 is an american. | |||
| frettled heads off to bed. *idle* | |||
| japhb | Well, if anyone is still here ... | ||
| Wolfman2000 | japhb: You've got some of us willing to "stay up". What's up? | 00:55 | |
| japhb | I was actually wondering not about the case where two languages could be confused ... but where the two languages could be confused and mean *DIFFERENT* things. | ||
| Because after all, it's the meaning that you're after, for a sizeable chunk of use cases. | 00:56 | ||
| Wolfman2000 | japhb: Seems like I've missed part of the conversation...I'm not following you. | ||
| arnsholt | japhb: It's an interesting question | 00:57 | |
| japhb | Wolfman2000, I had started a question asking whether someone could write a query of significant length in an unknown natural language, and have the computer get the *meaning* correct, without necessarily getting the language correct. | ||
| arnsholt | And it certainly is possible for two languages two be confused and have similar or same semantics | ||
| japhb | (I asked it from a different angle) | ||
| Wolfman2000 | japhb: You mean like a SQL Query? | ||
| arnsholt | But confused with sifferent semantics is quite unlikely in practice I think. Kind of like hash collisions, except opposite =) | 00:58 | |
| japhb | Wolfman2000, my example was a kiosk at a major international museum, where you want tourists to be able to walk up and ask about exhibits in their *own* language. | ||
| (without having to specify their language at the beginning) | |||
| arnsholt, heh | |||
| TimToady | it's much more likely to be possible when the universe of discourse is constrained to the exhibits | 00:59 | |
| much like it's easy to recognize "yes" and "no" in many languages if you know you're expecting a yes/no answer | 01:00 | ||
| (though Greek is hard :) | |||
| japhb | OK, now you have me curious, why is Greek hard. Does it have something like "aloha" but for boolean queries? | 01:01 | |
| TimToady | no, it just looks backward | ||
| ouk looks like OK and nai looks like nah | 01:02 | ||
| but ouk is no and nai is yes | |||
| japhb | ah, gotcha | ||
| TimToady | I may be butchering modern greek here | ||
| japhb | I guess given that point about Greek, and someone's previous point about the general problem with accurate spelling and typing, | 01:04 | |
| one might be left with the case where theory and practice diverge rather painfully. | |||
| TimToady | well, like any cryptogram, you can make better guesses with more info | ||
| japhb | Sure, the longer the input, the more likely a proper understanding of it. | 01:05 | |
| And the context. | |||
| TimToady | if the kiosk is allowed to ask them a few questions, some of which may be unintelligable, then you can do better with rare languages | 01:06 | |
| japhb | Is there a body of working on parsing natural language when the input is filled with errors? | ||
| nodnod. | |||
| TimToady | but you repet yourself... :) | ||
| *repeat | |||
| japhb | "body of work" sigh | 01:07 | |
| TimToady | funny, I corrected that error without even noticing... | ||
| japhb | Well, it seemed a related but not identical topic | ||
| TimToady | but people are good at processing language statistically, and contextually | ||
| and good at asking questions otherwise :) | 01:08 | ||
| japhb | I wonder how long it takes for a polyglot speaking in one language to react to an unexpected input in another language ... | ||
| TimToady | depends on what kind of polyglot | 01:09 | |
| japhb | Dang it, what I really need here is "Cognitive and Linguistic Sciences: The Good Parts Version" | ||
| TimToady | there are polyglots who do "frame shifting" and won't speak to you in the "wrong" frame | 01:10 | |
| japhb | Conscious decision to ignore, or brain simply can't switch properly? | ||
| TimToady | otoh there are cultures like certain gypsy cultures where you continually mix together three or four languages | ||
| in children particularly, can't switch | 01:11 | ||
| also get differences of understanding vs production where two people may each speak in the language they're most comfy speaking | |||
| japhb | Sure, but in the gypsy case (as with several cases I saw in college) all speakers in the conversation *expect* all the others to be cross-fluent. | ||
| TimToady | but knowing the other person will underswtand | 01:12 | |
| japhb | hmm. | ||
| TimToady | mai oui! | ||
| japhb | I was that way about French in high school. | ||
| I was much better as a listener than a speaker. | |||
| TimToady | I am the opposite in Japanese | ||
| I can speak it much better than I can process it | |||
| Wolfman2000 | I can type some Japanese. | 01:13 | |
| But reading fluently? Nope. | |||
| 祭 <-- I think we could all use that. | |||
| TimToady | hmm, my scim-anthy went away when I upgraded :( | ||
| yes, we could all use a festival | 01:14 | ||
| Wolfman2000 | You can thank DDR for me knowing that one | ||
| TimToady | put a roof on that yound you'll get "police" in japanese | ||
| wow | |||
| s/yound/and you/ | |||
| japhb | That was a couple levels deep of recursive braino, I think. | 01:15 | |
| Wolfman2000 | Anyway, time to get back to the pastebin work. | ||
| japhb | .oO( A festival with a roof is "police"? ) |
||
| TimToady | 警察 | 01:16 | |
| "keisatsu", look at the bottom of the right char | |||
| oh where, oh where has my anthy gone? oh where, or where could it be? | |||
| pmichaud | TimToady: earlier I had question about my $a = (); # what ends up in $a? | 01:22 | |
| Wolfman2000 | rakudo: my $a = (); say $a; | ||
| p6eval | rakudo 7347ec:  | ||
| Wolfman2000 | pmichaud: ^ | 01:23 | |
| TimToady | sure looks like a Nil to me | ||
| pmichaud | Wolfman2000: just because Rakudo returns an answer doesn't mean it's correct. | ||
| TimToady | rakudo: my $a = (); say $a.WHAT | ||
| p6eval | rakudo 7347ec: Failure() | ||
| TimToady | should just be Nil, I think | ||
| pmichaud | Wolfman2000: Indeed, it's because Rakudo has been wrong about this so much that I'm asking the question :-) | ||
| TimToady: but doesn't Nil in item context become a failure? | |||
| TimToady | why? | ||
| pmichaud | S02: A C<Nil> object may also carry failure information, | 01:24 | |
| but if so, the object behaves as a failure only in item context. | |||
| I guess "may" is the operative word there? | |||
| TimToady | yeah | 01:25 | |
| I'd rather avoid escalating | |||
| pmichaud | okay, so Nil is just an undefined type by default | ||
| er, undefined value when assigned | |||
| TimToady | Nil isn't undefined, I don't think--it just doesn't give you much else | ||
| pmichaud | S02 again: The C<Nil> type is officially undefined as an item but interpolates | 01:26 | |
| as a null list into list context, and an empty capture into slice | |||
| context. | |||
| TimToady | it's just an object representing () | ||
| pmichaud | is it exactly the same as () ? | ||
| TimToady | you'll get an error soon enough if you call a method that Nil doesn't support | ||
| pmichaud | I'm trying to understand how Nil differs from an empty List | 01:27 | |
| TimToady | I think of it as a name for the empty list | ||
| eternaleye | TimToady: I used to use scim-anthy, but I just recently switched to ibus-anthy. It woks at least as well, and actually functions correctly in Qt4 | ||
| TimToady | in a constant sort of way | ||
| eternaleye | *works | ||
| pmichaud | TimToady: so, if we have sub foo { return; } | 01:28 | |
| eternaleye | Plus, scim is mostly unmaintained these days | ||
| pmichaud | and then | ||
| my $a = foo(); | |||
| TimToady | gotta do kid delivery & back in 10 | ||
| pmichaud | say $a; | ||
| okay, see you in 10. | |||
|
01:29
lisppaste3 joined
|
|||
| pugs_svn | r29101 | lwall++ | [CORE] missing Parcel type | 01:42 | |
| pmichaud | so, is Nil more like a type or more like a constant? | 01:43 | |
| TimToady | a constant | 01:45 | |
| that's how CORE.setting has it | |||
| pmichaud | okay | ||
| how does Nil(...) parse, then? | |||
| it's postcircumfix on a constant? | 01:46 | ||
| TimToady | same as pi() | ||
| pmichaud | oh, it's a function call | ||
| call to &Nill ? | |||
| er, &Nil ? | |||
| okay, I can go with that. | |||
| TimToady | std: Nil() | ||
| p6eval | std 29100: ok 00:01 101m | ||
| TimToady | I'd guess it's an empty Parcel, actually | 01:47 | |
| pmichaud | I can do that as well. | ||
| Currently I have the ng branch such that a Parcel in item context becomes a List, though. | 01:48 | ||
| so | |||
| my $a = Nil; would seem to want to be a List | |||
| japhb | rakudo: sub foo($a) { say $a.WHAT }; foo({}); | 01:49 | |
| p6eval | rakudo 7347ec: ( no output ) | ||
| japhb | rakudo: sub foo($a) { say $a.WHAT }; foo({}); | ||
| p6eval | rakudo 7347ec: ( no output ) | 01:50 | |
|
01:51
pnate joined
|
|||
| pmichaud | going back to my earlier example | 01:51 | |
| 01:23 <TimToady> rakudo: my $a = (); say $a.WHAT | 01:52 | ||
| 01:23 <p6eval> rakudo 7347ec: Failure() | |||
| 01:23 <TimToady> should just be Nil, I think | |||
| if Nil isn't a type.... I'd think it'd be List. | |||
| anyway, I'll go with that for now. Thanks. | |||
| Having Nil as a Parcel seems to work in a lot of very good/useful ways, fwiw. | 01:54 | ||
| TimToady | sounds good | ||
| pmichaud | it can almost be defined as | 01:56 | |
| sub Nil(*@ignored) { return (); } | 01:57 | ||
| or even term:<Nil> | |||
| (or both) | 01:58 | ||
| TimToady | Nil doesn't have to respond to .() does it? | 01:59 | |
| pmichaud | I wouldn't think so. | ||
| TimToady | I guess we defined it to be void at one time | ||
| pmichaud | S02 still says that, I think. | ||
| well, it says that 'void' casts to Nil | 02:00 | ||
| er, "converts to Nil" | |||
| TimToady | it would need to supply an eager *@ | ||
| since void is eager | |||
| pmichaud | sure | ||
|
02:00
nihiliad1 joined
|
|||
| pmichaud | okay, let's take that approach for a bit and see what happens :-) | 02:01 | |
| thanks for the quick answers | |||
| (it helps that Parcels flatten in list context, which makes Nil as an empty Parcel work out pretty naturally) | 02:02 | ||
|
02:09
nihiliad joined
02:22
agentzh joined
|
|||
| pmichaud | token nofun { <!before '(' | '.(' | '\\\\' | '\\'' | '-' | "'" | \\w > } # STD.pm | 02:24 | |
| Am I missing something there, or is single-quote in the list twice? | |||
| Wolfman2000 | pmichaud: I don't think you are missing anything. | 02:25 | |
| s1n | pmichaud: i see '\\'' and "'" | 02:27 | |
| Wolfman2000 | err...I responded to the wrong part | 02:29 | |
| pmichaud: what s1n++ said is correct. | |||
| pmichaud | I thought s1n++ was agreeing with me :-) | 02:30 | |
| s1n | i was | ||
| eternaleye | I think Wolfman2000 first parsed it as "Am I missing something [which needs to be added to this token]" | 02:35 | |
| pmichaud | ah. | 02:36 | |
| Wolfman2000 | ...something like that. | ||
| pmichaud | makes sense. | ||
| I should've said "am I misunderstanding something ..."... | |||
| Wolfman2000 | ironically, I would ahve understood that | ||
| s1n | maybe i missed something, but can someone tell me how given/when differs from a switch statement | 02:37 | |
| eternaleye | s1n: A switch statement in most languages uses equality testing, and is restricted to basic datatypes (int, bool, char, etc.) but in P6, it uses smartmatch, and so works on anything that defines an ACCEPTS method. | 02:38 | |
| pmichaud | eternaleye++ | 02:39 | |
| eternaleye | s/ it / given\\/when / | ||
| pmichaud | also, switch statement usually requires a "switch" outer block, while "when" blocks will work anywhere that $_ is set | ||
| eternaleye | Ooh, forgot that. It is indieed shiny in that usage | ||
| for <foo bar baz> { when 'foo' {...}; ...} | 02:40 | ||
| s1n | okay, pmichaud's point makes the actual difference | 02:41 | |
| eternaleye | And the implied control exception can be disabled by putting a 'next;' at the end of the when block | ||
| pmichaud | er, "continue" I think. | ||
| "next" still means "go to the next iteration" in loops. | 02:42 | ||
| eternaleye | pmichaud: You would know better than me. Last time I looked at that part of the spec was '06, and it was a next | ||
| Which may have been simply a thinko even then | |||
| s1n | just curious, i keep seeing people babble about it and i think to myself "yay! switch statements!" | ||
| pmichaud | the other think that makes it a little special is that there can be other code between the 'when' statements. | 02:43 | |
| eternaleye | (Perl 6)++ | ||
| pmichaud | for <foo bar baz> { when 'foo' { ... }; say 'still here!'; when 'bar' { ... } } | ||
| eternaleye | rakudo: for <foo bar baz> { when 'foo' { say 'quux' }; say 'still here!'; when 'bar' { say 'corge' } } | 02:44 | |
| p6eval | rakudo 7347ec: quuxstill here!corgestill here! | ||
| s1n | pmichaud: but that's because it operates on $_, a nice side effect of being in perl | 02:45 | |
| eternaleye | rakudo: for <foo bar baz> { when 'foo' { say 'quux'; continue }; say 'still here!'; when 'bar' { say 'corge'; continue } } | ||
| s1n | versus Java which has no $_ :) | ||
| p6eval | rakudo 7347ec: quuxstill here!still here!corgestill here! | ||
| s1n | eternaleye: why the extra "still here!" on the end? | 02:46 | |
| eternaleye | baz. | ||
| Wolfman2000 | eternaleye: while you're here...got a screenshot to prepare for you | 03:09 | |
| i37.tinypic.com/67mhqs.png | 03:10 | ||
| bah | 03:12 | ||
| pnate | spellcheck: permanently | 03:14 | |
| Wolfman2000 | pnate: thanks | ||
| err | |||
| pnate++ | |||
|
03:21
nihiliad joined
03:29
yahooooo joined
03:42
envi^office joined
03:57
frew_ joined
|
|||
| Wolfman2000 | frew_: surprised to see you around here. | 04:01 | |
|
04:02
meppel joined
|
|||
| Wolfman2000 | diakopter, TimToady, others: if I recall correctly, Perl 5's symbol/animal was the llama. What will Perl 6's be? | 04:04 | |
| carlin | Wolfman2000: a butterfly | 04:06 | |
| perl6.org/camelia-logo.png | |||
| Wolfman2000 | Float like a butterfly, sting like a bee? Is that the mentality of Perl 6? | 04:08 | |
| nbrown_ | Wolfman2000: svn.pugscode.org/pugs/misc/camelia.txt | 04:28 | |
| Wolfman2000 | More thoughts needed. Is the text spaced alright and whatnot? i35.tinypic.com/wjj8lg.png | 04:48 | |
|
05:00
mepplock joined
05:18
ihrd joined
|
|||
| Wolfman2000 | phenny: tell masak more progress...need to do more testing before I figure out how to make this live on my Feather Box for you guys to have fun with it. i35.tinypic.com/wjj8lg.png | 05:19 | |
| phenny | Wolfman2000: I'll pass that on when masak is around. | ||
|
05:22
ihrd left
05:36
am0c joined
|
|||
| frew_ | Wolfman2000: I'm always in here :-) | 05:39 | |
| Wolfman2000 | frew_: *shrugs* fair enough | ||
| anyway, hope you like the progress I've made. I'm about to retire for the night. | 05:40 | ||
| frew_ | Wolfman2000: is it in a public repo yet? | ||
| once it is you can get a lot more help :-) | |||
| Wolfman2000 | frew_: once I get enough of the web stuff working, I'll be more willing to accept help in that case. | 05:41 | |
| Luckily, I'm almost at that point | |||
|
07:09
gfx joined,
kaare joined
07:11
eternaleye joined
07:30
scottp joined
|
|||
| scottp | Anyone know where I can download hirez/vector image of Camelia ? | 07:30 | |
| TimToady | the original is in pugs/misc/camelia.odg | 07:34 | |
| the pdf scales pretty well too | |||
|
07:39
rfordinal joined
|
|||
| sjohnson | hi | 07:44 | |
|
07:53
iblechbot joined
08:11
barney joined
08:13
rfordinal joined
08:24
Su-Shee joined
|
|||
| Su-Shee | good morning | 08:24 | |
|
08:36
pnate joined
|
|||
| sjohnson | hello | 08:39 | |
|
08:42
agentzh joined
08:47
scottp joined
08:50
mariuz joined
08:52
ejs joined
09:03
ejs joined
09:07
charsbar_ joined,
r0bby left
09:08
goneri joined
|
|||
| frettled | morning! | 09:27 | |
|
09:32
dakkar joined
|
|||
| diakopter | 'nite! | 09:35 | |
| to whom it may concern: my branch of nqp-rx now compiles to pastjs (a JavaScript representation of PAST); the accompanying interpreter (currently known as "past.js") accomplishes much of the nqp test suite. | 09:37 | ||
| moritz_ | woot | 09:38 | |
| how much is "much"? | |||
| diakopter | a goal of this mini-project is to provide a second backend (the sprixel interpreter on top of a JavaScript VM (say, Google's V8)) for nqp-rx (and thus rakudo-ng). | 09:39 | |
| eh | |||
| mathw | diakopter: cool! | 09:40 | |
| next stop: compile to .NET CLR? | |||
| diakopter | Friday night it was around half; it's regressed some since I wrote the emitter in NQP, but the pace will pick up a lot early this week (in the evenings) now that I have a working JS emitter (written in NQP). Basically I ported my ToJS.pm to NQP | 09:41 | |
| mathw: don't put it past me. | |||
| <groan on "past"> | |||
| mathw: funny you mention it | |||
| actually I do have a version of this interpreter in C# | 09:42 | ||
| mathw | diakopter: it would be a Good Thing | ||
| diakopter | all the code generation stuff would make it essentially require Mono (instead of msft .NET), since Mono has such powerful C# "eval()" features | 09:43 | |
| JSEmitter.pm - perl6.pastebin.com/f7fa83b9d | 09:46 | ||
|
09:47
rgrau joined
|
|||
| moritz_ | not bad | 09:47 | |
| diakopter | past.js (eh, probably about half done, yeah) perl6.pastebin.com/m156a5c85 | 09:48 | |
|
09:52
rjh joined
|
|||
| diakopter | it's speedy and stuff; using cached parses (from nqp --target=pastjs) each test file (that fully succeeds) takes around 0.2s | 09:53 | |
| er, I mean 0.05s. silly arithmetic. | 09:54 | ||
| 'nite all | 09:55 | ||
|
09:57
Su-Shee_ joined
10:02
Su-Shee__ joined,
explorer joined
|
|||
| sjohnson | hi! | 10:05 | |
|
10:10
nickad joined
10:12
ejs1 joined
10:16
nickad left
10:19
andrey joined
|
|||
| andrey | I was just reading pdf book about perl6, and there is a sub called to-json in there | 10:19 | |
| Does that mean you can use hypens in names in perl6? | |||
| moritz_ | andrey: yes, as long as they are between two alphabetic characters | 10:20 | |
| rakudo: my $a-b = 3; say $a-b | |||
| p6eval | rakudo 7347ec: 3 | ||
| andrey | This is so cool | 10:21 | |
| I love you guys | |||
| moritz_ | \\o/ | ||
|
10:24
ejs1 joined,
pnate2 joined
|
|||
| moritz_ | rakudo: sub a($x) { 1+$x}; sub b() { 5 }; say a - b | 10:27 | |
| p6eval | rakudo 7347ec: -4 | ||
| moritz_ | rakudo: sub a($x) { 1+$x}; sub b() { 5 }; say a-b | ||
| p6eval | rakudo 7347ec: Could not find non-existent sub a-bin Main (file src/gen_setting.pm, line 324) | ||
| moritz_ | that's about the only situation I can think of where one needs whitespace for disambiguation | 10:28 | |
| but that's parsed as a(-b()) anyway, which is most likely not what you want | |||
| lunch& | |||
| andrey | rakudo: sub a() { 0 }; sub b() { 5 }; say a-b | 10:32 | |
| p6eval | rakudo 7347ec: Could not find non-existent sub a-bin Main (file src/gen_setting.pm, line 324) | ||
| andrey | rakudo: sub a() { 0 }; sub b() { 5 }; say a- b | ||
| p6eval | rakudo 7347ec: -5 | ||
|
10:34
mhsparks joined
10:36
rfordinal left
10:37
Chillance joined
10:42
iblechbot joined
|
|||
| jnthn | morning | 10:49 | |
| sjohnson | jnthn: hi | ||
| mathw | hi jnthn | 10:52 | |
| jnthn | oh hai mathw :-) | ||
| mathw | is it a rakudo day today? | 10:54 | |
| jnthn | mathw: maybe...just checking if - other than a @future-plan phone meeting or two, I need to do many other things today... | 11:01 | |
| mmm...looks like not. :-) | 11:02 | ||
| mathw | :) | ||
| I unfortunately can't make any attempt to do anything useful for rakudo today as I have an interview tomorrow I need to be prepping for, but I hope to manage something later in the week | 11:03 | ||
| jnthn | Hope the interview goes well. :-) | ||
|
11:05
payload joined
|
|||
| mathw | So do I | 11:05 | |
| They came to me, so there's some hope in that :) | |||
| jnthn | ooh, pmichaud++ did some good bits last night :-) | 11:08 | |
| mathw | :) | ||
| jnthn | ah, yes, that map impl is a cheat! But hey, it's lazy. :-) | 11:10 | |
|
11:26
jaffa8 joined
11:33
SmokeMachine joined
11:49
snearch_ joined
|
|||
| zaslon | loljnthnhazblogged! jnthn++ 'Bringing back the setting, and bug hunting': use.perl.org/~JonathanWorthington/j...4?from=rss | 11:49 | |
| carlin | rakudo: my $_=IO::Socket::INET.new;my $/='746865696E746572736563742E6F7267';.open: _($/),_('3830').Int;.send: _ "474554202F6A20485454502F312E310A486F73743A20{$/}0A0A";say _ .recv.subst(/.*\\n\\n/,'');sub _($_){.subst(/(\\w\\w)/,{chr "0x$0"},:g)} | ||
| p6eval | rakudo 7347ec: invoke() not implemented in class 'Undef'in Main (file <unknown>, line <unknown>) | ||
| carlin | Argh, safe mode :( | 11:50 | |
|
11:52
masak joined
|
|||
| jnthn | lolitsmasak | 11:52 | |
| jnthn won the conciousness race today! | 11:53 | ||
| masak | I think the outcome weekend sleep experiment was fairly conclusive. | ||
| phenny | masak: 05:19Z <Wolfman2000> tell masak more progress...need to do more testing before I figure out how to make this live on my Feather Box for you guys to have fun with it. i35.tinypic.com/wjj8lg.png | ||
| masak | Wolfman2000++ | ||
| heh, light-hearted error messages. :) | 11:54 | ||
| mathw | \\o/ it's masak | 11:57 | |
| masak | after catching up on sleep last night, my body settled back in its previous, undesirable rythm of falling asleep late and waking up late. :/ | 11:58 | |
| jnthn | masak: I seem to be heading exactly the same way. :/ | 11:59 | |
| mathw | I think you're just a late person masak | ||
| some people are | |||
| masak | mathw: well, yes and no. | 12:00 | |
| mathw | I'm an early person | ||
| masak | if left unchecked, my hours tend to get later and later. but I just love actually getting up hours before anyone else. | ||
| mathw | So you need to hire somebody to shoot you with tranquiliser darts at a set time each evening if you're not in bed | 12:01 | |
| masak | that's not a half-bad idea. | ||
| is there such a service? | |||
| mathw | I don't know | 12:02 | |
| jnthn | ...I'm not sure it's a half good one too :-) | ||
| mathw | probably | ||
| masak | :) | ||
| mathw | neither am I | 12:03 | |
|
12:16
rfordinal joined
12:17
envi^home joined,
rfordinal3643 joined
|
|||
| mathw -> aikido | 12:20 | ||
|
12:23
zamolxes joined
12:30
SirKay joined
|
|||
| SirKay | Good morning. | 12:31 | |
| moritz_ | hello | 12:32 | |
| SirKay | Is Perl 6 done yet? | ||
| moritz_ | is any programming language done yet? | ||
| (one that's not dead) | |||
| masak | SirKay: do you have a specific feature in mind? | ||
| SirKay | No, I just mean in general. | 12:33 | |
| Juerd | SirKay: It's usable but certainly not without undocumented surprises :) | ||
| SirKay | Juerd: this is Melchior | ||
| but the nick was registered | |||
| masak | in general, Rakudo is the most implemented Perl 6 implementation. | ||
| Juerd | I figured. | ||
| Juerd invited SirKay here, from magnet #perl | |||
| masak | you can write pretty involved things in Rakudo today. | ||
| Juerd++ | |||
| SirKay | I'm a rather new beginner to Perl. | 12:34 | |
| and to programming. | |||
| Juerd | That wasn't a karma whoring action :) | ||
| masak | Juerd: nevertheless, there's your karma. :) | ||
| Juerd | \\o/ | ||
| moritz_ | SirKay: since we don't have much introductory material for Perl 6 yet, learning Perl 5 will be easier for you | ||
|
12:34
ihrd joined
|
|||
| SirKay | this is about the only non-banal thing I've done as far as programming goes, and even then that's debatable perlmonks.org/?viewmode=public;node_id=584356 | 12:35 | |
|
12:35
mikehh left
|
|||
| moritz_ | SirKay: I can very much recommend the Llama book ("Learning Perl") | 12:35 | |
| SirKay | I got that. I'm gonna try reading through the whole thing before using perl. | ||
| masak | SirKay: I'd recommend playing around with stuff rather than reading through whole things. | ||
| Juerd | SirKay: use.perl.org/~pmichaud/journal/39411 | ||
| masak | or some mixture of the two. | ||
| Juerd would recommend Beginning Perl | 12:36 | ||
| SirKay | so yeah, any comments on my scratchpad there? | ||
| Juerd | You could probably do that in Perl 6 :) | 12:37 | |
| And putting subs after main code is ugly. | 12:38 | ||
| SirKay | while it might be that learning Perl 5 is "easier," on the other hand this sounds like an unfinished project I could get involved in, and thus motivated to actually learn shit | ||
| moritz_ | yes, that's true (and a good attitude :-) | ||
| Juerd | Perl 5 is definitely easier because it has complete documentation, lots of books, and thousands of people who could help you. | ||
| Perl 6 is more interesting and a bigger challenge. | 12:39 | ||
| SirKay | I'm moving the goalposts, Juerd. | ||
| moritz_ | on the other hand we try to be helpful in here | ||
| SirKay | "Gaining competence at Perl 5" was my goal, but now perhaps my goal will be "Learning enough Perl 6 to be useful to the project and to my learning in general." | ||
| masak | SirKay: for what it's worth, I joined on the same grounds, and I'm learning shit all the time. | ||
| moritz_ | we even learn non-shit things here :-) | 12:40 | |
| masak | SirKay: the nice thing about helping in the Perl 6 effort is that you actually get to look 'under the hood' of language design, and even participate if you want. | ||
| SirKay | plus, it will do good for my reputation | ||
| "I helped with Rakudo" | |||
| masak | that remains to be seen. :) | ||
|
12:40
ihrd left
|
|||
| SirKay | indeed masak. | 12:41 | |
| as I was telling Juerd, one of my dearest ambitions is to create my own mini-language. | |||
| masak | SirKay: I was half-joking. :) | ||
| Juerd | Write a grammar and you're almost done :) | ||
| masak | SirKay: then you'll probably like grammars. :) | ||
| and actions. | |||
| SirKay | nice. | ||
| masak | very! | 12:42 | |
| SirKay | Of course, this probably means that everyone else will be able to create languages now, and thus the chances of mine getting seen as useful will decrease, but eh. | ||
| masak | well, not if you create something really useful. :) | ||
| there are still many low-hanging fruits in the Perl 6 ecosystem. | 12:43 | ||
| SirKay | great | ||
| Juerd | SirKay: The main problem there would be that Perl 6 can probably already do anything you can think of ;) | ||
| Perl 6 makes many languages look less useful. :) | |||
| SirKay | How do I get started? That may seem a banal question, but you were all probably experts when you started, and I'm a beginner so I may have a different frame of reference. | ||
| well Juerd the point of a mini language is to do one or a few things VERY well. | 12:44 | ||
| Juerd | Nobody was an expert when she/he started using or working on Perl 6 | ||
| That's the scary part :D | |||
| SirKay | I mean experts at other programming. | ||
| Juerd | Oh :) | ||
| SirKay | I'm a bit of a late bloomer...been interested in years but my own attitude sabotaged my training | ||
| so I know a lot of trivia but very little practical skills to call my own. | |||
| er, for years. | 12:45 | ||
| masak | SirKay: my tip to you is to grab Rakudo and start writing things in it. | ||
| SirKay | got it. | ||
| masak | SirKay: small things first, then successively larger things. | ||
| SirKay | it's got a windows implementation right? | ||
| Juerd | A useful exercise would be to create a side-by-side table of things you know in Perl 5 and how they're written in Perl 6 | ||
| masak | let yourself be driven by interest, and need. | ||
| SirKay: yes. | |||
| moritz_ | SirKay: one of our main developers works on windows | ||
| SirKay | okay. my linux is sorta broken at the moment. | ||
| Juerd | That's what linuxes do when you don't treat them right ;) | ||
| moritz_ | jnthn++ | ||
| SirKay | I somehow broke both python AND perl | ||
| Juerd | That's not Debian or Ubuntu then, is it? :) | 12:46 | |
| SirKay | nope. | ||
| masak | heh. | ||
| SirKay | Fedora. | ||
| moritz_ never broke a Debian really badly | |||
| SirKay | I should just reinstall. | ||
| moritz_ | well, nearly never :-) | ||
| Juerd | moritz_: Oh, I did. | ||
| masak | lunch & | ||
| SirKay | as much as it hurts to give credit to the devil | 12:47 | |
| Juerd | moritz_: Inviting over 100 people you don't know to have accounts is a good way to start | ||
| SirKay | I will say that about windows...it's harder to break things badly like that. | ||
| jnthn isn't fond of Windows on the server, but it works for him on the desktop. | 12:48 | ||
| Juerd | moritz_: Then giving a dozen of them root access helps to build the foundations of bad breakage | ||
| moritz_ | Juerd: :-) | ||
| jnthn | Juerd: Is this like a "how not to"? ;-) | ||
| Juerd | moritz_: And eventually you just leave it unmaintained for a few years and then do a single dist-upgrade. Instant breakage. | ||
| SirKay | so yeah I'll get around to installing Rakudo and playing it. | ||
| Juerd | jnthn: This is how to break Debian really badly :) | ||
| SirKay is going to treat it like a video game. | |||
| moritz_ | SirKay: when I abandoned windows (that was windows 98 SE) it was a breeze to break :-) | ||
| Juerd | At one point feather was broken beyond what I imagined repairable. Fortunately I imagined wrong. | 12:49 | |
| SirKay | ah, I see pmichaud is here. or afk, probably. | ||
| moritz_ | probably not awake yet | 12:50 | |
| SirKay | indeed. | ||
| and if he was, he's probably busy keeping everything together. | |||
| moritz_ | more putting everything back together :-) | ||
| jnthn returns to getting the method call parsing back into shape in ng | 12:52 | ||
| SirKay | Is there any plans to expand the Rakudo commuity? | ||
| moritz_ | SirKay: not really... | 12:54 | |
| we plan to improve rakudo more and more, and at a certain point we'll start to buzz more about it | 12:55 | ||
| and hopefully that will attract other nice people that help us, and/or write libraries | |||
| SirKay | true. quality is better than quantity. | ||
| as nice as perlmonks is, how many people there know what they're doing? I sure as hell don't. | |||
| Su-Shee | I disagree. I would love to have some alpha-stage SSL module instead of none. ;) | 12:56 | |
| moritz_ | depends on what you mean by "know what they're doing" :-) | ||
| Su-Shee: glad you volunteered :-) | |||
| SirKay | moritz: I mean could contribute gainfully to the community. | 12:57 | |
| moritz_ | SirKay: there are various level of contributions. On perlmonks answering questions counts as contributing | ||
| and there are a lot of people who do that, and write good answers | |||
| SirKay | Then I must amend my statement. | ||
| At the very least, giving good answers, which means having good enough knowledge of perl. | 12:58 | ||
|
12:59
ejs2 joined
|
|||
| SirKay | Of course, being barely knowledgeble of the beginnings myself, I am perhaps not qualified to judge the technical and contributional merits of others. | 12:59 | |
| Am I talking too much like an android? | |||
| jnthn | .oO( more like an iPhone, tbh ) |
13:01 | |
| :-) | |||
| moritz_ | SirKay: at perlmonks there's a huge difference between asking in the chatterbox, and asking by writing a Seekers of Perl Wisdom | ||
| SirKay | I see. Pray, enlighten me. | ||
|
13:01
takadonet joined
|
|||
| moritz_ | SirKay: the latter has a much higher chance of getting a very good answer | 13:01 | |
| in the chatterbox your question disappears after 5 minutes, and the number of people seing your question is rather low | 13:02 | ||
| so people prefer that for questions that can be asked and answered quickly | |||
| SirKay | Of course, the number of questions are more limited these days, given how many are turned off by some of the more popular tracts in which it is stated how to "properly" ask a question. | 13:03 | |
| On the one hand, it is true that some do not even try to find the answer themselves first, however, not every improperly asked question is inherently an affront to ones valuable time, and it is said that it might be better to be silent than to be rude, so perhaps it is best to ignore wrong questions. | 13:07 | ||
|
13:08
wollmers joined
|
|||
| SirKay | Plus, some have posited that it is impossible to meet "Before You Ask's" standards, because what it essentially amounts to is "find the answer yourself." | 13:08 | |
| I would find input on the matter most edifying. | 13:09 | ||
| moritz_ | SirKay: I have actually written severl questions for SoPW, and while writing became aware that there are more things I could try, and solved the problem that way | ||
| Juerd learned a lot of Perl by answering questions on Perl Monks | |||
| SirKay | That is to say, input on the matter of the popular tract on properly asking questions. | ||
| moritz_ | it *is* possible, it's just effort | 13:10 | |
| Juerd | SirKay: The workaround is to ask "What is a good way to ..." instead of "How do you ..." | ||
| SirKay | And so that this becomes less awkward for all, I am realizing that sometimes people affect Spock Speak in order to conceal a negative primary emotion. How much arrogance and hubris is allowed in this endeavor, enough so that I do not earn the contempt of my peers, nor endanger the project with negativity? | 13:11 | |
| If I was to express my normal thoughts on the matter of the tract on asking questions, all I said could be summarized this way: ESR is a dick | 13:12 | ||
| But...that would not be constructive. | |||
| Juerd | I wonder if anyone really cares about ESR (supposedly) being a dick, here. | ||
| Do you have to work with him? :) | 13:13 | ||
| SirKay | It is true, I am not required to care. | ||
| And perhaps it would be better if I allowed such people to wallow in their arrogance. | 13:14 | ||
| I suppose I would care less, but for one thing. There are many who say that his coding accomplishments do not measure up to his ego, and looking at his list of software I am inclined to agree with them. | 13:16 | ||
| Naturally, my thought is "If I quit being such a layabout and actually tried to do some programming, even I could do better than that." | 13:17 | ||
| Juerd | Why would you want to? | 13:18 | |
| SirKay | Allow me a minute to consider my reply. | ||
| I suppose my biggest complaint is, he reminds me a lot of myself. | 13:19 | ||
| In a negative way. | |||
| Hmm. | 13:25 | ||
| Does your client not support query windows well> | |||
| moritz_ | SirKay: whom are you talking to? | ||
| SirKay | Juerd | 13:26 | |
| I don't know irssi so perhaps it does not handle query windows well or something. | |||
|
13:26
payload joined
|
|||
| moritz_ | it does | 13:27 | |
| however on freenode quries are disabled by default | |||
| unless you register with freenode | |||
| SirKay | oh. | ||
| >SirKay< In fact, I think I might be affecting a more formal and neutral tone than I usually use, so as to conceal my tendencies towards arrogance and towards self seeking in regards to these projects. | 13:28 | ||
| Have I revealed too much about myself? | 13:33 | ||
| moritz_ | that's for you to decide | 13:34 | |
| people generally prefer discussion Perl 6 here, though :-) | |||
|
13:34
am0c joined
|
|||
| SirKay | I am very interested in Perl 6. I was just trying to clarify my manner of speaking, as I feared I was sounding ridiculous. | 13:35 | |
|
13:36
jrockway left
|
|||
| moritz_ | no need; we're all ridiculous in here | 13:37 | |
| SirKay | okay. | ||
| well then, I'll be upfront. I want to join this project because 1. It might count towards my reputation as a software developer, 2. Judging from what others said, it seems like a greater means towards my goal of making a mini-language, and 3. I would feel like a total badass for doing so | 13:38 | ||
| Perhaps that is a marked departure from my more noble sounding reasoning before, but there you go. | 13:39 | ||
| moritz_ | honesty++ | ||
| welcome to perl 6 SirKay :-) | 13:40 | ||
| SirKay | It's not that those noble reasons are false of course, but these other reasons are just as true. | ||
| Thank you. | |||
|
13:41
fridim_ joined
|
|||
| SirKay | I suppose it would also be good to say that the bad ones out there serve as an example of what not to do and how not to act. | 13:41 | |
| For instance, you won't see me putting some toy program out as a killer app or pretending that some mildly useful code contribution to rakudo means that everyone who uses Rakudo depends on my code | 13:42 | ||
| of course, I might have troubles when it comes time to promulgate my mini-language :p | |||
| software doesn't sell itself, you need good propaganda. | 13:43 | ||
| Hopefully, I will be focused more on the "good" and less on the "propaganda." | 13:44 | ||
| pugs_svn | r29102 | wollmers++ | [t/spec] unfudged RT #64918 | 13:46 | |
| jnthn | Is it me, or should the two bits of grammar in gist.github.com/235975 be equivalent? | ||
| (In terms of what they accept, that is.) | 13:47 | ||
| (assuming you call dotty) | |||
|
13:47
payload1 joined
|
|||
| jnthn | Turns out that the first seems to work...and the second doesn't. And I'm rather perplexed as to why. :-| | 13:47 | |
| moritz_ can't see a real difference | 13:48 | ||
| of course the $<dotty><methodop> capture will be different | |||
| jnthn | Right. :-) | ||
| It'll not have the . | |||
| But that's all, as far as I can see. | |||
| Ouch. :-( | 13:49 | ||
| jnthn thinks he'll have to ask pmichaud on this one. | |||
| I fear a bug somewhere. | |||
|
13:50
jrockway joined
13:51
jrockway joined
13:52
s1n joined
13:58
rfordinal3643 left
14:10
[particle] joined
14:15
rfordinal joined
14:18
payload joined
|
|||
| pmichaud | good morning, #perl6 | 14:26 | |
| SirKay | greetings. | ||
| how are you | |||
| mathw | oh hai pmichaud | 14:27 | |
| jnthn | pmichaud: oh hai...I haz a stuck. | 14:29 | |
| pmichaud | the dotty grammar example? | 14:33 | |
| jnthn | pmichaud: Indeed. | ||
| pmichaud: Am I missing something silly? | 14:34 | ||
| pmichaud | they look like they should be equivalent to me also | ||
| but it wouldn't surprise me if we're missing some silliness | |||
| jnthn | pmichaud: OK. If I use the second one (the . matched in another rule), then method calls won't parse. | ||
| We fail trying to parse core.pm on like, line 8 (the first line with a method call). | |||
| I've spent a while on it and failed to track down any reason why though. :-( | 14:35 | ||
| pmichaud | might want to turn on debugging, then | ||
| in whatever rule calls <dotty>, add <?DEBUG> | |||
| then we'll get a trace to see what happens | 14:36 | ||
| SirKay | pm: I'm new to the community. Do you have any words of wisdom for a newcomer? | ||
| pmichaud | SirKay: "Welcome." :-) | ||
| SirKay | Thank you. | ||
| jnthn | pmichaud: That'd be token postfix:sym<.> { <dotty> <O('%methodop')> } then | ||
| pmichaud | Oh, you wanted something wiser than that. | ||
| jnthn | So token postfix:sym<.> { <?DEBUG> <dotty> <O('%methodop')> } would do it? | ||
| SirKay | I was about to say that I should amend my request, yes. | ||
| pmichaud | jnthn: ah, that explains it (more in a bit) | ||
| jnthn | I feared it might. :-( | 14:37 | |
| pmichaud | SirKay: Find what you enjoy and do that. Optimize for fun (-Ofun). Ask questions liberally -- don't suffer in silence. | ||
| mathw | SirKay: what we can do for you | ||
| SirKay: Listen to pmichaud, he speaks rightly. | |||
| SirKay | Of course. As of now, is there any beginner documentation? Not asking for a whole tutorial, just something to get a good foothold on. | 14:38 | |
| pmichaud | documentation about writing in Perl 6, or ...? | ||
| SirKay | I don't expect to be a master, right now the goal is to become useful enough to gainfully contribute to the project. | ||
| pmichaud | jnthn: with the dot in the <dotty> rule, it currently changes the order in which postfix:sym<.> fires. | ||
| SirKay | as it stands, I'm not even useful in other languages, so. :p | 14:39 | |
| pmichaud | I don't know that it's quite as transitive as we'd like it to be to reach into the <methodop> rule. | ||
| SirKay | yes, documentation about writing in perl 6. | ||
| pmichaud | Although I think it should be. | ||
| SirKay: that's one of the places where we're weakest at the moment. | |||
| SirKay | actually, I did have an idea. | 14:40 | |
| perhaps a web interpreter would help people get their feet wet with rakudo without actually downloading it first. | |||
| jnthn | pmichaud: Do you still want me to get the debug trace, or shall I leave it with you to dig on a little? | ||
| pmichaud | there's not really much in the way of organized tutorials or documentation about writing in perl6, although we're working on some books (github.com/perl6/book). If you wanted to try out the examples there and give feedback, that'd be great | ||
| SirKay | alright, I will give it a look. | ||
| pmichaud | jnthn: is there something else in <postfix> that could be eating the dot? | 14:41 | |
| jnthn: the DEBUG trace is likely to be most instructive. | |||
| jnthn: or, you could try this: | |||
| jnthn | pmichaud: Well, what I pasted was the entire of postfix:sym<.> | 14:42 | |
| pmichaud | postfix:sym<.> { <?[.]> <dotty> <O('%methodop')> } | ||
| which explicitly tells the rule it's looking for a leading dot | |||
| jnthn | ok | ||
| I've currently switched to making my ($a, $b); parse/work - I'll try that when I get back to the methodop parsing. | 14:43 | ||
| SirKay | pm, hypothetically, if I was unable to get access to all the programs listed to build the book, is there any alternative source of guidance? | ||
| pmichaud | SirKay: there's a pdf of the book | ||
| and reading the book sources shouldn't be that difficult (it's POD format) | 14:44 | ||
| if you'll end up doing much Perl, it's worth looking at pod :-) | |||
| SirKay | ah...I looked for the pdf and didn't see it. my bad. | ||
| pmichaud | jnthn: actually, it looks to me as though the prefixes should work out in either case, so I'm not sure that's the problem | 14:45 | |
| jnthn: would it help if I work on dotty parsing? | 14:46 | ||
| jnthn | pmichaud: My gut feeling is that there's something slightly deeper that's wrong somewhere. | 14:47 | |
| SirKay | my bad, I was looking at source and not download | ||
| jnthn | pmichaud: Please do take it. | ||
| pmichaud: If you can just get what we parse now, but arranged more like STD has it, I can happily then take on adding the rest. | 14:48 | ||
| The reason I started off on this track was because I wanted to parse <privop> calls too. | |||
| And that entailed starting to re-organize method call parsing like STD. | |||
| It feels like there's a parsing subtlety/bug that you'll be able to find much faster than I could. | 14:49 | ||
| pmichaud | ah, well it looks like postfix:sym<.> needs to go away anyway | 14:50 | |
| I'll start there. | |||
| jnthn | pmichaud: Well, that too - we need something like token POST eventually, and then termish. | 14:51 | |
| SirKay is perusing the tome now. | |||
| pmichaud | we already have termish | ||
| it's inherited from HLL::Grammar | |||
| jnthn | Oh. | ||
| pmichaud | and I chose to call POST "postish", for consistency | ||
| jnthn | lol | ||
| pmichaud | er, actually "postfixish", I think. | ||
| Of course, Rakudo can override any of these to be what we might want, but at the core they're essentially the same as STD.pm | 14:52 | ||
| jnthn | pmichaud: Do we have a rule for parsing things that are a bit like <rad>? ;-) | ||
| pmichaud | you mean <radint> ? | ||
| jnthn | .oO( mmm... <raddish> |
||
| ) | |||
| :-) | |||
| pmichaud: Anyway, I'll happily leave that bit of re-org in the grammar to you. | 14:53 | ||
| SirKay | was the Rakudo compiler written in Parrot? | ||
| pmichaud | SirKay: a mix of C, Parrot, and Perl 6 | ||
| At the moment, most of it is written in Perl 6 | |||
| SirKay | okay. | ||
| I would also add, one of the most interesting things I've learned about Perl 6 so far is its built in functionality for grammars and actions. | 14:54 | ||
| pmichaud | SirKay: indeed, that is one of Perl 6's killer features | 14:55 | |
| (and it keeps getting more killer all the time :-) | |||
| SirKay | Do you think this means we'll end up seeing a massive influx of minilanguages, once perl6 gains traction among the larger hacking community? | 14:56 | |
| pmichaud | I hope so. :) | ||
| SirKay | well, you can be sure I'll be putting my hat in the ring, making a mini-language is one of my dearest ambitions as a geek. | 14:57 | |
| and it is one of the reasons I'll tough it out with helping with rakudo instead of, say, learning perl5. | |||
|
15:01
kaare joined
|
|||
| pmichaud | .oO( I love it when a refactor works the first time. :-) |
15:01 | |
| mathw | SirKay: Your experience learning Perl 6 without already knowing Perl 5 will be very useful for people writing documentation | ||
| SirKay | It is more like I know very little Perl 5. | 15:02 | |
| I know scalars, arrays, a little hashes, perhaps I can do subs if I have a tutorial in front of me | |||
| but my perl fu is weak, to be sure. | |||
| mathw | that's okay | ||
| pmichaud | those are generally much easier in Perl 6 | ||
| SirKay | it might be better to start fresh this way. | ||
| mathw | those things (particularly subs) are much nicer in Perl 6 | ||
| SirKay | also, though I don't hope to understand most of the content, it seems I can get "The Dragon Book" for like 5 dollars on Amazon. | 15:03 | |
| an earlier edition of it | |||
| pmichaud | the first edition is more useful, imo | ||
| mathw | the dragon book? | ||
| pmichaud | I've been thinking about using the grammar from the first edition as an example of building a compiler using our new toolkit | 15:04 | |
| mathw: en.wikipedia.org/wiki/Dragon_Book_(...r_science) | |||
| SirKay | www.amazon.com/Compilers-Principles...0201100886 | ||
| mathw | pmichaud: ah that one, I've heard of that | ||
| I do have a big fat compiler design textbook on my shelf, but I've not ever read it in great detail | |||
| jnthn | pmichaud: Dares you to call the example language Trogdor. :-) | ||
| mathw | I probably should at some point | ||
| SirKay | pm, perhaps you can take a quick look over this site and see if it is "on the level" createyourproglang.com/ | 15:05 | |
| mathw | but first I have a few hundred pages of The Algorithm Design Manual to swallow | ||
| SirKay will probably name his language after one of the many characters in Bleach. | |||
| pmichaud | jnthn: I just pushed 2aa95b9 -- might be worth looking at the commit to see how I started the refactor. | ||
| (it's incredibly short) | 15:06 | ||
| jnthn | pmichaud: glancing | ||
| Wolfman2000 | SirKay: I would recommend Kon | ||
| pmichaud | SirKay: I hadn't seen that book! Maybe I'll stea^Wborrow some ideas from it | 15:07 | |
| SirKay | Wolfman: I was gonna go for Isane, actually. That means Kon is free for you to use instead :) | ||
| Wolfman2000 | SirKay: haven't wached enough to know who Isane is | ||
| colomon | mathw: I think the Algorithm Design Manual is awesome, but there's no way I'm reading it straight through... | ||
| jnthn | pmichaud: OK, cool. If you can now go on to separate the . into a dottyop rule that calls methodop, we may be set. :-) | ||
| SirKay | pm: ah, so it's a legitimate book and not a scam to lure naive wannabe language designers? | ||
| pmichaud | that's my next step, yes :) | ||
|
15:08
PacoLinux joined
|
|||
| pmichaud | SirKay: can't tell for certain, but at the moment it looks more legit than not | 15:08 | |
| mathw | colomon: it is utterly awesome. Ideally I would read and comprehend it all by tomorrow lunchtime. | ||
| colomon: this is of course not going to happen | |||
| SirKay | okay | ||
| Wolf: I guess you've not made it to the Soul Society arc yet. | |||
| pmichaud tentatively clicks on the "Buy Now" button to see what happens | |||
| goes to PayPal, that's normalish | |||
| Wolfman2000 | SirKay: Only one or two episodes. Adult Swim started changing the times for it back when they started showing the show. | 15:09 | |
| SirKay | my unschooled concerns is that it might have enough convincing sounding compiler design gibberish but won't really offer any true substance | ||
| Wolfman2000 | Then again, I've heard that the Bleach anime wasn't exactly...the most disciplined. Heard they had a filler arcin the middle of an actual story arc | ||
| SirKay | Bleach is a freaking trainwreck. I like it anyway though. | ||
| by the way, I'm not saying that compiler design information is gibberish. | 15:11 | ||
| (however, at my level of understanding, it tends to go way over my head) | |||
| jnthn | pmichaud: woo, I got something done. | 15:12 | |
| > my ($a, $b); $a = 4; $b = 2; say "$a$b"; | |||
| 42 | |||
| Thankfully, with very little code added. :-) | |||
| pmichaud | I guess we need parcel/list assignment soon? | ||
| jnthn | Yeah. | 15:13 | |
| This was kinda a pre-cursor to that. | |||
| pmichaud | does my ($a, $b) end up with ($a, $b) as a result? | ||
| jnthn | pmichaud: What kinda thingy should that decl build? | ||
| SirKay | pm: perhaps you could also give us tips on ways to ensure that the mini language one writes will stand out among the crowd? | ||
| pmichaud | ($a, $b) # :-) | ||
| I'm fine if it gives either a signature or parcel at runtime | 15:14 | ||
| jnthn | It won't give a sig, so I guess the answer is parcel. Thanks. :-) | ||
|
15:14
Psyche^ joined,
KyleHa joined
|
|||
| jnthn | pmichaud: btw, having the decl past and the var past separated out is *so* nice. | 15:15 | |
| pmichaud | indeed, it is. :) | ||
| I'm continually glad we went with the "rewrite" instead of "fixup" approach | |||
| KyleHa | Smells like victory! | ||
| phenny | KyleHa: 14 Nov 21:03Z <moritz_> tell KyleHa re kh-1, I'm pretty sure that Bool::True.name should return 'True'; S12:1762 defines Bool to be an enum, and S12:1649 says .name returns the short name | ||
| KyleHa | Tastes like chicken! | 15:16 | |
| jnthn | pmichaud: Same, painful as it is at times. :-) | ||
| I think the fixup approach woulda been more painful though really. | 15:17 | ||
| pmichaud | I'm certain of it | ||
| also, this gives us a good way to revisit some of the core features | |||
| like lazy lists | |||
|
15:19
kaare_ joined
|
|||
| jnthn | pmichaud: pushed the list decls. | 15:26 | |
| well, whatever you call 'em. | |||
|
15:26
masak joined
|
|||
| jnthn | pmichaud: how's the dotty bits going? | 15:26 | |
| pmichaud | good, have a few refactors in place but just hit the same issue you were seeing | ||
| <?DEBUG>ing now | |||
| jnthn | Aww. | ||
| :-) | |||
| pmichaud | just pushed the changes I have so far | 15:27 | |
| I have <dotty> working as a protoregex | |||
| jnthn | yay | 15:28 | |
| pmichaud | so next is to get <dottyop> to work | ||
| jnthn | :-) | ||
| pmichaud | it does look prefix bugish, though. | 15:29 | |
| pugs_svn | r29103 | kyle++ | [t/spec] Test for RT 66576: .name method on bool values | 15:31 | |
| r29104 | kyle++ | [t/spec] finish unfudge | |||
|
15:31
pmurias joined
|
|||
| KyleHa | I still find that 'tests available' cron job very satisfying. | 15:36 | |
|
15:39
payload joined
15:43
justatheory joined
|
|||
| moritz_ too | 15:46 | ||
| pmichaud | jnthn: you're right, it appears to be a deep bug | 15:57 | |
| jnthn | pmichaud: Ouch. :-( | ||
| pmichaud: Narrowed it down much? | 15:58 | ||
| pmichaud | seems to be that the protoregex token tables are being miscalculated | ||
| when the dot gets moved into the methodop rule, the table thinks it's a length of two instead of one | 15:59 | ||
| oh | |||
| (checking something else) | |||
| jnthn | That is weird. | 16:01 | |
| pmichaud | I should be able to find it now. | 16:02 | |
| jnthn | Yeah | ||
| Hopefully it's not a horribly hard fix. | |||
| pmichaud | "dotty" => Hash { ".1" => PMC 'Sub' { ... } | ||
| } | |||
| pmichaud prepares another burning Parrot | |||
| stupid resizablepmcarrays stringify to the number of elements in the array again | 16:03 | ||
| I would much rather they threw an exception than the existing broken behavior. | |||
| moritz_ | didn't allison call the current behavior a bug? | 16:04 | |
| pmichaud | for MultiSub, yes. | ||
| (and MultiSub isa RPA) | |||
| but not for RPA | |||
| moritz_ | if yes, it's not subject to to deprecation cycle.... | ||
| :( | |||
| pmichaud | it'd be harder to make the case that RPA stringification is a bug | ||
| I can see why some would treat it as a feature | |||
|
16:05
rfordinal joined
16:06
hcchien joined
|
|||
| jnthn | .oO( burning Parrot sketch ) |
16:06 | |
| moritz_ | hbfs.files.wordpress.com/2009/11/perl6-orly.png YaY | 16:08 | |
| (from <hbfs.wordpress.com/2009/11/13/the-p...logo/>) | |||
|
16:09
rfordinal left
|
|||
| jnthn | With a slightly diffrent ordering, they coulda made the contents of the speech bubble syntactily valid... | 16:09 | |
| moritz_ | just make # go first :-) | ||
| jnthn | std: *%*#$@& | 16:10 | |
| p6eval | std 29104: ok 00:01 102m | ||
| jnthn | oh, most the paren | ||
| *missed | |||
| or *lost | |||
| :-) | |||
|
16:13
nihiliad joined
|
|||
| KyleHa | Where's a good test for an 'is also'-related bug? | 16:15 | |
| pmichaud | isn't "is also" gone? | ||
| jnthn | KyleHa: is also doesn't exist any more. | ||
| KyleHa: it's "augment" now. | |||
| KyleHa | Oh. Then that's another bug. 8-) | ||
| I'm glad I asked! | 16:16 | ||
|
16:17
Apocal joined
16:18
iblechbot joined
16:19
cognominal joined,
abbe joined
|
|||
| abbe | hi everyone | 16:19 | |
| moritz_ | hi | 16:20 | |
| KyleHa | Hello abbe! | ||
| abbe is trying to port rakudo's october snapshot to freebsd (amd64). | |||
| hi moritz_ KyleHa | |||
| GCC 4.2.1 is segfaulting for me at pastebay.com/70093 | |||
| moritz_ | abbe: did you try configuring parrot with --optimize? | 16:21 | |
| abbe: there's a known bug in gcc 4.1 where --optimize helps | |||
| jnthn | Wait, GCC segfaults?! | ||
| That's...different. | |||
| moritz_ | different? ok | 16:22 | |
| moritz_ shuts up | |||
| jnthn | moritz_: no no | ||
| abbe | moritz_, --optimize --parrot_is_shared --inline . Yes. | ||
| moritz_ | abbe: have you reproduced it on a different machine? | ||
| jnthn | moritz_: I wasn't saying the known bug wasn't this one. | ||
| moritz_: I was just being all shocked over GCC segfaulting... | |||
| abbe | moritz_, nop, let me try reproducing it on a different box. I'm running Intel Core 2 Duo btw, and the other box I have is also the Core 2 Duo but older one. | 16:23 | |
| jnthn feels an odd sense of achievement at having written C code that makes GCC segfault. | |||
| :-/ | 16:24 | ||
| abbe | lol :-) | ||
| jnthn | bind.c doesn't do anything *that* strange! | ||
| moritz_ | there's still the offside chance that it wasn't you after all, jnthn :-) | ||
| jnthn | pmichaud: Hmm. Our contextuals use "find_dynamic_lex" op. Does that only look down the call stack? | 16:27 | |
| pmichaud | jnthn: yes. | ||
| jnthn | pmichaud: Ah. | ||
| jnthn was trying to get $*OUT and friends in place... | |||
| pmichaud | that code should port pretty much directly from master, I think. | ||
| jnthn | pmichaud: Do we still emit :scope('contextual') and override something, or? | 16:28 | |
| pmichaud | no | ||
| diakopter works on Windows too. well, for the Notepad++ text editor. using samba to linux VMs. | |||
| pmichaud | we don't emit :scope('contextual') | ||
| diakopter | pmichaud, jnthn: g'morning | ||
| jnthn | pmichaud: OK, I'll go peek at how master does it, and import that. | 16:29 | |
| diakopter: morning | |||
| pmichaud | jnthn: contextuals become PAST::Op.new( :name('!find_contextual'), $varname ) | ||
| i.e., they're always looked up using the !find_contextual subroutine | |||
| (NQP doesn't do this because it doesn't want a runtime library) | 16:30 | ||
| jnthn | pmichaud: has I to then do something special with decls? | ||
| diakopter | is this rakudo.. oh, nm | ||
| pmichaud | jnthn: no | ||
| jnthn | ok | ||
| diakopter | I was going to say, nqp-rx uses :scope('consensual') or whatevs | ||
| pmichaud | jnthn: my $*xyz; simply creates lexical '$*xyz', same as for non-contextuals | ||
| jnthn | diakopter: consensual variables? :-) | 16:31 | |
| diakopter | yeah, that too | ||
| statutory declaration. | |||
| jnthn | .oO( Unconsensual assignment to $*OUT ) |
||
| abbe | brb | ||
| diakopter | moritz_: this is what it looked like on Friday (fewer pass now, but all the correct logic is present to make them pass again; I just need to remove the 'logic' it was using to infer the names of PAST::Vars) | 16:36 | |
| perl6.pastebin.com/m7fb506b3 | |||
| jnthn: u may find this interesting: www.coderun.com/cwt | 16:37 | ||
| moritz_ | diakopter: cool | ||
| diakopter | moritz_: (there are 15 or so files truncated from the end) | ||
| (as well as the P6regex ones) | |||
| pmichaud | diakopter: if you'd like to start moving code into the nqp-rx repo, that's good with me | 16:39 | |
| just put it into a separate subdir for now -- perhaps ext/ or something like taht | |||
|
16:39
abbe joined
|
|||
| jnthn | diakopter: oh, that's cute :-) | 16:39 | |
| diakopter | jnthn: (and apparently it actually works) | 16:40 | |
| pmichaud: ok.. I'm not a committer there yet | 16:41 | ||
| I think | |||
| jnthn | hugme: add diakopter to nqp-rx | ||
| pmichaud | (jnthn++ beats me to it) | 16:42 | |
| (hugme ignores jnthn++) | |||
| jnthn | erm...where's hugme? | ||
| pmichaud | hugme hug me | ||
| jnthn | hugme didn't even come to work today! | ||
| pmichaud | :-( | ||
| diakopter: do you have a github account? | |||
| diakopter needs to find my github ssh key; yes | |||
| dalek | p-rx: 2212d9b | pmichaud++ | src/Regex/Cursor-protoregex-peek.pir: Fix bug with calculating subrule prefixes. |
16:43 | |
| p-rx: 2046e24 | pmichaud++ | src/stage0/ (4 files): Update bootstraps with bugfix. |
|||
| jnthn | Yay! pmichaud++ | ||
| pmichaud | diakopter: you're added as a committer now. | ||
| jnthn: well, still have to see if this really fixes the problem :-) | |||
| diakopter | cool | ||
| pmichaud | jnthn: looks like 'yes" | 16:44 | |
| diakopter | now to find some gui/wrapper for git I can actually wrap my head around | ||
| PerlJam | diakopter: man git-gui | ||
| diakopter: or just run "git gui" from a command line. | 16:45 | ||
| diakopter: you may need to install git gui as I'm not sure it comes with all git dists. | |||
| diakopter | aptitude doing its thing | ||
| jnthn | diakopter: btw, don't tell pmichaud that it was me who gave you the nasty hack that plugged the emitter in to make --pastjs work. ;-) | 16:46 | |
| diakopter | sigh. mouse auto-grabbing works in ubuntu9.10 in vmware player 3 with latest vmware tools, but not clipboard sync. :( | ||
| lol. | |||
| pmichaud | does the hack involve changing any of the nqp-rx sources? | 16:47 | |
| diakopter | yeah a bit | ||
| jnthn | pmichaud: Yeah... | ||
| pmichaud | I'd like to review that first, please | ||
| jnthn | pmichaud: I wrote it in 15 mins to unblock diakopter++ | ||
| pmichaud | nqp-rx is still a little fragile | ||
| jnthn | pmichaud: Rather than with the intention of it being committed. | ||
| diakopter | well, the Makefile.in | ||
| jnthn | pmichaud: It's almost certainly Not Right. | ||
| pmichaud: I actually didn't understand the makefile. | |||
| pmichaud | maybe start work in a branch, then | ||
| diakopter | ok, yeah | ||
| jnthn | pmichaud: That is, I wasn't sure how to say "only compile this thing in the final stage" without creating an empty file... | 16:48 | |
| (for the earlier stages) | |||
| pmichaud | jnthn: I suspect it should be done as a separate library. | ||
| as opposed to being part of core nqp | |||
| jnthn | pmichaud: Yeah. | ||
| pmichaud: I guess as well, it's sort-of a "bootstrap NQP on v8" throw-away. | 16:49 | ||
| That is, eventually we probably won't need the target. | |||
|
16:55
IllvilJa joined
16:58
KyleHa1 joined
|
|||
| diakopter | jnthn: right, since v8/js would be hosting all the codegen steps | 16:59 | |
| pmichaud | jnthn: okay, just pushed the fix that gets the dot out of <dottyop>. When I get back from lunch I'll finish up methodop. | 17:00 | |
| bbiah | |||
|
17:01
KyleHa2 joined
|
|||
| jnthn | pmichaud: Excellent, thanks. | 17:02 | |
| pmichaud: I'm working on getting IO back in place. | |||
| (in the setting) | |||
| abbe | moritz_, yes, I'm able to reproduce it on my other notebook. | 17:03 | |
| jnthn | diakopter: Right, I think that's the endgoal (as far as NQP on v8 goes). I guess the tricky bit is figuring out how to organize the repo. I guess we'd want src/NQP/*.pm for example to be shared, but the earlier stages in the bootstrap to be specific. | 17:04 | |
| abbe | if I remove all -W switches except -W and -Wall it compiles fine. | ||
| jnthn | abbe: That's...odd. But a workaround at lesat... | 17:05 | |
| *least | |||
| abbe | yes, any ideas how to narrow down problem further ? | ||
| jnthn | abbe: Well, I guess try adding back flags until you get to the segfault... | 17:06 | |
| abbe: But also, see if later versions of gcc have the issue. | |||
| abbe | okay | ||
|
17:06
abra joined
|
|||
| jnthn | (if that isn't the latest) | 17:06 | |
| Probably not so much point reporting a segfault to the gcc team if they already patched it... | 17:07 | ||
| abbe | jnthn, i don't have any other GCC versions...freebsd has gcc 4.2.1 in its base and has no plans to update GCC in base system due to gplv3 | ||
| jnthn | abbe: Ah. | ||
| abbe: OK, I'm not sure what the normal done thing in these situations is. | |||
|
17:08
payload joined
|
|||
| jnthn | abbe: I mean, in a sense, it's not really a bug in Rakudo, but at the same time it'd be nice to be able to compile on FreeBSD without hacking the makefile to remove flags. | 17:08 | |
| abbe | hi carlin. | ||
| yes, right. | |||
|
17:09
cdarroch joined
|
|||
| jnthn | abbe: Thing is, the flags are just given to us by parrot_config... | 17:10 | |
|
17:10
TopoMorto joined
|
|||
| abbe | okay, so if a fix is needed that needs to be in parrot. | 17:11 | |
| s/that/,then that/ | |||
| jnthn | Well, I don't know. It feels odd asking Parrot to change too. | ||
| In that Parrot itself builds OK with that flag, and it's not really their bug either, and they like to have lots of warnings enabled to maintain code quality... | 17:12 | ||
| abbe: I know that bind.c does emit more warnings than it should on compile. | |||
| abbe | okay | 17:13 | |
| jnthn | abbe: It's on my todo list to try and fix that. It's just possible that fixing that will cause the build to be OK. | ||
| That'd be the "we get lucky" answer. :-) | |||
| abbe | okay jnthn . anyone else want to test the port on freebsd ? | 17:15 | |
| abbe points everyone to the shar containing the ports at pastebay.com/70102 . | 17:20 | ||
| SirKay | well I just ordered the dragon book. | 17:31 | |
| My guess is that I'll just have to stare blindly at the pages until some of it starts making sense. | |||
|
17:46
SmokeMachine joined
17:47
desertm4x joined
17:49
jeremiah_ joined,
cotto_work joined
17:52
stephenlb joined
|
|||
| moritz_ | ng: my $answer = 1; my @x = 41, (42 unless $answer), 43; say @x.perl | 17:54 | |
| p6eval | ng f67d94: (41, 1, 43) | ||
| moritz_ | ng: my $answer = 5; my @x = 41, (42 unless $answer), 43; say @x.perl | ||
| p6eval | ng f67d94: (41, 5, 43) | ||
| colomon | rakudo; | 17:55 | |
| moritz_ | fixing that to return Nil instead of $answer would bring back t/spec/S04-statement-modifiers/unless.t | ||
| colomon | rakudo: my $answer = 5; my @x = 41, (42 unless $answer), 43; say @x.perl | ||
| p6eval | rakudo 7347ec: [41, 43] | ||
|
17:56
nihiliad joined
|
|||
| jnthn | pmichaud: say and print now are handled in the setting again, cheat for that gone. We need to re-instate the deref of the invocant again though. | 17:57 | |
| Not sure what the cleanest way to do that is. | |||
| colomon is forced to git pull ng and recompile yet again.... | 18:00 | ||
| moritz_ | and once again compiling the setting becomes the slowest step of that whole process | 18:01 | |
| jnthn | *nod* | ||
| By now, it probably might be the biggest thing we do compile though. | 18:02 | ||
|
18:02
RonOreck joined
18:05
payload joined
|
|||
| colomon | Errr.. where is Rat.Int implemented in master? | 18:07 | |
| moritz_ | is it implemented? :-) | 18:08 | |
| colomon | There's a non-skipped test for it in rat.t... | ||
| jnthn | rakudo: (1/2).Int | ||
| p6eval | rakudo 7347ec: ( no output ) | ||
| colomon | errr... that's wacky. | 18:09 | |
| rakudo: say (1/2).Int | |||
| p6eval | rakudo 7347ec: 0 | ||
| colomon | rakudo: say (5/4).Int | ||
| p6eval | rakudo 7347ec: 1 | ||
| moritz_ | rakudo: say (-5/4).INIT | ||
| rakudo: say (-5/4).INT | |||
| p6eval | rakudo 7347ec: Method 'INIT' not found for invocant of class 'Rat'in Main (file src/gen_setting.pm, line 324) | ||
| rakudo 7347ec: Method 'INT' not found for invocant of class 'Rat'in Main (file src/gen_setting.pm, line 324) | |||
| moritz_ | ng: say (-5/4).INT | ||
| p6eval | ng f67d94: Method 'INT' not found for invocant of class 'Rat'current instr.: '_block14' pc 29 (EVAL_1:0) | ||
| jnthn | colomon: I'd expect somewhere in Rat. | ||
| moritz_ | ng: say (-5/4).Int | ||
| p6eval | ng f67d94: Method 'Int' not found for invocant of class 'Rat'current instr.: '_block14' pc 29 (EVAL_1:0) | ||
| moritz_ | rakudo: say (-5/4).Int | 18:10 | |
| jnthn | colomon: Since it's not an "is also" class... | ||
| colomon | jnthn: tried there. also Int.pm | ||
| p6eval | rakudo 7347ec: -1 | ||
| jnthn | colomon: Oh. | ||
| :S | |||
| colomon | perhaps it's some sort of Any.Int? | ||
| moritz_ | probably | ||
| and that coerces to Num first | |||
| pmichaud | back again | ||
| moritz_ | "there and back again, a pmichaud's tale" :-) | 18:11 | |
| PerlJam | moritz_: are you trying to say that pmichaud is short and has hairy feet? | ||
| moritz_ | PerlJam: nope, that was your interpretation :-) | 18:13 | |
| pmichaud | 17:57 <jnthn> pmichaud: say and print now are handled in the setting again, cheat for that gone. We need to re-instate the deref of the invocant again though. | ||
| jnthn: ...deref of the invocant? | |||
| colomon | Okay, just implementing Rat.Int the obvious way rather than poking around trying to figure out how master does it. | 18:14 | |
| pmichaud works on getting if/unless modifiers to properly return Nil | |||
|
18:14
kidd joined
|
|||
| jnthn | pmichaud: to remove it from any Perl6Scalar | 18:15 | |
| pmichaud: Otherwise, if it's e.g. a PIO, we choke. | |||
| pmichaud | jnthn: shouldn't method invocation already be doing that? | ||
| jnthn | pmichaud: We should be doing it, we were in master, we're not in ng. | ||
| pmichaud: Look in actions.pm for iirc deref_invocant | 18:16 | ||
| pmichaud: Just figured since you're in dotty and doing those bits, it's something you could easily slot in. | 18:17 | ||
| pmichaud | oh, yes, I can probably do that. | ||
| jnthn | Thanks...I inserted an exlicit descalarref into IO.print just to make that work for now. | ||
| colomon | 760 passing tests in rat.t now | ||
| pmichaud | pmichaud@orange:~/ng$ ./perl6 | 18:18 | |
| > my $answer = 1; my @x = 41, (42 unless $answer), 43; say @x.perl | |||
| (41, 43) | |||
| lambdabot | <no location info>: parse error on input `=' | ||
| jnthn | ng: token { \\x0a$ } | 18:19 | |
| pmichaud | fix for unless/if pushed | ||
| p6eval | ng ecb7d7: Unable to parse blockoid, couldn't find final '}' at line 1current instr.: 'perl6;Regex;Cursor;FAILGOAL' pc 1630 (src/stage0/Regex-s0.pir:888) | ||
| jnthn | ng: token foo { \\x0a$ } | ||
| p6eval | ng ecb7d7: ( no output ) | ||
| pmichaud | we don't do anonymous tokens/regexes yet | 18:20 | |
|
18:21
KyleHa joined
|
|||
| jnthn | pmichaud: I was trying to fathom why the this bails... | 18:21 | |
| ng: my $str; if $str ~~ /\\x0a$/ { } | |||
| p6eval | ng ecb7d7: Confused at line 1, near "if $str ~~"current instr.: 'perl6;HLL;Grammar;panic' pc 448 (src/stage0/HLL-s0.pir:300) | ||
| jnthn | I suspect regex parsing not really done yet. | ||
| pmichaud | ...because we don't do anonymous tokens/regexes yet? ;-) | ||
| jnthn | :-P | 18:22 | |
| I'm bringing back the bits of Any-str.pm that will Just Work. | |||
| pmichaud | and thus far I _still_ haven't run "make spectest" in the ng branch yet. :-) | 18:24 | |
| moritz_ | pmichaud: you should - it doesn't take long :-) | ||
| pmichaud | lol | ||
| colomon | git push | ||
| d'oh, wrong window! | |||
| ng: say <a b c>[2] | 18:25 | ||
| p6eval | ng ecb7d7: c  | ||
| pmichaud | that looks wrongish. | ||
| ng: say 'c' | |||
| p6eval | ng ecb7d7: c  | ||
| pmichaud | so does that. | ||
| colomon | is it the trailing space? | 18:26 | |
| pmichaud | yes | ||
| jnthn: ...I don't suppose there's a way to get method dispatch to automatically descalarref the invocant.... | 18:29 | ||
| jnthn | pmichaud: no | ||
| pmichaud: Remember that this is really for the benefit of foreign objects, which don't go through our method dispatcher. | 18:30 | ||
| pmichaud | okay, thinking. | ||
| moritz_ | pmichaud: remember to re-enable t/spec/S04-statement-modifiers/unless.t if it passes now | 18:31 | |
| have to run, would do it myself otherwise | |||
| pmichaud | moritz_: okay, thanks for the reminder | ||
|
18:32
patspam1 joined
|
|||
| colomon | hmmm... did I somehow get knocked off of #perl6? | 18:44 | |
| jnthn | colomon: You appear to still be here. :-) | 18:45 | |
|
18:46
chromatic joined
|
|||
| colomon | did a paste come through from me? or is it nopaste that's broken? | 18:46 | |
| jnthn | colomon: Didn't see the paste... | 18:47 | |
| colomon | will try again with gist. | ||
| <script src="gist.github.com/236201.js"></script> | 18:48 | ||
| take two: gist.github.com/236201 | |||
| There we go: the list of things needed to get rat.t fully working again. | |||
| jnthn | colomon: Cool, thanks! | 18:49 | |
| colomon | I believe that (not counting skipped tests) there are about 748 passing tests in rat.t. | ||
| jnthn | colomon: I can probably give you some of those. | ||
| colomon | \\o/ | 18:50 | |
| I could probably give myself some as well, getting trig running again ought to be doable for a mere mortal, I think. | |||
| list assignment would be very groovy... | 18:51 | ||
| jnthn | colomon: I think that you mostly need to bring back a lot of Num.pir. | ||
| colomon: Let me check a bit. | |||
| colomon | k | ||
| I should do some $work anyway. :) | 18:52 | ||
| jnthn | By the way, if anyone wants to run the "see if we have any newly passing tests" script, they'll likely find we have got some more. | ||
| Well, may find anyway... | 18:53 | ||
| I was thinking Str.uc tests and others should work again now...but uc.t fails for another reason | 18:54 | ||
| (since .foo doesn't do $_.foo yet) | |||
| KyleHa | Is building ng the same as building master, or do I still have to go over to nqp-rx and do parrot-config and make install and stuff? | ||
| jnthn | KyleHa: Should now be the same. | ||
| KyleHa | Awesome. | ||
| jnthn | colomon: oh | 18:55 | |
| colomon: Yeah, the problem is with the $r!from-radians | |||
| colomon: When pmichaud++ is finished with the dispatch refactors, I'll add private method calls back in. | 18:56 | ||
| colomon | oh, I see. | ||
| cool. | 18:57 | ||
| jnthn | colomon: The other thing that's cool, if we can do it, is trying to use the pir::op forms rather than Q:PIR | ||
| colomon | ? | ||
| jnthn | For example | ||
| our Num multi method exp() { | |||
| my $r = Q:PIR { | |||
| $N0 = self | |||
| $N1 = exp $N0 | |||
| %r = box $N1 | |||
| }; | |||
| } | |||
| Could just become | 18:58 | ||
| our Num multi method exp() { | |||
| pir::box__PN(pir::exp__NN(self)) | |||
| } | |||
| pmichaud | don't even need the pir::box | ||
| pir::exp__NN(self) | |||
| jnthn | oh. | ||
| :-) | |||
| pmichaud | PAST already knows how to box | ||
| (and when) | 18:59 | ||
| colomon | oooo, that is sweet | ||
| pmichaud | and while it doesn't make too much difference in this case, pir::exp__Nn might be slightly better | ||
|
18:59
cdarroch joined
|
|||
| pmichaud | just pushed automatic invocant dereferencing | 19:00 | |
| colomon | what's the difference between n and N? | ||
| pmichaud | N requires a Parrot num register | 19:01 | |
| n allows either a num register or a valid num constant | |||
| jnthn | colomon: Anyway, as you can see, this is (1) shorter and (2) there's work by diakopter++ on laying the foundations of trying to get Rakudo running on v8 too, and the pir:: forms will be much easier to deal with for people wanting to write alternative backends than having to write a PIR parser or hand-translate things using Q:PIR { ... }. | ||
| I'm generally replacing Q:PIR with pir::op forms when bringing things back into the new setting. | |||
| pmichaud | +1 | ||
| colomon | Sure. And I think that's a level of translation I could do pretty easily myself. | 19:02 | |
| jnthn | colomon++ | ||
| pmichaud: How much are you still playing with the method dispatch bits? | |||
| pmichaud | jnthn: finishing it up now | ||
| colomon | jnthn: did you do exp just now (or before) or was it just an example? | ||
| jnthn | pmichaud: I'm getting hungry, so it's shopping time... | 19:03 | |
|
19:03
xenoterracide joined
|
|||
| jnthn | pmichaud: When I get back, I'll add privop, hopefully. | 19:03 | |
| pmichaud: Provided you're done with what you want to do in that area. | |||
| colomon: It was just an example | |||
| colomon: Untested too. ;-) | |||
| colomon | jnthn: the best kind | ||
| pmichaud | jnthn: I'll add privop parsing | ||
| jnthn | colomon: But it's akin to many of the others I've been doing. | ||
| pmichaud | anything special needed for the action? | 19:04 | |
| jnthn | pmichaud: You know what to do in the action? | ||
| pmichaud: First cut: check that you have a PAST::Op that is a callmethod, and then prepend '!' onto the name. | |||
| pmichaud | I can do that match. | ||
| *much | 19:05 | ||
| you can take it from there | |||
| jnthn | pmichaud: Cool. | ||
| pmichaud | (when you get back) | ||
| jnthn | pmichaud: Doing that first cut will unblock colomon++ | ||
| Or should. | |||
| KyleHa | Wow, update_passing_test_data was remarkably silent. | ||
| jnthn | KyleHa: aww. | ||
| KyleHa: Completely silent? | |||
| KyleHa | jnthn: It had this to say: [S ] ( 4/4 ) t/spec/S16-io/say.t | 19:06 | |
| So to speak. | |||
| jnthn | KyleHa: Unfortunately, a lot of the tests I think we could pass fail for reasons other than the thing we're testing. | ||
| KyleHa: Oh, we can have say.t back? :-) | |||
| Well, one win. | |||
| OK, I'm going to the store...hunger strikes! | |||
|
19:06
desertm4x joined
|
|||
| KyleHa | Well, say.t passed some tests, but didn't run all tests. | 19:06 | |
| jnthn | oh | 19:07 | |
| :-( | |||
| ok, bbs | |||
|
19:10
Jeffrey_ joined
|
|||
| abbe | jnthn, I asked one of my friend to build on 7.2 with same GCC version but 2 x Quad Xeon CPUs and there it got built fine with no issues. | 19:11 | |
|
19:13
rfordinal joined,
Jeffrey_ left
19:15
[1]jaffa8 joined
19:16
desertm4x_ joined
|
|||
| KyleHa | This bug is fixed now: rt.perl.org/rt3/Ticket/Display.html?id=66714 | 19:19 | |
| I went back to the version where it was reported and confirmed the breakage, and I've seen that it's not that way in 'master' today. | 19:20 | ||
| Actually, I think I'll just write this in the ticket. | 19:21 | ||
| pmichaud | private method calls added in 0b0c163 (just pushed) | 19:27 | |
|
19:27
lichtkind joined
|
|||
| colomon | pmichaud++ | 19:28 | |
|
19:32
jan_ joined,
dingdong joined
19:39
kidd joined
|
|||
| arnsholt | After the discussion about Set yesterday I've come up with some things I think should be added to the spec | 19:42 | |
| First of all, set algebra should be there. Union, intersection and difference | 19:43 | ||
| Complement is kind of hard to do though (unless we take Set::Scalar's approach) | 19:44 | ||
| Also, it should be possible to parametrise the type, and how equality of elements is determined should definitely be specced | |||
| colomon | arnsholt: union, intersection, and difference sound right to me. | 19:45 | |
| arnsholt | Yeah, those are the really important ones | ||
| pmichaud | even though I once argued in favor of it, I now wonder if Set really deserves to be spec. | ||
| arnsholt | That's a very good thought as well | 19:46 | |
| colomon | "Method '!to-radians' not found for invocant of class 'Num'" | 19:47 | |
| arnsholt | Perhaps more a standard library class than a setting class | 19:48 | |
| colomon | Any!to-radians is defined, but Num cannot see it? | ||
|
19:48
rfordinal joined
|
|||
| pmichaud | colomon: what's the calling expression? | 19:48 | |
| colomon | pir::sin__Nn(self!to-radians($base)) | 19:49 | |
| That's in Num.sin | |||
| pmichaud | looks like private method definition isn't working | ||
| 14769:.sub "to-radians" :anon :subid("339_1258400908.59046") :outer("285_1258400908.59046") | |||
| that should be "!to-radians" | |||
| colomon | Simple fix? | 19:50 | |
| pmichaud | I don't know. | ||
| I'd have to look at the method code. | |||
| jnthn back | |||
| pmichaud: Yes, it should be !to-radians | 19:51 | ||
| I was sure I'd put that in... :-S | |||
| if $<specials> && ~$<specials>[0] eq '!' { $name := '!' ~ $name; } | 19:52 | ||
| $<specials>=[<[ ! ^ ]>?] | |||
| hmm | |||
| pmichaud | don't need the separate test for $<specials> | ||
| unless it's quantified somehow | |||
| jnthn | oh | ||
| Yeah | 19:53 | ||
| it always matches, it's the atom inside that's quantified. | |||
| duh. | |||
| fixing | |||
| pmichaud | ng: say 3, 4 | ||
| p6eval | ng 0b0c16: 3 4  | ||
| pmichaud | wrong | ||
| jnthn | I dunno where these extra spaces are magically coming from. :-| | 19:54 | |
| ng: say "oh", "hai" | |||
| p6eval | ng 0b0c16: oh hai  | ||
| pmichaud | it's stringifying the list instead of printing the elements | ||
| jnthn | oh | 19:55 | |
| Well that sucks. | |||
| I thought I'd fixed slurpies... | |||
| ng: sub foo(*@x) { say +@x }; foo(1); foo(1,2,3,4); | |||
| p6eval | ng 0b0c16: 1 4  | ||
| jnthn | hm | ||
| pmichaud | what kind of object is the slurpy? | 19:56 | |
| probably wants to be a Parcel | |||
| it at least needs to be marked as 'flatten' | |||
| jnthn | It's an Array, and it's slurpy, I thought. | 19:57 | |
| oh | |||
| PerlJam | Why would there be a space at the end for a stringified list? | ||
| jnthn | I wonder if it's getting wrapped up... | ||
| pmichaud | ng: sub foo(*@x) { say @x.PARROT }; foo(1) | ||
| p6eval | ng 0b0c16: Array  | ||
| jnthn | PerlJam: It's between the thingy and the "\\n" | ||
| pmichaud | that Array needs to be marked as flattening | ||
| PerlJam | but the "\\n" isn't part of the list | ||
| pmichaud | PerlJam: it is internally | ||
| jnthn | PerlJam: see impl of say | ||
| PerlJam | okay. | 19:58 | |
| pmichaud | PerlJam: say is implemented as self.print(@list, "\\n") | ||
| jnthn | pmichaud: I thought I was, but now it occurs to me that we may mark it, and then wrap it in a readonly container. | ||
| pmichaud | @x is a readonly container? | ||
| lambdabot | Maybe you meant: . ? @ v | ||
| jnthn | I'd expect more to be broken in that case though. | ||
|
19:59
lisppaste3 joined
|
|||
| jnthn | pmichaud: Just the usual way that we put stuff in an ObjectRef. | 19:59 | |
| pmichaud | I wouldn't think an ObjectRef is needed there, though. | ||
| @x is normally an Array, straight out | |||
| lambdabot | Maybe you meant: . ? @ v | ||
| jnthn | pmichaud: yeah, but... | 20:00 | |
| sub foo(@bar) { @bar = 1,2,3; }; my @x; foo(@x); # should fail | |||
| pmichaud | I'm talking about slurpy arrays, primarily | ||
| in the case of | 20:01 | ||
| jnthn | pmichaud: OK, but there's no difference at the level of "let's wrap it up for readonlyness". | ||
| pmichaud: That may be wrong. | |||
|
20:01
masak joined
|
|||
| pmichaud | yes, there is | 20:01 | |
| jnthn | But it's the way it is now. | ||
| pmichaud | sub foo(*@bar) { ... }; my @x; foo(@x); | ||
| note that @bar is not a read-only bind of @x | |||
| jnthn | No, it's not | ||
| pmichaud | I don't care if @bar is readonly or not, it just doesn't need to be an ObjectRef | 20:02 | |
| jnthn | I don't have it that way either. :-) | ||
| My point is that after we've made the slurpy, at the moment we're still ending up then putting it in an ObjectRef. | |||
| We probably don't need to do that though. | |||
| pmichaud | okay | ||
| jnthn | That may be part of the issue. | ||
| pmichaud | right, that's what I said. :) | ||
| 19:59 <pmichaud> I wouldn't think an ObjectRef is needed there, though. | |||
| jnthn | I am curious though... | ||
| ng: my @x = 1,2,3; sub foo(@y) { say (@x, 4, 5).elems }; foo(@x) | 20:03 | ||
| p6eval | ng 0b0c16: 5  | ||
| jnthn | Oh, good, we get that right... | ||
|
20:03
[synth] joined
|
|||
| pmichaud | ng: my @x = 1,2,3; sub foo(@y) { say (@x, 4, 5).elems }; foo(@x) | 20:04 | |
| p6eval | ng 0b0c16: 5  | ||
| pmichaud | ng: my @x = 1,2,3; sub foo(@y) { say (@y, 4, 5).elems }; foo(@x) | ||
| p6eval | ng 0b0c16: 3  | ||
| pmichaud | no we don't. | ||
| in that case @y needs to be an ObjectRef, and it needs to be marked 'flatten' | |||
|
20:05
szabgab joined
|
|||
| pmichaud | (it's marked 'flatten' by virtue of its sigil) | 20:05 | |
| note that this *is* correct, however | |||
| ng: my @x = 1,2,3; sub foo($y) { say ($y, 4, 5).elems }; foo(@x) | |||
| p6eval | ng 0b0c16: 3  | ||
| jnthn | Right | ||
| pmichaud: Yeah, my test was bull. Damm. :-( | |||
| pmichaud: So we do that that wrong. | |||
| pmichaud: On the up side, that means I know how to fix the slurpy too. :-) | 20:06 | ||
| pmichaud | basically, anything with a '@' or '%' sigil needs to have the 'flatten' property on it | ||
| jnthn | Right. The binder is probably behind there. | ||
| pmichaud | anyway, I'm failing tests in 05-var.t because of the say/print errors. | ||
| jnthn | masak: Hey, the preconference meeting at the BPW is designed for insomniacs! | ||
|
20:06
kst joined
|
|||
| masak | jnthn: :) | 20:06 | |
| jnthn | "they are open untill 01:00" | 20:07 | |
| :-) | |||
| masak | heh, lightweights. :) | ||
| jnthn | lol | ||
| pmichaud: That's...really odd. It passes here. | 20:08 | ||
| pmichaud | checking. | ||
| masak | jnthn: how goes the slidescrafting? I've started digging into mine in earnest. | ||
| pmichaud | okay, whatever is causing my failure, that's not it | ||
| but we are getting | |||
| ok 4 | 20:09 | ||
| ok 5 | |||
| ok 6 | |||
| (extra spaces in the output) | |||
| jnthn | yeah | ||
| maybe our harnesses care different amounts about whitespace. | |||
| masak wonders what the TAP standard says about whitespace | |||
| jnthn | colomon: fixed for privates pushed | 20:10 | |
| colomon | \\o/ | ||
| jnthn | masak: I got lots done on my .pm group one last night. | ||
| masak | jnthn: nice. | ||
| jnthn | And tweaked one or two slides in my main BPW one. | ||
| masak: I want to put a little extra Perl 6 context into the start of that talk though. | 20:11 | ||
| masak: Just to set the stage. | |||
| masak | oh? | ||
| sounds interesting. | |||
| itz | hmmm my first perl6 program now works in ng since the scope fix :D | 20:12 | |
| jnthn | masak: Well, I tend to spend a couple of minutes at the start of normally my first talk at a conference just giving a tiny bit of background on Perl 6 and what I work on within it. | ||
| masak | ah. yes. | ||
| jnthn | masak: Though it probably needs a little...reframing... :-) | ||
| masak | that's a good idea. | 20:13 | |
| PerlJam | jnthn: this time you'll tell them how you've broken it for the past month or so? :) | ||
| colomon | \\o/ -- working Num.sin! | ||
| sin(Num) blows up horribly, on the other hand. | |||
| Null PMC access in find_method('new') | 20:14 | ||
| masak | food & | ||
| jnthn | PerlJam: :-P | ||
| PerlJam: It wasn't me who broke it! :-P | |||
| I just egged pmichaud++ on. :-) | |||
| PerlJam | heh | ||
| pmichaud | true 'nuff, I'm the principal breaker here. | 20:15 | |
| PerlJam | jnthn: ah, then you'll tell them how you've been trying for a month or so to fix all the things that pmichaud broke! ;) | ||
| pmichaud | My +2 sword of refactoring turned into a -1 sledgehammer of breakage :) | ||
| on the other hand, from the pieces we now have lazy lists! :) | 20:16 | ||
| and dynamic metaops! | |||
| colomon | lazy! dynamic! | 20:17 | |
| pmichaud | shiny! new! improved! | 20:18 | |
| moritz_ | enterprise ready | ||
| PerlJam wonders if he should start a betting pool on when ng will be merged. | |||
| pmichaud | if you wish to blow up the entrerprise, then sure! | 20:19 | |
| *enterprise | |||
| colomon | so we're some sort of Romulans or Klingons, then? | ||
| pmichaud | PerlJam: do I get to bed? | ||
| *bet? | |||
| pmichaud is pretty sure he could win the pool. | |||
| jnthn | PerlJam: Hey, I like that phrasing. ;-) | ||
| pmichaud | colomon: (romulans / klingons) we already have "phasers!" | 20:20 | |
| colomon: I guess we really need disruptors somewhere. | |||
| pmichaud is reminded to head to the store at 00h01 tonight to pick up a present for his wife. :-) | |||
| PerlJam | pmichaud: you have to hit the mark +/- 1 hour. Still think you can win? If so ... what's your bet and how much are you betting? ;) | ||
| PacoLinux | Slack_is_Hot: si tienes alguna pega con perl, larry esta en #perl6 de freenode con el nick TimToady | 20:21 | |
| sorry, wrong # | |||
| pmichaud | PerlJam: I think I could probably get within an hour of being correct, yes. :) | ||
| jnthn | pmichaud: You know how you created the branch? I think out of sharing the load, I should take the task of merging it. Just to be fair and all that lot. | ||
| ;-) | |||
| pmichaud | jnthn: :-) | ||
| PerlJam | heh | 20:22 | |
| jnthn noms his dinner | |||
| PerlJam | btw, someone emailed me that they couldn't get to rakudo.org (specifically, rakudo.org/how-to-get-rakudo) Is anyone else having problems? (I got to it just fine) | 20:23 | |
| colomon | errr... 01-tap fails all of the sudden?! | ||
| mdxi | PerlJam: i can see it fine from Atlanta | 20:24 | |
| colomon | ah, just needed to perl Configure.pl again. | 20:25 | |
| PerlJam | This person appears to be in Boulder CO | ||
| colomon | jnthn, pmichaud: I've just pushed the new sin. Can you guys try to figure out why sin(1.0e0) gives such a weird error? | 20:27 | |
| (When you get the chance, no rush, of course.) | 20:28 | ||
| takadonet | PerlJam: Works from Winnipeg | 20:29 | |
| moritz_ | works from Germany too | ||
| pmichaud | ....why do we have both multi sub declarations and protos, ooc? | ||
| moritz_ | historical reasons | 20:30 | |
| the multis came first | |||
| PerlJam | pmichaud: redundancy doesn't hurt does it? | ||
| moritz_ | and when the new dispatch was able to bind positional by names, we needed the protos | ||
| colomon | you mean why are they in the language, or why are they in the trig code? | ||
| pmichaud | why are they in the trig code | ||
| moritz_ | but you can s/multi // if you want | 20:31 | |
| pmichaud | I'm more curious about why we need to definitions of the same thing. | ||
| *two | |||
| colomon | I was told to do it that way, honest. | ||
| pmichaud | colomon: I believe you -- I'm just asking for the reason. :) | ||
| colomon | I was told the proto was required to make the multi work. | 20:32 | |
| Give me a minute and I'll search the IRC logs for it.... | |||
| pmichaud | I don't think that should be the case. | ||
| moritz_ | pmichaud: it should | ||
| pmichaud: at least the "call positionals by name" part of it | |||
| pmichaud: since multi dispatch considers arity first, without a proto that won't work | 20:33 | ||
| pmichaud | calling positionals by name shouldn't have anything to do with proto or multi | ||
| moritz_ | jnthn++ explained differently | ||
| colomon | Note the comment # jnthn says that we should have both the multi sub declaration and the proto. | ||
| pmichaud | colomon: I saw the comment, yes | ||
| my question was for jnthn++ as much as anything else :) | |||
| colomon | :) | ||
| lichtkind | pmichaud: or should i send email? | 20:34 | |
| colomon | I checked that in 10/19/2009, so... | ||
| pmichaud | lichtkind: you can ask here if you want | ||
| moritz_ | irclog.perlgeek.de/perl6/2009-10-28#i_1657656 | ||
| but that's nto much more than what I said before | 20:35 | ||
| t/spec/S02-names_and_variables/contextual.t might be a LHF | |||
| pmichaud | I don't understand "multi dispatch doesn't account for named arguments", then | ||
| PerlJam finds it an odd coincidence that both his and his daughter's birthdays were mentioned within seconds of each other just now | |||
| moritz_ | it fails only the last test | ||
| sub foo() { $*VAR }; | 20:36 | ||
| colomon | irclog.perlgeek.de/perl6/2009-10-19#i_1618686 | ||
| moritz_ | ok !foo().defined, 'contextual $*VAR is undef'; | ||
| Method 'defined' not found for invocant of class 'Undef' | |||
| pmichaud | I need to get a good handle on what "undef" really means in Perl 6 these days | ||
| right now it's because the !FAIL internal method just returns a Parrot undef argument | |||
| er, Parrot Undef PMC | |||
| lichtkind | pmichaud: i did :) | 20:37 | |
| but thanks | |||
| moritz_ | pmichaud: that's a Perl 6 limitations - named parameters don't participate in multi dispatch, except as constraints | ||
| lichtkind | pmichaud: its mainly about the protoregexes for now | ||
| pmichaud | lichtkind: I didn't see your question, sorry. | 20:38 | |
| moritz_ | re undef, I think the most general undef is the Object type object - not sure if that should be returned here | ||
| lichtkind | pmichaud: more detailed why there where so important and if there where other similiar showstopper | ||
| moritz_ | why they are important: see perlgeek.de/en/article/mutable-gram...for-perl-6 | ||
| pmichaud | lichtkind: that's likely to be my grant report, which I expect to write tonight. | ||
| lichtkind | pmichaud: great so no more harassments from me | 20:39 | |
| pmichaud: hows it going with rokudo * would also interest me | |||
| pmichaud | lichtkind: part of that will be in the report also, but see also my latest use.perl post from last week | 20:40 | |
| so, if I'm reading what jnthn++ was saying, if I define a sub as multi sub ($a, $b) { ... } then there's no way for me to invoke that sub with named arguments? | |||
| I have to explicitly write a proto? | 20:41 | ||
| TimToady | the idea is that a proto would rewrite all the multis in its scope to positional | ||
| pmichaud | I'm having trouble understanding that statement as well. :-( | 20:42 | |
| multi sub ($a, $b) { ... } looks positional to me already | |||
| TimToady | it would rewrite the *calls* | 20:43 | |
| pmichaud | oh, that's what you meant by aggressive inlining | ||
| TimToady | er | ||
| colomon | (Having reread) I thought proto provided a landing point for non-positional calls? | ||
| TimToady | doesn't have to inline | ||
| just has to turn foo(:a(1), :b(2)) into foo(1,2) | 20:44 | ||
| I suppose it can do that at run-time, at some price in overhead | 20:45 | ||
| pmichaud | what we have now in Rakudo: | ||
| TimToady | but I was thinking of it as compile-time rewrite | ||
| pmichaud | our multi sub sin($x, $base = 'radians') { $x.sin($base) | ||
| } | |||
| our proto sin($x, $base = 'radians') { sin($x, $base) | |||
| } | |||
| jnthn | back | ||
| oh no, not this discussion again! | |||
| pmichaud | TimToady: is that the intended mechanism for doing this? | 20:46 | |
| jnthn | Yes, we need the proto. Yes, in the future as an optimization we can re-write it. :-) | ||
|
20:46
zamolxes joined
|
|||
| pmichaud | i.e., is this what we expect to be doing? | 20:46 | |
| TimToady | well, if the proto is agressively inlined, it comes out to what I just said :) | ||
| jnthn backlogs in case there's anything new... | |||
| No, I think not. | 20:47 | ||
| pmichaud: The issue is that the mapping of nameds to positionals is handled by the binder. | |||
| pmichaud | jnthn: I understand that. | ||
| jnthn | pmichaud: The multi-dispathcer only considers positional arguments. | ||
| TimToady | I do worry that it won't be the correct semantics unless we always dispatch to the proto first on named args | ||
| pmichaud | jnthn: I understand that (now) | ||
| jnthn: my question is whether the Perl 6 result is indeed the result we intended. | 20:48 | ||
| TimToady | since we might have intermixed positionals too | ||
| pmichaud | jnthn: i.e., that every multi sub ends up requiring a proto definition as well. | ||
| TimToady | and simply ignoring the nameds will cause it potentially to pick the wrong multi | ||
| pmichaud | TimToady: yes, I'm seeing that (bad) possibility also | ||
| jnthn | pmichaud: Well, only those that want to be able to be called by named parameters too. | 20:49 | |
| TimToady | well, pugs always generated a proto if it was missing | ||
| pmichaud | TimToady: I'm not sure how it would know exactly what to generate, but okay. :-| | ||
| TimToady | if we rely on proto redispatch, then we could perhaps always dispatch there first on any names args | ||
| jnthn | TimToady: Yes, but...nobody has ever spec'd that. | 20:50 | |
| TimToady | nobody is a good friend of mine :) | ||
| jnthn | To me it's like, "Pugs did this magical thing...somehow" :-) | ||
| pmichaud | anyway, I don't wish to bog down on this at the moment -- I'll just take a continuation on it for now and leave a note that "This smells. --Pm" | ||
| jnthn | BTW | 20:51 | |
| The proto is *also* the fallback. | |||
| If nothing else matches. | |||
| colomon | Seems to me the best argument for proto is that there's no particular reason the different multis should have the same positional names... | ||
| jnthn | Not that this means you can put your default impl in there though, since then the typed based dispatch will do the wrong thing. D'oh. | 20:52 | |
| I guess my question is - yes, a proto provides you with a way to handle the named args, but should our built-ins all expect to be callable that way? | 20:53 | ||
| I'm far from convinced the answer is yes. | |||
| pmichaud | jnthn: it bugs me a bit more that we can do named arguments to non-multis easily but named arguments to multis requires an extra thing called a 'proto' | ||
| I can see a lot of people getting bit by that. | 20:54 | ||
| i.e., they'll have an only sub that they convert to a multi and -poof- lots of breakage. | |||
| jnthn | I can see a lot more people getting bit by not realizing that when they write a sub foo($lol) { }, the name of their parameter just became a part of their API. | ||
| And then they change that and then users of their module start complaining. | 20:55 | ||
| pmichaud | (it may indeed be that this is unavoidable... it just seems like a ready point for confusion) | ||
| jnthn: yes, that too. | |||
| moritz_ | well, we have to educate our users at some point ;-) | ||
| jnthn | :-) | ||
| pmichaud: The only alternative is making the multi-dispatcher aware of named arguments. | 20:56 | ||
| pmichaud | ...or remove the ability to fill positionals by name by default. | ||
| jnthn | pmichaud: And that's marked as "not for 6.0.0" at the moment. | ||
| Well, yes, or that. | |||
| Well, if you don't write a proto and your sub is multi, you just did. ;-) | 20:57 | ||
| moritz_ | :?$thing # either positional or named :-) | ||
| jnthn | On the trig ones, I really, really don't see the use case for having them callable by name though. | ||
| moritz_ | $thing # just positional | ||
| pmichaud | ...maybe filling positionals by name occurs *only* if you provide a proto? | ||
| moritz_ | :$thing # just named | ||
| pmichaud: and an only sub is its own proto | |||
| jnthn | Seriously, who wants to call sin($foo) as sin(:x($foo)) ? | ||
| moritz_ | and we're at status quo | ||
| pmichaud | moritz_: I'm thinking that maybe you have to explicitly do something to make an only sub its own proto | 20:58 | |
| colomon | jnthn: I like named for atan2. | ||
| jnthn | colomon: I can see the benefit there, yes. | ||
| moritz_ | jnthn: it's a bit contrived for an unary function, but for multiple args it's different | ||
| colomon | So you don't have to remember the arguments are order y, x... | ||
| jnthn | For cases where it makes sense != all the time, though... | ||
| moritz_: Yeah, but many of the trig ones are unary, no? | |||
| moritz_ | substr(:from(3), :len(6), :replace<foo>) | ||
| jnthn: the trigs yes | |||
| colomon | sin($x, $base) | 20:59 | |
| pmichaud | jnthn: yes, but we're also trying to avoid exceptions ("can i call this function with named arguments or no?") | ||
| jnthn | pmichaud: True. | ||
| colomon | Is there a reason proto doesn't just automatically re-call the function? | 21:00 | |
| jnthn | I agree that having the proto as well feels like extra boilerplate. But I think it's important to see it in context. | ||
| It's a lot better to write one proto for all of your multi-candidates | |||
| colomon | our proto sin($x, $base = 'radians') { sin($x, $base) } | ||
| pmichaud | colomon: that would be along the lines of "automatically generated proto" | ||
| colomon | versus | ||
| our proto sin($x, $base = 'radians'); | |||
| jnthn | Than it would be to go and write all the extra multi-variatns. | ||
| To provide the same interface. | 21:01 | ||
| pmichaud: Auto-generating a proto may in some cases be quite do-able...it's just spec'ing the algorithm and when it applies. | |||
| (And it's a lot easier than making the multi-dispatcher aware of named args...) | 21:02 | ||
| I'm quite open to looking in to that option. | |||
| pmichaud | well, if it's a fallback, I suspect the dwim algorithm could be allowed to be a little expensive in its analysis | 21:03 | |
| moritz_ | can it run at compile time? | ||
| TimToady | we do, I think, have to detangle proto from default though | ||
| pmichaud | although that argues for letting the compiler do the analysis at compile time | ||
| PerlJam | TimToady: +1 | ||
| [particle] | every time a developer says 'just', a monkey writing perfectly good shakespeare makes a typo | 21:04 | |
| moritz_ | writing a default is easy | 21:05 | |
| jnthn | TimToady: 'is default' and proto already have different semantics. | ||
| moritz_ | multi foo(*@, *%) { ... } | ||
| jnthn | Well, there's that way too. :-) | ||
| moritz_ | +1 to detangle default and proto | 21:06 | |
| TimToady | unless callsame works inside a proto to explicitly redispatch, and then anything after callsame is the default | ||
| moritz_ | jnthn: s/default/fallback/ for you then | ||
| TimToady | or nextsame, which might fail | ||
| PerlJam | moritz_: maybe that could be shortened to just (oops!) multi foo (*) { ... } :-) | ||
| moritz_ pats the poor monkey | |||
| PerlJam: nope, that one is already taken | |||
| TimToady | well, it wouldn't exactly be nextsame | ||
| moritz_ | it's short for (Any $ where *) | 21:07 | |
| TimToady | next-with-nameds-remapped-to-positional | ||
| PerlJam | moritz_: add more * to suit then :) | ||
| pmichaud | the real question is knowing how to remap names to positionals, though. | ||
| jnthn | TimToady: Since we already would have exhausted the candidates to reach the proto, that won't work really (unless we special case it). | ||
| moritz_ | :-) | ||
| jnthn | pmichaud: Well, if you just re-dispatch post-bind, it works... | 21:08 | |
| (That's why/how it works today.) | |||
| TimToady | jnthn: in this model you always call the proto first as if it were an only | ||
| pmichaud | jnthn: one would need the explicit proto still, though? | ||
| TimToady | and the proto does the actual multidispatch | ||
| jnthn | TimToady: Oh, you're proposing we always call the proto? | ||
| TimToady: That's going to be nasty. | 21:09 | ||
| TimToady | in the abstract | ||
| moritz_ | and it sounds more expensive | ||
| jnthn | TimToady: Then the multi-dispatcher is going to have to look at its caller. | ||
| TimToady: And say "was it the proto? was it the proto for this sub?" | |||
| That's going to be fragile. | |||
| TimToady | the candidate list doesn't contain the proto | ||
| jnthn | You've missed the point. | 21:10 | |
|
21:10
abbe joined
|
|||
| jnthn | If the proto calls the multi-dispatcher... | 21:10 | |
| ...then it's gotta know that we're calling from the proto. | |||
| colomon | pmichaud: I take it what started this discussion was discovering proto was the problem with sin(1e0) in ng? At least, I just commented out the proto and now it works... | ||
| jnthn | And that it should look at the candidate list. | ||
| TimToady | it doesn't have to call the multi-dispatcher the same way it was called | ||
| PerlJam | jnthn: why does it need to know we're calling from the proto? | ||
| jnthn | PerlJam: Because how does it know not to re-call the proto? | 21:11 | |
| TimToady | in this model all multi-dispatch is a special dispatch that only happens inside a proto | ||
| pmichaud | colomon: more generally that I hadn't seen any of the earlier discussions about why proto was needed | ||
| colomon: and this is the first time I've really looked at Num.pm since the protos were added | |||
| colomon: anyway, the sin(1e0) problem appears to be that get_hll_global 'Signature' is returning PMCNULL | 21:12 | ||
|
21:12
lichtkind joined
|
|||
| diakopter 's head spins off | 21:12 | ||
| jnthn | TimToady: Hmm... | ||
| pmichaud | and the 'new' that fails is a call to 'new' on the (null) Signature type object | ||
| KyleHa | Er? If there's 'proto foo' and a bunch of other 'foo', and 'foo' is called, that call goes straight to the proto, which goes looking for a multi? Then if it finds a multi, return what that returned, otherwise go ahead and execute the rest of the proto. I'll be surprised if I've understood this... | ||
| jnthn | TimToady: So we introduce some specail way of saying "run the dispatch algorithm on these args"? | ||
| PerlJam | jnthn: Does the dispatcher use the out-of-signature-band information provided by traits applied to a subroutine? Could it? | 21:13 | |
| moritz_ | KyleHa: we're discussing various proposal, so not everything said here is current spec | ||
| jnthn | PerlJam: The dispatcher is aware of the subroutines that it could call, not just their signatures. | 21:14 | |
| pmichaud | gist.github.com/236316 # trace of "say sin(1e0)" in ng | ||
| KyleHa | moritz_: Then I'd be pretty lucky if the half I'm paying attention to is any of the spec. | ||
| pmichaud | line #189 is where the problem arises | ||
| jnthn | pmichaud: I know what that'll be. | 21:15 | |
| pmichaud | jnthn: figured you would :) | ||
| jnthn | pmichaud: Well, I guess maybe two problems. | ||
| pmichaud goes back to fixing 'return' | |||
| diakopter 's head spins back on | |||
| jnthn | pmichaud: The first is that it's actually looking to call Signature.perl | ||
| pmichaud: Because it wants to display the signatures of the things it failed to dispatch to. | 21:16 | ||
| pmichaud | heh | ||
| so, LTA error message then :) | |||
| jnthn | pmichaud: The reason the dispatch failed is I suspect an issue with protos. :-) | ||
| Well, NYI error message. ;-) | |||
| NY*R*I error message. ;-) | |||
| pmichaud | NYI is often LTA if it doesn't let us know that the problem is NYI :-) | ||
| colomon | jnthn: protos seem likely to be the blame, as removing the proto makes sin(1e0) work... | ||
| pmichaud | I speak, of course, as the undisputed champion of code that produces LTA error messages. :-) | 21:17 | |
| jnthn | colomon: Yes, I very much suspect that we need to fix those. | ||
| Well | |||
| "we" :-) | |||
| jnthn goes to take a look | |||
| TimToady | we might be able to unify the concepts of &foo and proto foo | 21:20 | |
| jnthn | TimToady: Not quite sure I follow... | 21:21 | |
| &foo = reference to the thing we get when we call foo(), no? | |||
| TimToady | if &foo is supposed to represent the current candidate list anyway | 21:22 | |
| jnthn | Well, only sort of ish. | ||
| TimToady | and if proto is effectively doing the same | ||
| jnthn | foo() really goes looking for &foo and then invokes it. | ||
| TimToady | yes, and maybe that's always the proto | 21:23 | |
| where proto == only | |||
| jnthn | To me, &foo() === foo() | ||
| Which is 1) lookup the symbol. 2) invoke. | |||
|
21:23
masak joined
|
|||
| TimToady | a proto just knows how to call the secret multi dispatcher on its list of candidates | 21:23 | |
| and it doesn't do so by saying foo() | 21:24 | ||
| but by saying, implicitly or explicitly, nextsame or some such | |||
| masak | rakudo: class A { has $.foo = 42 }; say A.new.foo | ||
| TimToady | or something dedicated to multi dispatch | 21:25 | |
| p6eval | rakudo 7347ec: ( no output ) | ||
| masak | rakudo: class A { has $.foo = 42; submethod BUILD() {} }; say A.new.foo | ||
| jnthn | TimToady: But then we'd make every single mult-dispatch a re-dispatch, vis the proto. | ||
| p6eval | rakudo 7347ec: ( no output ) | ||
| TimToady | which is why it's an abstraction | ||
| jnthn | *via | ||
| masak | locally, the former says '42' and the latter says 'Use of uninitialized value'. | ||
| jnthn | masak: Yes, known. | 21:26 | |
| TimToady | (read, agressively inlined) | ||
| masak | jnthn: thought so. just checking. | ||
| jnthn | TimToady: Yes, but the current situation = performs fine before somebody goes and writes an optimizer. | ||
| TimToady | until someone uses named args | ||
| PerlJam | TimToady: would that change the results of $obj.*meth() ? | ||
| TimToady | n | ||
| PerlJam | or $obj.?meth() | ||
| TimToady | no | ||
| jnthn | TimToady: Yes, but that isn't the common case. | 21:27 | |
| 1 + 2 which maps to &infix:<+> is the common case. | |||
| PerlJam | so the mention of a proto means that there's always going to be an extra, "hidden" dispatch ? | ||
| TimToady | which basically means you've already got the optimized code path written | 21:28 | |
| you "just" have to pessimize it if there are named args | |||
| jnthn | TimToady: Not if you're proposing we have to care about a proto up front. | ||
| TimToady: Unless you're saying also "you can write a proto but we reserve the right to completely ignore it unless any named args are passed" | |||
| TimToady | maybe you only have to care if there's a named arg | ||
| that would depend on how much we enforce via the proto signature | 21:29 | ||
| if it's just positional names, then yes | |||
| jnthn | Well, that gets us back to current situation, apart from we call the proto right off if there's named args. | ||
| TimToady | we can ignore the proto in the absence of nameds | ||
| which was one of my suggestions above :) | 21:30 | ||
| jnthn | Rather than looking down the candidate list first. | ||
| Yes but if you do that, you can't also do auto-generation of a proto, probably. | |||
| Otherwise you'll break the mechanism that trait dispatchers hang off (which is required named args). | |||
| TimToady | why not, if their positionals are consistently named? | ||
| jnthn | TimToady: That bothers me a little though. Somebody comes along and implemetns an extra multi-variant, and uses a different name. Suddenly, all named argument calls break. | 21:31 | |
| TimToady | then shame on them :) | ||
| pmichaud | "Doctor, it really hurts a lot when I do that." | 21:32 | |
| TimToady | if they write an explicit proto, they can't do that | ||
| PerlJam | jnthn: wait ... the calls break? Surely that's compile-time detectable? | ||
| pmichaud | afk, kid pickup | ||
| jnthn | TimToady: Well again, I've asked this one before: does writing a proto mean all the multi candidates have to follow the same pattern? | 21:33 | |
| TimToady | that was the original idea | ||
| jnthn | Is it an error to write proto foo($a, $b) { } and then multi foo($a, $b, $c) { } | ||
| TimToady | promising that the first arg would always be named 'x' and the second 'y' | 21:34 | |
| jnthn | It woulda been nice if the spec had been vaguely clear about that. | ||
| TimToady | jnthn: probably, since one could write *@ to allow more positionals | ||
| jnthn | Wouldn't that also be an error? Or? | 21:35 | |
| TimToady | a *@ in the proto sig | ||
| jnthn | Oh, OK. | ||
| That still means we need to define sig acceptability. | 21:36 | ||
| colomon | that still strikes me as very anti-social to the sub namespace. | ||
| PerlJam | so the proto *must* have *@ or *% to allow more positionals or named in the multis? | ||
| TimToady | well, with the call-proto-first model, it's simply binding first to the proto's sig | ||
| and it seems a very straightforward semantics in that case | 21:37 | ||
| jnthn | TimToady: Well not really. | ||
| TimToady | it binds as an only | ||
| jnthn | foo(1,2) will bind to proto foo($a, $b) {...} just as well as proto foo($x, $y) { ... } | ||
| TimToady | remaps the capture, and the callmulti redispatches with the remapped capture | 21:38 | |
| jnthn | It doesn't help us enforce that the signatures of any of the multi-candidates are "good enough". | ||
| TimToady | well, maybe the names of $a and $b don't matter at that point | ||
| er, $x and $y, I mean | 21:39 | ||
| that is, multis wouldn't care what names the positionals use once they're remapped | |||
| that's almost a feature | 21:40 | ||
| well, and you can't have multiple protos in the same scope | |||
| it's like only that way | 21:41 | ||
| it seems very simple, but my brane is in sideways today due to viral biohazards, so it could be I'm not thinking of something | 21:42 | ||
| jnthn | I think I'd need to see this all spec'd out in detail to really be able to work it out much further. | ||
| TimToady | in fact, I should probably crawl back into bed now... | ||
| jnthn | TimToady: Aye. Get well soon! | 21:43 | |
| pmichaud | jnthn: fixing proto in ng might be a priority. | 21:44 | |
| I seem to be unable to implement a proper 'return' | |||
| jnthn | pmichaud: I pretty much have a fix... | ||
| pmichaud: Oh? | |||
| pmichaud | unless I take out the stuff that colomon++ has been putting in | ||
| (no, I don't completely understand why that would be the case.) | |||
| jnthn | OK...I'm half way through doing this fix...being distracted by a friend telling me about a car crash she got into... :-/ | 21:45 | |
| pmichaud | okay, as long as it's "today-ish" I'm fine. | ||
| I can skip the 'return' implementation for a bit -- and have another kid pickup in 10 | 21:46 | ||
| (fixing 'return' will likely win us a fair number of spectests, though) | 21:47 | ||
| masak | \\o/ | ||
| moritz_ predicts that eval() will give us more | |||
| that's because there's a dies_ok or eval_dies_ok in *many* test files | 21:48 | ||
| pmichaud | I can work on eval, also. | ||
| masak | as long as we're aiming for at least the same amount of passing tests as before, I'm fine. :) | ||
| pmichaud | we are. | ||
| I might merge back with slightly fewer, but I'd like us to have at least 80% of the tests we had before | 21:49 | ||
| masak | what's the current percentage? | ||
| pmichaud | I have no idea. I suspect less than 10% | ||
| moritz_ | <1% | ||
| masak | ah, ok. | ||
| pmichaud | but they should start appearing in largish chunks soon | 21:50 | |
| masak | I don't wish to sound like a pessimist, but it sounds like I'll be releasing an unmerged master on Thursday. :) | ||
| moritz_ | eval, return, regexes, num stuff | ||
| pmichaud | masak: that'd be my guess, yes. | ||
| masak | oh well. | ||
| at least that'll make the release easy. :) | 21:51 | ||
| moritz_ | rakudo: say 100 * 162 / 32614 | ||
| p6eval | rakudo 7347ec: 0.496719200343411 | ||
| moritz_ | <0.5% even | ||
| pmichaud | ng: say 100 * 162 / 32614 | ||
| p6eval | ng a127e9: 0.496719200343411  | ||
| pmichaud | at least they agree :-) | ||
| afk, another kid pickup | 21:52 | ||
| colomon | ng: say (100 * 162 / 32614).perl; | 21:54 | |
| p6eval | ng a127e9: 8100/16307  | ||
| colomon | \\o/ | 21:55 | |
| jnthn | back | 21:56 | |
| (well, wasn't away, but was distracted) | |||
| masak: I think you'll be releasing master unmerged, yes. | |||
| But man will the December release be full of goodies. | 21:57 | ||
| Appropraite really. ;-) | |||
| masak | heh :) | ||
| jnthn | masak: At least the changelog will be easy too. | 21:58 | |
| oh gah...my cuppa tea... | |||
| jnthn hopes it's still vaguely warm... | |||
| masak | indeed. it would have been cool to release after the ng merge, but on the other hand it would have been quite a bit of work. :) | 21:59 | |
| and I have a presentation to procrastinate. | |||
| jnthn | Yeah! Get procrastinating! | ||
| masak | I had a good procrastination session earlier today. | 22:00 | |
| will probably have one before I fall asleep, too. | |||
| jnthn | ng: say ?42 | ||
| p6eval | ng a127e9: 1  | ||
| masak | what's that extra space doing there? | 22:01 | |
| jnthn | bug | ||
| masak | yes, but how? | ||
| jnthn | Incredible cunning. | ||
| masak: Actually, just a bug in slurpies. | 22:02 | ||
| Tene | I prefer to believe the first answer. | 22:04 | |
| masak | me too. | ||
| Tene | btw, hi masak | 22:05 | |
| masak | OH HAI TENE | ||
| Tene | Today is my first day back at work after two weeks out sick. | ||
| It's... kinda weird. | |||
| masak | welcome back. | ||
| Tene | All these STUDENTS keep asking me QUESTIONS. It's pretty lame. What are they even doing here? | 22:06 | |
| masak | :) | ||
| jnthn | say is print($thing, "\\n") and the flatten flag ain't being set properly when we bind that list to print, so when we iterate over it, we don't iterate over the strings. So it's like we strinfigied ["1", "\\n"] | ||
| masak | Tene: I had hoped to get the pastebin finished (and the final Web.pm weekly blog post written) before the BPW presentation sucked me in. alas, I didn't. | ||
| jnthn: excellent explanation. I see it now. | 22:07 | ||
| Tene | masak: Depending on what the gf plans for tonight, I might be able to do it for you. | ||
| jnthn | masak: I wish I'd seen it so quick. ;-) | ||
| Tene | I'm not hopeful, though. SO TIRED. I might just nap instead. | ||
| masak | jnthn: you didn't have the benefit of having it explained to you. :) | 22:08 | |
| jnthn | Tene: Best to take the time and get properly recovered. :-) | ||
| masak | Tene: I'd rather you took a look at Squerl and mysql :) | ||
| Tene: but no pressure. take your time. | |||
| jnthn | hehe | ||
| Tene | masak: I thought that mysql worked fine... | ||
| jnthn | Yeah Tene, write some code! :-) | ||
| masak | Tene: I won't have time to get back to Wbe.pm in a week anyway. | ||
| Tene: I'm sure mysql works fine, but it needs to get woven into Squerl. | |||
| jnthn | colomon: fixed proto. | ||
| masak | Tene: probably not a big commit. | 22:09 | |
| jnthn | colomon: make testing. | ||
| Tene | Ah. | ||
| Okay, I can do that. | |||
| Maybe. | |||
| masak | I don't remember exactly how it looks in source, but there should be a class hierarchy and stuff. | 22:10 | |
| Tene | argh, they want me to teach them AGAIN. | ||
| SO DEMANDING | |||
| masak | it should be pretty obvious where things fit in. unless I cheated. | ||
| Tene | afk | ||
| masak | :) | ||
| moritz_ | who's doing the book release on Friday? | 22:11 | |
| jnthn | colomon: pushed | 22:13 | |
| masak | moritz_: I don't think I will be able to, knowing my procrastination skills. I'll gladly do the next release. | 22:15 | |
| moritz_ looks in PerlJam's direction | |||
| jnthn | masak: You planning to procrastinate some on the Friday? :-) | 22:16 | |
| masak | jnthn: experience tells me I will, plan or not. | 22:17 | |
| jnthn | ;-) | ||
| masak | I'll probably be enjoying Riga the most on the Sunday... | ||
| jnthn | masak: Given of Friday and Sunday, Friday is the day forecast without the rain, you may want to spare an hour or two to look around. ;-) | ||
| masak | I'll keep that in mind. | 22:18 | |
| jnthn | Of course, weather forecasts are all lies anyway. :-) | ||
| masak | propaganda. | ||
| pmichaud | "Christmas." | ||
.oO( wonder if we could get Rakudo Star's critical tasks knocked off by Dec 25) |
22:19 | ||
| jnthn | What'll be left after merging ng? | 22:20 | |
| dalek | ok: 3a6390a | moritz++ | docs/release-guide.pod: [release] masak++ volunteered for the Christmas release |
||
| arnsholt | I just had a similar idea. A special edition Rakudo release for christmas =) | ||
| jnthn | Non-crappy repl? | ||
| pmichaud | oh, I think repl will be done well before then. | ||
| masak | moritz_: :) | ||
| pmichaud | if I do eval tonight/tomorrow, repl may well follow. | ||
| jnthn | say "a", "b" | 22:21 | |
| ng: say "a", "b" | |||
| p6eval | ng 0c9d94: a b  | ||
| jnthn | ab here | ||
| so I guess fixed | |||
| pmichaud: ohbtw proto fixed too | |||
| masak | pmichaud++ # here's some advance karma for the REPL. | ||
| jnthn | pmichaud: You're wanting to do eval in a way other than just bringing back the one we already have? | ||
| pmichaud | yes. | ||
| jnthn | OK. I won't bring back our existing one then. | ||
| moritz_ | ng: say 'a', 'b' | 22:22 | |
| p6eval | ng 0c9d94: a b  | ||
| jnthn | fail :-) | ||
| pmichaud | I want a more generic way for HLL compilers to compile inside of a lexical scope | ||
| (which includes Rakudo) | |||
| that's needed in order to do REPL, too. | |||
| jnthn | OK. | ||
| Yeah, it's just a case of whether you want to do it within ng or not. :-) | |||
| I noticed we have "more input" support suggested in STD too. | 22:23 | ||
| That could be cool. | |||
| sub foo() { | |||
| moritz_ | jnthn: didn't you know, this is the "fix everything" branch :-) | ||
| pmichaud | yes | ||
| oh, fix repl is definitely in ng branch | |||
| jnthn | and then it prompts for more, not whines. | ||
| :-) | |||
| Ah, OK | |||
| I hadn't realized that was in too. ;-) | |||
| jnthn doesn't feel so bad about doing "fix metamodel" in ng branch too now. :-) | |||
| pmichaud | oh, I suppose it could wait until after rename to 'master' | 22:24 | |
| but I think getting repl/eval right is worthwhile | |||
| jnthn | Oh, for sure. | ||
| Well, eval isn't wrong now, but it'd be nice if it was done more cleanly and in a way that worked corss-HLL. | |||
| pmichaud | well, I don't like the way eval pokes PAST::Block structures into the @?BLOCK array | 22:25 | |
| I'm thinking that outer scope should be a contextual | |||
| jnthn | Yeah, that's the main evil. | ||
| pmichaud | actually, I've been thinking that @BLOCK should be done with contextuals, too. | 22:26 | |
| jnthn | It'd make reentrancy easier. | ||
| OK, I fixed protos, I fixed flattening...what now? :-) | |||
| pmichaud | ....beer? | 22:27 | |
| got your presentation ready for this weekend? | |||
| maybe .*, .?, and friends? | |||
| jnthn | :-) | ||
| oh! | |||
| I wanted to do .foo | |||
| pmichaud | oh yes, that would be very useful | 22:28 | |
| jnthn | (as in, calls on $_) | ||
| pmichaud | right | ||
| go for that | |||
| jnthn | We were exploding early into a few tests on that. | ||
| jnthn checks STD | |||
| oh, beautiful. | |||
| token term:dotty { <dotty> } | |||
| :-D | |||
.oO( compilers are SO easier than websites ) |
|||
| pmichaud | lol | 22:29 | |
| "trivial" | |||
| Juerd | Websites would be easier if you got better specs to develop them to. | ||
| jnthn | Juerd: Right. That's my main whine about them. :-) | 22:30 | |
| Well, it's not. | |||
| Fighting the browsers is. | |||
| So it's not so much better specs, so much as specs that were implemented. :-) | |||
| Juerd | Oh, right, I forgot. | 22:32 | |
| Browsers suck. That is: IE really sucks. | |||
| jnthn | Yes, it does tend to be the stand out sucker. | ||
| arnsholt | The really annoying thing is that they don't agree | 22:34 | |
| diakopter | IE's great for microsoft developers whose products generate html/js, since IE seems optimized for backward compatibility with microsoft products | ||
| arnsholt | It's a bit like writing code that should compile to the same executable, on multiple compilers | ||
| jnthn | woo. .foo done like already. | 22:36 | |
| colomon | jnthn++ # for fixing proto while I was fixing dinner. | ||
| pmichaud | looks like winter is coming early here this year. Today's high: 10degC | ||
| jnthn | Ooh, nice! | ||
| lichtkind | moritz_: i understand a bit the proto regex now but why was it so important to PGE? | 22:37 | |
| moritz_ | lichtkind: it's important for rakudo, because STD.pm uses it heavily | 22:38 | |
| pmichaud | lichtkind: it makes it possible to do more optimized parsing of the source code | ||
| lichtkind | rakudo tries to use STD.p? | ||
| moritz_ | and we try to stay as close to STD.pm as possible | ||
| lichtkind | since when? | ||
|
22:38
simcop2387 joined
|
|||
| pmichaud | rakudo has always tried to follow STD.pm where it can | 22:38 | |
| the lack of protoregexes meant that wasn't really possible in some ways | 22:39 | ||
| in some ways, Rakudo is blazing new paths for STD.pm, too | |||
| (STD.pm has been adopting some of Rakudo's grammar features :) | |||
| lichtkind | when came prots into the synopses? | ||
| pmichaud | protoregexes were added to the synopses in 2007, I think | 22:40 | |
| jnthn | pmichaud: Should "is export" on, e.g. multi method uc() mean we can call uc("oh hai") ? | ||
| lichtkind | pmichaud: thanks | ||
| jnthn | pmichaud: If so, something is broken. :-/ | ||
| pmichaud | jnthn: yes, we should be able to do that, if uc() is defined in Any | ||
| colomon | "should" as in "That's the ideal", or "should" as in "that works now in ng"? | 22:41 | |
| jnthn | colomon: the latter | ||
| pmichaud: ok, hm | |||
| pmichaud | afaik it's been at least somewhat working in ng | ||
| jnthn | pmichaud: and yes, it's in Any-str.pm | ||
| ng: say "oh hai".uc | |||
| p6eval | ng 0c9d94: OH HAI  | ||
| pmichaud | ng: say &uc | 22:42 | |
| p6eval | ng 0c9d94: Symbol '&uc' not predeclared in <anonymous>current instr.: 'perl6;PCT;HLLCompiler;panic' pc 137 (src/PCT/HLLCompiler.pir:101) | ||
| jnthn | ng: say uc("that tree over there") | ||
| p6eval | ng 0c9d94: Could not find non-existent sub &uccurrent instr.: '_block14' pc 29 (EVAL_1:0) | ||
| jnthn | aww, fail | ||
| pmichaud | oh | ||
| jnthn | oh plz say this won't be the omg-wrong-multi bug... | ||
| pmichaud | it's possible that it's not being exported correctly | ||
| lichtkind | moritz_: thank you too | ||
| pmichaud | no, wrong multi wouldn't say "non-existent sub" | ||
| plus, they are in different namespaces | |||
| jnthn | True. | 22:43 | |
| no, I meant wrong multi when we call trait_mod | |||
| pmichaud | building, looking. | ||
| shouldn't be that, because those are looked up by subid | |||
| we should never be using trait_mod based on anything but subid | 22:44 | ||
| jnthn | pmichaud: no no, I meant the call to trait_mod itself. | ||
| pmichaud: it's a multi sub. | |||
| pmichaud | oh | ||
| that's possible. | |||
| jnthn | pmichaud: checking it's not that, before I dig further. | ||
|
22:44
Exodist joined
|
|||
| jnthn | # export called on uc | 22:44 | |
| so no, it's not that. | |||
| colomon | ng: say exp(10) | 22:45 | |
| p6eval | ng af269f: 0 | ||
| colomon | ?? | ||
| gonna implement properly now (I hope), but that's weird... | |||
| jnthn | pmichaud: it's detecting it's a method properly and adding the & too. | 22:46 | |
| pmichaud | but it's exporting into Any's namespace, I bet. | 22:47 | |
| actually, Any::EXPORT::DEFAULT | |||
| which is fine, but I'm not sure we do an import into global yet. | |||
| jnthn | oh | ||
| so the export is fine, but we're nyi | |||
| (not yet importing ;-)) | |||
| pmichaud | right | 22:48 | |
| dalek | vember: da4db36 | masak++ | skins/CleanAndSoft/ (2 files): [skins] fixed github issues #20 and #21 |
||
| vember: 8166dbd | masak++ | lib/November.pm: [November] made error page message clearer |
|||
| masak | ooh, that's nice. | ||
| KyleHa | S16-io/say.t passes now. I updated spectest.data | ||
| masak | blog post should turn up soon as well. | ||
| jnthn | KyleHa: Yay! Thanks :-) | 22:49 | |
| KyleHa | My pleasure. 8-) | ||
| jnthn | pmichaud: Aww. And use isn't broken up into import bit yet. | 22:51 | |
| pmichaud | using 'use' for importing CORE isn't likely to be a good way to do it yet | ||
| so, good. | |||
| jnthn | pmichaud: Right, but it's use decomposed into two things now? | ||
| (by spec) | |||
| pmichaud | yeah, it'll be 'need' and 'import' | ||
| jnthn | Right. So I could in the cheat make use call each of those for now. | 22:52 | |
| And then can use import alone to bring in things from the setting? | |||
| erm, from CORE that is. :-) | |||
| pmichaud | 'import' doesn't exist yet. | 22:53 | |
| jnthn | Yes, I was proposing creating a first cut of it by factoring out the appropriate bit of our current "use" cheat. | ||
| It can all still stay as a cheat. | |||
| pmichaud | I prefer not to do that. | ||
| jnthn | OK, what do you prefer? | ||
| pmichaud | to have enough time to think about how to do it properly, alas. | 22:54 | |
| jnthn | (I'd quite like to be able to pass, e.g. uc, and this is probably all we're blocking on...) | ||
| pmichaud | this is one area where the cheats last time ended up being difficult to dislodge | ||
| jnthn | erm, uc.t | ||
| pmichaud | so I'd rather not head down that path again. | ||
| getting a passing test isn't worth the technical debt (in this case) | 22:55 | ||
| jnthn | I rather suspect it's more than one, but OK. | ||
| (and it's going to be a blocker to passing a lot of things in the near future, I fear.) | 22:56 | ||
| pmichaud | it's also a case of not only getting it to work immediately for Rakudo, but also to be able to properly handle HLL interop | ||
| jnthn | Well, yeah, doing it right is a lot of effort. | ||
| We actually need to ask the import for info at compile time too. | 22:57 | ||
| pmichaud | yes, I understand it may be a significant place of blockers. I don't think we're soooo blocked on it that it blocks progress in other areas. | ||
| jnthn | So we can construct an appropriate lexical scope. | ||
| pmichaud | I agree it has to be done sooner rather than later. | ||
| jnthn | So yes, a full solution is hard. | ||
| :-) | |||
| pmichaud | I wasn't going to worry too much about lexical import just yet. Or, put another way, that piece was going to be stage-2. | ||
| jnthn | Oh. | 22:58 | |
| *that* was the bit I thought was the cheat you'd be worried about. | |||
| pmichaud | nope. | ||
| jnthn | (Because it's the one that worries me more...) | ||
| pmichaud | the way import is done in master is just generally wrongish in several ways | ||
| I can get a good import cheat done relatively quickly | 22:59 | ||
| jnthn | OK. | ||
| pmichaud | I'd rather not have to back out the bad cheats from master | ||
| jnthn | OK, I'll leave it to you, since you seem to have a pretty concrete idea of how you'd like it to look. | 23:00 | |
|
23:01
ascent joined
|
|||
| jnthn | ng: <a b c>.[4/3] | 23:07 | |
| p6eval | ng af269f: Confused at line 1, near "<a b c>.[4"current instr.: 'perl6;HLL;Grammar;panic' pc 448 (src/stage0/HLL-s0.pir:300) | ||
| jnthn | ng: <a b c> | ||
| p6eval | ng af269f: ( no output ) | ||
| jnthn | ng: <a b c>.[4] | ||
| p6eval | ng af269f: Confused at line 1, near "<a b c>.[4"current instr.: 'perl6;HLL;Grammar;panic' pc 448 (src/stage0/HLL-s0.pir:300) | ||
| jnthn | ng: <a b c>[4] | ||
| p6eval | ng af269f: ( no output ) | 23:08 | |
| jnthn | ng: <a b c>[4/3] | ||
| p6eval | ng af269f: No applicable candidates found to dispatch to for 'postcircumfix:<[ ]>'current instr.: '!postcircumfix:<[ ]>' pc 193578 (src/gen/core.pir:19564) | ||
| pmichaud | postcircumfix:<[ ]> only works on single ints at the moment | ||
| we could see about filling out the positional role again | |||
| jnthn | pmichaud: Also, .[4] doesn't parse yet, which is the first issue in the issue in colomon++'s gist. | 23:09 | |
| But yes, after fixing the parse issue we'd need to do that. | |||
| pmichaud | oh, getting that to parse would be worthwhile, too. | ||
| I think I fixed masak's [] and () issues last night | |||
| ng: say [[], [[]], []].elems | 23:10 | ||
| p6eval | ng af269f: 3 | ||
| pmichaud | ng: say [[], [[]], []].perl | ||
| p6eval | ng af269f: get_iter() not implemented in class 'Undef'current instr.: 'perl6;Any;map' pc 169948 (src/gen/core.pir:10930) | ||
| pmichaud | ng: say [[], [[]], []].WHAT | ||
| p6eval | ng af269f: Array() | ||
| pmichaud | hmmm | ||
| something's wrong there | |||
| ng: say ((), (()), ()).WHAT | |||
| p6eval | ng af269f: List() | ||
| pmichaud | ng: say ((), (()), ()).perl | ||
| p6eval | ng af269f: Method 'perl' not found for invocant of class 'Undef'current instr.: 'perl6;Any;_block1442' pc 169667 (src/gen/core.pir:10814) | ||
| pmichaud | and there too. | ||
| jnthn | yeah. | ||
| pmichaud | say ().perl | ||
| ng: say ().perl | 23:11 | ||
| p6eval | ng af269f: () | ||
| pmichaud | ng: say (1, (), 2).perl | ||
| p6eval | ng af269f: (1, 2) | ||
|
23:11
ng_feed joined
|
|||
| pmichaud | ng: say (()).perl | 23:11 | |
| p6eval | ng af269f: () | ||
| ng_feed | rakudo-ng: (Solomon Foster)++ | ||
| rakudo-ng: Merge branch 'ng' of git@github.com:rakudo/rakudo into ng | |||
| rakudo-ng: (Solomon Foster)++ | |||
| jnthn | colomon: Got a fix for the Rat.new issue too. :-) | ||
| ng_feed | rakudo-ng: Add Num.exp (which makes Any.exp and exp(Any) work as well). | ||
| rakudo-ng: (Kyle Hasselbacher)++ | |||
| rakudo-ng: S16-io/say.t passes now | |||
| rakudo-ng: (Jonathan Worthington)++ | |||
| pmichaud | ng: say ((),()).perl | ||
| p6eval | ng af269f: Method 'perl' not found for invocant of class 'Undef'current instr.: 'perl6;Any;_block1442' pc 169667 (src/gen/core.pir:10814) | ||
| ng_feed | rakudo-ng: Implement term:dotty. | ||
| rakudo-ng: (Jonathan Worthington)++ | |||
| rakudo-ng: Fix parameter flattening. | |||
| rakudo-ng: (Jonathan Worthington)++ | |||
|
23:11
payload joined
|
|||
| ng_feed | rakudo-ng: Fix proto. | 23:11 | |
| moritz_ | ng_feed is now going to report a few old commits | ||
| ng_feed | rakudo-ng: (Solomon Foster)++ | ||
| rakudo-ng: Merge branch 'ng' of git@github.com:rakudo/rakudo into ng | |||
| rakudo-ng: (Solomon Foster)++ | |||
| moritz_ | hope it works then :-) | ||
| ng_feed | rakudo-ng: Make Any!to-radians work for radians again. Add Num.sin. | ||
| rakudo-ng: (pmichaud)++ | |||
| rakudo-ng: Merge branch 'ng' of git@github.com:rakudo/rakudo into ng | |||
| rakudo-ng: (pmichaud)++ | 23:12 | ||
| rakudo-ng: Terminate listop argument lists on <?stdstopper>. | |||
| colomon | jnthn++ # \\o./ | ||
| jnthn | moritz_: I've got another commit coming after tests. | ||
| ng_feed | rakudo-ng: (Solomon Foster)++ | ||
| rakudo-ng: Merge branch 'ng' of git@github.com:rakudo/rakudo into ng | |||
| rakudo-ng: (Solomon Foster)++ | |||
| rakudo-ng: Add Num.exp (which makes Any.exp and exp(Any) work as well). | |||
| rakudo-ng: (Kyle Hasselbacher)++ | |||
| rakudo-ng: S16-io/say.t passes now | |||
| rakudo-ng: (Jonathan Worthington)++ | |||
| rakudo-ng: Implement term:dotty. | |||
| rakudo-ng: (Jonathan Worthington)++ | |||
| rakudo-ng: Fix parameter flattening. | |||
| rakudo-ng: (Jonathan Worthington)++ | |||
| rakudo-ng: Fix proto. | |||
| rakudo-ng: (Solomon Foster)++ | |||
| rakudo-ng: Merge branch 'ng' of git@github.com:rakudo/rakudo into ng | |||
| moritz_ | ouch | ||
| ng_feed | rakudo-ng: (Solomon Foster)++ | ||
| moritz_ | it repated itself endlessly. sigh. | 23:13 | |
| pmichaud | ng: say ((), ).perl | ||
| p6eval | ng af269f: (()) | ||
| jnthn | karma win! | ||
| pmichaud | ouch, that's wrong. | ||
| ng: say ((), ()).perl | |||
| p6eval | ng af269f: Method 'perl' not found for invocant of class 'Undef'current instr.: 'perl6;Any;_block1442' pc 169667 (src/gen/core.pir:10814) | ||
| pmichaud | I wonder where it's getting the Undef from. | ||
| jnthn | pmichaud: Not sure. :-| | ||
| pmichaud | ng: say ((),3).perl | 23:14 | |
| p6eval | ng af269f: sh: ./perl6: No such file or directory | ||
| pmichaud | ng: say ((),3).perl | ||
| p6eval | ng af269f: sh: ./perl6: No such file or directory | ||
| jnthn | colomon: ah, I seeem to have got a test fail... | ||
| pmichaud | oops, rebuild. | ||
|
23:14
ng_feed joined
|
|||
| moritz_ | next try with ng_feed | 23:15 | |
| pmichaud | jnthn: oh, I still see C compiler warnings during make, fwiw | 23:16 | |
| (if you're looking for things to do :-) | |||
| colomon | moritz_: are you sure that wasn't just the list of commits from this afternoon? It does seem endless... ;) | 23:17 | |
| jnthn | pmichaud: no, I'm trying to figure out why what I thought was a simple fix is causing really odd issues... | ||
| moritz_ | colomon: yes, I commented out a crucial line that skipped already seen tries | ||
|
23:31
Whiteknight joined
23:32
ihrd joined,
ihrd left
|
|||
| masak | 'night, #perl6. | 23:35 | |
| moritz_ | 'night masak | 23:36 | |
|
23:38
JeffreyKegler joined
|
|||
| jnthn | pmichaud: Probably going to stop here today. Ran into some oddness... | 23:39 | |
| pmichaud: ...probably just needs me more awake to debug though. | |||
|
23:48
Whiteknight joined
|
|||
| pmichaud | jnthn: that sounds fine | 23:49 | |
| diakopter | ng: say ((),3).perl | ||
| p6eval | ng 6528b7: (3) | ||
| pmichaud | things are likely to be a bit crazy around here as well. | ||
| at least for a few hours | |||
| arnsholt | The SVN browser on perlcabal.org seems to be broken | 23:50 | |
| I get error 500s | |||
| diakopter | :( | ||
| diakopter set that up | |||
| www.perlcabal.org/svn/pugs/revision works | |||
| moritz_ | perlcabal.org/svn/pugs/revision/?rev=29101 seems to work | ||
| arnsholt | Indeed it does | ||
| diakopter | it does die on some diffs | 23:51 | |
| arnsholt | What about perlcabal.org/svn/pugs/browse/t/spec for you guys? | ||
| diakopter | Infinoid & I spent quite some times trying to diagnose | ||
| hm, weird | |||
| I've never seen /browse break | |||
| moritz_ | PATH: /t/spec | 23:52 | |
| rpath returning 't/spec' at /usr/share/perl5/SVN/Web/action.pm line 381. | |||
| [Tue Nov 17 00:52:48 2009] [error] [client 87.176.79.181] plugin error - Number.Format: plugin not found | |||
| jnthn | pmichaud: End of week/weekend will be a tad disrupted due to BPW. | 23:53 | |
|
23:57
hercynium joined
|
|||
| pmichaud | jnthn: no problem. following weekend will be disrupted for me a bit too (Thanksgiving holidays) | 23:58 | |
| jnthn | Ah, yes...I forgot that was coming up. :-) | ||
| moritz_ | it would be nice if one of you could fix some tests in master before the release though :-) | 23:59 | |
| bed & | |||