Parrot 4.2.0 "Ornithopter" | parrot.org | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 21 March 2012.
00:12 benabik joined
dalek sella: 6f0e006 | Whiteknight++ | src/ (3 files):
[Net] Update MimeBase64 to try and make it unicode-capable. Untested
00:15
sella: ec859c9 | Whiteknight++ | src/ (29 files):
[Builtins] Rename/rearrange a few builtins. We want to separate them from Parrot opcodes and make more clear what they do
sella: 4b543db | Whiteknight++ | src/include/Builtins.winxed:
[Builtins] Remove a few unused and unneeded builtins. We can add them back-in later
sella: 38fb630 | Whiteknight++ | src/dumper/Dump (2 files):
[Dumper] A few fixes to dumper I found while testing
sella: 6535ea8 | Whiteknight++ | s (6 files):
[Xml] Add in a new stub xml parsing library. I said I wasn't going to write one, I lied.
00:22 benabik joined
dalek sella: c842b28 | Whiteknight++ | src/dumper/ (2 files):
[Dumper] Fix the Object dumper to recurse the MRO and print all non-overridden attributes
00:27
sella: 8f25934 | Whiteknight++ | src/unstable/xml/ (4 files):
[Xml] Add in a .to_xml method to generate xml code again from a Document
00:41
01:02 jashwanth joined
jashwanth hello whiteknight 01:03
whiteknight hello jashwanth 01:07
jashwanth did you check the mail 01:09
whiteknight yes I did. I sent a copy to dukeleto also 01:10
jashwanth oh any feed backs 01:11
whiteknight Overall, it looks very good 01:13
jashwanth really thanks 01:15
whiteknight the week of August 6, you mention you will be doing testing. You should be testing a little bit every week, and not save problems till the end 01:16
I suggest you change your plan to not spend a whole week testing
jashwanth ok
whiteknight and July 23rd week, you say the same
if you need to expand your timeline to allow more time for testing, you can do that
jashwanth actually I was looking forward to do the same 01:18
whiteknight ok
jashwanth but since I had to write the same for two consecutive weeks
I split writing and testing into two 01:19
whiteknight Write a list of features you can cut out if you are behind schedule, so you know how to prioritize
and include a few ideas of things to add if you are moving faster than expected
if your time line is not accurate, we need to know what to do 01:20
jashwanth can I combine such 2 weeks of schedule into one
I wrote about the extra topics in the end
* If the project is ahead of schedule will try and add some more functions such as singular value decomposition,cramer's rule,using the decompositions to solve linear equations. 01:21
I need to add about cutting down of things
yes I also put the cases for the timeline not being accurate all of these I wrote after post coding starting with "*" 01:23
"can I combine such 2 weeks of schedule into one" because I need atleast two weeks for developing and testing a particular topic 01:27
Or should I write the same sentence for both the week
whiteknight yes, you can work on the same thing for more than one week, if you think it will take that long 01:33
jashwanth should I combine the weeks and write a combine description or just write the same for both the weeks 01:35
whiteknight try to cut it in half as best as you can 01:37
don't write the same thing for both weeks
jashwanth Ok if you are free can you send a mail pointing out the errors and possible corrections I could make 01:39
also is it ok to write the the cases in the end where I have provided "*" and written them 01:41
whiteknight yes, I will put together an email for you
yes
jashwanth by the way where do you live in usa 01:45
whiteknight Philadelphia, PA
jashwanth about the blog 01:46
whiteknight yes
jashwanth I have never written one till date
can you help me out with this
whiteknight yes, it's easy. We have blogs on parrot.org that you can use if you need 01:48
You type up your thoughts and click the publish button
You can also make a blog on github if you want
jashwanth oh I didnt know it was that simple 01:49
thanks
sorear moritz: why do you manually +o people
whiteknight: dalek should be fixed now.
whiteknight sorear: yes, I've already [ab]used it 01:50
kid51 In fact, last year, IIRC, it was a *requirement* that GSOC students blog at parrot.org 01:51
whiteknight kid51: yes, I don't know if we have a policy about that yet
kid51 Personally, I liked that (though others did not)
whiteknight kid51: I don't care either way. So long as they show up on the aggregator I'm happy
kid51 It made *very* clear which GSOCers were making progress and which were, umm, out to lunch 01:52
jashwanth I will be blogging any way
since I have not done it till now I will be doing it now 01:53
whiteknight kid51: yes, that's true
kid51 The only problem with the aggregator is ... having to scroll down all the way past the posts by that guy from Philadelphia ;-) 01:54
whiteknight well, if other people would blog more my problems would be less obvious 01:55
dukeleto ~~ 02:01
jashwanth dukeleto:hello
dukeleto jashwanth: howdy! 02:02
jashwanth: i see your proposal in my email :)
jashwanth yes 02:03
did you look at it
dukeleto jashwanth: i did
jashwanth: does the PLA test suite currently pass on your machine?
jashwanth dukeleto:yes 02:04
dukeleto jashwanth: good
jashwanth dukeleto:hoe is the proposal
dukeleto jashwanth: is there no lapack support at all currently in PLA? 02:05
jashwanth: i haven't looked at it in a while
jashwanth: lapack has many thousands of functions, yes?
jashwanth: i suggest you list the exact functions you plan to support, document and test
jashwanth dukeleto:tes 02:06
dukeleto jashwanth: "Final touchups to the project" is too vague
jashwanth dukeleto:yes
dukeleto jashwanth: for each week, you should list the exact features you plan to work on
jashwanth: everyone knows that the plan will change
jashwanth: but you still need a detailed plan
jashwanth: makes sense?
jashwanth yes
dukeleto jashwanth: decide on the most important 50 lapack functions, or the most important 10 in each subsystem, or something like that 02:07
jashwanth ok
dukeleto jashwanth: and research how many functions are in lapack and/or how many are in each subsystem of lapack you want to support 02:08
jashwanth: ok, i need to eat dinner
jashwanth: email more questions to parrot-dev, cc me and/or ask in here :)
dukeleto .eat($dinner)
jashwanth then rewrite the timeline stating their usage precisely
whiteknight:can you guide with selecting them 02:10
dalek sella: a8d6c7b | Whiteknight++ | s (3 files):
[Xml] don't include empty stretches of whitespace as text literals
02:13
whiteknight jashwanth: yes, I can help select them. Right now I am going to bed
I will look at the list tomorrow
jashwanth ok talk to you tomorrow
whiteknight goodnight
kid51 Is there one person mainly responsible for the 'threads' branch? 02:17
benabik kid51: I think it's mostly nine's work 02:18
kid51 I'm building/testing it for the first time tonight. 02:19
with --optimize
But it seems to be hanging at the end of 'make test'.
Have posted to list about that. 02:46
03:58 nbrown joined 05:46 fperrad joined
dalek rrot: 1c0e26c | dukeleto++ | src/platform/generic/dl.c:
Merge remote-tracking branch 'origin/gh363/dlclose'
06:07
ttbot Parrot 1c0e26ca darwin-thread-multi-2level make error tt.taptinder.org/cmdinfo/77425 06:10
dukeleto blargpoop 06:11
that is an odd error. 06:16
07:56 dolmen joined 07:58 mj41 joined 08:02 dolmen joined 08:27 lucian joined 09:27 mj41 joined 09:50 mj41 joined 10:07 bacek joined 10:24 jsut joined 11:01 jashwanth joined 11:47 lucian joined 12:06 whiteknight joined
whiteknight good morning, #parrot 12:06
jashwanth whiteknight:hello 12:17
whiteknight hello jashwanth 12:18
nine Good evening, #parrot 12:44
tadzik good afternoon nine 12:45
whiteknight hello nine, tadzik 12:47
nine: your threading branch is looking more and more awesome every day
nine whiteknight: Thanks... I hope so. Been working on it every day :) 12:50
whiteknight awesome, you should be really proud of what you've accomplished in only a few months 13:08
I hope we can get the last remaining issue (ie windows support) ironed out and get this all into master without too much delay 13:09
nine Seems like build is broken on master again. 13:10
dukeleto: you broke the build with 6050332f3afd125ed606e0e94f85e945888934e6 is the first bad commit 13:16
dalek rrot: 0488f0a | nine++ | src/platform/generic/dl.c:
Unbreak the build on gcc broken by 6050332f3afd125ed606e0e94f85e945888934e6
13:27
13:32 PacoAir joined
dalek rrot: 905dba7 | nine++ | src/platform/generic/dl.c:
Fix codingstd violations in src/platform/generic/dl.c
13:32
rrot/threads: 3e9ca81 | NotFound++ | ext/winxed/compiler.pir:
update winxed snapshot to 375562d

  - Minor fixes
rrot/threads: 1c0e26c | dukeleto++ | src/platform/generic/dl.c:
Merge remote-tracking branch 'origin/gh363/dlclose'
rrot/threads: 1596021 | nine++ | / (23 files):
Merge branch 'master' into threads
kudo/nom: dab5893 | moritz++ | src/core/Str.pm:
make unbase moderately magic again

This now allows 0x and 0o in :16(), but 0d is correctly interpreted as a hex byte, not a prefix for decimal. pmichaud++
13:34
rrot/threads: 0488f0a | nine++ | src/platform/generic/dl.c:
Unbreak the build on gcc broken by 6050332f3afd125ed606e0e94f85e945888934e6
rrot/threads: 905dba7 | nine++ | src/platform/generic/dl.c:
Fix codingstd violations in src/platform/generic/dl.c
rrot/threads: 7f07581 | nine++ | src/platform/generic/dl.c:
Merge branch 'master' into threads
rrot/threads: 79df6e1 | nine++ | / (7 files):
Fix codingstd violations in threads code
14:10
kudo/nom: 5793035 | moritz++ | t/spectest.data:
run t/spec/S12-enums/thorough.t
14:37
sella: ba6372d | Whiteknight++ | s (3 files):
[Xml] Rearrange some interfaces, add the ability to read/write documents to file
15:38
sella: fc262e2 | Whiteknight++ | src/dumper/Dumper.winxed:
[Dumper] Add a convenience method to dump data out to stdout
sella: 55bd732 | Whiteknight++ | src/unstable/xml/ (5 files):
[Xml] More bounds-checking during xml parse to avoid certain common errors.
sella: 9aed78e | Whiteknight++ | src/unstable/xml/ (3 files):
[Xml] Change indent string generation to an inline
sella: 7450796 | Whiteknight++ | src/unstable/xml/ (2 files):
[Xml] two TODO notes for later
15:56 hercynium joined 16:13 jashwanth joined 17:01 dalek joined
dalek rrot: 6a4efe6 | nine++ | src/ops/core_ops.c:
make bootstrap-ops which should have been done with 945d1c8b0591591e4fff4a4fa24713a39998d3d6
17:12
rrot/threads: 6a4efe6 | nine++ | src/ops/core_ops.c:
make bootstrap-ops which should have been done with 945d1c8b0591591e4fff4a4fa24713a39998d3d6
17:29
rrot/threads: cb851e6 | nine++ | src/ops/core_ops.c:
Merge branch 'master' into threads
rrot/threads: cb939b4 | nine++ | / (4 files):
Make task.'send' and receive work with threads
17:55 mj41 joined 18:03 dalek joined
dalek rrot/threads: e32f39e | nine++ | / (2 files):
Fix race condition in wait for the only extremely short task

With only one task on the main thread and one extra task, if the main task waits immediately for the extra task, it gets suspended. If the extra task is extremely short, it can be already finished when the main scheduler checks the foreign tasks and removes the killed ones. Between the main thread realizing that it has no tasks anymore and that all foreign tasks are completed the waiting main task could be scheduled but the scheduler would not check for this anymore and exit the program.
Fixed by rechecking for scheduled tasks after filtering killed foreign tasks. Also needed is a lock when checking the killed flag of a task so that either a task is still running or it is killed and the waiting task scheduled but not killed and still having to schedule.
18:06
whiteknight nine: That looks like a doozie of a bug to fix 18:08
nine whiteknight: it was actually one of the simpler ones since I new that wait works usually but it pretty reliably did not when using it in the very very simple case in task.t. So there could not have been many reasons for the program exiting without an error. 18:11
How should I call the ops for disabling/enabling preemption? 18:20
whiteknight what do you mean?
nine whiteknight: niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf page 23 third paragraph 18:21
whiteknight disable_preemption and enable_preemption are both fine 18:24
do those nest?
nine I'm against nesting
Would be much more involved to implement and doesn't make the user's code better... See it like a CLI/STI in x86 assembly 18:25
I should probably include this comparison in the paper
whiteknight the enable/disable just a flag? Couldn't it be a count? 18:26
(I'm not arguing the point, I'm just trying to understand your reasoning)
nine It's just a flag right now. The argument about user code is basically from www.zaval.org/resources/library/butenhof1.html 18:28
dukeleto ~~ 18:29
nine++ for fixing my dlopen junk. 18:30
cotto ~~ 18:37
whiteknight nine: I only worry about a case where a function disables preemption and then calls a library function which disables/enables 18:39
so then it's re-enabled before the caller expects 18:40
maybe calling disable_preemption when it's already disabled should throw an error, so the programmer knows 18:47
or, enable_preemption when it's already enabled, et 18:49
18:53 alester joined 19:00 dmalcolm joined 19:24 brambles joined
nine whiteknight: throwing an error sounds like a very good idea 19:37
whiteknight It seems like principle of least surprise. If we don't support nesting, don't let users do it 19:40
dalek kudo/nom: edb1989 | moritz++ | t/spectest.data:
we pass another test. Just like this.
19:45
kudo/nom: 3f7d5c2 | moritz++ | t/spectest.data:
we pass some more macro tests
whiteknight We're also going to have to come up with some "best practices" with regards to when libraries should lock and when user code should 19:46
dalek kudo/nom: 431a3fa | moritz++ | t/spectest.data:
run another test file
19:57
nine Tomorrow I'm gonna do a new benchmark, probably matrix multiplication or such. I'm very curious how we do at this. Should be much more in our favor :) 19:59
So...finally submitted my application for the master's degree 20:00
dalek kudo/nom: 2e851f2 | moritz++ | t/spectest.data:
run S05-metasyntax/assertions.t
20:01
whiteknight nine++ 20:03
dukeleto nine++ 20:07
20:11 PacoAir joined
moritz nine++ 20:16
whiteknight I'm actually really psyched to start getting Rakudo using the new threads mechanisms 20:24
easy task dispatching should make operator autothreading pretty easy
well, easy to implement
whether it produces any performance wins for common cases is another question
dukeleto mozakai.blogspot.com/2012/03/howto-...cript.html
whiteknight dukeleto: Pass the result to jaesop and you end up with (very ugly) winxed code 20:27
dukeleto whiteknight: indeed. 20:28
whiteknight assuming jaesop won't completely shit the bed with such large input 20:29
dukeleto whiteknight: :)
whiteknight anyway, it's time for me to go. Later
20:50 lucian joined 20:53 perlite_ joined, d4l3k_ joined 20:55 tadzik joined 20:58 _mayank joined, pmichaud joined, PerlJam joined 21:14 dalek joined, hercynium left 21:15 PerlJam joined, pmichaud joined 21:17 tadzik joined 21:18 Util joined, Coke joined 21:20 masak joined
bacek ~~ 21:25
msg whiteknight I do want to unmerge it... github.com/parrot/parrot/commit/68...9dd38d4198
aloha OK. I'll deliver the message.
benabik ~~ 21:41
22:27 alester joined 23:01 whiteknight joined 23:24 kid51 joined 23:39 alester joined