Parrot 3.10.0 "Apple Pi" | parrot.org | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 16 November 2011.
whiteknight I'm trying to think of a good task that can make use of the Rosella templating engine 00:02
cotto sigh 00:05
[christoph.otto@hqmpdpl01 ~]$ svn checkout svn/repos2
A repos2/.git
...
whiteknight ...? 00:10
cotto a bunch of other .git stuff, followed by actual code (though without any of the typical svn structure) 00:12
alvis msd dukeleto Ok, I think, I've signed up (melange rejected me when I tried this morning) as a mentor. 00:15
msg dukeleto Ok, I think, I've signed up (melange rejected me when I tried this morning) as a mentor.
aloha OK. I'll deliver the message.
alvis whiteknight: You can add tasks, correct?
whiteknight alvis: yessir. I'm creating them now. 00:16
alvis whiteknight: Ok, could you add (1) Documentation - create pods for the installable binaries - 1 to 2 days per binary. 00:17
(2) convert all READMEs to *.pod - 1 day per README. 00:18
whiteknight alvis: Just create the .pod files as skeletons, or actually fill them in?
Also, do you have a list of the installable binaries that need this treatment?
alvis Fill them in.
whiteknight: Yes, on the which ones. 00:19
whiteknight and how many README files need this? I'm going to want to create a new task per binary and README
alvis whiteknight: checking ...
whiteknight they have a tool for mass-uploading tickets, but it seems like more trouble than it's worth 00:21
alvis whiteknight: Looks like ... 31 READMEs, in total.
whiteknight: and about 14 binaries ... 00:27
whiteknight: If that's too many, just use your best judgment. 00:28
00:35 diakopter joined
diakopter hi; does anyone know whether mlschroe on github is mls here? 00:35
reverting his last commit unbreaks the nqp build for me. 00:37
alvis whiteknight: Something which may be useful is duplicating some of the "Articles" (e.g., Programming Parrot -- Using objects and Programming Parrot -- PMCs), but with winxed instead. 00:39
00:46 PacoLinux joined
cotto diakopter: they're the same person 00:47
diakopter cotto: thanks 00:51
00:51 diakopter left 00:59 lichtkind joined
whiteknight alvis: All good ideas. Do you have a list of the names of the binaries anywhere? I want to make the tickets specific 01:00
alvis: and what directory are we making the *.pod files in for the binaries?
alvis whiteknight: yes, but it'll be a few before I can get to it. Do you want me to send it to parrot-dev? 01:01
whiteknight yeah, parrot-dev is fine. Or make a gist and msg me the link, or whatever
alvis whiteknight: Ahh, a gist is good. I'll msg you in a'bit. And thanks. 01:02
01:26 Yuki`N joined
Yuki`N The time has come. 01:27
whiteknight it has come indeed 01:30
Yuki`N: I hope you've got lots of energy this year
I'm making tasks as fast as I can
Yuki`N lol
TOO BAD YOU CAN'T SUBMIT THEM UNTIL HALFWAY. 01:31
I term this the anti-Jumpyshoes.
It's time to fire up my linux VM for the first time in ages and update parrot.
01:32 woosley joined
Yuki`N whiteknight, give me a quick run-through of winxed? 01:36
01:37 blaise joined
whiteknight Yuki`N: it's basically like C, but for Parrot. A low-level kind of language 01:38
it has syntax inspired by C++, C#, Java, and JavaScript. So it should be familiar
Yuki`N looks easy enough 01:39
btw, i'm taking this. www.google-melange.com/gci/task/vie...11/7127361
bacek_at_work wireless.amazon.com/b/684177011/?ta...epartim-20
Yuki`N Where do I implement it?
bacek_at_work $0.01 phones on Amazon. Android phones. New one. 01:40
blaise which GNU nl implementation commandline arguments are the -a and -t ones equivalent to for www.google-melange.com/gci/task/vie...11/7132361 ?
whiteknight Yuki`N: et me look 01:41
Yuki`N: anywhere. You can create a new file. We don't have anywhere to implement it yet
blaise: if you know enough to ask that question, you are probably knowledgable to make up your own answers
Yuki`N: Add a new file. Implement the Timsort, add a small driver that sorts an array and prints output to prove you aren't faking it 01:42
Yuki`N lol
In parrot.git?
whiteknight Here's a place where I benchmark a qsort implementation: github.com/Whiteknight/Rosella/blo...ort.winxed 01:43
you can do it in that file too, if you want. That should be easiest
(Whiteknight/Rosella.git)
Yuki`N So this goes to Rosella
whiteknight Yuki`N: yeah, that's a good place, I think 01:44
We might move it somewhere else, eventually. Right now we just want to see working code
Yuki`N alright
whiteknight Yuki`N: I just approved the task. Good luck!
blaise: Basically, -a should number all lines, -t should only number lines that aren't completely whitespace 01:45
blaise okay, will do
whiteknight blaise: it doesn't need to be a perfect clone, it's just an example so the quality of code is more important than perfect output 01:46
blaise alright
whiteknight blaise: if you have any questions about Winxed, Rosella or the Query library, let me know. It should be straightforward, especially if you have any experience with C#'s System.Linq, or jQuery in JavaScript, or anything else like that 01:47
chained higher-order functions, etc
blaise I have jQuery experience 01:48
whiteknight okay, that's one source of inspiration I followed for some of these libraries
plus, winxed is very javascripty, etc
blaise: task assigned. Good luck! 01:49
blaise it says winxed is installed with parrot, but that didn't seem to happen 01:51
as I installed parrot and have no winxed
blaise has to go now, really bad timing, just after asking a question 01:52
whiteknight blaise: it's okay, come back later and we'll get you set up 01:54
I'll add more time to the task if you need it
sorear and if you have to /quit, read the logs
Yuki`N whiteknight, I take it arrays in winxed are dynamically sized? 01:57
whiteknight Yuki`N: by default, yes
you can make fixed-size arrays, but it's more work
Yuki`N k 01:58
no classes == UNLIMITED PARAMETER WORKS. 01:59
whiteknight msg nine in src/scheduler.c line 401 there's a TODO note. If we exit the main function when there are still tasks in the queue, the tasks don't seem to be executed. This TODO note might have to do with that?
aloha OK. I'll deliver the message.
alvis msg whiteknight hopefully, this is sufficient: gist.github.com/1384666 (but, please, let me know if it is not). 02:11
aloha OK. I'll deliver the message.
whiteknight We're up to 17 tests 02:13
alvis++
alvis: What directory do the *.pod files for the binaries go? /docs/? 02:14
02:15 PacoLinux joined
whiteknight alvis: also, do you have a particular format or template you want them to follow? 02:21
Yuki`N whiteknight, I'm basing the implementation of Timsort in winxed off of JDK7's implementation. 02:30
whiteknight Yuki`N: as good as any. I actually haven't ever seen code for it before. I've seen high-level descriptions and benchmarks, but never looked up any code 02:31
Yuki`N Does winxed have shift operators? 02:32
whiteknight like >> and <<?
Yuki`N yes.
whiteknight yes
Yuki`N cool
how about >>> for sign preservation?
whiteknight I don't know, but I suspect not. Is that important?
Yuki`N I forget, are int's in parrot signed or unsigned? 02:33
whiteknight signed
Yuki`N hmm
I'll just divide by 2 then.
whiteknight is this becoming a difficult task?
Yuki`N meh
Not realy.
really
whiteknight Okay, I'm heading to bed now. I'll be on bright and early in the morning. Later 02:34
goodnight 02:35
03:15 PacoLinux joined
Yuki`N msg whiteknight I have some interesting winxed output you might want to have a look at. gist.github.com/1384847 03:56
aloha OK. I'll deliver the message. 03:57
cotto ~~
Yuki`N msg whiteknight Due to the severity of the errors, I cannot proceed with my task. You may understand once you look. I've pretty much ported the algorithm over, however. All that's left to do is get it to compile.
aloha OK. I'll deliver the message.
Yuki`N cotto, can you make heads or tails of that?
cotto Yuki`N, I haven't done any winxed debugging. You might try NotFound++. 03:58
benabik That looks something like a bug in Winxed 03:59
It may just be a kind of syntax error that wasn't caught until it started doing code gen. But I can't tell what in the code might be causing it. 04:00
cotto Yuki`N, can you get it down to a minimal test case?
Yuki`N Honestly, I don't think so.
I can only think of one thing offhand. 04:01
Is comparison between a PMC (class var) and int allowed?
benabik I think so. 04:02
Seems to be so. `say([] < 1)` works. 04:03
cotto Yuki`N, where'd that code come from? 04:05
Yuki`N I wrote it.
benabik Yeah, that backtrace is inside winxed.
Yuki`N Well, ported it from OpenJDK7. 04:06
And that's not an issue with the code; something in winxed is breaking.
cotto Yuki`N, ok. Can you delete parts of the code until you find what's triggering the misbehavior?
Yuki`N That's not so easy. 04:07
Unless parrot does all binding at runtime.
rather, winxed.
Methods depend on each other, etc. 04:08
cotto You can get a lot done if you're not worried about maintaining correctness.
Yuki`N well, I'm looking at the backtrace and it seems to be when it's trying to PIR the while clause of a do statement. 04:09
benabik It's one where you're testing if something == 0
benabik is digging in Winxed source. 04:10
Uhm.
NotFound: ping
cotto that sounds promising 04:11
benabik All the CheckerExpr classes seem to lack emit_if. Which is somewhat important for their function.
msg NotFound Tracking down a bug in Winxed found by Yuki`N. (See gist.github.com/1384847 ). It looks like the CheckerExpr classes lack emit_if methods, which seems somewhat important for what they're intended to do. 04:14
aloha OK. I'll deliver the message.
Yuki`N I think I found it.
while (nRemaining != 0); 04:15
I changed that to while (nRemaining > 0);
and it works.
04:15 PacoLinux joined
benabik Yeah, that keeps the optimizer from turning the condition into a ZeroCheckerExpr. 04:15
Yuki`N damn 04:29
it actually works.
never mind, I lied.
dalek p/rxinterpolate: 734d9f3 | diakopter++ | src/NQP/SymbolTable.pm:
Revert "use direct lexinfo access in install_lexical_symbol()"

This reverts commit 13508b4874034715cf09c929da41b8709d753833.
04:55
p/rxinterpolate: 137dd06 | diakopter++ | src/ (2 files):
first cut at \\!INTERPOLATE and \\!INTERPOLATE_REGEX. strange number conversion workarounds and errors for jnthn++ to debug.
Yuki`N oh. 05:07
dear.
winxed doesn't have short circuit evaluation. 05:08
benabik It doesn't? 05:11
$ winxed -e 'var foo = function() { say(1); return 0; }; var bar = function() { say(2); return 2; }; if(foo() && bar()) say(3);'
1
$ winxed -e 'var foo = function() { say(1); return 1; }; var bar = function() { say(2); return 2; }; if(foo() || bar()) say(3);'
1
3
Yuki`N Never mind 05:14
++rr and rr++ is not implemented correctly.
They behave both as ++rr. 05:15
That threw me off for a good hour.
benabik That may be true on PMCs.
Yes. Works properly on ints though.
Yuki`N Wonderful. 05:17
Is there any way to get that working properly on PMCs?
05:17 rfw joined
dalek rrot-libgit2/oid: 6077d63 | dukeleto++ | src/git2.pir:
Correct signature of git_oid_fromstr, make tests pass
05:24
dukeleto Yuki`N: howdy. have you taken one of the winxed tasks?
Yuki`N I might cry. 05:26
I think it finally works.
dukeleto Yuki`N: tears of joy are some of the best tears of all :) 05:27
Yuki`N Also because working with winxed is most likely one of the most frustrating experiences of all time.
Period.
UGH 05:28
IT DOESN'T WORK.
off by one somewhere. 05:29
05:32 alvis joined
dukeleto Yuki`N: what are you working on? i haven't backlogged 05:32
Yuki`N dukeleto: I just finished implementing timsort in winxed. 05:34
It seems to be a bit slower than the other sorts whiteknight has implemented, but I suspect that to be method call/class overhead. 05:38
I'm going to submit a pull request now. 05:42
Whiteknight is the mentor, though, and it's his repository, so. 05:43
05:44 PacoLinux joined
cotto Yuki`N++ 05:46
though the bots won't know about you with that backtick ;)
dalek rrot-libgit2: f517ed7 | dukeleto++ | / (4 files):
Start Git2.Odb class and add a test for git_repository_database
05:47
Yuki`N Yeah, that's a shame. 05:49
Google broke Melange.
URL-only submissions don't work. 05:50
rfw !karma N 05:51
sorear karma N
aloha N has karma of 54.
sorear karma Yuki`N
aloha Yuki`N has karma of 0.
dukeleto Yuki`N: lulz
sorear karma Yuki
aloha Yuki has karma of 0.
dukeleto are bots don't like backticks in nicks 05:52
our, rather
Yuki`N yeah.
It's rather interesting. :P
dukeleto Yuki`N: i see your pull request
cotto I'm glad they aren't expected to handle email addresses.
rfw wonder if they're going to bring the ranking page back in melange 05:53
dukeleto Yuki`N: that is a serious amount of code. What is the url for the melange task?
rfw: after the shenanigans last year?
rfw dukeleto: guilty as charged
it's okay, i'm too old for it now :) 05:54
dukeleto rfw: it was fun to watch, until *I* got accused of cheating. Then, no bueno.
Yuki`N ummm
www.google-melange.com/gci/task/vie...11/7127361
url submissions broke
so I git format-patch'd it
I'm getting too old for this GCI thing.
I should really have mentored this year. 05:55
dukeleto Yuki`N: there is always GSoC :)
cotto indeed
dukeleto Yuki`N: so the task does not specify a test 05:56
Yuki`N: but that would be *really* awesome.
Yuki`N: would you mind adding a test? With that, i can run the test suite and then if it passes, approve your task. If not, I think whiteknight should review 05:57
Yuki`N: he is on eastern time, probably not going to be around until the morning, i would guess
Yuki`N: i think i can approve tasks for other mentors, since i am org admin 05:58
i hope
Yuki`N lol um
I'm on eastern time
so it is 1am.
dukeleto Yuki`N: oh boy!
Yuki`N Since this is under the benchmark section, I'm not quite sure there's a test suite for this.
dukeleto Yuki`N: you did the task amazingly fast!
Yuki`N I suppose we should just wait for whiteknight then. 05:59
dukeleto, are you surprised at this point? ;P
dukeleto Yuki`N: hmm. can you just write a test that calls timsort and asserts that it got stuff sorted in the correct order?
Yuki`N: i am not surprised at all :)
Yuki`N But I digress; the timsort algorithm was a port from the OpenJDK7 version.
Just some rather annoying hiccups from the language port.
dukeleto Yuki`N: winxed is still getting the bugs worked out :) 06:00
Yuki`N: but yes, frustrating
Yuki`N: the test can be very simple, just a simple "a call to timsort doesn't blow up and returns something reasonable" 06:01
Yuki`N I guess. 06:02
There's no test harness in place, though.
dukeleto Yuki`N: really? rosella has a test harness 06:03
Yuki`N: you should be able to add a test to an already-existing file 06:04
Yuki`N well, this is a benchmark
And it actually doesn't work.
hmm 06:05
I'll have to scour my code over tomorrow.
dukeleto Yuki`N: get some sleep. 06:06
Yuki`N: you have plenty of time, and I am sure you will burn through our tasks very quickly :)
alvis msg whiteknight Please see gist.github.com/1385018 (And, again, let me know if you need more specifics) 06:15
aloha OK. I'll deliver the message.
alvis 'night #parrot 06:16
dalek rrot-libgit2: a897347 | dukeleto++ | / (5 files):
Merge branch 'oid'

Conflicts:
  \t.gitignore
  \tsetup.winxed
06:30
dukeleto oh the oids! 06:43
06:44 PacoLinux joined
dukeleto news.perlfoundation.org/2011/11/hag...lperl.html 06:46
07:06 jeffreykegler joined
Coke Our wikipedia page is woefully out of date. 07:30
(none of the sponsors or advisory board members are current.)
Nor is the comment that we elect our officers once a year. ;)
07:44 PacoLinux joined 08:13 lucian joined 08:45 mj41 joined
dalek p/rxinterpolate: 0fbc43b | mls++ | src/NQP/SymbolTable.pm:
use direct lexinfo access in install_lexical_symbol()
09:00
09:06 diakopter joined
diakopter Merge branch 'kill_constants' broke nqp 09:07
09:07 schmooster joined
dalek p/rxinterpolate: 14a9298 | jnthn++ | src/QRegex/Cursor.nqp:
Couple of fixes; passes all of the regex interpolation tests now.
09:12
09:13 PacoLinux joined 09:17 lucian joined 09:41 Hunger joined 09:48 cosimo joined 09:50 alester_ joined 09:52 diakopter left 09:56 alester_ joined 10:09 woosley left 10:13 PacoLinux joined 11:13 PacoLinux joined 12:06 PacoLinux joined 12:12 Psyche^ joined 12:35 bluescreen joined 13:05 JimmyZ joined 13:06 PacoLinux joined 13:07 whiteknight joined
whiteknight good morning, #parrot 13:07
msg NotFound can you take a look at gist.github.com/1384847? The winxed compiler is saying it can't find method "emit_if" for Winxed.Compiler.ZeroCheckerExpr in this example. Thanks! 13:09
aloha OK. I'll deliver the message.
whiteknight msg Yuki'N The problem is outside of your control. I've looked at the code and it looks good. I'm going to merge the pull request soon and will mark your task as completed. Thanks! 13:13
aloha OK. I'll deliver the message.
dalek sella: bf1e570 | Yuki`N++ | benchmarks/query/sort.winxed:
Add preliminary timsort.
13:26
sella: 8b91d1a | Yuki`N++ | benchmarks/query/sort.winxed:
Fix timsort.
13:42 lichtkind_ joined
blaise hi all 13:51
whiteknight good morning, blaise 13:54
how are you doing today?
blaise I'm alright. My sleep schedule's a bit odd
yourself?
whiteknight My sleep schedule has been off since my son was born. He's 2 on Friday. :) 13:58
blaise: you're working on that port of nl, right?
blaise I am
and installing parrot didn't auto-install winxed? 13:59
I guess the next step would be installing the version from github?
whiteknight blaise: what version of parrot doe you have? Winxed has been in parrot for a few months now 14:01
blaise 3.6.0
whiteknight oh, and what OS are you on?
blaise debian sid
14:02 PacoLinux joined
blaise linux 14:02
whiteknight blaise: yeah, I would update to the newest version of Parrot from github and install from there. According to the logs, winxed should have been in parrot 3.6.0 14:03
it might have been named something funny like parrot-winxed at the time
you might want to check that, just in case
blaise no parrot-winxed
whiteknight bleh
okay, try updating from github.
msg alvis: Okay, I'm going to start making GCI tasks for those things now. I think they get published to the students on the 28th, so we have some time to get the examples together 14:06
aloha OK. I'll deliver the message.
blaise "December 16, 2011: Organizations release second wave of tasks to students" 14:07
tadzik yep 14:08
but there's still time to add them now
whiteknight blaise: they extended the deadline for the initial wave until the 28th, since so many organizations were having problems
the first wave goes out on the 28th, then it's locked until december 16th 14:09
blaise ah, wasn't aware
whiteknight yeah, it was a change they only announced to the admins yesterday afternoon
blaise so parrot will be getting more tasks? there weren't many, but the few seemed like the most interesting tasks in the group 14:12
whiteknight blaise: yes, lots more tasks. I think there were 7 yesterday, we have over 20 right now. I want to have 50 by the 28th 14:21
blaise: And if you tell me what kinds of stuff you are interested in, we can try to add extra tasks like that 14:22
blaise there were 11 yesterday, IIRC
I like stuff like the nl and timsort thing
whiteknight okay, there are a few other unix utilities where ports would make great example code. I'll add one or two more 14:23
also, the timsort one is already completed, but if you have any other sorting algorithms that you think would be interesting/challenging to work on, or any other algorithms at all, let me know
example code is good. Code that we can use to improve performance of libraries and compilers is even better 14:24
blaise 'make test' failed 14:25
t/pmc/nci.t failed 45, t/perl/Parrot_Docs.t failed 12, t/dynpmc/os.t failed 30, and t/dynpmc/select.c failed 14 14:26
whiteknight damnit. That's a transient error, you can ignore it
blaise wait, the last one is "TODO passed", not "falied"
okay
whiteknight I wonder why the os.t test failed. I didn't think we had any problems like that on debian 14:27
blaise debian sid? you need to have tested it recently in order to get an accurate reading of debian sid 14:28
whiteknight maybe I don't even know what debian sid is
blaise debian unstable
whiteknight oh, gotcha
blaise there's squeeze (stable) wheezy (testing) and sid (unstable)
okay, rosella installed 14:29
what now?
wait, the version of parrot I got from git is 3.6.0, the same as the one I had earlier, but this one has winxed and the other didn't 14:32
benabik Debian's packaging is known to be missing some files. Also Parrot HEAD should be 3.10
blaise when I run parrot --version, I get 3.6.0 14:33
I just cloned the git repository and did what it said to install it
benabik Maybe the new one linked against the old one. That would be unfortunate. 14:34
14:34 alvis joined
PerlJam maybe the old one is sooner in his path 14:34
blaise I removed the old one
there's still some dependencies left over, I'll remove parrot-minimal and libparrot3.6.0 14:35
didn't notice those earlier
14:35 PacoLinux joined
blaise there, removed those, recompiled, running tests again 14:37
whiteknight blaise++
14:38 mj41 joined
blaise t/pmc/nci.t failed 45, t/perl/Parrot_Docs.t failed 12, t/dynpmc/os.t failed 30, t/dynpmc/select.t TODO passed 14 14:43
it's now 3.10.0-devel 14:44
okay, now that's all working 14:46
whiteknight awesome
that os.t failure is going to bug me all day
the test is probably making a bad assumption somewhere that debian unstable is breaking
blaise what would be messing it up? 14:47
whiteknight I don't know. it depends what the test is testing 14:48
blaise also, would like to point out for future gci stuff: it would be "run its test suite" not "run it's test suite"
whiteknight if it's something really stupid, like a specific platform string name, that would be a bad test
blaise: ha! I've been copy+pasting a template. I didn't proof-read it 14:49
blaise ah, so I should make a fork on github to put the nl clone in? 14:50
whiteknight yeah, that would be best 14:55
blaise a fork or parrot? seems like forking rosella would make more sense 14:56
whiteknight yeah, fork Rosella. I think that's what the ticket says
or should say
blaise it says parrot
whiteknight regardless. fork Rosella 14:57
check out the gh-pages branch, add your code file in the winxed/ directory. Open the pull request.
blaise I haven't actually finished the program yet, but I'll do that when I have 15:02
whiteknight ok 15:03
There are a few example programs in src/utilities, if you want to see some prior art
blaise okay, I looked in examples/ and found some things 15:04
I am not good with git, how do I checkout gh-pages? 15:06
well, how do I fetch it?
whiteknight git checkout gh-pages
blaise oh, for some reason I thought that was making a new branch, that was the first thing I tried
whiteknight git can be tricky when you get started. I never thought the commands were very intuitive 15:10
blaise "WARNING: class Rosella.CommandLine.Program not found at compile time near Rosella at nl.winxed line 3" 15:18
whiteknight winxed does static type checking and issues warnings if you don't forward declare things. It shouldn't affect the program behavior 15:20
you can add a short forward-declaration "class Rosella.CommandLine.Program;" at the top if you want it to shut up 15:21
blaise okay, tried running it, "Class '[ 'Rosella' ; 'CommandLine' ; 'Program' ]' not found"
whiteknight can I see your code?
gist.github.com
blaise the examples do the same kinds of things
whiteknight msg alvis I added tasks to add .pod files for most binaries. I didn't include parrot_debugger, pbc_disassemble, pbc_dump or pbc_merge. I want to examine those programs to see whether they are worth documenting. Can add tasks later if needed 15:22
aloha OK. I'll deliver the message.
blaise gist.github.com/e489b85a2768d5677fd5 here's the code anyway, though 15:24
whiteknight ah, okay. You have to load Rosella. It's not included by default
blaise I didn't see that in the examples 15:25
whiteknight which examples are you looking at, the ones in the winxed repo?
blaise yeah 15:26
whiteknight Okay, Rosella is an add-on library for Winxed. The winxed examples won't show Rosella code
blaise I meant the Rosella repo
I just figured that was the question
in src/utilities/ and in examples/
whiteknight Add this to the top of your main function: var rosella = load_packfile("rosella/core.pbc"); var(Rosella.initialize_rosella)("commandline"); 15:27
blaise okay, that works 15:28
whiteknight the files in src/utilities aren't complete, during the build I add stuff to them like forward declarations and library includes. The generated files are in rosella/*.winxed
(I forgot about that, sorry about the confusion)
blaise okay, thanks 15:29
15:31 bluescreen joined
blaise where's the documentation for the commandline thing? 15:40
NotFound ~~ 15:46
whiteknight blaise: no documentation yet, that library is very new
NotFound whiteknight: benabik: yes, I've seen it, definitely a winxed bug. 15:47
whiteknight blaise: follow the examples in the utilities if you can, ask me if you need anything else
blaise I'll just manually do args parsing 15:48
whiteknight blaise: that's fine too. It shouldn't be too complicated 15:49
dalek nxed/inline: a0418dc | NotFound++ | / (2 files):
Merge branch 'master' into inline
15:54
nxed: 13ed943 | NotFound++ | winxedst1.winxed:
fix negability of some operators
15:55 AzureStone joined
whiteknight okay, we're up to 27 tasks now 15:56
blaise so I should use the filesystem thing from rosella, rather than readline from winxed? 16:01
dalek nxed: f072300 | NotFound++ | winxedst1.winxed:
fix equal to null or zero optimization in do ... while usage
blaise should I put it in the gh-pages branch? 16:14
whiteknight: ping 16:15
dalek nxed: 3adec3b | NotFound++ | winxedst1.winxed:
fix postfix ++ and -- operators with var operand, Yuki`N++
16:23
whiteknight blaise: pong 16:28
blaise: use FileSystem if you can. I think it's an easier interface to use, but you can be the judge of that
blaise: also, put it in the gh-pages branch. It will be a code example for the website
dalek website: ayardley++ | Parrot Documentation Revision Effort (Blog deux) 16:29
website: www.parrot.org/content/parrot-docum...-blog-deux
whiteknight alvis++ 16:32
alvis whiteknight: Got your msg. Thank you, and I will apprise you, in the next day or three, when I complete the templates. 16:34
whiteknight++
For the tasks!
whiteknight :) I'm glad to see documentation growing!
alvis whiteknight: Me too :) 16:35
dalek p/nci: 131dd2e | jnthn++ | 3rdparty/dyncall-0.6/ (231 files):
Bring dyncall-0.6 into the NQP repo.
16:39
p/nci: d2ec8c9 | jnthn++ | / (3 files):
First cut at getting dyncall configuration and build integrated, and linking it into a stub dynops library.
16:40
p/nci: 0166457 | jnthn++ | .gitignore:
Quieten .gitignore.
blaise whiteknight: can I have www.google-melange.com/gci/task/vie...11/7122355 16:44
whiteknight blaise: did you finish the nl one? 16:45
I don't see a pull request
blaise I did, just haven't pull requested yet
hang on, I'll do ht
that* 16:46
whiteknight okay, as soon as I see it, I'll do a quick code review and approve you
blaise what directory do I put it in?
winxed?
whiteknight yeah, that's as good as any
I'll probably move it around later
blaise actually, root directory, it complained about winxed directory 16:47
whiteknight that's fine too
blaise pull request sent 16:48
whiteknight awesome. The code looks good. I'll merge it later, but I'll accept the task now. Good work 16:51
go to the nl task and mark it completed so I can accept it 16:52
blaise ooh, uploading works now 16:53
marked completed
whiteknight Accepted. Congrats. I'm going to accept the claim on the ls task
blaise I'm done with the ls one, do the same pull request thing for it? 16:55
whiteknight heh, that was quick :)
blaise really similar to the nl one
whiteknight yeah, same thing. Open a pull request and let me look at it
blaise uh, maybe sent/modified the last one? 16:57
not sure
whiteknight yeah, looks like they combined. No problem 16:58
blaise alright
whiteknight okay, the code looks good. I'm glad it went so quick for you 16:59
blaise: I added a few more algorithm-related tasks to the queue. Mersenne Twister and Smoothsort. They should be published on the 28th
If you have any other ideas, let me know 17:00
blaise okay, I'll take a look at them then
will do
whiteknight blaise++ 17:01
blaise gonna close the task on melange? or mark it as complete or whatever it's called 17:02
whiteknight closed. 17:03
blaise thank you 17:04
17:05 PacoLinux joined
dalek nxed/inline: 13ed943 | NotFound++ | winxedst1.winxed:
fix negability of some operators
17:10
nxed/inline: f072300 | NotFound++ | winxedst1.winxed:
fix equal to null or zero optimization in do ... while usage
nxed/inline: 3adec3b | NotFound++ | winxedst1.winxed:
fix postfix ++ and -- operators with var operand, Yuki`N++
nxed/inline: 39447a9 | NotFound++ | winxedst1.winxed:
resolve merge conflicts
nxed: 4410ff9 | NotFound++ | NEWS:
some NEWS for 1.5
17:20
nxed: abd4c8e | NotFound++ | pir/winxed_ (2 files):
update installable files
p: 734d9f3 | diakopter++ | src/NQP/SymbolTable.pm:
Revert "use direct lexinfo access in install_lexical_symbol()"

This reverts commit 13508b4874034715cf09c929da41b8709d753833.
17:34
p: 137dd06 | diakopter++ | src/ (2 files):
first cut at \\!INTERPOLATE and \\!INTERPOLATE_REGEX. strange number conversion workarounds and errors for jnthn++ to debug.
p: 0fbc43b | mls++ | src/NQP/SymbolTable.pm:
use direct lexinfo access in install_lexical_symbol()
p: 14a9298 | jnthn++ | src/QRegex/Cursor.nqp:
Couple of fixes; passes all of the regex interpolation tests now.
rrot: 045cd49 | NotFound++ | ext/winxed/ (2 files):
update winxed snapshot to 1.5 devel abd4c8e5b3

fix postfix operators and compare optimizations minor optimizations
17:36
17:43 lichtkind joined
whiteknight NotFound: do you have any examples of the use of inline? 17:49
NotFound whiteknight: the stage 1 itself 17:50
In the inline branch
whiteknight oh, okay. I see those now
dalek rrot: d907aa2 | petdance++ | config/auto/warnings.pm:
Add the -Wzero-as-null-pointer-constant flag for GCC 4.7
17:54
rrot: 5ec2edf | petdance++ | ext/winxed/ (2 files):
Merge branch 'master' of github.com:parrot/parrot
whiteknight NotFound: How do you decide which functions to inline? Is there some kind of limitation? 17:56
NotFound whiteknight: planned limitation: no closures. Current limitations: a lot.
dalek p/nci: 837fa8b | jnthn++ | / (3 files):
Add a NativeCall REPR and get it filled out enough for now; may need a re-visit later for callback support.
17:57
NotFound whiteknight: The statementes and expressions admited now are the ones with a clone method.
And no return with multiple values. 17:59
whiteknight okay.
can methods be inlined?
17:59 fperrad joined
NotFound whiteknight: not for a now. In the future, not decided yet. 18:00
whiteknight ok 18:01
dukeleto ~~ 18:02
NotFound AFK for a while 18:03
18:04 mtk joined 18:19 PacoLinux joined, ambs joined 18:24 bacek joined 18:39 dmalcolm joined 18:43 bluescreen joined
alvis dukeleto: I diff'd five of nine episodes, and, as far as I can tell, the one we html'ify is newer. 18:47
dukeleto: That is, the one at parrot.github.com/html/pct_tutorial.html is newer and more correct than the one at github.com/parrot/squaak-tutorial/...master/doc 18:48
dukeleto: E.g., episode 2 in parrot.github.com/html/pct_tutorial.html points to the correct pdd, whereis the other does not. 18:53
dukeleto alvis: hmmm 18:58
alvis: i am confused then. 18:59
dalek nxed/inline: 418d480 | NotFound++ | winxedst1.winxed:
fix VarStatement clone
19:01
alvis dukeleto: Sorry, 'bout to head out. I'll check the other four, late, this evening and get back to you. 19:07
dalek nxed/inline: 26ee289 | NotFound++ | winxedst1.winxed:
add clone method to switch statement and operator not
19:18
cotto I'll be about 10m late for #ps. If someone can lead, it'd be appreciated. 19:27
19:37 AzureStone joined
dalek nxed/inline: bfca4f5 | NotFound++ | examples/fly.winxed:
use inline in example fly
19:42
nxed/inline: 8bb0cdb | NotFound++ | winxedst1.winxed:
implement clone in FloatLiteral and operator *
19:43
cotto ~~ 19:44
alester so disappointed that my latest gcc 4.7 build fails 19:46
I reaaaaallly wanted to try out the -Wzero-as-null-pointer-constant flag
cotto gcc doesn't build?
alester Not the dev snapshot I pulled down 19:47
cotto #ps in 0, apparently
alester But parrot doesn't link with it under g++
whiteknight I thought #ps was in an hour
alester So I reverted to older snapshot
I work with 4.7 snapshots all the time. 19:53
cotto whiteknight: dst
whiteknight cotto: bleh.
cotto yeah
20:01 jsut_ joined 20:28 ilbot2 joined
moderator Parrot 3.10.0 "Apple Pi" | parrot.org | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
20:33 Kovensky joined 20:37 fperrad joined
dalek nxed/inline: 60b2631 | NotFound++ | winxedst1.winxed:
annotate return inline
20:40
20:46 cosimo_ joined 20:50 cosimo2 joined 20:55 Yuki`N joined
Yuki`N whiteknight, ping 21:02
whiteknight pong
Yuki`N timsort doesn't work 100%
I was working on it last night but couldn't find the bug.
whiteknight Yuki`N: what's missing in it? It looked like it was working to me
Yuki`N I'm not sure.
whiteknight I compiled it and ran it a few times, lists were sorted, performance was as expected 21:03
Yuki`N With large N (>=1000), 2 or 3 elements are out of order.
They're in the right neighborhood, but not ordered correctly.
whiteknight hmmm... I'll go back and do a deeper test of it
if you want to poke at a solution, be my guest
Yuki`N It looks like the collapse of the sorted runs isn't getting done correctly. 21:04
21:05 schmooster joined
whiteknight okay 21:05
I'm heading home in about 20 minutes, and will be able to look at it then. If you want to spend some time poking at it still, you know we won't penalize you for it :) 21:08
Yuki`N Any method for assertions, whiteknight? 21:10
21:11 bluescreen_ joined
NotFound Yuki`N: __ASSERT__ 21:12
And compile with --debug
whiteknight NotFound is correct. Winxed defines an __ASSERT__() function and a __DEBUG__=1 constant when you use the --debug flag
so you can do something like if(__DEBUG__) { ... } 21:13
NotFound Now you can do more funny looking things, like: (__DEBUG__ && is_correct) || die("Wrong"); 21:15
Yuki`N lol 21:17
NotFound Errr... I think I wrote it wrong %-) 21:18
whiteknight (__DEBUG__ && is_correct) || die("Right");
NotFound __DEBUG__ && (is_correct || die("Wrong")); 21:24
whiteknight ooh, I have a really good task to write up for GCI. I'm going to do it when I get home
but right now, I'm going home. Later 21:27
cotto bye
dalek p/nci: b2bb084 | jnthn++ | / (2 files):
Start to fill out the NCI related ops. This gets us to the point where we can successfully call a function with no args and void return.
21:32
p/nci: 218fe83 | jnthn++ | / (2 files):
Toss previous sketching out of NCI stuff, now that the new solution is well underway.
nxed: cfc0ece | NotFound++ | t/advanced/02postincdec.t:
some tests for post ++ and -- with var
22:21
Yuki`N whoo 22:26
fixed it
NotFound Yuki`N: both problems you encountered are fixed now. 22:30
Yuki`N NotFound, cool. 22:31
Though tis a shame I couldn't get GCI points for it. :P
fixed my timsort implementation.
NotFound And found and fixed a problem with an optimization while on it. You've been very helpful, thanks. 22:32
Yuki`N :P 22:33
I try.
dalek p/nci: 25331a6 | jnthn++ | src/ops/nqp_dyncall.ops:
Start getting some argument processing in place. Handle integer and floating point arguments. Works.
22:44
p/nci: 87a45c4 | jnthn++ | src/ops/nqp_dyncall.ops:
Fix typo (diakopter++).
22:48
22:56 lucian joined
dalek p/nci: b642c65 | jnthn++ | src/ops/nqp_dyncall.ops:
Start getting return type handling in place. Again, just int and float for now. Also seems to work.
23:12
23:33 davidfetter joined 23:36 whiteknight joined
whiteknight Yuki'N++ 23:37
dalek sella: b54b119 | Yuki`N++ | benchmarks/query/sort.winxed:
Add asserts/fix bugs in timsort implementation. Works 100%
23:38
sella: 46daeca | Whiteknight++ | benchmarks/query/sort.winxed:
Merge pull request #31 from nol888/master

fix bug in timsort implementation
Yuki'N++ for the fix