Perl 6 - the future is here, just unevenly distributed

IRC log for #pdl, 2013-01-02

| Channels | #pdl index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:13 Molaf_ joined #pdl
14:55 run4flat joined #pdl
15:06 run4flat help MATLAB
15:06 liddle_piddle_bot run4flat: http://pdl.perl.org/?docs=M​ATLAB&title=PDL::MATLAB
15:27 opkick joined #pdl
15:27 opkick [pdl01] run4flat pushed 2 new commits to master: http://git.io/QOMr0g
15:27 opkick pdl/master fe5e292 Chris Marshall: Fix hist() handling of fractional $step...
15:27 opkick pdl/master 5df755c Chris Marshall: Fix sf.net bug #3585811 "conv1d bad value broken"...
15:27 opkick left #pdl
15:32 run_foo joined #pdl
15:32 run_foo this is a test
15:33 lungching did ... did we pass the test?
15:33 run4flat alright, good. Now my IRC client blinks when anybody says something.
15:33 run4flat yes
15:33 run4flat well, #pdl wasn't being tested
15:33 run4flat :-)
15:34 lungching yay, we passed!
15:34 lungching oh
15:34 run4flat yes
15:34 run4flat we passed
15:34 run4flat with flying colors
15:34 run4flat or, blinking colors, to be more precise
15:34 lungching what a wonderfully way to start the new year :)
15:34 run4flat btw, when is dcbpws?
15:34 run4flat the website hasn't been updated yet. :-)
15:34 lungching mid april
15:34 run4flat er, make that dcbpw
15:34 lungching the 13th I think
15:35 run4flat ok, good
15:35 run4flat still right around tax day
15:35 run4flat that makes it easier to remember, you know
15:35 run4flat the Saturday closest to tax day
15:35 lungching yeah, we've been slacking with the holiday
15:35 lungching I think that's right :)
15:35 run4flat funny... that's when I most pick up my Perl stuff
15:35 run4flat especially since it's related to D.C.
15:35 run4flat :-)
15:35 lungching we have our weekly irc meeting tonight, I'll get on awwaiid to update the website
15:36 lungching haha
15:36 run4flat excellent
15:36 run4flat I don't know if I'll be able to come, but I just scheduled something in April and it got me to thinking
15:36 run4flat alright, back to work for me
15:37 lungching oh, well I hope you'll be able to schedule it
15:37 lungching your talks are always enjoyable
15:37 run4flat the issue is affording the trip, actually
15:37 run4flat thanks!
15:38 run4flat and taking the time off
15:38 lungching oh, well I hope you win the lottery sometime between now and then
15:38 * run4flat considers buying some lotter tickets
15:38 lungching :)
15:42 mib_b518ar joined #pdl
15:44 jjap joined #pdl
18:04 jberger run4flat
18:05 jberger I see that chm wants to update the Pod stuff in PDL
18:05 jberger do you have any concept of how involved that would be
18:05 jberger i.e. is there any testing on this, can it be done incrementally
18:08 jberger it seems that Pod::Select (core as of 5.6) is based on the same script that PDL::Pod::Select was
18:08 jberger so perhaps it would be very easy
18:37 run4flat My understanding is that it's just a matter of will power
18:37 run4flat (ping jberger, since this is 30 minutes after you asked)
18:38 jberger the problem as always seems to be the meta-model
18:38 * run4flat checks the ticket queue
18:38 jberger it looks like Pod::Parser has progressed
18:38 run4flat omg
18:38 jberger and PDL::Pod::Parser obviously has not
18:38 run4flat he's gone through, like 30 of 'em
18:38 jberger yeah
18:39 jberger but I noticed the POD one and thought I would look
18:39 run4flat ok, sorry, tons of stuff there
18:39 run4flat yes, I think you are correct, the meta model for the pod parser
18:39 run4flat we need to be able to muck with it
18:40 run4flat I wonder if our pod parser could be implemented by inheriting from Pod::Parser
18:40 run4flat but I haven't looked closely at it myself.
18:40 jberger I'm just trying that
18:41 jberger as usual, if encapsulation had been followed closely, it would just work I'm sure
18:41 jberger but there looks like there is lots of dipping into the hashref going on
18:41 run4flat well, yeah. :-)
18:42 run4flat lots of the shiny user-facing stuff that comes with PDL is a fun hack
18:44 run4flat so, you're thinking about working with Chris on the PDL::Doc work, then?
18:45 run4flat (just reading through the queue now)
18:45 jberger maybe!
18:46 jberger I have plenty on my plate\
18:46 jberger I was just curious what the state is
18:46 run4flat I mean, it looks like Chris has some tuits for it and has claimed PDL::Doc as something he'll work on
18:46 run4flat and you seem to suggest your interest,
18:46 run4flat ergo, you two will work together. :-)
18:50 jberger any chance you can get him on IRC?
18:50 jberger I'm curious what his thoughts are
18:50 run4flat hmm, beats me
18:51 run4flat I'll email him
18:52 run4flat ok, emailed.
18:52 run4flat I'm actually going to have to take a break for a little bit; I'll be back in a few
18:52 run4flat o/
18:53 chm joined #pdl
18:54 chm Hi David/Joel, this is Chris
18:56 jberger hi Chris
18:56 chm What was the PDL::Doc question?
18:56 jberger I saw that you are looking at working on the Pod modules
18:57 jberger I guess I'm wondering what direction you see taking the Pod modules
18:57 chm Yes, I took a look a while back and they are based on some early POD modules in our own copy
18:57 run4flat hi chm, this is David
18:57 jberger yeah, they look similar, but the underlying meta object may have changed
18:57 jberger which might be problematic
18:57 chm I would like to start by redoing them so we don't have a non-standard basis for work going forward
18:57 jberger I think its a great goal to move to Pod::Parser
18:58 chm They are pretty similar but some changes would need to be made.  That is why I haven't gotten around to finishing
18:58 jberger depending on how much time it will take I would love to help
18:58 run4flat chm, have you looked closely at Pod::Parser? (I have not)
18:58 chm Nope
18:58 jberger I'm working on my Thesis and so wont have tons of time until the summer
18:58 jberger but I like to have a side project running for relief from that
18:58 run4flat If it's implemented in an object-oriented fashion, we might be able to write PDL::Pod::Parser as a transitional thing
18:58 run4flat that would inherit from Pod::Parser
18:59 run4flat but I must admit I have not looked closely at it
18:59 run4flat jberger, do you expect to have much time before the summer to work on it?
18:59 chm If we have a standard based approach, we could also improve interoperability of pdldoc with perlldoc
19:00 run4flat I think that chm wants to get the next release out before summer. :-)
19:00 jberger run4flat, thats what I'm trying to determine
19:00 run4flat chm, that would be nice
19:00 run4flat The problem is strictly a Perl problem, there will be no C code necessary.
19:00 run4flat So it fits your strengths, certainly.
19:01 chm Yes, it takes a long time.  I'm still getting to things I thought/hoped for in Sept!
19:01 run4flat and you've had fun digging around meta-protocols lately
19:01 jberger for example `package PDL::Pod::Parser; use base 'Pod::Parser';` passes the test suite
19:01 jberger but I'm guessing thats because its not tested right
19:01 chm Or tested at all...
19:01 run4flat Is there a test suite for PDL::Pod::Parser?
19:02 * run4flat chuckles
19:02 jberger run4flat, yeah, I saw this as an opportunity to contribute, seeing as I don't know anything about the PDL internals
19:02 jberger https://metacpan.org/source/​MAREKR/Pod-Parser-1.51/t/pod
19:02 chm Is there a way to turn off the smileys in mibbit.com?  I keep getting them from :: constructs
19:02 run4flat good question...
19:02 * run4flat checks
19:04 chm jberger, another project that I would like to complete is to rework Devel::REPL to use Moo instead of Moose.
19:04 run4flat chm: I'm afraid not
19:04 run4flat :-(
19:05 run4flat chm, I was just looking into that, and wondering if that would be possible
19:05 run4flat Moose -> Moo work, that is
19:05 chm jberger, that would make the pdl2 shell much more buildable.  The main catch is that MOP stuff would need to be checked for so as not to require Moose hard
19:05 run4flat chm, I have done some hacking to get the Prima event loop to work with the perldl shell, because I could hack on it, but I wasn't sure how to get it working with pdl2
19:06 jberger does Devel::REPL ever call ->meta?
19:06 jberger if so then its probably not worth it
19:06 run4flat that made me think that I should try to put your pdl2 work into my App:: Prima::Repl
19:06 chm Yes, some of the functionality in plugins do but the shell itself as in REPL does not
19:07 chm However, it is not clearly partitioned and the tests are weak as well
19:08 chm run4flat The latest Term::ReadLine now has hooks in it to support other event loops
19:08 jberger (of course I mean other than ->meta->make_immutable, which Moo does automatically)
19:08 run4flat chm, yeah, I saw that, but of course I can't target 5.16.
19:08 chm The nice thing about Moo is if you ever "Moose", then that works too
19:08 run4flat yep, but otherwise don't pay for it
19:08 run4flat :-)
19:08 jberger chm, yep, that's key
19:09 chm The key is that the stock Devel::REPL needs to be made Moose-safe and the plugins should not crash if only Moo is available.
19:09 jberger I would disagree
19:09 chm jberger, what do you mean?
19:10 jberger the whole point of Moo is to gracefully die if Moose is needed but not available
19:10 run4flat alas, I gotta get lunch; I'll check back in a half-hour or so
19:10 run4flat wish I could stay on. :-)
19:10 jberger run4flat, o/
19:10 chm run4flat, later
19:10 jberger chm, that lets the main part of your module be lightweight
19:11 jberger but then if the plugin needs the full power the user is warned
19:11 chm I meant that Devel::REPL needs to be Moose safe so the user doesn't have to worry about it
19:11 jberger actually the plugin would probably require moose in its build/makefule
19:11 jberger chm, I'm not sure I follow
19:11 chm I saw there was a plugin implementation without Moose
19:11 jberger Module::Pluggable?
19:11 chm That would probably be needed, sounds right
19:12 jberger its core
19:12 jberger as of 5.8.9
19:12 chm I'm a bit new to the Moose MOP stuff, just cobbling enough to get pdl2 off the ground, not really a true user
19:13 chm I think Moose is great but it would be very nice not to have to pull in 1/2 the universe of dependencies to build/run pdl2
19:13 chm lightweight and simple is the key
19:13 jberger thats Moo
19:13 chm Moo is small enough we might be able to do an App:: Packer executable for pdl2
19:14 jberger probably
19:14 jberger its the same author
19:14 jberger gotta believe that was mst's idea
19:14 chm That would allow us to merge the perldl and pdl2 branches
19:14 chm kind of a perldl with pdl2 technologies.  with Moose, you get more
19:15 chm the main users of MOP in Devel::REPL is in the C
19:15 chm Completion plugins.  However, there are other approaches to completion
19:15 chm that would not require MOP, e.g. completions on a database of PDL builtin methods
19:17 chm jberger,
19:18 jberger could completion be optional?
19:18 chm jberger, I have to take off.  Great talking with you and David.  I'll try to get an email together with some of my thoughts more completely/coherently
19:18 jberger good talking to you too
19:18 jberger I'll look forward to it
19:18 chm jberger, yes, completion and the various methods are just plugins.  As long as they are written not to die if no Moose, things should be good
19:18 chm o&o
19:19 jberger gotcha
19:19 jberger o/
19:19 jberger (thats an IRC wave btw)
19:19 chm thaniks
19:43 chm joined #pdl
20:04 run4flat alright, I'm back
20:04 run4flat jberger, what do you think?
20:11 jberger hi
20:12 jberger I'm not sure
20:12 jberger its going to depend on things I don't understand
20:13 jberger I dont understand the indexing mechanism
20:13 jberger I can't get perldl to run from blib correctly
20:13 jberger (its complaining that it can't find the index)
20:13 run4flat When you say indexing, do you mean the indexing for the docs database?
20:13 jberger yeah
20:14 run4flat yeah, that's a little cooky
20:14 jberger hmmm, perhaps I got it
20:14 jberger or at least it didn't complain this time
20:14 run4flat the index file is a binary packed file created by-hand by the PDL docs system
20:14 run4flat the file is stored somewhere in the PDL tree
20:15 run4flat it does not use File::ShareDir, though that would be a smart thing to do
20:15 run4flat or, at least something to consider
20:15 run4flat I shouldn't say it would be "smart" as I haven't looked closely at what File::ShareDir does for us
20:19 jberger perhaps
20:19 jberger also it seems that what we would call Pod::Parser is now split into Pod::Parser and Pod::Select
20:20 run4flat well that makes things a bit more fun.
20:23 jberger ok Pod::Select is a subclass of Pod::Parser
20:23 jberger so that is probably sufficient
20:24 run4flat good to nkow
20:24 run4flat know*
20:25 jberger good news! it seems to work that way
20:25 run4flat oh?
20:25 run4flat cool!
20:25 run4flat :-)
20:27 jberger I think its totally possible that we might just s/PDL::Pod::Parser/Pod::Select/g on the main tree
20:28 jberger and remove PDL::Pod::Parser and PDL::Pod::Select totally
20:28 jberger its based on the same ancient code
20:28 run4flat cool
20:28 run4flat the way to know is to patch the system and then examine the docs that come out
20:29 run4flat If you wanted to write tests for it, you could try to feed the current POD processing system with a string of PDL-formatted pod
20:29 run4flat see if it returns the correct data
20:31 jberger it doesn't look like PDL::Pod::Usage is used at all, do you concur?
20:31 jberger noting also that Pod::Usage exists
20:31 * run4flat turns to ack
20:33 run4flat I believe you are correct
20:33 run4flat but I haven't looked closely at the Doc system to see if they do some ridiculousness with @ISA
20:34 run4flat but, I can't imagine they do
20:34 run4flat jberger, can you help me diagnose this: http://www.cpantesters.org/cpan/report​/c46bdce2-4a69-11e2-b162-c5ed238b44f3
20:34 run4flat why is it a failure, and not an unkonwn?
20:34 run4flat the problem is that their Perl was compiled without threads
20:35 run4flat so its Build.PL should have crapped out at the beginning
20:35 run4flat Build.PL is here: https://metacpan.org/source/DCMERTEN​S/PDL-Parallel-threads-0.02/Build.PL
20:35 jberger its claiming that ExtUtils::F77 is not installed
20:35 run4flat no, that's not a problem
20:35 run4flat how do I force the install system to run Build.PL?
20:36 run4flat there's some option in Module::Build
20:36 * run4flat digs up the docs
20:36 run4flat dynamic_config
20:36 run4flat needs to be true
20:36 run4flat grrrr
20:37 jberger not only that
20:37 jberger you should exit 0
20:37 run4flat when?
20:37 run4flat at the end?
20:37 run4flat huh?
20:37 jberger hold on
20:37 * jberger finds docs
20:37 run4flat https://metacpan.org/module/Module::Build::API
20:37 run4flat I thought that if there is trouble, it should exit nonzero
20:38 run4flat which happens when you "die"
20:38 run4flat https://metacpan.org/source/DCMERTENS/​PDL-Parallel-threads-0.02/Build.PL#L8
20:38 run4flat right?
20:38 jberger http://wiki.cpantesters.org/wiki/CPANAuthorNotes
20:38 run4flat thanks
20:39 jberger but a non-zero exit is a fail for cpantesters
20:39 run4flat that's for tests
20:39 run4flat right
20:40 run4flat This is for PDL::Parallel::threads - the module shouldn't even be tested on Perls that don't support threads
20:40 run4flat so I was going to have Build.PL die
20:40 run4flat that would be registered as "Unknown"
20:40 run4flat I think
20:43 jberger I would do something like `if ( ! $has_threads ) { $ENV{AUTOMATED_TESTING} ? exit(0) : die "message" }`
20:43 jberger that way a normal user gets a die
20:43 jberger but CPANTesters gets an exit 0
20:44 jberger https://github.com/jberger/Alie​n-GSL/blob/master/Build.PL#L37
20:45 run4flat but... if the module didn't install successfully, wouldn't that indicate success?
20:45 run4flat and so confuse the whole system?
20:46 run4flat or do the cpan testers analyze the output text somehow?
20:46 run4flat Ah, never mind. cpantesters says I'm supposed to allow my module to be installed anyway
20:47 run4flat so they say it *shouldn't* fail in Build.PL
20:49 run4flat still, it seems like the whole thing should have died when they ran Build.PL
20:49 run4flat :-(
20:52 jberger yeah, its odd
20:53 jberger I'm becoming more and more convinced to just nuke the whole Doc/Pod/ folder
20:54 jberger and change the few instances of PDL::Pod::Parser to instances of Pod::Select
20:54 run4flat sure, give it a try
20:55 run4flat to be absolutely sure it works, you (or I) can install a linux on a virtual machine
20:55 run4flat then install your special branch of PDL and run the documentation system
21:00 jberger in the docs is mentions "a few patches"
21:00 jberger perhaps the best thing to do is try to diff
21:00 jberger its gonna be tough though
21:01 run4flat yeah, finding the right version may be tricky
21:18 run4flat jberger, I think I'm going to do some @INC trickery for PDL::Parallel::threads
21:19 run4flat I guess that should have just gone to the whole channel, and not just Joel. :-)
21:21 run4flat er, wait
21:21 run4flat never mind, I got ahead of myself
21:27 jberger hmmmm
21:27 jberger incomptibility found on the ->command method
21:28 run4flat ->command?
21:28 run4flat in PDL::Pod::Parser?
21:28 jberger yeah, the argument structure is different
21:29 jberger from Pod::Parser
21:29 jberger I'm not sure how different it is
21:29 run4flat hmmm
21:30 jberger PDL has a "$sep" argument, Pod::Parser has "$para" in that slot
21:30 run4flat do you need me to look at it, or do you want to puzzle over it a bit more?
21:30 jberger take a look
21:30 jberger I don't think I can do much more for the next little biit
21:30 * run4flat opens up PDL::Pod::Parser
21:30 jberger I have some errands I need to run
21:31 run4flat ok, I'll look at it
21:31 run4flat bug me when you get back to it. :-)
21:34 jberger k
22:00 run4flat jberger, you were right about my Build.PL
22:00 run4flat I need to exit(0) before creating the Build file
22:00 run4flat the build system will know something went wrong because there will be no Build file
23:03 run4flat I'm heading home. Ciao!

| Channels | #pdl index | Today | | Search | Google Search | Plain-Text | summary