»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
00:02
cognominal_ left
|
|||
whiteknight | pmichaud: did you see my reply to dukeleto? | 00:02 | |
pmichaud | whiteknight: scanned it, but I already had my draft in place before then. I'm thinking it's still worthwhile to state my official position. | 00:03 | |
if you think I should look closely at your reply before replying, I can do that. | |||
00:03
cognominal joined
|
|||
whiteknight | okay, I'm just pointing out that the general mood is...energetic right now, but there is hardly consensus about distancing parrot from rakudo | 00:03 | |
pmichaud | agreed and understood | 00:04 | |
I'm not taking that to be the consensus opinion at all | |||
rather, I see that Parrot is kind of having to decide what its consensus will be | |||
whiteknight | okay. Every body is on tilt right now. cotto's email really sent us for a bit of a loop. I want to make sure nobody makes rash decisions | ||
pmichaud | so, I wanted to weigh in with an obeservation about that, not to say "you all are making a mistake" | ||
TimToady | decommuting & | 00:05 | |
whiteknight | ok | ||
pmichaud | but yes, I did note that dukeleto's comment is not at all the consensus opinion (and knew that to be the case even as I read his message :) | ||
00:07
uasi joined
|
|||
dukeleto | just to reiterate, yes, my reply to cotto on parrot-dev is my personal opinion and has no official endorsement whatsoever | 00:09 | |
[Coke] | diakopter: ETOOMUCHCOFFEE: EINVALIDEXCEPTION | 00:12 | |
00:14
Vlavv left
00:15
uasi left,
uasi joined
00:16
tdignan joined
00:20
uasi left
|
|||
flussence | argh... all I wanted to do is read lue++'s pod file in HTML, instead I ended up adding N<>! | 00:22 | |
00:22
odoacre left
|
|||
dukeleto | pmichaud: the reason I don't consider rpbench-results something like Is Rakudo Fast Yet is because there is no graphical representation of the data, and frankly, it is extremely hard to read the data | 00:25 | |
pmichaud | dukeleto: the data exists, if anyone wants to graph it. It definitely shows the trend. | ||
dukeleto | pmichaud: it is just my opinion, but without an automated graphical interface like www.arewefastyet.com , there is a big hurdle to using and interpreting the data | 00:28 | |
pmichaud | dukeleto: fair enough | ||
dukeleto | pmichaud: i think the trend is obvious to you, but I have to squint very hard, as an outsider, to see the trend | ||
pmichaud | when I posted the reports to parrot-dev prior to the spring PDS, I don't know that anyone had difficulty understanding the results. | ||
it was pretty obvious that things weren't very rosy. | 00:29 | ||
00:29
thou left
|
|||
dukeleto | pmichaud: perhaps it is just me. I am a very visual person. But i think tables of numbers, in general, are not nearly as elucidating as pretty graphs. | 00:30 | |
pmichaud | dukeleto: that's fine, I don't disagree. | ||
00:35
cognominal left,
cognominal joined
00:37
odoacre joined
|
|||
felher | is writing 'when(condition)' without any 'given' just instead of 'if($_ ~~ condition)' considered bad style? | 00:41 | |
flussence | seems fine to me | 00:43 | |
00:44
uasi joined,
soh_cah_toa joined
|
|||
felher | good. :) thnx :) | 00:45 | |
[Coke] | pmichaud: I'm happy to turn that into a graphical site. | 00:46 | |
is the data in a repo somewhere? | |||
... like, say, github? (didn't see the url before. ;) | 00:47 | ||
pmichaud: ENOREADME | |||
pmichaud | [Coke]: the data are in the logs/ subdir | 00:48 | |
or you can just parse the files themselves for the data | |||
if you need a json form, I can write a script to generate that. | |||
[Coke] | I can do that. just keep making nom awesomer. | 00:49 | |
pmichaud | the scripts used to produce the report are in pmichaud/rpbench on github | ||
[Coke] | forking... | ||
pmichaud | see tools/rpreport, I think | ||
00:49
uasi left
00:50
uasi joined
00:54
uasi left
|
|||
[Coke] | pmichaud: are kiwi/orange/plum different machines? | 01:01 | |
pmichaud | yes. | 01:03 | |
all of my machines are named for fruits :) | |||
my router is "blueberry". :) | |||
jnthn | is your mobile "blackberry"? :P | ||
[Coke] | all of my machines are named for beverages. I get that. | 01:04 | |
(and to answer jnthn's next question, the router is "beverage") | |||
so, you have multiple kiwi runs. only the latest run should be used for graphing? | 01:05 | ||
(because you re-ran all the old benchmarks?) | |||
tdignan | I name mine after military radio equipment | ||
HAARP, Skynet | |||
mmmm, tasty | 01:06 | ||
01:13
uasi joined
01:34
donri left,
daniel-s left
|
|||
felher | perl6: { $_ = 3; { $^a; when 3 { say "when" }; say "should not be displayed"; }("something"); say "should not be displayed, too"; }; say "should be displayed" | 01:49 | |
p6eval | niecza v9-10-g678102e: OUTPUT«whenshould be displayed» | ||
..rakudo fc57d1: OUTPUT«whenshould not be displayed, tooshould be displayed» | |||
..pugs: OUTPUT«should not be displayedshould not be displayed, tooshould be displayed» | |||
felher | niecza++ | ||
sleep & | 01:56 | ||
01:58
packetknife joined
02:00
woosley joined
|
|||
colomon 's machines are all named after traditional musicians.... | 02:00 | ||
02:00
jevin left
|
|||
packetknife | Is there a good editor or extension for existing editor that tracks Rakudo's syntax and implemented features? I found no indication in Komodo or EPIC/E.. | 02:03 | |
02:04
whiteknight left
02:05
jevin joined
|
|||
pmichaud | [Coke]: sorry, had to leave earlier. The kiwi runs represent whatever I chose to run on that date. | 02:05 | |
so yes, that involves re-running the old benchmarks. the idea is to run the entire suite as close in time (and using identical setup) as much as possible. | 02:06 | ||
so, I don't want to pull forward the values from the previous month's benchmarking, because the underlying toolset (C compiler, kernel, libraries, etc.) might've changed in that time | |||
so, we re-run the entire set based on which builds (rakudo ver + parrot ver) happen to be of "interest" at that time. | 02:07 | ||
[Coke] | so, short answer: "yes". ;) | 02:08 | |
I have something nearly working with flot now, with zooming. just need to put in our actual data. | 02:09 | ||
pmichaud | coolness. Coke++ | 02:11 | |
yeah, short answer is "yes" :) | |||
[Coke] will definitely be pulling flot into his work project. ;) | 02:15 | ||
02:16
Minimiscience joined
02:22
daniel-s joined
02:25
benabik joined
02:31
Vlavv joined
02:40
soh_cah_toa left
|
|||
packetknife | OK, seems VIm has Perl 6 support.. hrmm. | 02:47 | |
02:54
Khisanth left
|
|||
packetknife | Any others? | 02:55 | |
02:57
cognominal left
|
|||
benabik | packetknife: Any other editors with perl6 support? | 02:57 | |
packetknife | Yes, that are keeping w/ Rakudo as it evolved preferably. | ||
02:58
cognominal joined
|
|||
[Coke] | first pass: feather.perl6.nl/~coke/bench/html/ | 02:58 | |
benabik | There seems to be a fork of cperl-mode for emacs that speaks p6: github.com/jrockway/cperl-mode/tre...erl6-merge | 02:59 | |
packetknife | benabik: Ty! | 03:02 | |
benabik | packetknife: I'd personally suggest Vim with ft=perl6, but I | 03:04 | |
'm definatly biased. | |||
benabik has set the default text editor on his Mac to gVim. | 03:05 | ||
packetknife | benabik: I'm a VIm guy for general editing but became fond of Komodo IDE. | ||
benabik | packetknife: I still generally prefer Makefiles to IDEs, but do sometimes see the appeal. :-D | 03:06 | |
03:08
Khisanth joined
|
|||
packetknife | benabik: Yes, it took three/four years to break the decades long configure/makefile habit. I might just return, you're making me reminisce. | 03:08 | |
03:08
molaf joined
|
|||
[Coke] | phenny: tell pmichaud first pass: feather.perl6.nl/~coke/bench/html/ , with stealable code at github.com/coke/rpbench - copy over a log file as "logs/latest.log" and run "make" | 03:10 | |
phenny | [Coke]: I'll pass that on when pmichaud is around. | ||
[Coke] | dukeleto: ping? | 03:11 | |
pmichaud | [Coke]++ # wow, nice work | 03:16 | |
phenny | pmichaud: 03:10Z <[Coke]> tell pmichaud first pass: feather.perl6.nl/~coke/bench/html/ , with stealable code at github.com/coke/rpbench - copy over a log file as "logs/latest.log" and run "make" | ||
[Coke] | pmichaud: Nice to use some of my work skills for perl6. It's still rough, but I figure I'll go to sleep and let moritz fix it all tomorrow. ;) | 03:17 | |
pmichaud | wfm | ||
I may grab the code back into the rpbench repo, and automatically generate the graphics when I do the reports | |||
then they can live in the rpbench-results repo along with the data | |||
[Coke] | fine with me, I only forked because it's easy and I didn't know how ugly it'd be. | 03:18 | |
pmichaud | forking is good, it's easy to pull back and cherry pick :) | ||
I can also give out commitbits to the rpbench repo if anyone wants | |||
[Coke] | o/ | 03:19 | |
One thing that is broken on that for sure is the dates. I just treated "2001.04" as numeric, which is, of course, wrong. ;) | |||
pmichaud | Yeah. Also, sometimes the labels end up being non-numeric. | 03:20 | |
(in the reports) | |||
but that can be cleaned up. | |||
[Coke] | commit early. | ||
03:20
jaldhar joined
03:23
Su-Shee_ joined
03:24
plobsing left
03:26
plobsing joined
03:27
Su-Shee left
|
|||
sorear | good * #perl6 | 03:28 | |
phenny: tell pmurias lib/BigInteger.cs is partially under the MSPL. | 03:29 | ||
phenny | sorear: I'll pass that on when pmurias is around. | ||
03:30
JimmyZ joined
03:33
packetknife left
03:34
Minimiscience left
03:37
packetknife joined
03:46
Khisanth left
03:50
Khisanth joined
|
|||
dukeleto | [Coke]: pong | 03:56 | |
04:04
satyavvd joined
|
|||
[Coke] | dukeleto: just the URL you already saw. Unping. | 04:09 | |
04:09
birdwindupbird joined
04:12
satyavvd left
04:22
molaf left
04:24
envi_laptop joined
04:26
uasi left
04:27
uasi joined
04:32
uasi left
04:40
jevin left
04:41
thou joined
04:43
jevin joined
04:46
JimmyZ_ joined
04:47
JimmyZ left
04:48
JimmyZ_ is now known as JimmyZ
05:03
uasi joined
05:05
abercrombie left
05:12
packetknife left
05:13
tyatpi_ left
05:17
sftp left,
Khisanth left
05:21
plobsing left
05:28
sayu joined
05:35
Khisanth joined
05:36
DarthGandalf left
05:38
DarthGandalf joined
05:39
Shozan joined
06:03
Su-Shee_ is now known as Su-Shee
06:05
orafu left,
orafu joined,
Alias_ joined
06:08
Alias left
06:14
koban` joined,
koban` left
06:18
masak joined
|
|||
masak | goedemorgen, #perl6 | 06:19 | |
Word of the Month: "foundering" -- www.modernperlbooks.com/mt/2011/09/...wrong.html | |||
for once, I'm not so sure I agree with chromatic's choice of words. but I understand if he feels a need to use the verb for Perl 6 when it keeps appearing as the subject of a thread about Parrot. | 06:22 | ||
there's been cycles of activity and *despair* within the Perl 6 community, as chronicled by au++'s prophetic T-shirt. | 06:23 | ||
but despair is not the same thing as taking in water and sinking. | 06:24 | ||
moritz | I also don't get the "prohibiting the other to be wrong even in small ways." | ||
dukeleto | masak: do you think we are in a valley or at a peak in the despair graph? | ||
moritz | if parrot wasn't allowed to be wrong even in small ways, there's no way we could be using it | ||
masak | moritz: chromatic is under the impression that people over in the Rakudo community keep telling Parrot not to do certain things it needs. | 06:25 | |
dukeleto: define "we". Perl 6, Rakudo, Parrot? | 06:26 | ||
moritz | dukeleto seems to have the same opinion on parrot-dev | ||
masak | dukeleto: the Perl 6 community is currently at a maximum, with the possible exception of some crazy days of the golden age :) | ||
dukeleto | masak: all of the above | ||
sorear | masak: maximum despair? | 06:27 | |
masak | :P | ||
maximum activity. | |||
06:27
yves left
|
|||
masak | I actually think it's broader than it ever was, in terms of graph diameter. | 06:27 | |
dukeleto | masak: well, i would say that parrot is in a deep valley of despair, compared to previous times | ||
06:27
satyavvd joined
|
|||
masak | dukeleto: I would say so to. | 06:27 | |
too* | 06:30 | ||
dukeleto: I don't believe the message from yesterday that "Parrot has no focus because Rakudo won't allow it to have a focus." | 06:31 | ||
to me that seems like an unfair and unproductive starting point. | |||
dukeleto | masak: did I say those words? | 06:32 | |
masak | chromatic did, yesterday on #parrot. | ||
dukeleto | masak: Parrot definitely has no focus, but I don't think Rakudo is to blame | ||
masak | dukeleto: you replied to him with "I agree". | ||
JimmyZ doesn't think so too | 06:33 | ||
06:33
thou left
|
|||
masak | if Parrot wants not to alienate Rakudo devs, it needs to choose a better message to broadcast. | 06:33 | |
dukeleto | masak: parrot has fewer dev resources than perl 6 | ||
moritz | dukeleto: I doubt that | ||
dukeleto | moritz: really? | 06:34 | |
moritz | dukeleto: at least parrot seems to have more regular committers than rakudo | ||
masak | dukeleto: even if that's true, that's no reason for blaming Rakudo for Parrot's lack of... things. | ||
moritz | dukeleto: it might depend on how broad you define "perl 6" here though | ||
06:34
thou joined
|
|||
masak | dukeleto: part of the discussion seems to be Rakudo reinventing the wheel because Parrot's wheel didn't fit. I think any *resolution* to the disagreements needs to acknowledge that this was necessary to get Rakudo to where it is today. | 06:35 | |
because Parrot didn't provide what Rakudo needed. | |||
dukeleto | masak: i hacked on Rakudo and the perl 6 test suite before I ever touched parrot. | ||
masak | (and maybe it couldn't at the time) | ||
dukeleto: ok, nice to hear. | |||
moritz | and fwiw, parrot has in the past actively de-perlized features in the hope to attracked non-perl HLL devs | 06:36 | |
masak | dukeleto: I'm not putting you in one camp or another. I'm trying to reply to your question. (in a roundabout way, admittedly) | ||
moritz | (and not just features, also infrastructure) | ||
dukeleto | masak: i have written tests in the rakudo core test suite, and wrote the first implementation of roots(). I love Perl 6 and Rakudo and want them to succeed. I consider myself a Rakudo developer, sans commit bit. | ||
masak | dukeleto: I'm not questioning your loyalty to Perl 6 or Rakudo. | 06:37 | |
dukeleto | masak: i had to say hard things about parrot, that happened to involve rakudo. Most of my email was intended for parrot devs. I wasn't trying to disrepect any perl 6 or rakudo devs | ||
masak | dukeleto: I haven't met you, but you seem like a nice person. | ||
dukeleto: I haven't felt any disrespect from you. | 06:38 | ||
or from any Parrot dev, for that matter. | |||
I'm in *disagreement* over some things that chromatic have written. | |||
sorear | I do not beleive there are any genuinely not-nice people on the greater-Perl 6 or Parrot teams | ||
moritz | just some sometimes-hard-to-deal-with people | 06:39 | |
sorear | some of them can be frustrating to work with, but no more | ||
moritz | (though they are rare too) | ||
dukeleto | masak: me and chromatic have actually talked extremely little about this stuff. We both have opinions. Sometimes, they even coincide. | 06:40 | |
masak | dukeleto: nod | ||
dukeleto: all I'm saying, I guess, is try not to blame Parrot's lack of focus on Rakudo too much. | 06:41 | ||
because I don't believe that it's Rakudo that's putting a spanner in Parrot's works. | |||
we're not "actively prohibiting [Parrot] to be wrong even in small ways". (again, quoting chromatic.) that's no way to talk about your main customer. | 06:43 | ||
sorear | masak: you're completing chromatic's vague statements in a way ey may not have intended | 06:45 | |
masak | oh? | ||
dukeleto | masak: i didn't say that, nor do I agree with it. Everybody knows that chromatic is prone to hyperbole, but that is his hyperbole. | 06:46 | |
masak | granted. | ||
cotto | His problem isn't that people forget what he says. | 06:47 | |
dukeleto | masak: chromatic has not been present in the parrot community for many months, and all of sudden, this "tension" and a few commits from him roll in. | ||
masak | chromatic seems to have reacted very badly to the idea that Rakudo may start targeting other VMs, and he's using rhetoric and leverage to display that. that's fine. | ||
moritz | aye | ||
masak | but it will happen, and I'd prefer if we could all face that rather than going at each other's throats. | 06:48 | |
moritz | and it's not a decision against parrot, it's a decision for other backends | ||
cotto | I appreciated pmichaud's frank discussion on that topic earlier today. | ||
moritz | it's not like we're going to drop parrot support or anything | ||
cotto: which channel? | |||
I might want to backlog | |||
masak | much of the blaming going on seems to stem from some unspoken (faulty) assumption that Rakudo will migrate from Parrot. | 06:49 | |
dalek | ecza: 0f286c3 | sorear++ | lib/NieczaCLR.cs: Here is a draft of the CLR/C# candidate comparer |
||
cotto | moritz, they're all running together. I suspect #parrot | ||
I'm almost certain it wasn't #reprap. | |||
lemme dig | |||
moritz | cotto: I'll find it, no worry | 06:50 | |
sorear | I'd like to be linked. | ||
sorear out. | 06:51 | ||
Su-Shee | masak: everybody thinks that. thanks to plenty of very fuzzy postings and no clear communication, literally everyone I know thinks that rakudo kicks parrot. either you make _very clear where rakudo is going or people will continue to believe that. | ||
there's a _ missing. | |||
06:52
samlh left
06:53
Sivasakthikumar joined
|
|||
Sivasakthikumar | Hi | 06:54 | |
moritz can't remember seeing a single blog post or comparable thing that implies that rakudo is going to ditch parrot | |||
hi Sivasakthikumar | |||
dukeleto | masak: so i just want to reiterate that my stance is that parrot currently lacks focus, and that is not rakudo's fault. That is squarely parrot's fault | ||
moritz | I for one have been very careful to include that in all of my explanations on that matter, and pmichaud has been too | ||
Sivasakthikumar | i am new in perl6 ... i want to install perl6 in my desktop | ||
can u help me ? | 06:55 | ||
moritz | of course there's always room for misunderstanding | ||
Sivasakthikumar: sure | |||
dukeleto | Sivasakthikumar: you want to download a Rakudo Star release, most probably | ||
Sivasakthikumar | Yes i done that ... | ||
dukeleto | Sivasakthikumar: one thing to note, is that is only one kind of flavor of perl 6. There are many. | ||
Sivasakthikumar | i am using windows xp .. i installed rakudo-star.2010.07.msi | 06:56 | |
Su-Shee | moritz: I read one for example by pmichaud and asked afterwards here very carefully, because it very much sounded to me like "abandoning parrot" - what do you think will people have in their heads who don't ask here for clarification? | ||
moritz | Su-Shee: please use github.com/downloads/rakudo/star/r....04.v2.exe the 2010.07 version is very old | 06:57 | |
sorry, meant Sivasakthikumar | |||
Su-Shee: that's unfortunate | |||
Su-Shee | moritz: will do, I used rakudo 07.2011 ;) | ||
Sivasakthikumar | Ok ..i will try | ||
pmichaud | I find it very difficult to talk about the possibility of other backends without it also being assumed that we're abandoning parrot. | 06:58 | |
Sivasakthikumar | Ok ... then what the next steps | ||
moritz | Sivasakthikumar: run the .exe file | ||
cotto | moritz and sorear: irclog.perlgeek.de/parrot/2011-09-07#i_4389501 (pmichaud talking about Rakudo on other VMs) | 06:59 | |
Sivasakthikumar | Rakudo - star is a complier | ||
masak | dukeleto: to finish the reply to your question, I felt that Rakudo had some respectable speed around the release of Rakudo Star, but the last month or so has definitely seen some slowing down. it's a bit bus-number-related. | ||
Sivasakthikumar | Rakudo - star is a complier rt | ||
dukeleto | masak: also, parrot has just about no performance testing. isparrotfastyet.com has a lot of potential, tho | 07:00 | |
masak | Sivasakthikumar: it's a distribution of the Rakudo compiler, yes. | ||
Su-Shee | it's very simple, many people don't read the channel or the mailinglist but an article here and there and make up their own thoughts. also, maybe some people might even like the idea. | ||
dukeleto | Su-Shee: might not like what idea? | 07:01 | |
masak | dukeleto: oh! when I said "slowing down", I meant dev activity and some nebulous general enthusiasm metric. | ||
dukeleto | masak: ah, i misinterpretted | ||
Su-Shee | dukeleto: might like the idea of rakudo without parrot. others surely don't. | ||
masak | dukeleto: mind, there are promising things going on with Rakudo, they're just not materializing fast enough. | ||
dukeleto: due to a lot of protective hand-waving lately, Rakudo doesn't have a master branch. :/ | 07:02 | ||
pmichaud | well, we *do*, but it's going away :) | ||
masak | right. | ||
dukeleto | Su-Shee: all said was that parrot needs to operate on the fact that rakudo *might* port away from parrot. That is mostly so parrot can strive to make a shiny product that is not rakudo, because that is really a shiny language to make shiny products once removed | 07:03 | |
Sivasakthikumar | Yes .. i installed successfully rakudo-star-2011.04.exe | ||
What next ? | |||
pmichaud | ...read the README? ;-) | ||
nah, that never works :) | |||
cotto | write an entry to masak's animal farm game? | 07:04 | |
er, masak++'s | |||
;) | |||
masak | someone is *yet* to present an AI! it's a disgrace! :) | 07:05 | |
Sivasakthikumar | Moritz Help me the next step | ||
07:05
sayu left
|
|||
Su-Shee | dukeleto: hey, I'm just a bystander reading along, I basically honestly give a shit on what rakudo runs as long as I get it. :) I'm just trying to explain why people think rakudo is going to abandon parrot. | 07:05 | |
cotto | masak, so if I wrote one that acted randomly, it could win? | ||
pmichaud | cotto: by definition, I think it's guaranteed to win at least once given an infinite number of games :) | 07:06 | |
moritz | Sivasakthikumar: next step after what? after succeful installation? | ||
masak | cotto: as a trial, I wrote one that did the simplest thing I could think of. it won against one that did nothing. :) | 07:07 | |
Sivasakthikumar | Yes .. Any documentation | ||
Any help documents | |||
JimmyZ | per6.org | ||
perl6.org | |||
Sivasakthikumar | Ok | ||
moritz | Sivasakthikumar: perl6.org/documentation/ has lots of pointers to general Perl 6 docuemntation | ||
Sivasakthikumar | Ok ... | ||
masak | Sivasakthikumar: also, feel free to ask here. we have an evalbot and we're very friendly. | 07:08 | |
07:09
pernatiy left
|
|||
Sivasakthikumar | How can i compile perl5 programes here | 07:10 | |
masak | rakudo: say "hello Sivasakthikumar!" | ||
p6eval | rakudo fc57d1: OUTPUT«hello Sivasakthikumar!» | ||
Sivasakthikumar | Yes .. For example .... Test.pl > In perl 5 ... perl test.pl ... rt | 07:11 | |
Can i run multiple statements here ? | |||
moritz | rakudo: say 1; say 2; | 07:12 | |
p6eval | rakudo fc57d1: OUTPUT«12» | ||
07:12
wolfman2000 left
|
|||
moritz | rakudo only supports Perl 6 programs, not Perl 5 | 07:12 | |
Sivasakthikumar | Ok ... | ||
07:12
MayDaniel joined
|
|||
mberends | Sivasakthikumar: you have a "perl6.exe" on your computer. Find it. | 07:12 | |
morning #perl6, btw | |||
07:13
wooden left
|
|||
Sivasakthikumar | Yes .. i founded perl6.exe | 07:13 | |
Where i can see perl6 updates for every day ? | 07:14 | ||
One More General questions abt perl 6 release ? | |||
07:14
MayDaniel left
|
|||
Sivasakthikumar | Any one have idea what is the perl6 release date ? | 07:14 | |
07:15
envi_laptop left
|
|||
mberends | Sivasakthikumar: it all appears randomly in this IRC channel | 07:15 | |
Sivasakthikumar | ok | 07:16 | |
Thanks for every one .. | |||
mberends | Sivasakthikumar: there are work-in-progress releases about once a month | ||
Sivasakthikumar | Ok ... Where i can see the updates for that release | 07:17 | |
i am very new in perl6 ... sorry for my stupid questions | |||
i love to learn perl6 .. | |||
07:17
sasy joined
|
|||
mberends | Sivasakthikumar: that's ok, your questions will rapidly become smarter :) | 07:18 | |
07:18
pernatiy joined
|
|||
Sivasakthikumar | Ok .. | 07:18 | |
mberends | new releases will appear in the Downloads part of github.com/rakudo/rakudo but the next one is a few weeks away | 07:19 | |
Sivasakthikumar | Ok cool .. | ||
mberends | It will help your use of Rakudo if you add the directory where perl6.exe lives to your PATH | 07:20 | |
Sivasakthikumar | this is only running for perl6 statements ... | ||
mberends | no, also perl 6 script files | 07:21 | |
Sivasakthikumar | Ok ... How can i start the programs in perl 6 | ||
mberends | you should get a command like this to work: perl6 myscriptfile.pl6 | 07:22 | |
Sivasakthikumar | Can i save pg_name . pl and run using | ||
Ok got it | |||
pl6 for extension | |||
mberends | .pl6 is not compulsory, but useful to avoid confusion | 07:23 | |
Sivasakthikumar | Ok .. | ||
So it's similer to perl5 | 07:24 | ||
for execution and all | |||
mberends | of course, it's still perl! but different in many details. | ||
Sivasakthikumar | Yes ... | 07:25 | |
mberends | you should keep your own scripts in separate directories, because it's quite common to completely reinstall Rakudo (with an update for example) | ||
dukeleto | Sivasakthikumar: you may want to checkout modules.perl6.org | 07:26 | |
Sivasakthikumar | Ok thanks for info | 07:27 | |
mberends : Ok i will create the sample scripts in diff directories | 07:28 | ||
mberends | Sivasakthikumar: :-) | ||
Sivasakthikumar | Ok | ||
07:29
mj41 joined
|
|||
mberends | Sivasakthikumar: try something quick without a script file: perl6 -e "say 1, 2, 4 ... 256" | 07:30 | |
Sivasakthikumar | Ok .. | 07:31 | |
masak | rakudo: .say for 1, 2, 4 ... 256 | ||
p6eval | rakudo fc57d1: OUTPUT«1248163264128256» | ||
07:32
im2ee joined
|
|||
cotto | rakudo: .say for 1, 2, 6 ... 33.4 | 07:32 | |
p6eval | rakudo fc57d1: OUTPUT«Attempt to return from exhausted Routine in sub EXHAUST at src/gen/CORE.setting:427 in sub coro at src/gen/CORE.setting:3733 in method reify at src/gen/CORE.setting:3703 in method reify at src/gen/CORE.setting:3507 in method reify at src/gen/CORE.setting:… | ||
JimmyZ | rakudo: .say for 1, 2, 11 ... 256 | ||
p6eval | rakudo fc57d1: OUTPUT«Attempt to return from exhausted Routine in sub EXHAUST at src/gen/CORE.setting:427 in sub coro at src/gen/CORE.setting:3733 in method reify at src/gen/CORE.setting:3703 in method reify at src/gen/CORE.setting:3507 in method reify at src/gen/CORE.setting:… | ||
Sivasakthikumar | yes .... | ||
cotto | lulz | ||
masak submits rakudobug | |||
cotto++ | 07:33 | ||
Sivasakthikumar | ... => is new operator in perl6 | ||
it's like a ranging oprator | |||
mberends | yes, it's called "series" | ||
there is also still .. but that is less magic | 07:34 | ||
cotto | masak, post that bug when you've filed it | ||
Sivasakthikumar | Ok cool ... | ||
masak | cotto: rt.perl.org/rt3/Ticket/Display.html?id=98678 | 07:35 | |
mberends: actually, it's called "sequence" these days. "series" refers to the sum of a sequence. | 07:36 | ||
Sivasakthikumar | where i can see more features reg perl6 | ||
pmichaud | huh | ||
masak | Sivasakthikumar: you mean learning material? | ||
cotto | has anyone gotten bus errors playing with mls' profiling code? | ||
Sivasakthikumar | yes | ||
masak | Sivasakthikumar: read ahmadzawawi.blogspot.com/2011/08/le...masak.html | ||
pmichaud | for 1,2,6 ... 33.4 { .say } | ||
rakudo: for 1,2,6 ... 33.4 { .say } | 07:37 | ||
p6eval | rakudo fc57d1: OUTPUT«Attempt to return from exhausted Routine in sub EXHAUST at src/gen/CORE.setting:427 in sub coro at src/gen/CORE.setting:3733 in method reify at src/gen/CORE.setting:3703 in method reify at src/gen/CORE.setting:3507 in method reify at src/gen/CORE.setting:… | ||
masak | Sivasakthikumar: or the Perl 6 book at github.com/perl6/book | ||
moritz | perl6.org/documentation/ | ||
pmichaud | that one should be fixable. | ||
moritz | I hope so :-) | ||
cotto | I'm getting one on the setting build after making a change, but it doesn't happen every time | ||
moritz | rakudo: for 1,2,6 ... * { .say } | ||
p6eval | rakudo fc57d1: OUTPUT«126Attempt to return from exhausted Routine in sub EXHAUST at src/gen/CORE.setting:427 in sub coro at src/gen/CORE.setting:3733 in method reify at src/gen/CORE.setting:3703 in method reify at src/gen/CORE.setting:3507 in method reify at src/gen/CORE.se… | ||
cotto | making a change to the profiling code, that is | ||
pmichaud | oh, I bet the problem is that it's unable to figure out the sequence. | 07:38 | |
Sivasakthikumar | thanks masak | ||
pmichaud | rakudo: for 1,2,3 ... * { .say } | 07:39 | |
p6eval | rakudo fc57d1: OUTPUT«(timeout)123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 | ||
pmichaud | yeah, sequence fail. | ||
cotto | pmichaud, is integration with oeis.org/ not a core language feature? | ||
;) | |||
masak | Sivasakthikumar: also, be fearless. ask questions, we like it :) | ||
moritz | cotto: nope, left to a module :-) | ||
pmichaud | I wonder if ... should be extensible to allow custom sequences, though :) | 07:40 | |
moritz has a question | |||
when will Perl 6 be finished? | |||
moritz runs and hides | |||
pmichaud | moritz: "Seven years after Perl 5 finishes." | ||
that's my prediction. | |||
cotto | When will COBOL be finished? | 07:41 | |
moritz hopes earlier | |||
masak | moritz: I finished my part Perl 6 several months ago. I'm just waiting for you other guys to finish your parts. :P | 07:42 | |
pmichaud | I wonder if RT 98678 is a problem with return/fail inside of a gather. | 07:43 | |
masak | oh wait here's one thing I didn't do. macros. can't be that hard, though. | ||
pmichaud | rakudo: sub xyz() { gather { take 1; return 2; take 3; } }; say xyz(); | ||
p6eval | rakudo fc57d1: OUTPUT«Attempt to return from exhausted Routine in sub EXHAUST at src/gen/CORE.setting:427 in block <anon> at /tmp/yiO7_acKn_:1 in sub coro at src/gen/CORE.setting:3733 in method reify at src/gen/CORE.setting:3703 in method reify at src/gen/CORE.setting:3507 i… | ||
JimmyZ | Perl 6 will be finished after Perl 7 is borned :) | ||
masak | so... exhausting! | ||
pmichaud | rakudo: sub xyz() { gather { take 1; fail 2; take 3; } }; say xyz(); | ||
p6eval | rakudo fc57d1: OUTPUT«Attempt to return from exhausted Routine in sub EXHAUST at src/gen/CORE.setting:427 in block <anon> at /tmp/69_SkYMqwO:1 in sub coro at src/gen/CORE.setting:3733 in method reify at src/gen/CORE.setting:3703 in method reify at src/gen/CORE.setting:3507 i… | ||
pmichaud | yup, that's the problem. | ||
Sivasakthikumar | thanks masak ... | 07:44 | |
07:45
thou left
|
|||
masak adds this to the ticket | 07:45 | ||
pmichaud | I wonder if this means that gather needs to trap and rethrow any return/fail exceptions. | ||
moritz | shouldn't it simply be opaque to them? | ||
erm, sorry, transparent. Not interact with them at all | 07:46 | ||
pmichaud | well, the GatherIter thinks there may still be more elements available. | ||
i.e., when the GatherIter is requested to produce another element, it returns control back to the sub | 07:47 | ||
a return/fail isn't signaling the iterator that the end of the list has been reached. That normally occurs when the gather exits. | |||
moritz | right | 07:48 | |
pmichaud | besides, what does "return" inside of a gather mean in this instance, anyway? By the time we reach the 'return' statement, the sub has in fact already exited. | ||
because gather returns a lazily iterated object to the caller -- i.e., it's the list that is the result of the xyz(), not the return statement. | 07:49 | ||
Sivasakthikumar | What is the result for this sample : for 100,98,96 ... 1 { .say } | ||
pmichaud | Sivasakthikumar: it will be an infinite list, counting down from 100 by 2s | 07:50 | |
moritz | rakudo: for 100,98,96 ... 1 { .say } | ||
p6eval | rakudo fc57d1: OUTPUT«(timeout)» | ||
Sivasakthikumar | Yes ... | ||
pmichaud | the stop condition has to be matched exactly | ||
moritz | rakudo: for 100,98,96 ... * <= 81 { .say } | 07:51 | |
p6eval | rakudo fc57d1: OUTPUT«10098969492908886848280» | ||
mberends | Sivasakthikumar: it probably works better if you end it with a 2 or a 0 | ||
cotto | Has anyone here been playing with the profiling code? | 07:52 | |
pmichaud | the mls++ profiling code? | ||
cotto | pmichaud, yup | ||
pmichaud | "playing" as in "using it" or as in "modifying it"? | ||
cotto | using | 07:53 | |
pmichaud | I used it a fair bit last week. I haven't had tuits this week yet. | ||
cotto | I'm trying to figure out if I've made it less stable or if it should be expected to occasionally crash while profiling the setting build | ||
pmichaud | I never experienced a crash the times I used it. | ||
I used it about 5-6 times. | |||
cotto | ok | ||
pmichaud | I'm 64-bit, if that makes a difference. | 07:54 | |
cotto | me too | ||
pmichaud | okay, I really need sleep here. bbiaw | 07:55 | |
cotto | 'night | ||
moritz | sleep well | 07:56 | |
masak | 'night, pm | 07:58 | |
cotto: thinking about it, writing an AI that acted randomly will actually be (1) harder than coming up with the naive winning algorithm I came up with, and (2) possibly very interesting once the competition gets started, because it'll confuse the heck out of all the AIs trying to analyze behavior :) | 08:24 | ||
cotto | masak, I like where this is going | ||
masak | cotto: I have a feeling lack of clear, to-the-point, "do this", non-source-code-based documentation is the big blocker for people diving into writing AIs. I plan to fix this, possibly this weekend. | 08:28 | |
cotto | proposing a random trade might be the most interesting part | ||
masak | cotto: if you decide to give it a go, let me know if you run up against any blockers. | ||
cotto | masak, certainly | ||
masak | cotto: trades are the only degree of freedom in the whole game. | ||
cotto: an AI is composed of only two routines: one which proposes trades, an one which accepts/rejects them. | 08:29 | ||
08:29
bonifatio joined
|
|||
cotto | masak, is the contest separate from masak/farm.git ? | 08:29 | |
masak | in what sense? | 08:32 | |
tadzik and I haven't decided how/where to store AI submissions yet. | |||
I'm pretty sure they will be stored somewhere publicly, though. | |||
08:34
sasy left
|
|||
cotto | masak, farm.git doesn't explain how to use different AIs. istr seeing that somewhere though. | 08:35 | |
I suppose it could be your sneaky way of getting contestants to read the source. | 08:41 | ||
masak | that's the problem -- at present, that might be the only way. | 08:48 | |
but I do have the lightning talk slides. | |||
they outline how the AI API looks. | |||
masak.org/carl/yapc-eu-2011-little-...m/talk.pdf | 08:49 | ||
see slide 43 :) | 08:50 | ||
dalek | kudo/nom: 0c6ec02 | (Martin Berends)++ | lib/Test.pm: [lib/Test.pm] move time recording operations as near as possible to tests |
||
kudo/nom: 4967c55 | (Martin Berends)++ | tools/test_summary.pl: [tools/test_summary.pl] add a --view option to report on test times |
08:51 | ||
cotto | If nom is the new master, should someone set the default branch on github to be nom instead of master? | 08:53 | |
cotto sleeps | |||
08:54
phenny left
08:55
phenny joined,
phenny left
|
|||
masak | cotto: probably, yes. but master isn't gone quite yet. | 08:55 | |
08:55
phenny joined
|
|||
masak linked the lightning talk slides from github.com/masak/farm as a start | 08:59 | ||
09:04
Tedd1 left
09:05
jferrero joined
09:16
Exodist left
|
|||
tadzik | good morning, zebry | 09:17 | |
mberends | hello tadzik | ||
pmichaud | a still not asleep Pm says "good night, tadzik" :-) | ||
tadzik | wow, you know who was on #parrot yesterday? Some guy called "panda" | ||
it's alive! :) | |||
mberends | heh | ||
pmichaud | I'm still very proud that so many Perl module authors have chosen to add my initials to the end of their files. :) | 09:18 | |
mberends | :) | ||
tadzik | :) | 09:19 | |
you could say that you're a father of Perl modules | |||
they keep your last name. Well, your name last | |||
mberends | pmichaud: and so many people calibrate their times to your wristwatch (7pm etc) | 09:20 | |
pmichaud | I'm not much for the am/pm distinction myself. I prefer 24 hour clocks. | ||
tadzik | me too | 09:21 | |
pmichaud | I do enjoy moritz' occasional "good am, pm" though :) | ||
masak | sleep well, pm. | 09:22 | |
pmichaud | moritz: ping | ||
mberends | pmichaud: if you've run tools/test_summary.pl --timing at least twice before, you can now use tools/test_summary.pl --view to browse the results | 09:23 | |
pmichaud | mberends: noted, thanks. | ||
moritz: unping, I'm heading to sleep for a short while. bbl. | 09:26 | ||
09:28
daxim joined
09:32
woosley left
09:34
pmurias joined
09:37
JimmyZ left
09:38
bs338 left
09:39
pmurias left
09:40
pmurias joined
09:46
JimmyZ joined
09:47
pmurias left
09:49
pmurias joined
|
|||
bbkr_ | what is the proper syntax for slurpy array of hashes signature? i need method to accept foo( {1=>2}, {3=>4}, ... ), i've tried :( *@params[Hash] ) but it croaks about amount of params in sub-signature | 09:52 | |
JimmyZ | array of pair? | ||
moritz | bbkr_: *@params where all(@params) ~~ Hash | 09:53 | |
09:55
xinming_ joined
|
|||
bbkr_ | rakudo: sub foo( *@params where { all(@params) ~~ Hash} ) { } ; foo ( {1=>2}, {"foo"=>"bar"} ); | 09:57 | |
p6eval | rakudo 4967c5: OUTPUT«Constraint type check failed for parameter '@params' in sub foo at /tmp/KLPC5jmxoL:1 in <anon> at /tmp/KLPC5jmxoL:1 in <anon> at /tmp/KLPC5jmxoL:1» | ||
moritz | sub foo( *@params where { all(@params) ~~ Hash} ) { }; foo() | ||
rakudo: sub foo( *@params where { all(@params) ~~ Hash} ) { }; foo() | |||
p6eval | rakudo 4967c5: OUTPUT«Constraint type check failed for parameter '@params' in sub foo at /tmp/E9qCtM3YH2:1 in <anon> at /tmp/E9qCtM3YH2:1 in <anon> at /tmp/E9qCtM3YH2:1» | ||
moritz | b: sub foo( *@params where { all(@params) ~~ Hash} ) { }; foo() | 09:58 | |
p6eval | b 1b7dd1: OUTPUT«Constraint type check failed for parameter '@params' in 'foo' at line 22:/tmp/obSti_S7cs in main program body at line 22:/tmp/obSti_S7cs» | ||
jnthn | >>~~<< | ||
09:58
xinming left
|
|||
jnthn | er, extening version | 09:58 | |
Seems neither ng or nom think that case auto-threads. | 09:59 | ||
JimmyZ | rakudo: sub foo( **@params ) { say @params.perl } ; foo ( {1=>2}, {"foo"=>"bar"} ); | ||
p6eval | rakudo 4967c5: OUTPUT«LoL.new(({"1" => 2}, {"foo" => "bar"}))» | ||
jnthn | Which maybe makes sense, or you can't write $foo ~~ Junction | ||
moritz | right | ||
b: sub foo( *@params where { all(@params).isa(Hash)} ) { }; foo() | |||
p6eval | b 1b7dd1: ( no output ) | ||
moritz | b: sub foo( *@params where { all(@params).isa(Hash)} ) { }; foo({a => 1}) | ||
p6eval | b 1b7dd1: OUTPUT«Constraint type check failed for parameter '@params' in 'foo' at line 22:/tmp/zuOC3FSTzP in main program body at line 22:/tmp/zuOC3FSTzP» | ||
moritz | same problem probably | 10:00 | |
jnthn | rakudo: sub foo( *@params where { all(@params).isa(Hash)} ) { }; foo({a => 1}) | ||
p6eval | rakudo 4967c5: OUTPUT«Constraint type check failed for parameter '@params' in sub foo at /tmp/4DV7y5WIgX:1 in <anon> at /tmp/4DV7y5WIgX:1 in <anon> at /tmp/4DV7y5WIgX:1» | ||
jnthn | hm | ||
moritz | b: sub foo( *@params where { [&&] @params.map({$_ ~~ Hash}) ) { }; foo({a => 1}) | ||
p6eval | b 1b7dd1: OUTPUT«===SORRY!===Unable to parse blockoid, couldn't find final '}' at line 22» | ||
moritz | b: sub foo( *@params where { [&&] @params.map({$_ ~~ Hash}) } ) { }; foo({a => 1}) | ||
jnthn | rakudo: sub foo( *@params where { @params >>~~>> Hash } ) { }; foo({a => 1}) | ||
p6eval | b 1b7dd1: ( no output ) | 10:01 | |
rakudo 4967c5: OUTPUT«Cannot access attributes in a type object in method pairs at src/gen/CORE.setting:4345 in method keys at src/gen/CORE.setting:4341 in sub hyper at src/gen/CORE.setting:7221 in block <anon> at /tmp/VLfLZtrJUP:1 in method ACCEPTS at src/gen/CORE.setting:104… | |||
moritz | b: sub foo( *@params where { [&&] @params.map({$_ ~~ Hash}) } ) { }; foo({a => 1}, {b => 2}) | ||
p6eval | b 1b7dd1: ( no output ) | ||
moritz | nom: sub foo( *@params where { [&&] @params.map({$_ ~~ Hash}) } ) { }; foo({a => 1}, {b => 2}) | ||
rakudo: sub foo( *@params where { [&&] @params.map({$_ ~~ Hash}) } ) { }; foo({a => 1}, {b => 2}) | |||
p6eval | rakudo 4967c5: ( no output ) | ||
jnthn | OK, hyper is missing a :D that makes my >>~~>> not work, I think. | ||
bbkr_ | what does this magic [&&] do in signatures? | 10:02 | |
jnthn | Also, all(@params>>.isa(Hash) :) | ||
moritz | bbkr_: it's just code inside a { ... } block | ||
jnthn | er, closing ) on the end | ||
rakudo: sub foo( *@params where { all(@params>>.isa(Hash)) } ) { }; foo({a => 1}) | 10:03 | ||
p6eval | rakudo 4967c5: ( no output ) | ||
jnthn | rakudo: sub foo( *@params where { all(@params>>.isa(Hash)) } ) { }; foo(1) | ||
p6eval | rakudo 4967c5: OUTPUT«Constraint type check failed for parameter '@params' in sub foo at /tmp/NaP8PFZ6C3:1 in <anon> at /tmp/NaP8PFZ6C3:1 in <anon> at /tmp/NaP8PFZ6C3:1» | ||
jnthn | There we go. | ||
bbkr_ | awesome | ||
10:03
lumi_ left
|
|||
bbkr_ | thanks for patience in answering my lame questions :) | 10:03 | |
jnthn | Though all(@params>>.ACCEPTS(Hash)) will just happen to run faster in nom. | 10:04 | |
($foo ~~ SomeType is cheaper than $foo.isa(SomeType)) | |||
Well, probably. | |||
:) | |||
JimmyZ | rakudo: sub foo( **@params ) { @params[0].perl.say }; foo( {1=>2}, {"foo"=>"bar"} ); | 10:05 | |
p6eval | rakudo 4967c5: OUTPUT«{"1" => 2}» | ||
JimmyZ | rakudo: sub foo( *@params ) { @params[0].perl.say }; foo( {1=>2}, {"foo"=>"bar"} ); | ||
p6eval | rakudo 4967c5: OUTPUT«{"1" => 2}» | ||
tadzik | make 400.76s user 5.18s system 108% cpu 6:12.86 total on blead parrot | 10:06 | |
10:08
daniel-s left
10:09
lateau_ joined
|
|||
im2ee | Hello :) | 10:10 | |
tadzik | hello | ||
10:12
JimmyZ left,
JimmyZ joined
10:14
yves joined
|
|||
im2ee | tadzik, how are you? :) | 10:15 | |
tadzik | pretty fine :) You? | ||
im2ee | Too. :) | ||
10:18
plobsing joined,
Trashlord left
10:20
donri joined
10:21
pmurias left,
lateau_ left
10:22
packetknife joined,
pmurias joined
10:24
packetknife left
10:27
yves_ joined
|
|||
Sivasakthikumar | 10:29 | ||
mls | hi jnthn! | 10:30 | |
10:30
Sivasakthikumar left
|
|||
mls | et al ;) | 10:30 | |
tadzik | hello hello | 10:31 | |
make spectest 1433.31s user 73.86s system 99% cpu 25:19.42 total | 10:32 | ||
mls | jnthn: not sure if you backlogged it, but we found why 'now' hands on a 32bit machine while you were on vacation | ||
10:32
daniel-s joined
|
|||
tadzik | b: say (1465.13 - 1433.31) / 1465.13 | 10:32 | |
p6eval | b 1b7dd1: OUTPUT«0.0217182093056589» | ||
mls | jnthn: The Num::Rat method goes into an infinite loop, as $a/$b/$c/$d get negative because of an integer overflow | 10:37 | |
There's no way the current time can be represented as a Rat when numerator and denominator are 32bit ints | 10:38 | ||
so it's pretty much unfixable with nom's current "Int == int" idea | 10:39 | ||
10:41
pmurias left
|
|||
jnthn | mls: Well, we made it work somehow in master, which also had the same idea. | 10:51 | |
mls: I suspect that was by promotion to Num or some such. | |||
colomon | master has promotion to Num all over the place. | ||
flussence | are Instants specified to be consistent between different perl6 runs? | 10:52 | |
colomon | in fact, almost all math is done as Num, and then converted back to Int only if it fits | ||
10:53
Exodist joined
|
|||
colomon | how do you get at master in the evalbot now? | 10:55 | |
10:55
JimmyZ left
|
|||
masak | colomon: 'b:' for the 2011-07 release, 'rakudo:' for the nom branch. | 10:57 | |
10:57
mkramer1 joined
|
|||
colomon | masak++ | 10:57 | |
masak | colomon: that wasn't a direct reply to your question, but that's what we have. | ||
colomon | b: say 1e20.Int | ||
p6eval | b 1b7dd1: OUTPUT«-9223372036854775808» | ||
colomon | nom: say 1e20.Int | ||
rakudo: say 1e20.Int # old habits... | 10:58 | ||
p6eval | rakudo 4967c5: OUTPUT«-9223372036854775808» | ||
flussence | a short-term fix for 'now' might be to define Instant == 0 as the start of the script... | ||
(it'll still break for dates far from the present, but it'll work for simple timer things) | 10:59 | ||
11:00
envi joined
|
|||
colomon | mls: do you have an example Num that causes trouble in Num.Rat? | 11:01 | |
11:02
pernatiy left
11:07
benabik left
11:18
woosley joined
11:22
Trashlord joined
11:30
yves left
11:32
cosimo joined
11:34
Psyche^ joined
11:38
Patterner left,
Psyche^ is now known as Patterner
|
|||
moritz | rakudo: say now.x | 11:39 | |
p6eval | rakudo 4967c5: OUTPUT«1315482008.61476» | ||
11:41
JimmyZ joined
|
|||
mls | colomon: any 10 digit number with some extra digit after the decimal point | 11:43 | |
e.g. 1315482008.61476 | 11:44 | ||
11:44
pernatiy joined
11:46
benabik joined
11:50
plobsing left
11:55
pmichaud left,
pmichaud joined
11:59
Shozan left
12:00
[Coke] left,
Shozan joined
12:12
lumi_ joined
12:20
Exodist left,
mberends left
|
|||
im2ee | How to exec system command and get output? :) | 12:25 | |
moritz | qx/.../, just like in p5 | 12:26 | |
but please don't do it on p6eval | |||
im2ee | p6eval should be secured, it is? :) | 12:28 | |
And it should be secured agains opening files, right? :) | |||
I won't to do it on p6eval, moritz . :) | 12:29 | ||
moritz | it should be. It isn't. Patches welcome :-) | ||
im2ee | You know.. Somebody can use it to destroy the machine, right? :) | 12:32 | |
moritz | well, I've tried to make that a bit harder | 12:33 | |
im2ee | I will start this bot on my machine, maybe i will find some bugs - and i write about it. Can I? :) | ||
moritz | there are user permissions, resource limits and a chroot involved | 12:34 | |
tadzik | I'm not sure those are even bugs | ||
im2ee | moritz, great. :) | ||
12:37
Exodist joined
|
|||
im2ee | tadzik, it's great too. :) | 12:41 | |
tadzik | :) | ||
12:50
jaldhar left
12:53
wamba joined,
abercrombie joined
12:54
satyavvd left
|
|||
felher | Taken from S12: "any class name mentioned in a method is also considered virtual, that is, polymorphic on the actual type of the object." Could someone please give an example of what that means? :) | 12:54 | |
12:55
Holy_Cow joined
12:57
im2ee left,
im2ee joined
|
|||
felher | I thought maybe it means something like: | 12:59 | |
perl6: class Base { class Test { method say_name() { say "base"; } }; method say_say_name() { Test.say_name(); } }; class Child is Base { class Test { method say_name() { say "Child"; } }; }; Base.say_say_name(); Child.say_say_name(); | |||
p6eval | rakudo 4967c5, niecza v9-11-g0f286c3: OUTPUT«basebase» | ||
..pugs: OUTPUT«ChildChild» | |||
13:00
Holy_Cow left,
jaldhar joined,
JimmyZ left
|
|||
moritz | I thin that "virtual class names" are a very bad idea | 13:00 | |
*think | |||
masak | it was a common idea back when A12 was written. | ||
13:00
woosley left
|
|||
moritz | since class names are scoped lexically, and lexical scopes are static (mostly) | 13:00 | |
and it would also mean you can't compute multi dispatch thingies at compile time etc. | 13:01 | ||
jnthn | Highly suspect it's a fossil. | ||
Otherwise how do you do $obj.SomeParent::foo() | |||
moritz too | |||
jnthn | If you want the virtual thing, just say "self" :) | 13:02 | |
felher | okay then. But nevertheless: what would it mean? Has it anything todo with what i said? Or am i completely off the track? | 13:03 | |
13:04
JimmyZ joined
|
|||
masak | felher: looks like what you wrote should work the way you think if what S12 says were actually according to spec :P | 13:04 | |
who will update S12 to spec? | |||
JimmyZ | you | 13:05 | |
哈哈 | |||
felher | masak: very well :) | ||
thnx folks. :) | |||
moritz | if it's just deleting that part, I can do that. | 13:06 | |
frettled braces. | 13:07 | ||
frettled curly braces. | |||
13:08
mux left,
LoRe_ left,
lucs left,
risou_awy left,
nine left,
jasonmay left,
phenny left,
Bucciarati left,
araujo left,
lue left,
ruoso left,
frettled left,
dukeleto left,
eternaleye left,
DarthGandalf left,
sjn left,
cotto_work left,
jrockway left,
pernatiy left,
BinGOs left,
nebuchadnezzar left,
literal left,
frettled joined,
mux joined,
LoRe_ joined,
lucs joined
13:09
nine joined,
ruoso joined,
jasonmay joined,
Bucciarati joined,
risou_awy joined,
cotto_work joined,
dukeleto joined,
phenny joined
13:10
lue joined,
araujo joined
|
|||
dalek | ecs: 3e3f556 | moritz++ | S12-objects.pod: [S12] remove a fossile noted by felher++ At least I find it very unlikely that virtual class names correspond to our current mindset of actually knowing some stuff at compile time. |
13:10 | |
tadzik | I'm glad to have anything "More suprisingly" removed :) | 13:11 | |
13:12
wooden joined,
wooden left,
wooden joined,
nebuchadnezzar joined,
DarthGandalf joined
|
|||
masak | moritz++ # removing fossils (sans final "e") | 13:13 | |
moritz | the 'e' in fossile is a fossile :-) | 13:14 | |
masak | you've been working too much with fissile material :P | 13:18 | |
moritz | indeed I have :-) | 13:19 | |
(basically *all* material is fissile, though it sometimes takes great effort) | 13:20 | ||
benabik | moritz: Hydrogen? | ||
13:21
pernatiy joined
|
|||
moritz | benabik: right, that was the exception I was thinking of. But I don't often work with hydrogen, and there's not much free hydrogen on earth | 13:21 | |
(ok, lots in the universe. I should have been more precise :-) | |||
benabik | moritz: Lots of free hydrogen around… If you casually drop high voltage wires in puddles, like I do. <.< >.> | 13:22 | |
colomon | rakudo: say 1315482008.61476.Int | 13:23 | |
p6eval | rakudo 4967c5: OUTPUT«1315482008» | ||
13:23
literal joined,
sjn joined
13:25
BinGOs joined
13:27
azm joined
13:29
jrockway joined
|
|||
azm | I need help | 13:29 | |
if ($ARGV[1] eq ") { | 13:30 | ||
how this line should be copleted without getting an error please ? | |||
moritz | " # | 13:31 | |
though in Perl 6 you'd write if @*ARGS[1] eq '...' | |||
(and this is a Perl 6 channel) | |||
flussence | or you could write a much more readable MAIN sub... | 13:34 | |
azm | I get error with: if ($ARGV[1] eq " #) { | 13:35 | |
13:35
domidumont left
|
|||
azm | this is the whole code pastie.org/2502783 | 13:35 | |
moritz | azm: that's not what I wrote | ||
azm | ah | ||
instead ) | 13:36 | ||
moritz | azm: and this is not a Perl 5 help channel. Try #perlhelp instead | ||
azm | I'm sorry | ||
flussence | actually reading the error message helps too | 13:37 | |
13:38
daxim left
|
|||
azm | moritz, #perlhelp does not exist | 13:39 | |
:/ | |||
still not working | |||
tadzik | maybe #perl-help then, and maybe on irc.perl.org | ||
azm | so like this : if ($ARGV[1] eq ""#) { | ||
so like this : if ($ARGV[1] eq "" #) { | |||
abercrombie | why do you keep writing the wrong one? | 13:40 | |
moritz | azm: the # (comment character) was just a trick of mine to complete the line, not the statement | ||
azm | abercrombie, I dont know what " # meant | ||
moritz | azm: so it was to quickly answer a question asked out of context, not as a good answer | ||
azm | ah, well | 13:41 | |
I posted whole code | |||
moritz | ... after my answer, yes | ||
azm: perldoc.perl.org/perlintro.html | |||
azm | man | ||
please | |||
its out of my range now | |||
moritz | just like perl 5 questions are out of #perl6 range | 13:42 | |
(hint, hint) | |||
azm | I asked in perl | ||
I got answer: if you're doing @ARGV processing, use Getopt::Long and save yourself some pain. | |||
which I dont know what means | |||
masak | so you came here for a different answer? :) | ||
azm | yep | ||
moritz | azm: that doesn't make it more on-topic here. | 13:43 | |
masak | azm: Getopt::Long is a nice CPAN module. | ||
azm | seems like you have nothing to solve here anyway | ||
moritz | masak: core even, iirc | ||
masak | azm: if you don't know about CPAN, you should definitely take some time to learn about it. you'll thank yourself. | ||
azm: what moritz++ said. core. | |||
azm | I know cpan | ||
but the code should work without it | |||
masak should takes some time to learn about core :) | |||
tadzik | azm: how is perlintro out of your range? | ||
masak | azm: we can tell you how to process arguments in Perl 6. :) | 13:44 | |
tadzik | azm: Getopt::Long is a core module | ||
masak | azm: it's really nice. | ||
azm | tadzik, Im trying to learn SEH exploitation and debugging | ||
not perl | |||
tadzik | SEH? | ||
azm | but I admit its kinda script kiddie style | ||
moritz | azm: then you're wrong here anyway. We won't write the scripts for you | ||
13:44
domidumont joined
|
|||
azm | moritz, havent asked for it | 13:44 | |
moritz | azm: then learn perl, and fix your problems. | 13:45 | |
azm | just correct mistakes | ||
moritz | correcting mistakes is 90% of a programmer's job | ||
writing the incorrect code in the first place is trivial. | |||
azm | tadzik, exception handling mechanisms | 13:46 | |
tadzik | mhm | ||
azm | ok, no problem | ||
I will learn perl6 when Im at it | |||
jnthn | azm: The line should be if ($ARGV[1] eq "") {. Any opening thingy in a programming language needs to having a matching closing thingy. Also, you're not going to get far if you don't learn the tools you're using properly. So I suggest investing some time to learn Perl so you can exploit SEH well. :) | ||
masak | jnthn++ | ||
azm | jnthn, I tried "" still got error | 13:47 | |
13:47
pnu left
|
|||
azm | and agree with you | 13:47 | |
masak | azm: what jnthn wrote works. | ||
13:47
Shozan left
|
|||
tadzik | ingy: nice work on Mo; if it had has (default => ()), it'd cover all my Moo uses :) | 13:47 | |
moritz | the next OO system will just be called M, right? :-) | 13:48 | |
tadzik | yes :) | ||
moritz | and the one after it '' | 13:50 | |
that's going to be fun to write :-) | |||
tadzik | . o O ( use what's::needed ) | ||
that'd be just what/s/needed.pm :) | |||
moritz | since in p5, symbol tables are just hashes, you *can* store something with an empty name in it | ||
jnthn | nom: class A { }. A.^add_method('', method foo() { say 'heh' }); A.''() | 13:51 | |
rakudo: class A { }. A.^add_method('', method foo() { say 'heh' }); A.''() | |||
p6eval | rakudo 4967c5: OUTPUT«===SORRY!===Confused at line 1, near "class A { "» | ||
jnthn | oh, it's not pascal... | ||
rakudo: class A { }; A.^add_method('', method foo() { say 'heh' }); A.''() | |||
p6eval | rakudo 4967c5: OUTPUT«Useless declaration of a has-scoped method in mainlineheh» | ||
moritz | heh! | ||
tadzik | eek | ||
jnthn | :) | ||
tadzik | rakudo: class A { }; A.^add_method('', my method foo() { say 'heh' }); A.''() | 13:52 | |
p6eval | rakudo 4967c5: OUTPUT«heh» | ||
tadzik | heh | ||
moritz | we used to have ''-named methods (back in b), from all those vtables | ||
jnthn | Yeah. | ||
rakudo: Any.''() | |||
p6eval | rakudo 4967c5: OUTPUT«Method '' not found for invocant of class 'Any' in <anon> at /tmp/Yp_n5zULa1:1 in <anon> at /tmp/Yp_n5zULa1:1» | ||
jnthn | phew :) | ||
moritz | you shouldn't look in Any but in All :-) | 13:53 | |
jnthn | rakudo: All.''() | ||
p6eval | rakudo 4967c5: OUTPUT«Could not find sub &All in <anon> at /tmp/vA_1n0YIfC:1 in <anon> at /tmp/vA_1n0YIfC:1» | ||
tadzik | rakudo: all(''())) | ||
jnthn | :P | ||
p6eval | rakudo 4967c5: OUTPUT«===SORRY!===Confused at line 1, near ")"» | ||
tadzik | rakudo: all(*.''())) | ||
p6eval | rakudo 4967c5: OUTPUT«===SORRY!===Confused at line 1, near ")"» | ||
jnthn | tadzik: one too many ) | ||
tadzik | oh | ||
rakudo: all(*.''()) | |||
p6eval | rakudo 4967c5: OUTPUT«Method '' not found for invocant of class 'Whatever' in <anon> at /tmp/wAQEuPwhH_:1 in <anon> at /tmp/wAQEuPwhH_:1» | ||
tadzik | oh, it stopped at Whatever | 13:54 | |
:) | |||
13:54
sftp joined
|
|||
benabik | tadzik: Rakudo's response to your question… "Whatever" | 13:54 | |
flussence | rakudo: *.*''() | 13:55 | |
p6eval | rakudo 4967c5: ( no output ) | ||
benabik | rakudo: sub del($_) { .perl.say }; del *.* | 13:56 | |
p6eval | rakudo 4967c5: OUTPUT«===SORRY!===Confused at line 1, near "del *.*"» | ||
13:56
pnu joined
|
|||
benabik | Ah, well. | 13:56 | |
13:57
mkramer1 left
|
|||
moritz | *.* just doesn't parse at a term :/ | 13:58 | |
benabik | rakudo: sub del($_) { .perl.say }; del *.*''() | 13:59 | |
p6eval | rakudo 4967c5: OUTPUT«()» | ||
flussence | std: *.*''()ZXZ,??? | 14:00 | |
p6eval | std e3c970e: OUTPUT«Potential difficulties: Useless use of quotes at /tmp/GqqwnsC8io line 1:------> *.*''⏏()ZXZ,???ok 00:01 120m» | ||
moritz | std: 1.''() | ||
p6eval | std e3c970e: OUTPUT«Potential difficulties: Useless use of quotes at /tmp/pqTg2skJpa line 1:------> 1.''⏏()ok 00:01 118m» | ||
moritz | TimToady: ^^ that seems bogus | ||
benabik | moritz: I just saw it in flussence's eval line and thought "I could write p6 code that makes DOS people nervous." | ||
flussence | moritz: so does the code itself, but still :) | 14:01 | |
moritz | flussence: $obj.''() looks perfectly fine to me | ||
which is that part that std complained about | |||
benabik | Are we going to start obfuscated p6 contests? Use '' for all your methods, etc? | 14:02 | |
moritz | benabik: start? you're a bit behind... :-) | ||
benabik: perlgeek.de/blog-en/perl-6/starry-obfu.html # a p6 obfu from 2009 | 14:03 | ||
benabik | moritz: That's… impressive. | 14:04 | |
moritz | benabik: thanks :-). Sadly it stopped working | ||
benabik | moritz: sadface | ||
moritz | due to a very sensible spec change though | ||
14:05
mtk left
|
|||
moritz | rakudo: say (* + *)(3) | 14:05 | |
p6eval | rakudo 4967c5: OUTPUT«Not enough positional parameters passed; got 1 but expected 2 in whatevercode <anon> at /tmp/ub7S4SnLbW:1 in <anon> at /tmp/ub7S4SnLbW:1 in <anon> at /tmp/ub7S4SnLbW:1» | ||
benabik | moritz: It used to do 3+3? | 14:06 | |
moritz | benabik: yes | ||
14:06
risou_awy is now known as risou
|
|||
benabik | That would be a sensible change then. | 14:06 | |
abercrombie | pwd | 14:11 | |
14:11
themunchman joined
|
|||
benabik | irc://irc.freenode.net/#perl6 | 14:11 | |
themunchman | hiya people | ||
masak | themunchman: hi! | ||
moritz | what about the bots? :-) | 14:12 | |
themunchman | how is every one | ||
14:13
wamba left
|
|||
themunchman | any women in here | 14:13 | |
flussence | geez, I can't believe chatmosphere charges three bucks a minute for this service, can you? :D | 14:14 | |
14:14
mtk joined
|
|||
themunchman | any women | 14:14 | |
flussence | .oO( I guess people clueless enough to be using it won't be fazed by that. hm ) |
14:15 | |
moritz | themunchman: yes, but they are here for Perl 6, not for you :-) | ||
themunchman | sound its just i wanna chat to anyone but do prefer to talk to women | 14:16 | |
14:16
JimmyZ_ joined
|
|||
masak | themunchman: why? | 14:16 | |
themunchman | dunno i find it easier to talk to women | ||
masak | fair enough. | 14:17 | |
themunchman | i know it sounds mad coming from a lad like | 14:18 | |
14:19
JimmyZ__ joined,
JimmyZ left,
JimmyZ__ is now known as JimmyZ
|
|||
flussence | (poor guy, he's spending money to use a mobile IRC app and they don't even tell him it's not AOL) | 14:19 | |
14:20
themunchman left
14:22
JimmyZ__ joined,
JimmyZ_ left
|
|||
masak | oh, a blackberry user. | 14:23 | |
that explains a lot. :) | |||
14:23
JimmyZ_ joined
|
|||
jnthn | Well, visiting #perl6 is at least a better use of a blackberry than organising riots in London... :P | 14:24 | |
14:24
JimmyZ left
14:25
JimmyZ joined
14:27
JimmyZ__ left
14:28
JimmyZ_ left
14:32
JimmyZ_ joined
14:34
JimmyZ left,
JimmyZ_ is now known as JimmyZ
|
|||
PerlJam reads lue's gist | 14:38 | ||
14:40
JimmyZ_ joined
14:41
molaf joined
14:42
JimmyZ left,
JimmyZ_ is now known as JimmyZ
|
|||
sorear | good * #perl6 | 14:42 | |
dukeleto | ~~ | 14:45 | |
14:47
thou joined
|
|||
masak | \o | 14:47 | |
flussence | sorear: would you be interested in having a graph for niecza like this? github.com/flussence/specgraphs/ra...-tests.png | 14:48 | |
sorear | flussence: yes | 14:49 | |
tadzik | ooh, it's pretty | 14:50 | |
flussence | the way I'm doing it is to read the TAP archive rakudo's `make spectest_smolder` leaves in its build dir. If niecza can do the same thing (run spectests and output a TAP archive) it should be pretty easy to add... | 14:53 | |
moritz | flussence: prove (1) has an --archive option | ||
flussence | well, looks doable :) | 14:54 | |
moritz | sh t/run_spectests --archive | 14:55 | |
sorear++ # having enough foresight to make that trivial | |||
sh t/run_spectests --archive <archive_name> | |||
felher | I'm (obviously) not a native english speaker so i better ask: "These are parsed as there were a space there, so ..." <--- are we missing an 'if' after 'as'? | 14:56 | |
flussence | felher: good catch! | 14:57 | |
tadzik | yeah | ||
felher | good. | ||
dalek | ecs: a2f4fb9 | (Felix Herrmann)++ | S12-objects.pod: [S12] typo fix: insert missing if |
||
moritz | felher++ | 14:58 | |
benabik | felher: If you're catching mistakes like that, it's not so obvious. :-) | 14:59 | |
felher | benabik: thnx. :) | 15:01 | |
15:04
scottp left,
scottp joined,
scottp left,
scottp joined
15:05
scottp left,
scottp joined,
scottp left,
scottp joined
15:06
scottp left,
scottp joined
15:07
alester joined
|
|||
flussence | slight snag in my plan... "t/spec/S02-literals/hash-interpolation.t ...................... xargs: prove: terminated by signal 15" | 15:07 | |
15:10
jtpalmer_ joined
15:11
TimToady_ joined,
pernatiy left,
pernatiy joined,
tty234_ joined,
hillu_ joined
15:12
betterwo1ld joined
15:13
tlocalhos left,
agentzh joined
|
|||
dalek | kudo/nom: a392725 | jonathan++ | src/Perl6/Actions.pm: Toss unused variables and initializations. |
15:14 | |
kudo/nom: 842c4f7 | jonathan++ | src/core/EXPORTHOW.pm: Remove workarounds; replace a bunch of PIR ops with NQP ops. |
|||
15:14
jrockway_ joined
15:15
tlocalhos joined,
Alias_ left
|
|||
moritz | flussence: fwiw I built a tap archive of niezca's 'make spectest' just fine | 15:15 | |
15:16
tomaw_ joined
|
|||
sorear | note, it didn't always work like this | 15:16 | |
if you're building your graph back into the past, things may be more fun. | |||
moritz | sed 's|^|t/spec/|' t/spectest.data | xargs prove -e 't/fudgeandrun' --archive file.tgz | 15:17 | |
should do though | |||
15:18
JimmyZ left,
mtk left,
jrockway left,
lue left,
yves_ left,
bonifatio left,
espadrine left,
renormalist left,
Sarten-X left,
TimToady left,
betterworld left,
tty234 left,
hillu left,
tomaw left,
jtpalmer left,
scottp left,
Sarten-X2 joined
15:19
scottp joined,
scottp left,
scottp joined,
scottp left
15:20
scottp joined,
scottp left,
scottp joined
|
|||
flussence | I get the same thing with that, prove gets a sigterm around S02 (at a different test file though) :/ | 15:23 | |
15:23
yves_ joined,
lue joined,
mtk joined,
JimmyZ joined
|
|||
dalek | kudo/nom: 7360e33 | jonathan++ | src/Perl6/Grammar.pm: Unify EXPORTHOW handling, avoid some code duplication, make nested settings work. |
15:23 | |
kudo/nom: 7c001ff | jonathan++ | / (3 files): Add first cut of SAFE.setting, for the benefit of p6eval. Plenty missing, but should make it clear to other interested folks how to do more. |
|||
jnthn | moritz: > perl6 --setting=SAFE -e "unlink 'README'" | ||
unlink is disallowed in safe mode | |||
15:23
bonifatio joined
15:24
JodaZ joined,
bonifatio left
15:25
agentzh left
|
|||
moritz | jnthn++ | 15:26 | |
15:27
JodaZ left
15:28
scottp left
|
|||
jnthn | .oO( oh noes, the .^add_fallback cat is out the bag... ) |
15:28 | |
moritz | I did notice that in the diff | 15:29 | |
and thought "cool, I've wanted such a thing for quite some time" | |||
jnthn | Well, it's been used in traits.pm for some weeks. :) | ||
moritz | it also makes it possible to make Failure much more robust | ||
jnthn: but I didn't notice it in there :-) | |||
jnthn | I'd point out ti's not spec, but *none* of the declarative bits of the metamodel are in S12, so it's as spec as .^add_method really. :) | 15:30 | |
PerlJam | .oO( Who puts cats in bags anyway? ) |
15:31 | |
flussence | cat burglars? | ||
jnthn | nom: sub foo(::T $x) { say T }; foo(42) | 15:41 | |
ARGH!! | |||
rakudo: sub foo(::T $x) { say T }; foo(42) | |||
p6eval | rakudo 4967c5: OUTPUT«Int()» | ||
jnthn | It's going to take me weeks to stop typing "nom"... | 15:42 | |
tadzik | I'll fix this | ||
jnthn | Well, I wasn't especially asking for it back...but I won't object either :) | ||
@other may though :) | |||
PerlJam | tadzik: I'm asking for it back since jnthn is reluctant to do so :) | ||
moritz | tadzik will fix jnthn not type 'nom:' anymore? :-) | 15:43 | |
masak .oO( "I'll 'take care' of him" ) | |||
tadzik | I'll use --setting=SAFE too | ||
jnthn | masak: o.O | 15:44 | |
:P | |||
moritz | ++tadzik | ||
dalek | albot: 9758de2 | tadzik++ | evalbot.pl: Add nom as an alias for rakudo. Use SAFE.setting |
||
tadzik | evalbot control restart | ||
15:44
p6eval left,
p6eval joined,
ChanServ sets mode: +v p6eval
|
|||
tadzik | nom: say 1 | 15:44 | |
jnthn | rakudo: sub foo(::T $x) { my T $x; say $x }; foo(42) | 15:45 | |
tadzik | okay, I suck at this | ||
masak | now nothing works! :/ | ||
tadzik | could anyone review that? | ||
p6eval | rakudo 4967c5: OUTPUT«===SORRY!===Redeclaration of symbol $x at line 1, near "; say $x }"» | ||
tadzik | oh | ||
rakudo: say 1 | |||
p6eval | rakudo 4967c5: OUTPUT«1» | ||
jnthn | rakudo: sub foo(::T $x) { my T $y; say $y }; foo(42) | ||
p6eval | rakudo 4967c5: OUTPUT«Cannot call a method on type variable T in find_method at src/gen/Metamodel.pm:261 in sub say at src/gen/CORE.setting:4624 in sub say at src/gen/CORE.setting:4631 in sub foo at /tmp/yKO37xgGyU:1 in <anon> at /tmp/yKO37xgGyU:1 in <anon> at /tmp/yKO37xgGy… | ||
tadzik | maybe it didn't pull yet | ||
benabik | tadzik: Or it didn't restart? | ||
jnthn | aha, that's the bit I hadn't done... | 15:46 | |
tadzik | benabik: I've just restarted it | ||
moritz | tadzik: the next rebuild is scheduled in 4 minutes, iirc | ||
tadzik | okay | ||
moritz | evalbot rebuild nom | ||
p6eval | OK (started asynchronously) | ||
moritz | but that way it's faster :-) | ||
tadzik | that's nom, or evalbot? | 15:47 | |
moritz | oh, and evalbot doesn't 'git pull' itself | ||
nom | |||
benabik | running code automatically downloaded is bad. | ||
moritz | that's what evalbot does all the time :-) | ||
dunno why I found this particular instance more disturbing than countless others | 15:48 | ||
15:48
pmurias joined
15:49
tokuhirom joined
|
|||
masak | "p6eval: user string injection, as a bot" ;) | 15:49 | |
benabik | heh. | ||
PerlJam | um ... can the "b" entry be removed in the evalbot? Wasn't it for "safe mode" ? | ||
jnthn | masak: Did you post a roles fail earlier today? I can't find it in the backlog? | ||
PerlJam: No, it's so we can get at the beijing release still. | |||
PerlJam | oh | 15:50 | |
moritz | it has a simplistic safe mode | ||
b: open('foo', :w) | |||
p6eval | b 1b7dd1: OUTPUT«Operation not permitted in safe mode in 'Safe::forbidden' at line 2:/tmp/wxGlx4xfeX in main program body at line 22:/tmp/wxGlx4xfeX» | ||
moritz | b: pir::die('foo') | ||
p6eval | b 1b7dd1: OUTPUT«foo in main program body at line 22:/tmp/FGZNwM0sbk» | ||
moritz | seems I didn't disable pir:: | ||
flussence | IIRC ng's "safe mode" used a PIR blacklist | ||
moritz | right | 15:51 | |
(as can be seen in p6eval's source) | |||
15:52
mj41 left
|
|||
masak | jnthn: only that parametric roles aren't implemented yet. | 15:52 | |
it might've been yesterday. | |||
yes, it was. | 15:53 | ||
jnthn | rakudo: role Foo[::T] { method x(T $x) { say 'ok' } }; class C does Foo[Int] { }; C.x(42); C.x('hi') | ||
p6eval | rakudo 4967c5: OUTPUT«okNominal type check failed for parameter '$x'; expected Int but got Str instead in method x at /tmp/UixgPEvv0z:1 in <anon> at /tmp/UixgPEvv0z:1 in <anon> at /tmp/UixgPEvv0z:1» | ||
jnthn | That looks...kinda implemented... ;) | ||
(I know there's some holes, just wondered which one you'd found.) | 15:54 | ||
pmurias | sorear: have you thought about what we would need for p5 interop in niecza? | ||
phenny | pmurias: 03:29Z <sorear> tell pmurias lib/BigInteger.cs is partially under the MSPL. | ||
15:55
jevin left
|
|||
masak decommutes | 15:56 | ||
jnthn: irclog.perlgeek.de/perl6/2011-09-07#i_4389614 | 15:57 | ||
15:57
masak left
|
|||
jnthn | oh! | 15:57 | |
Sheesh, if it's as raining as hard in Malmo as it is here, that's a pretty sucky choice of time to decommute.. | 15:58 | ||
15:59
jevin joined
|
|||
jnthn | I guess doing Moon["blue"] as a term is a runtime currying of the Moon role rather than a compile time one. | 16:02 | |
as in, folks would expect to do Moon[$x] too | |||
rakudo: my $x = Int; role Foo[::T] { method x(T $x) { say 'ok' } }; class C does Foo[$x] { }; C.x(42); C.x('hi') | 16:03 | ||
p6eval | rakudo 4967c5: OUTPUT«===SORRY!===Cannot use '$x' as an argument to a parametric role as its value is not known at compile time at line 1, near " { }; C.x("» | ||
TimToady_ | you will note that "blue" is a constant, so can be constant folded, methinks | ||
jnthn | TimToady_: Oh, it could be. | 16:04 | |
TimToady_: We already can do that for the other case, iirc | |||
TimToady_ | we'll probably rely on that for my @shaped[10;10] too | ||
jnthn | TimToady_: My question is whether Foo[$x] as a term is something we attempt to resolve at compile time or runtime. | ||
16:04
Reaganomicon left
16:05
lichtkind joined
|
|||
PerlJam | jnthn: general case has to be runtime, doesn't it? | 16:05 | |
jnthn | TimToady_: (Of course, compile time if all things are constant, runtime otherwise is possible too...) | ||
PerlJam: I don't know, that's why I'm asking ;) | |||
TimToady_ | that's called "constant folding" :) | ||
notably, roles are immutable | |||
jnthn | OK, put another way | ||
16:06
JimmyZ_ joined
|
|||
TimToady_ | so it depnds only on the argument | 16:06 | |
jnthn | role Foo[::T] { }; for Int, Num, Str { Foo[$_].new } | ||
Works? Or compile time error? | |||
16:06
daniel-s left
|
|||
TimToady_ | why shouldn't it work? | 16:06 | |
and why shouldn't my @shaped[$x;$y] work? | |||
jnthn | Well, the argument for it not working is that types are declarationy | 16:07 | |
PerlJam idly wonders what Foo[*] would be used for (if anything) | |||
jnthn | I consider my @shaped[$x;$y] a differnt case, tbh. | ||
TimToady_ | but types must also be elaborated at run time, and that can be parameterized | ||
how is it different? | |||
moritz | PerlJam: obviously to create containers that can just hold Whatever-stars :-) | ||
PerlJam | map Foo[*].new, Int, Num, Str; # ? | ||
jnthn | TimToady_: how is it the same? :) | 16:08 | |
moritz | PerlJam: NOOOO | ||
@array[*] doesn't autocurry either | |||
16:08
JimmyZ left,
JimmyZ_ is now known as JimmyZ
|
|||
jnthn | TimToady_: Anyway, if you think it's at runtime, that's fine by me. | 16:09 | |
PerlJam | moritz: well, that would be "different things different" then | ||
moritz | PerlJam: but they *look* the same | ||
jnthn | TimToady_: I could argue it as not being along the lines of "if it's a type then we should have it fully defined at declaration time", but I agree it's not in a declarational context here and so needn't be resolved so early. | ||
er, compile time more than declaration time | 16:10 | ||
jnthn isn't communicating this too well :/ | |||
PerlJam | jnthn: but types don't have to be fully defined do they? They just need to let Perl know their names. | ||
jnthn | PerlJam: They don't, and Foo[Int] isn't really fully defined either. | 16:11 | |
TimToady_ | if we don't allow parametric run-time types, then we'll end up forcing people to write evals and such | 16:12 | |
jnthn | TimToady_: Very good point. | ||
TimToady_ | and I think we can reasonably rely on constant folding to tell us when we know everything we need to know at compile time | ||
jnthn | TimToady_: OK, I do it runtime-y, and I can put in a "we know this at compile time" optimization a little later too :) | ||
Or maybe I just put it in now if it's easy. | |||
TimToady_ | of course, if the code is being *run* in a declaration (such as a use), then we still need to know the value at compile time | 16:13 | |
jnthn | Yeah, that's the case in a class C does Foo[...] { ... } | ||
TimToady_ | but that's different from declarations that allow parametricity, such as shapes and role args | ||
16:13
thou left
|
|||
jnthn | Do you see my @shaped[10;10] as being implemented that shape as some argument to a parametric role? | 16:14 | |
TimToady_ | it seems likely to me | ||
jnthn | OK, I'd not looked at it that way before. | ||
I like it though. :) | 16:15 | ||
TimToady_++ | |||
TimToady_ | \o/ for small unificaitons | ||
*ti | |||
jnthn | Is there some reason my @shaped[10,10] would not work? | 16:16 | |
jnthn checks to see if S09 says anything on the subject :) | 16:17 | ||
PerlJam | so, is my @shaped[10;10]; really something like my Array[10][10] @shaped; ? (or, what does that look like?) | 16:18 | |
jnthn | PerlJam: Not that, I dobut. | ||
PerlJam: Maybe Array[:shape(10;10)] or some such | |||
PerlJam | I'm not sure what that means either. | 16:20 | |
thinking of it in a role Array[T::] { ... } sense. | |||
jnthn | That works. role Array[::T, LoL :@shape] { ... } | 16:21 | |
Or some such. | |||
Role signatures can do named args too. :) | |||
PerlJam | aye, but what would ::T be ? | 16:23 | |
TimToady_ | we just try to be consistent about using ; to separate dimensions, and reserve , for separating enumerated value intended for the definition, which doesn't make sense for arrays, but does make sense for hashes | 16:24 | |
s/definition/dimension/ | |||
16:24
lichtkind left
|
|||
jnthn | aha, ok | 16:24 | |
TimToady_ | my %shaped{<a b c>} allows 3 keys in the first dimension | 16:25 | |
jnthn | PerlJam: role Array[::T = Mu, LoL :@shape] { ... } is more realistic. | ||
TimToady_: oh...we snuck in perfect hashing? :) | |||
PerlJam | jnthn: yeah, after I asked the question, I thought of about 3 things it could be :) | ||
though, could you elide the ::T entirely? | 16:26 | ||
16:26
birdwindupbird left
|
|||
jnthn | rakudo: role R { }; say R.HOW.archetypes.parametric | 16:26 | |
p6eval | rakudo 4967c5: OUTPUT«1» | ||
jnthn | rakudo: class R { }; say R.HOW.archetypes.parametric | ||
p6eval | rakudo 4967c5: OUTPUT«Method 'gist' not found for invocant of class 'Undef' in sub say at src/gen/CORE.setting:4631 in <anon> at /tmp/MawL53bCQ4:1 in <anon> at /tmp/MawL53bCQ4:1» | ||
jnthn | heh | ||
TimToady_ | we don't mandate perfect hashing, but it's nice if it's possible when it's possible :) | ||
jnthn | PerlJam: Not quite sure I follow. | 16:27 | |
PerlJam: We need it there for the my Int @s[10;10] case | |||
PerlJam | I guess I keep thinking of the "parameter" in parameterized roles primarly as "types", but they could be *anything* | ||
jnthn | PerlJam: Indeed. | ||
16:28
uasi left
|
|||
TimToady_ | types are just strange values :) | 16:28 | |
jnthn | PerlJam: I find C#'s generics a bit restrictive compared to Perl 6 parametric roles now :P | ||
16:28
uasi joined
|
|||
jnthn | TimToady_: Turns out that the compile time known optimization for the role args looks trivial to implement so I'll just do it now. :) | 16:29 | |
PerlJam | jnthn++ | ||
TimToady_ | the spec probably needs to say more about reliance on constant folding rather than arbitrary restrictions... | 16:30 | |
16:33
uasi left
|
|||
PerlJam | "anything that can be known at compile time, should be" :) | 16:33 | |
16:33
kaare_ joined
|
|||
pmurias | TimToady_: the extent to which things constant fold won't be the same across different compilers | 16:34 | |
16:35
tomaw_ is now known as tomaw
|
|||
TimToady_ | it will if it's part of the spec and test suite | 16:35 | |
we do probably need to do a better job of declaring which routines are pure for that to work out well though | 16:37 | ||
16:37
lichtkind joined
|
|||
lichtkind | cheers chanel | 16:37 | |
TimToady_ | "pure" is badly overloaded; "stateless" is more like | 16:38 | |
lichtkind | nom: (2..4) | ||
TimToady_ | maybe we need a "fun" declarator :) | ||
lichtkind | haha | ||
some talks were canceled so there will be more perl 6 stuff tomorrow in turino :) | 16:39 | ||
pmurias | TimToady_: are there a lot of places where a constant or a thing that can be constant folded is required? | ||
lichtkind | nom: say 1 | ||
jnthn | lichtkind: "rakudo:" is nom branch now. | ||
lichtkind | jnthn: thanks | ||
rakudo: (1..5) | 16:40 | ||
p6eval | rakudo 4967c5: ( no output ) | ||
lichtkind | rakudo: say (1..5).WHAT | ||
p6eval | rakudo 4967c5: OUTPUT«Range()» | ||
lichtkind | rakudo: say @(1..5).WHAT | ||
p6eval | rakudo 4967c5: OUTPUT«List()» | ||
TimToady_ | pmurias: depends on how you look at it, since it's recursively defined, and you want x + y to be constant if both x and y are constant, so both those slots "require" a constant in that sense | ||
lichtkind | excuse me for spam here but since ubuntu screwed up their wlan driver i have to do my tests here in channel for tomorrow | 16:41 | |
TimToady_ | the actual use may only be to optimize away the op though, so then it depends on whether you require an optimizer :) | ||
lichtkind | rakudo: my $a = (1..5); say $a.WHAT | ||
p6eval | rakudo 4967c5: OUTPUT«Range()» | ||
lichtkind | rakudo: my $a = (1,5); say $a.WHAT | 16:42 | |
p6eval | rakudo 4967c5: OUTPUT«Parcel()» | ||
lichtkind | rakudo: my $a = | (1,5); say $a.WHAT | ||
p6eval | rakudo 4967c5: OUTPUT«Could not find sub &prefix:<|> in <anon> at /tmp/qF8GZJvDmy:1 in <anon> at /tmp/qF8GZJvDmy:1» | ||
lichtkind | rakudo: my $a = |(1,5); say $a.WHAT | ||
p6eval | rakudo 4967c5: OUTPUT«Could not find sub &prefix:<|> in <anon> at /tmp/_jWPPyU6aM:1 in <anon> at /tmp/_jWPPyU6aM:1» | ||
jnthn | lichtkind: fwiw, you can also privmsg p6eval :) | ||
16:42
envi left
|
|||
lichtkind | rakudo: my $a = ||(1,5); say $a.WHAT | 16:42 | |
p6eval | rakudo 4967c5: OUTPUT«Could not find sub &prefix:<|> in <anon> at /tmp/8whMv4b4pb:1 in <anon> at /tmp/8whMv4b4pb:1» | ||
lichtkind | jnthn++ | ||
thanks | |||
TimToady_ | but in this case it's nice to know that prefix:<|> is missing | 16:43 | |
jnthn | ooh, yes | ||
b: my $a = ||(1,5); say $a.WHAT | |||
p6eval | b 1b7dd1: OUTPUT«Capture()» | ||
flussence | .oO( plzfix:<|> ) |
||
lichtkind | captures are still around? | ||
jnthn | :P | ||
lichtkind: captures aren't going anywhere :) | 16:45 | ||
lichtkind | :) | ||
jnthn | ...I hope! :) | ||
lichtkind | are there still built with / .... what are they now ? | ||
:) | 16:46 | ||
16:46
azm left
|
|||
lichtkind | so captures are the hash context of parcels, because named args are default? | 16:49 | |
jnthn | A capture has a positional part and a hash part | ||
pmichaud | good morning, #perl6 | 16:53 | |
tadzik | good morning pmichaud | 16:54 | |
dalek | kudo/nom: a2a5ab8 | jonathan++ | src/Perl6/Actions.pm: Implement usage of parametric roles in term position. We specialize them runtime at latest, but if all the arguments are constants (including other types) then we just resolve it once at compile time, which will be faster. |
16:56 | |
lichtkind | jnthn: but whats the diff from parcel? | ||
16:57
MayDaniel joined
|
|||
lichtkind | tadzik: cheers | 16:57 | |
jnthn | o/ pmichaud | ||
tadzik | hello lichtkind | ||
jnthn | lichtkind: parcel only has positional part | ||
pmichaud | actually, a parcel doesn't even have a positional part :) | ||
it's just a set of things | 16:58 | ||
if you treat a parcel as a positional, it flattens | |||
lichtkind | but it has a order | ||
pmichaud | (okay, so in that case I guess it does have a positional part... but there's some intermediate stuff there :) | ||
lichtkind | it has no iteratorß | ||
jnthn | lichtkind: Perhaps best way to think of parcel is as a runtime representation of a list of comma-sepearated things in the program. | ||
lichtkind | ß | ||
? | 16:59 | ||
tadzik | ss | ||
16:59
s1n left
|
|||
pmichaud | if you iterate a parcel, it's first flattened into a List, and that's iterated | 16:59 | |
TimToady_ | a parcel is list of arguments that does not yet know what context it will be used in | ||
if you put a parcel in the top level of a call, it turns into capture | |||
at which point pairs promote to named args | 17:00 | ||
it's another one of those things that you hope happens at compile time most of the time :) | 17:01 | ||
lichtkind | :) | ||
17:01
Reaganomicon joined
|
|||
lichtkind | thank you very much now i just hae to get the diff btw list and arrray | 17:01 | |
or are the syn still valid on that? | 17:02 | ||
pmichaud | the syn are somewhat incorrect on that. still my fault. | ||
lichtkind | pmichaud++ put a warning sign on some | ||
ah | |||
pmichaud | a list is just a sequence of items. an array is a list of scalar containers | ||
TimToady_ | by default | ||
tadzik | jnthn: hacking on something? | 17:03 | |
jnthn | tadzik: Trying to sort out parametrics a bit more. | ||
tadzik | okay | ||
dalek | kudo/nom: c8b7c99 | jonathan++ | src/Perl6/Metamodel/ (2 files): Curried roles should be punnable and able to be passed around. |
||
tadzik | rakudo: gist.github.com/1203934 | ||
p6eval | rakudo 7c001f: OUTPUT«===SORRY!===In "has" declaration, typename Pies::Ecosystem must be predeclared (or marked as declarative with :: prefix) at line 40, near " $.ecosyst"» | ||
tadzik | maybe your fixes will fix that too :) | 17:04 | |
jnthn | Well, the two I just put in make masak's blue moon example from yesterday work. :) | ||
17:05
daniel-s joined
|
|||
jnthn | tadzik: golfed to 5 mines. :) | 17:06 | |
er | |||
...5 lines. | |||
tadzik | nice :) | ||
jnthn | .oO( and it explodes... ) |
||
tadzik | successful golf is successful | 17:07 | |
17:07
benabik left
|
|||
jnthn | tadzik: oh, I think I know what's going on there. | 17:07 | |
lichtkind | reading what is a parcel i woder if there is still a Seq() around? | ||
because there is SeqIter | |||
and such | |||
jnthn | lichtkind: In nom I think we don't have Seqs any more. | ||
pmichaud | at the moment, nom doesn't have a Seq, nor a SeqIter | ||
lichtkind | what its called now | 17:08 | |
pmichaud | Seq comes from a time when we didn't quite understand the immutable/mutable distinctions needed for lists | ||
lichtkind | oh in tablets are still seqiter | ||
tadzik | jnthn: great :) | ||
jnthn | .oO( non-seqiter ) |
||
17:08
masak joined
|
|||
lichtkind | its just iter? | 17:09 | |
17:09
envi joined
17:10
JimmyZ_ joined
|
|||
jnthn | tadzik: I try and fix it either this evening, or tomorrow. | 17:10 | |
tadzik: Got tomorrow set aside for Perl 6 stuff... | |||
tadzik | oh cool | 17:11 | |
no hurries | 17:12 | ||
lichtkind | brb | ||
jnthn | Well, I really want Pes to work again, so a little hurry ;) | ||
tadzik | (: | ||
jnthn | er, Pies :) | ||
tadzik | we could automate module testing then | ||
17:12
lichtkind left
|
|||
jnthn tries to find his "how to implement role subtype checking" notes that he wrote on the plane to Riga... | 17:13 | ||
17:13
JimmyZ_ left,
JimmyZ left
|
|||
moritz | b hb vbblj - hb n v | 17:16 | |
$daughter types rather vigorously :-) | 17:17 | ||
17:17
pernatiy left
|
|||
jnthn | std: b hb vbblj - hb n v | 17:17 | |
p6eval | std e3c970e: OUTPUT«===SORRY!===Undeclared routines: 'b' used at line 1 'hb' used at line 1,1 'n' used at line 1 'v' used at line 1 'vbblj' used at line 1Check failedFAILED 00:01 119m» | ||
TimToady_ | strong typing, you mean | ||
jnthn | Just needs to declare those routines and it's fine Perl 6 :) | ||
TimToady_ | well, vbblj could be a constant | 17:18 | |
so could v | |||
maybe all words beginning with v are constant in her language | |||
tadzik | surely everything beginning with a Capital is a Noun :) | 17:19 | |
17:20
wamba joined,
daniel-s left
17:23
uasi joined,
Chillance joined
|
|||
moritz | she only seems to use v\w+ words in written language though | 17:23 | |
TimToady_ | so the Das of Das Capital is a noun? :P | 17:24 | |
tadzik | I don't think so | ||
17:26
Trashlord left
17:36
jevin left
17:37
jevin joined
17:50
daniel-s joined
17:52
molaf left
17:53
tdignan left
17:54
tdignan joined,
risou is now known as risou_awy
|
|||
TimToady_ | you can fission hydrogen too, but it takes a rather large particle accelerator to persuade quarks to decontainerize :) | 18:05 | |
basically, it must supply enough energy to create "consolation" quarks... | 18:06 | ||
18:11
MayDaniel left
|
|||
pmichaud wonders about the quantum leap that led to that comment :) | 18:11 | ||
18:14
Reaganomicon left
|
|||
moritz | there where quite many invovled :-) | 18:14 | |
*were | |||
18:16
daniel-s left
18:20
daniel-s joined
|
|||
dalek | d: bb4f150 | larry++ | STD.pm6: Don't call .''() useless; it's merely inadvisable |
18:21 | |
masak | a quantum leap is generally a very, very small leap. | 18:22 | |
cotto_work | thanks for quantifying that | 18:24 | |
masak | twice :) | 18:25 | |
18:25
uasi left
18:26
tokuhirom left
|
|||
masak | std: /a*+/ | 18:26 | |
p6eval | std e3c970e: OUTPUT«ok 00:01 119m» | ||
masak | std: /a*+*+/ | 18:27 | |
p6eval | std e3c970e: OUTPUT«===SORRY!===Quantifier quantifies nothing at /tmp/NH9jcxYkk3 line 1:------> /a*+*+⏏/Check failedFAILED 00:01 119m» | ||
masak | hm. | ||
18:28
ponbiki left
|
|||
TimToady_ | + is a fairly standard ratchet adverb these days | 18:29 | |
masak | it is? | 18:30 | |
18:32
jevin left
|
|||
TimToady_ | see "possessive" in perlre for instance | 18:32 | |
pmichaud | I meant "quantum leap" in the sense that you don't see any intermediate steps from A to B, not in the sense that it's a large leap. Well, it's a leap of faith that somehow something got from A to B without traveling any known points in between. :) | 18:34 | |
s/known/knowable/ | |||
18:34
jevin joined
|
|||
TimToady_ | the quantum tunnel both meets and doesn't meet in the middle of the mountain... | 18:34 | |
diakopter | TimToady_: you have a _ | 18:36 | |
tadzik | ogon | ||
TimToady_ | hmm, so I do | ||
18:36
TimToady_ is now known as TimToady
|
|||
masak | deogonization. | 18:37 | |
18:37
ponbiki joined
18:38
wamba left
|
|||
TimToady | no carp allowed? | 18:38 | |
masak | TimToady: I know of .* and .? and .+ and .*? and .?? and .+? and .*: and .?: and .+: | 18:39 | |
TimToady: but I don't know of any of these "possessive" things, not in Perl 6. | |||
diakopter | that's the great thing about punrolls; you don't actually have to get the prior one to make the next one | ||
TimToady | + is just a synonym for : in STD | ||
masak | "punrolls". nice. | 18:40 | |
TimToady: oh! | |||
TimToady thinks about loo punrolling | |||
masak: but only when used on an existing quantifier | 18:41 | ||
masak | TimToady: so /a*+*+/ parses as /[a*] : *+/ ? | ||
(to the extent to which something that parsefails parses) :) | 18:42 | ||
18:42
birdwindupbird joined
|
|||
masak | pmichaud: does nqp parse .*+ as .*: ? | 18:42 | |
pmichaud | I don't believe it does. | ||
I'm not sure I ever added the '+' modifier | |||
let me look. | 18:43 | ||
is such a thing described in S05, ooc? | |||
colomon | ping sorear | 18:44 | |
TimToady | don't think so | 18:45 | |
pmichaud | yeah, looks like '+' was added post-nqp | 18:48 | |
it shouldn't be hard to add it to nqp | |||
masak | \o/ | 18:50 | |
diakopter finally gets loo punrolling | 18:56 | ||
18:58
espadrine joined
19:02
[Coke] joined
|
|||
dalek | ecs: e638d24 | larry++ | S05-regex.pod: Document possessive quantifier syntax |
19:03 | |
19:06
birdwindupbird left
|
|||
moritz | evalbot control restart | 19:13 | |
19:13
p6eval left,
p6eval joined,
ChanServ sets mode: +v p6eval
|
|||
tadzik | nom: say 1 | 19:13 | |
p6eval | nom c8b7c9: OUTPUT«"load_bytecode" couldn't find file 'SAFE.setting.pbc'current instr.: 'nqp;Perl6;ModuleLoader;_block1207' pc 4875 (src/gen/perl6-moduleloader.pir:16) (src/Perl6/ModuleLoader.pm:221)» | ||
tadzik | oh | ||
moritz | it might not install it | 19:14 | |
dalek | kudo/nom: 591c694 | moritz++ | tools/build/Makefile.in: whitespace fix in Makefile.in, GNU make really wants tab characters |
19:17 | |
19:17
bbkr left
|
|||
jnthn | I'm sure I added it to install... | 19:17 | |
moritz | jnthn: see the last commit | 19:18 | |
evalbot rebuild nom | |||
p6eval | OK (started asynchronously) | ||
jnthn | oh, d'oh | 19:19 | |
tssk...fussy GNU make. | 19:20 | ||
19:20
bbkr joined
|
|||
jnthn tries to remember | 19:20 | ||
jnthn twiddles his editor to try and get it righter :) | 19:21 | ||
im2ee | Uff, i did lots of perl6s exercises :) | 19:32 | |
So, time to bed and reading books. :) | |||
masak | :) | 19:33 | |
im2ee | Good night :) | ||
masak | 'n | ||
im2ee | Dobranoc masak ! :) | ||
Do you like polish? :) | |||
19:33
araujo left
|
|||
masak | very much :) | 19:34 | |
im2ee | Great. :) | ||
So good night everyone :) | |||
19:35
im2ee left,
benabik joined
19:36
mj41 joined
|
|||
dalek | kudo/nom: c34ac6e | moritz++ | src/SAFE.setting: forbid more functions in SAFE.setting |
19:40 | |
diakopter | moritz: thanks :) | 19:43 | |
moritz: the various p6eval rebuild&etc scripts should probably be in source control somewhere | 19:45 | ||
in case my vps gets wiped | |||
or malicious code the chroot | 19:46 | ||
19:46
jevin left
|
|||
moritz | diakopter: the rebuild scripts are in source control | 19:47 | |
diakopter | oh good | ||
so I guess just the cron entries would need re-enacted | |||
moritz | and some initial setup work | ||
installing dependencies, dowloading projects | 19:48 | ||
19:48
Trashlord joined
|
|||
masak | rakudo: role Matryoshka[] {}; role Matryoshka[::T] {}; say Matryoshka[Matryoshka[Matryoshka[Matryoshka]]] | 19:51 | |
p6eval | rakudo c8b7c9: OUTPUT«"load_bytecode" couldn't find file 'SAFE.setting.pbc'current instr.: 'nqp;Perl6;ModuleLoader;_block1207' pc 4875 (src/gen/perl6-moduleloader.pir:16) (src/Perl6/ModuleLoader.pm:221)» | ||
masak | oh. | ||
moritz | evalbot rebuild nom | ||
p6eval | NOT OK (maybe a rebuild is already in progress?) | ||
19:52
[Coke] left
19:54
[Coke] joined
|
|||
masak | rakudo: are we there yet? | 19:59 | |
p6eval | rakudo c34ac6: OUTPUT«===SORRY!===Confused at line 1, near "are we the"» | ||
masak | rakudo: role Matryoshka[] {}; role Matryoshka[::T] {}; say Matryoshka[Matryoshka[Matryoshka[Matryoshka]]] | ||
p6eval | rakudo c34ac6: OUTPUT«===SORRY!===Illegal redeclaration of role 'Matryoshka' at line 1, near "{}; say Ma"» | ||
masak | jnthn: no, parametric roles are definitely not back yet. | ||
jnthn | jnthn: They are, just not multiple with the same name. | 20:00 | |
wtf | |||
masak: ^^ | |||
:) | |||
masak: Plus various other issues listed in nommap :) | |||
masak | jnthn: I wanted to say "that kinda sucks", but I fear that might come off as overly negative... :) | 20:01 | |
I guess I can wait some before being able to put matryoshkas in matryoshkas. | |||
jnthn | masak: Well, you have a commit bit if you want to make it go faster :P | ||
masak | someone told me this MOP stuff is really easy. | 20:02 | |
jnthn | nom: role Moon[$color] { method is() { say "The moon is $color" } }; Moon["cheese"].is | ||
20:02
Reaganomicon joined
|
|||
p6eval | nom c34ac6: OUTPUT«The moon is cheese» | 20:02 | |
jnthn | See, I fixed that one :P | ||
masak | \o/ jnthn++ | 20:03 | |
but apparently you think cheese is a color :P | |||
jnthn | ...oh. :) | ||
masak | 哈哈 | ||
masak queues up Richard Cheese | 20:04 | ||
tadzik | :P | 20:06 | |
well, while you're at it... | |||
tadzik queues up every song about Britney | |||
masak | ooh | ||
20:06
benabik left
|
|||
jnthn | Spears? | 20:06 | |
masak | jnthn: c'mon, you heard those in Riga! | ||
jnthn | I can only remember...telephone :( | 20:07 | |
masak | can't blame you for that. | ||
t-t-t-t-t-telephone. | |||
oh wait, this isn't privmsg? :) | |||
tadzik | oh stop! | ||
jnthn | arrrgh, stop :P | ||
tadzik | :F | 20:08 | |
masak | 哈哈哈 | ||
tadzik | I reverse engineered this character. I'm totally sure it means "ha" | ||
masak | aye. | ||
tadzik | ha! | ||
oh, I mean | |||
20:08
hillu_ is now known as hillu
|
|||
tadzik | 哈! | 20:08 | |
masak | I like to write it more than I like to write "*lol*". | ||
tadzik | I don't like writing lol. I have a feeling it has lost its meaning due to overuse | 20:09 | |
masak | there's nothing onomatopoetic about "*lol*". there is about 哈 :) | ||
tadzik | I prefer IAL for I Actually Laughed, or An Actual Laughter Was Produced, Aloud | ||
masak | noooo, IAL stands for International Auxiliary Language, as everybody surely, er, knows. | 20:10 | |
tadzik | lol | ||
masak | the acronym is very big in the IAL community... | 20:11 | |
masak sobs quietly | |||
jnthn | IAL when I found I could understand some Esperanto having not learned it at all :) | 20:12 | |
masak | (I took jnthn on a guided evening tour of Riga, all in Esperanto) :) | ||
moritz | rakudo: say 1 | 20:13 | |
p6eval | rakudo c34ac6: OUTPUT«1» | ||
moritz | say qx/echo pwnd/ | ||
rakudo: say qx/echo pwnd/ | |||
p6eval | rakudo c34ac6: OUTPUT«qx, qqx is disallowed in safe mode in sub restricted at src/SAFE.setting:2 in sub QX at src/SAFE.setting:9 in <anon> at /tmp/upg5Ih7BYB:1 in <anon> at /tmp/upg5Ih7BYB:1» | ||
20:14
jevin joined,
jevin left
|
|||
jnthn | rakudo: unlink 'perl6' | 20:14 | |
p6eval | rakudo c34ac6: OUTPUT«unlink is disallowed in safe mode in sub restricted at src/SAFE.setting:2 in sub unlink at src/SAFE.setting:6 in <anon> at /tmp/J0xM6je4Bs:1 in <anon> at /tmp/J0xM6je4Bs:1» | ||
jnthn | phew! | ||
diakopter | lol < jnthn> jnthn: | ||
20:14
sili left
|
|||
masak | rakudo: shell "unlink perl6" | 20:14 | |
p6eval | rakudo c34ac6: OUTPUT«shell is disallowed in safe mode in sub restricted at src/SAFE.setting:2 in sub shell at src/SAFE.setting:7 in <anon> at /tmp/XvHC1uhXbh:1 in <anon> at /tmp/XvHC1uhXbh:1» | ||
masak | aw, *man*! :) | 20:15 | |
20:15
sili joined
20:16
jevin joined
|
|||
masak | tadzik: also, TimToady once pointed out that 哈 can mean "Pugs". :) | 20:17 | |
tadzik | (: | 20:18 | |
PugsPugs | |||
masak | it's also the first character in the Chinese name for "Harry Potter". | ||
moritz | so, Harry Potter is a Pugs? | ||
abercrombie | ha and 哈 have the same pronunciation | 20:19 | |
colomon | they prefer the term " | ||
masak | moritz: no, meaning magically turns off in names. | ||
colomon | "lambda camel" | ||
masak | moritz: though some company names are really well-thought-out even wrt meaning. f'rex, Coca Cola is 可口可乐, "can mouth, can happy" :) | 20:20 | |
jnthn | That's a wonderful pun on "can" :D | ||
masak | jnthn: oh! unfortunately, it doesn't carry over. | 20:21 | |
jnthn: here it just means "possible". | |||
jnthn | Aww! | ||
abercrombie | Actually 可口 doesn't means can mouth when you put these two chars together. It means delicious | 20:22 | |
masak | oh! | ||
20:22
mj41 left
|
|||
abercrombie | well, delicious things really can "mouth" | 20:23 | |
masak | abercrombie: oh, of course. just like 可爱 means "cute" :) | ||
jnthn can really mouth delicious things | |||
abercrombie | yep, and cute things can get loved. | 20:24 | |
20:24
daniel-s left
|
|||
masak | Ericsson, the telecom company, are 愛立信, "love establish message". | 20:24 | |
oh! I should point out that both of these companies manage to get very close phonetically, too. that's the impressive thing. "ke kou ke le" and "ai li xian", respecitvely. | 20:25 | ||
abercrombie | Are you Chinese? How do you know those "phonetics"? | 20:26 | |
masak | :P | ||
hm. those Pinyin renderings don't do the sound proximity justice... | |||
abercrombie: 我受宠若惊,但我不是中国人。 | 20:27 | ||
abercrombie | How did you do it? | ||
masak | oh, only two years of Chinese studies... and Google Translate :) | 20:28 | |
[Coke] is reminded, he got his hanzi books. | |||
masak | [Coke]: both of them? | ||
abercrombie | I don't always trust Google translate | 20:29 | |
masak | abercrombie: me either. it gave me 我不是一个中国人, but I thought that sounded wrong, so I changed it. | ||
abercrombie | Really cool :) | 20:30 | |
masak | abercrombie: 你住在哪里? | ||
abercrombie | Boston | ||
masak | oh :) | 20:31 | |
[Coke] | masak: Shì de, wúlùn | ||
masak | [Coke]: \o/ | ||
波士顿 | |||
abercrombie | Haha | ||
[Coke] | boston? | 20:32 | |
masak | wave... scholar... I don't know that last one. | ||
[Coke] | oh, that wasn't to me. ;) | ||
abercrombie | I don't know either | ||
masak | apparently it means 'pause' or 'kowtow' or 'arrange'. | 20:34 | |
[Coke] tries to trick google translate into giving me characters for "coleda" and fails miserably. | |||
masak | [Coke]: I've yet to figure out how regular and automatable name forming is. | ||
abercrombie | what is coleda? | ||
masak | [Coke]: there seems to be an art to at least some parts of it, which indicates not automatable. | ||
abercrombie: it's [Coke]'s IRC last name. | 20:35 | ||
PerlJam | not his IRL last name? | ||
diakopter | heh | 20:36 | |
masak | d'oh! | ||
the keys aren't even next to each other! | |||
[Coke] mentions that he inadvertently gave his daughter the initials IRC. | 20:37 | ||
masak | that's alright, nobody knows what IRC is nowadays. | ||
[Coke] | coleda is vaguely slavic for christmas. I guess I could go with that. ;) | ||
diakopter | maybe if she marries she could become IRL | ||
tadzik | :D | ||
Kolęda? | |||
masak | diakopter: or IRA :) | ||
abercrombie | Coke: I see. | 20:38 | |
[Coke] | yah, that's us. we renamed to Coleda when we came to the US | ||
tadzik | it's how we call the songs you sing during christmas. Also, it's the name of the activity of a priest when he goes from house to a house | ||
Wow. How long ago was that? | |||
abercrombie | May flower? | ||
masak | tadzik: so, basically Kolęda is Polish for "Carol"? :D | 20:39 | |
[Coke] | but it's Коледа , old school. | ||
tadzik | maybe :) | ||
oh, from Russian? | |||
[Coke] | Belarussian | ||
abercrombie | I thought they shared the same char set | 20:40 | |
[Coke] | in bulgarian, it's just "christmas", I think. (Diado Coleda is "grandfather christmas") | ||
masak | phenny: be en "Коледа"? | ||
phenny | masak: "Koleda" (be to en, translate.google.com) | ||
[Coke] | different languages, though. | ||
masak | bah | ||
[Coke] | phenny: en be Christmas? | 20:41 | |
masak | quotes. | ||
[Coke] | phenny: en be "Christmas"? | ||
phenny | [Coke]: The en to be translation failed, sorry! | ||
[Coke] | phenny: en bg "Christmas"? | ||
phenny | [Coke]: The en to bg translation failed, sorry! | ||
[Coke] | google xlate backs me up on the bulgarian. | ||
masak | Singularity: not yet here. | ||
[Coke] | Shèngdàn | 20:42 | |
abercrombie | holly birth | 20:43 | |
masak | "holy", I believe. | 20:44 | |
though "holly" is strangely fitting, too :) | |||
abercrombie | :) | 20:45 | |
20:48
envi left
20:51
lumi__ joined
|
|||
PerlJam should have read chromatic's blog post earlier because how he's a little irked again. | 20:53 | ||
masak | PerlJam: that's how I felt reading it. | 20:57 | |
20:57
Trashlord left
|
|||
masak | rakudo: print chr :16($_) for comb /../, "526f73657320617265207265642c2076696f6c6574732061726520626c75650a416c6c206d792062617365206172652062656c6f6e6720746f20796f750a" | 20:57 | |
bbkr | if I need custom reduce operator, like "[my_op]@array" should it be declared as infix:<> ? | ||
p6eval | rakudo c34ac6: OUTPUT«Roses are red, violets are blueAll my base are belong to you» | ||
masak | bbkr: yes. | ||
20:58
alester left
|
|||
jnthn | bbkr: The ideas is that you declare the basic operator yourself, and the reduction and other meta forms are derived for you. | 20:58 | |
masak | probably doesn't work if your operator is a macro, though :P | ||
bbkr | rakudo: sub infix:<myop>(Int $a, Int $b) { say "infix"; }; my @t = 1..10; [myop]@t # doesn't work... | 20:59 | |
p6eval | rakudo c34ac6: OUTPUT«===SORRY!===Confused at line 1, near "[myop]@t #"» | ||
masak | rakudo: our sub infix:<myop>(Int $a, Int $b) { say "infix"; }; my @t = 1..10; [myop] @t | 21:00 | |
p6eval | rakudo c34ac6: OUTPUT«===SORRY!===Confused at line 1, near "[myop] @t"» | ||
masak | b: our sub infix:<myop>(Int $a, Int $b) { say "infix"; }; my @t = 1..10; [myop] @t | ||
PerlJam | masak: if he'd left out the last paragraph I wouldn't be so irked. | ||
p6eval | b 1b7dd1: OUTPUT«infixNominal type check failed for parameter '$a'; expected Int but got Bool instead in 'infix:<myop>' at line 22:/tmp/c23NI6BTdf in 'reducewith' at line 396:src/gen/core.pm in main program body at line 1:src/metamodel/RoleToInstanceApplier.nqp» | ||
masak | PerlJam: same here. | ||
PerlJam | masak: or just condensed it to the last sentence of that paragraph | ||
masak | PerlJam: it reads like "if only you knew the things I have to endure with some people!" | 21:01 | |
and as I said earlier today, I don't buy the supposition that Rakudo is preventing Parrot from going anywhere. | |||
PerlJam | well, the two things the raise my hackles a little bit are "attempting to moderate a very frustrating discussion" and "actively prohibiting the other to be wrong" | 21:02 | |
masak | right. | ||
[Coke] | could have been written before the parrotsketch convo. | ||
PerlJam | [Coke]: perhaps | ||
21:02
lumi__ left
|
|||
[Coke] | and he doesn't say perl6. and... it doesn't matter, anyway. ;) | 21:02 | |
PerlJam | But I didn't get a sense of "moderation" from him *at all*. | ||
cotto_work | I'm trying to make sure that if Parrot people bring that up, they do so with examples. | ||
21:03
lumi__ joined
|
|||
pmurias | masak: is anybody claiming that? | 21:03 | |
bbkr | rakudo: our sub infix:<myop>($a, $b) { say $a.WHAT, $b.WHAT }; my @t = 1..4; [myop]@t # why Bool() is there? | 21:04 | |
p6eval | rakudo c34ac6: OUTPUT«===SORRY!===Confused at line 1, near "[myop]@t #"» | ||
cotto_work | It's not an opinion that I either share or completely understand. | ||
jnthn | rakudo: our sub infix:<myop>($a, $b) { say $a.WHAT, $b.WHAT }; my @t = 1..4; [myop] @t | ||
masak | pmurias: <chromatic> Parrot has no focus because Rakudo won't allow it to have a focus. | ||
p6eval | rakudo c34ac6: OUTPUT«===SORRY!===Confused at line 1, near "[myop] @t"» | ||
jnthn | oddness | 21:05 | |
flussence | that guy sounds like he needs a hug. | ||
PerlJam | flussence: that's it! We should hug-pile him next time he's around :) | ||
flussence | heh :) | ||
masak volunteers o/ | 21:06 | ||
pmurias | masak: shouldn't Rakudo be parrot's focus? | ||
[Coke] | one of. | 21:07 | |
cotto_work | +1 | ||
masak | Rakudo has been blasting a path for itself in the past few years. it has done so sometimes by bypassing Parrot primitives and basically building its own. this has been necessary, because the pieces didn't fit and tele-designing things right in Parrot wasn't an option. | 21:08 | |
sjn wonders a little what's the word on the nom branch these days | 21:09 | ||
colomon thinks things might be healthier if there was another serious HLL implemented in Parrot... went so far as to start thinking about the design of a Forth/Factor-like Parrot language over the weekend. | |||
masak | now, Parrot is very willing to merge a lot of things from Rakudo into itself, in effect making many Rakudo workarounds unnecessary. problem is, Parrot doing so isn't very important for Rakudo, unless it translates to increased performance. | 21:10 | |
pmurias | if there was working implementation of say python or ruby on parrot, rakudo could use it for libraries | 21:11 | |
masak | isn't there both a Python and a Ruby implementation on Parrot? | 21:12 | |
cotto_work | maturity is an issue. There are a ton of nascent languages. | ||
21:13
lumi__ left
|
|||
diakopter | nascent + abandoned | 21:13 | |
Tene | masak: the ruby impl is currently stalled; I need to get a 6model ruby object model in place to unblock it. | ||
flussence would like a php, but without a bazillion functions | 21:14 | ||
21:14
lumi__ joined
|
|||
masak | Tene: that sounds like an interesting project. | 21:14 | |
jnthn | sjn: Coming along. Some big things (a huge memory leak, very slow setting compilation) got dealt with over the last week. | ||
pmurias | flussence: what would be the use for that? | ||
Tene | masak: agreed; want to work on it with me sometime this week? | 21:15 | |
masak | sjn: I keep finding features that are in b but not in nom. | ||
sjn | jnthn: ok, cool | ||
masak | Tene: I have a Perl 6 day tomorrow. I'm not sure how much participation I can promise, but I'll certainly partake in discussions and code review. | ||
cotto_work | flussence: how much do you want one? | ||
flussence | pmurias: it might get a few converts, a lot of people are annoyed that php's taking years to make point release progress | ||
jnthn | masak: Your feature use is impressively extensive. :) | ||
tadzik | flussence: why would you do that | ||
masak | jnthn: I've basically been trying things at random. | 21:16 | |
and running old scripts that used to work. | |||
pmurias | flussence: but without the baziliion functions wouldn't it be incompatible | ||
jnthn | masak: Have those experiences translated into, say, nommap entries? :) | ||
pmurias | flussence: and would php on parrot be fast enough? | ||
21:17
chromatic joined
|
|||
chromatic | I'm here for my hugs. | 21:17 | |
masak hugs chromatic | |||
cotto_work | chromatic++ | ||
flussence | pmurias: it'd be a good reference point for speed, if not | ||
cotto_work | It's not going to be fast enough if nobody writes it. | ||
Tene | pmichaud: php on parrot would be at least as fast enough as anything else on parrot | ||
there have been two php-on-parrot projects already, I think? | |||
21:17
bbkr left
|
|||
chromatic | I think you're all missing an important point. | 21:17 | |
Perl 5 on Parrot is awfully important. | |||
flussence | as for not having functions, there's no reason they can't be shoved into extensions and loaded as needed | ||
cotto_work | flussence: not unlike normal php | 21:18 | |
21:19
bbkr joined
|
|||
Tene | chromatic: I'm curious about the details of how Perl 5 on Parrot is important. | 21:19 | |
pmichaud | Tene: was that directed to pmurias? | ||
arnsholt | chromatic: It's an awfully hard nut to crack too, though | ||
Tene | pmichaud: uhh... yes. | ||
arnsholt | Perl 5 on anything else than perl is quite hard in fact | 21:20 | |
tadzik | Tene: I think Perl 5 interoperability is a prerequisite for a success of Perl 6 | ||
that's like 50% of what I'm missing in Perl 6 :) | |||
chromatic | I can't use Perl 6 productively without libraries. | ||
pmichaud | I will absolutely switch the nom branch this evening. | ||
(and post the related announcement) | |||
masak | ++pmichaud | 21:21 | |
diakopter | I don't see how Perl 5 interoperability from Rakudo requires p5-parrot | ||
tadzik | niiec | ||
*nice | |||
pmichaud | announcement draft is at pmichaud.com/sandbox/nom-2.txt | ||
cotto_work | diakopter: I think that he's saying that Rakudo will be a much easier sell if you can use all of CPAN. | 21:22 | |
chromatic | diakopter, depends how much work the implementors want to do at which levels. | ||
flussence | (tbh, I can't think of a good reason for a php impl other than "attracting attention") | ||
diakopter | cotto_work: I mean, why can't rakudo embed p5 as it is and interoperate that way | ||
like pugs did | |||
chromatic | Sure, if you want to do it the hard way. | 21:23 | |
Tene | pmichaud: after that announcement, will there still be a branch named 'master'? | ||
pmichaud | Tene: the current plan is to not have a 'master' branch. | ||
but to leave the branch as 'nom', and set it as the default. | |||
masak | will the 'nom' branch *eventually* be renamed to 'master'? | ||
pmichaud | if we decide that needs to happen, yes. | 21:24 | |
basically, if the "where's the master branch" Q becomes FA | |||
masak is already wondering that :P | |||
diakopter | chromatic: notwithstanding Her (;)) brilliance at embedding p5 into pugs, I still don't see how it would be easier to implement Perl 5 on parrot from scratch vs. embedding | 21:25 | |
pmichaud | TimToady++ has expressed a strong distaste for renaming branches, and I'd like to honor his preference at least once in a while (after having denied it on other things about Rakudo he detests) | ||
21:26
lumi__ left,
daniel-s joined
|
|||
masak | pmichaud: ok. let's try it without master for a while, then. | 21:26 | |
chromatic | Unless you limit what can cross the language boundary to simple immediate values, you're going to have to deal with two problems. | ||
1) Rakudo needs *some* FFI | |||
pmichaud | beyond that, I see good arguments for not renaming nom->master, and since we can try it without the rename for a while and do the rename later if it doesn't work (but vice versa), I'll take the conservative approach for now. | ||
21:26
lumi__ joined
|
|||
chromatic | 2) P5 and Rakudo have very different memory management schemes. | 21:27 | |
masak | pmichaud: aye. | ||
pmichaud | *(but not vice-versa) | ||
(well, we could do vice-versa, but that'd be even more confusing) | |||
masak | :P | ||
diakopter | chromatic: I see | 21:29 | |
pmurias | sorear: ping | ||
21:29
mberends joined
|
|||
Exodist | I may be late to the party, but I am confused on this branching issue, why not just reset the head of branch master to the head of branch nom? | 21:29 | |
masak | Exodist: because of the above reasons pmichaud outlined? :) | 21:30 | |
chromatic | diakopter, P5 would be loads easier to port to Parrot if it had wide use of a (working) ctypes mechanism, which would render a lot of XS unnecessary (and the replacement is mostly statically parseable). | ||
If you have a working C extension system, embedding libperl5.so is easy to start but rapidly gets very complex. | 21:31 | ||
Exodist | those arguments are for not renaming nom, I am not asking why you don't rename nom, I am asking why not have both and just point one at the other? then again I guess people will still commit to nom and master would fall behind... | ||
chromatic | Control flow in particular is hugely complex, because someone needs to own the world. | ||
See also Any::Event for a metaphor at a level higher than the VM. | 21:32 | ||
[Coke] hugs chromatic belatedly and uncomfortably. | |||
tadzik | wow, settings compilation is now 1.20s | 21:33 | |
flussence | !? | ||
tadzik | ...SAFE.setting, of course :) | ||
flussence | oh :( | ||
is that with or without a parsing error? :) | 21:34 | ||
chromatic | Are you on Parrot HEAD? | ||
tadzik | yes | 21:35 | |
jnthn | tadzik: tease :P | ||
chromatic | What was it 48 hours ago? | ||
tadzik | SAFE.setting wasn't present | 21:36 | |
I'm now running time make to see the effect of your commits | |||
chromatic | How about the full setting? | ||
21:36
jaldhar left,
_jaldhar joined
|
|||
tadzik | it's still about 2:50 here, 60% of my RAM | 21:36 | |
masak | tadzik++ moritz++ # SAFE.setting | ||
tadzik | trying | ||
masak: I didn't do anything :0 | |||
:) | |||
I do need some autocorrect for :0 | 21:37 | ||
masak | I thought it was a smiley that looked that way. | 21:38 | |
sort of a dumbfounded look. | |||
tadzik | chromatic: may be a few seconds win | 21:39 | |
21:39
lumi__ left
|
|||
tadzik | it was like 2:45 | 21:39 | |
and like 55% of ram | |||
21:40
lumi__ joined
|
|||
chromatic | ~3% then roughly | 21:40 | |
tadzik | time make will come in a second | ||
chromatic | pmichaud, does the current grammar system transcode P6 source code to a fixed-width encoding? | 21:41 | |
21:41
plobsing joined
|
|||
tadzik | make 390.96s user 5.09s system 109% cpu 6:00.10 total | 21:41 | |
woot | |||
it was never under 400 before | |||
that's a chromatic++ I guess | |||
it was 40n last time, when I was converting RAWs in the background | 21:42 | ||
pmichaud | chromatic: it does, if it can. | 21:43 | |
21:44
daniel-s left
|
|||
pmichaud | the new regex engine (qregex) always transcodes to a fixed width encoding. | 21:44 | |
chromatic | Good. I patched opsc in Parrot to do the same, as for some reason it wasn't convincing nqp-rx to do so. | ||
pmichaud | parrot strings didn't have the capability to always do the transcode at the time that the old engine was constructed... and I only realized the new string implementation could handle it about four weeks ago (so I haven't updated nqp-rx to do something similar) | 21:45 | |
but yes, rakudo (both nom and master) transcode to fixed-width if they can, and when we switch nom's compiler to the new engine, all regex matching will be on fixed width strings | 21:46 | ||
the new engine also avoids creating a bunch of substring gc-ables | |||
like a bunch a bunch | |||
21:47
lumi__ left,
lumi__ joined
|
|||
pmichaud | when we don't transcode or the transcode fails, we notice a huge slowdown quite quickly. | 21:48 | |
(the 35% you cited above is typical) | |||
chromatic | Given an installed Parrot, how do I reconfigure and build nom? | 21:50 | |
pmichaud | perl Configure.pl --with-parrot=/path/to/installed/parrot | 21:51 | |
(perl Configure.pl --help should work too) | |||
chromatic | Ah, my alias still gave the path to parrot_config. | ||
tadzik | I never used --with-parrot, tbh | ||
it's always just perl Configure.pl && make install in both nqp and nom | |||
pmichaud | yeah, I switched our reliance to be on parrot itself instead of parrot_config | ||
feels safer | 21:52 | ||
chromatic | # Parsed nqp.ops in 2.438 seconds; found 288 ops. | ||
Definitely an improvement there. | |||
pmichaud | also, if you want to build nom from a specific parrot branch, it's perl Configure.pl --gen-parrot=branchname | 21:53 | |
it'll update the local parrot repo, build parrot and nqp, then nom. | |||
chromatic | I need to build against unpushed Parrot commits. | ||
pmichaud | yeah, that's the --with-parrot option, then. | 21:54 | |
tadzik | chromatic: make install your parrot, make sure parrot_config is in your patch, install nqp ordinarily, then nom ordinarily | ||
pmichaud | also note that you can put options into a "config.default" file, and Configure.pl will read from those. | ||
tadzik | no switches to Configure.pl are required at all | ||
pmichaud | tadzik: note that nom doesn't use parrot_config | ||
nom wants *parrot* in its path. | |||
tadzik | pmichaud: but it uses nqp settings, right? | ||
oh, maybe. Ok then | |||
pmichaud | okay, that's more correct. nom gets its configuration from nqp, and nqp gets its configuration from parrot (not parrot_config) | 21:55 | |
chromatic | Configure.pl seems to have built nqp appropriately for me. | ||
pmichaud | yes, if you specify a parrot, it will attempt to build an nqp. | 21:56 | |
if you specify an nqp (--with-nqp), it just uses that. | |||
21:59
lumi__ left
22:00
lumi__ joined
|
|||
tadzik | make spectest 1398.19s user 73.49s system 99% cpu 24:43.94 total | 22:13 | |
I have a feeling it was slower this morning | |||
2011-09-08 12:32:23 tadzik make spectest 1433.31s user 73.86s system 99% cpu 25:19.42 total | |||
yep | |||
nom: say (1433.31 - 1398.19) / 1433.31 | 22:14 | ||
p6eval | nom c34ac6: OUTPUT«0.0245027244629564» | ||
tadzik | not bad | ||
22:15
lumi__ left,
whiteknight joined,
daniel-s joined
|
|||
dalek | kudo/nom: c9246f9 | jonathan++ | src/binder/container.c: Fix bug in handling of Scalar type object. |
22:16 | |
kudo/nom: bf08c52 | jonathan++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Generics handling for Scalar. |
|||
kudo/nom: aa90c55 | jonathan++ | src/Perl6/Actions.pm: Specialize generically typed lexically scoped scalars. |
|||
kudo/nom: 2c31255 | jonathan++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Need to specialize the default value if that's generic also. |
|||
kudo/nom: db4495a | jonathan++ | NOMMAP.markdown: Update nommap. |
|||
22:17
lumi__ joined
22:19
kaare_ left,
tokuhirom joined
|
|||
ingy | tadzik: what do you mean by default => ()? | 22:23 | |
tadzik | ingy: some sort of 'has foo => (default => sub { 5 })'. I can live without it since I implemented BUILD though | ||
Love the module :) | 22:24 | ||
ingy | tadzik: yeah I'll flesh out 'has' soon | 22:25 | |
I need default and builder too | |||
I just ignore 'is' | 22:26 | ||
and anything else | |||
I liked Moo but too many parts | |||
it should be one simple module | 22:27 | ||
I mean I still like Moo and Mouse | |||
just depends on the application | |||
22:27
lumi__ left
|
|||
tadzik | I like the fact that Mo is just one file I can easily ship with my project if I don't want to introduce strange dependencies | 22:28 | |
hell, it's like 20 LoC now | |||
ingy | sometimes I need to use Mo 'Ingy' | ||
tadzik | what does the argument do? | ||
22:28
lumi__ joined
|
|||
ingy | tadzik: what's your github id? | 22:28 | |
tadzik | ingy: tadzik | ||
ingy | tadzik: commit at will | 22:31 | |
I sleep now | |||
tadzik | oh, thanks. G'night | ||
ingy | I see dams has golfed Mo to almost nothing | ||
\o/ | |||
tadzik | seen book's version? | ||
aloha | Sorry, I haven't seen book's version. | ||
tadzik | aloha: you should | 22:32 | |
ingy | tadzik: feel free to commit it | ||
I'll add book to committers too | |||
tadzik | I'm not sure if I want to, tbh :) | 22:33 | |
ingy | :D | ||
is book, book? | |||
on gh? | |||
tadzik | I think so. He looks like his gravatar | ||
or the other way around | |||
ingy | ha | ||
ok done | |||
(hopefully) | |||
night | 22:34 | ||
tadzik | night | ||
ingy | I'll release in morning | ||
tadzik | yay, my code will be on CPAN | 22:35 | |
YAPC::NA 2011 Survey Results | 22:36 | ||
oh, that's not EU | 22:37 | ||
22:39
lumi__ left
|
|||
masak | wow, Mo is really micro. | 22:39 | |
22:40
lumi__ joined
22:42
kst left
|
|||
tadzik | yep | 22:42 | |
masak | I keep thinking of www.dapsmagic.com/geekscorner/wp-co...25x300.jpg when I hear the name, though :P | 22:45 | |
"Mo!" | |||
TimToady | the Mighty Mo was not micro | ||
masak only knows about MightyMoose | 22:46 | ||
jnthn | rakudo: my $what = "Mo!"; $what++ for ^26; say $what | ||
p6eval | rakudo c34ac6: OUTPUT«No!» | ||
jnthn | \o/ | ||
masak | 'might | 22:47 | |
er, I mean 'night | |||
TimToady | o/ | ||
22:47
masak left
|
|||
pmichaud | chromatic: is there a particular reason your pull request went to pmichaud/nqp instead of perl6/nqp? (honestly curious) | 22:47 | |
22:47
pmurias left
22:48
espadrine left
|
|||
chromatic | Did I fork the wrong one? | 22:49 | |
pmichaud | possibly. perl6/nqp is the standard location. | ||
I didn't even realize I *had* a pmichaud/nqp repo :) | 22:50 | ||
I must've forked it some time ago for some reason. | |||
if it's easy to resubmit to perl6/nqp, that'd be great, otherwise I'll figure out how to get them across :) | |||
(and, of course, thanks for the patches!) | 22:51 | ||
oh, we can give you a commitbit. actually, I suspect you already have a commitbit for everything in the perl6/ github account (including perl6/nqp) | |||
22:51
donri left
22:52
lumi__ left,
donri joined
|
|||
chromatic | I think I can make that work. | 22:52 | |
22:52
lumi__ joined
|
|||
pmichaud | hmmm, I don't see a commitbit for perl6.... do you want one? | 22:52 | |
chromatic | Please. | ||
22:53
jtpalmer_ is now known as jtpalmer
|
|||
pmichaud | added. | 22:54 | |
you should be able to commit to pretty much anything in the perl6/ space (specs, tests, nqp, etc.) | 22:55 | ||
22:55
Chillance left
|
|||
chromatic | For some reason I still don't have nqp access. | 22:59 | |
pmichaud | looking. | ||
hmm, the nqp access list is separate from the perl6 one. | 23:00 | ||
I'll add you to nqp also, then figure out the mismatch later. | |||
added | |||
23:04
lumi__ left
23:05
lumi__ joined
|
|||
pmichaud | afk, fetching dinner | 23:06 | |
23:06
s1n1 joined
|
|||
dalek | p: 71c8f92 | chromatic++ | src/6model/reprs/ (6 files): odel] Added annotations to exception throwers. This clears up several compiler warnings. |
23:06 | |
p: 93a634d | chromatic++ | src/6model/reprs/P6opaque.c: odel] Made a private function static. This cleans up a warning about the undeclared function. |
|||
p: 2922924 | chromatic++ | src/6model/reprs/P6opaque.c: odel] Fixed a constness conversion warning. |
|||
mberends had a nice evening at London.pm. People were quite positive about Perl 6 :) | 23:13 | ||
TimToady | before or after the beer? :) | 23:16 | |
jnthn | I'd say "during the beer", but for London.pm that'd mean "the whole meeting" :) | 23:17 | |
23:17
bbkr left
|
|||
mberends | er, after. Beer was top of the agenda ;) But still the conversations were nice... | 23:17 | |
jnthn | mberends: Be at Londown Perl Workshop? | 23:18 | |
grr...London :) | |||
23:18
lumi__ left
|
|||
mberends | jnthn: yes, I plan to attend. Someone is trying to press me to make a presentation too. | 23:18 | |
jnthn | mberends: I'll be there. | 23:19 | |
mberends: | |||
mberends: I'll likely submit something. | |||
mberends | \o/ | ||
23:19
lumi__ joined
|
|||
jnthn | LPW is actually the only Perl event to date that I've been to and didn't speak. I wasn't sure whether it was relaxing, or just weird not to have a talk :) | 23:19 | |
23:20
bbkr joined
|
|||
jnthn | (That was the last time I went. I've been previous times and did...) | 23:20 | |
chromatic: Patches look good; thanks. | 23:21 | ||
chromatic | The only interesting remaining warning is about returning an aggregate, but that one looks systemic and slightly deliberate. | 23:22 | |
jnthn | That sounds familiar. I think I concluded "yes, I meant to..." | 23:23 | |
And then wasn't sure why it warranted a warning. | |||
mberends | jnthn: it was noted this evening at London.pm that Perl was discussed rather frequently. That seemed weird to the regulars. | 23:24 | |
jnthn | mberends: :-) | ||
MSVC doesn't warn on it, fwiw. | 23:25 | ||
chromatic | jnthn, really old C compilers couldn't handle returning anything bigger than a pointer. | ||
The code returns a struct as a value, which is legal with a modern enough compiler and has the advantage of not requiring malloc/free. | |||
jnthn | chromatic: Ah, historical limitations. OK. | 23:27 | |
23:28
lumi__ left
|
|||
chromatic | You can make the argument that returning a pointer to a struct is clearer, but it's getting toward the "not really worth it at the moment" territory for me. | 23:28 | |
23:28
lumi__ joined
|
|||
jnthn | It's not cleaner for whoever has to free it later. | 23:29 | |
chromatic | Yep. | ||
jnthn | Anyway, it was a concious choice. That you hadn't used to be able to do that in C was new to me. Maybe because C compilers that worked that way are older than I am. :) | 23:30 | |
chromatic | I think C compilers that work that way are older than *I* am. | 23:31 | |
diakopter wonders how much older chromatic thinks he is than jnthn | 23:32 | ||
TimToady hides behind a Beatnik | |||
23:32
daniel-s left
|
|||
chromatic | I have a few years on him. | 23:32 | |
23:33
wolfman2000 joined
|
|||
diakopter examines de.wikipedia.org/wiki/Beatnik_(Prog...ersprache) translated by Google | 23:34 | ||
23:41
donri left
23:44
tlocalhos left
23:46
lumi__ left
23:47
lumi__ joined
23:48
cotto left,
cottoo joined,
cottoo is now known as cotto
23:50
localhost joined
23:57
localhost left
23:58
tokuhirom left
|