Perl 6 - the future is here, just unevenly distributed

IRC log for #pdl, 2013-01-04

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

All times shown according to UTC.

Time Nick Message
00:12 Molaf_ joined #pdl
04:24 acrussell joined #pdl
04:27 acrussell_ joined #pdl
15:27 run4flat jberger, your docs stuff seems to work
15:27 run4flat I haven't performed a comprehensive test, but at least it didn't completely break anything
15:28 * run4flat realizes a simple way to perform a comprehensive test and tries
15:32 * run4flat realizes his simple test didn't work for a dumb reason and tries again
15:44 run4flat jberger, there appear to be some subtle differences in the .db files that get generated.
15:44 run4flat I've looked at the original and the one generated using the new doc system using "less"
15:44 run4flat the differences are quite subtle
15:44 run4flat in fact, they may differ simply because of differences in hash sorting order
15:44 run4flat but I'm not yet conviced of that
15:45 run4flat *convinced
15:45 run4flat there may be real differences lurking in there
15:47 run4flat wait, maybe more stupidity on my part
15:47 run4flat argh
15:55 jberger run4flat, I'll let you argue amongst yourselves :-P
15:56 run4flat ok, found a real difference
15:56 jberger if you find some actual differences (there probably are some) we need to decide if we should live with them
15:56 run4flat I think it might be a real difference
15:57 run4flat check the pod for PDL::Complex/Cacosh (sp?)
16:00 jberger that page looks exactly the same for me
16:02 jberger other than perhaps a newline before the file location, but that might be the roff renderer seeing a long path and splitting it on the screen
16:02 jberger run4flat, what difference do you see?
16:03 run4flat no, the actual docs database differs
16:03 run4flat yours has a Ref section that is blank
16:03 run4flat the original does not have a Ref section
16:04 run4flat Looking at complex.pd...
16:04 run4flat why on Earth would these two be different,
16:04 run4flat yet the others not be different?
16:04 jberger I don't see a Ref section on my installed version
16:04 * run4flat scratches head
16:04 run4flat it's probably not displayed becauase it's blank
16:04 run4flat but it's in the db
16:05 run4flat *db file
16:05 jberger so its making a key that isn't used nor displayed?
16:05 jberger is there some way to look at the db?
16:06 jberger what command are you running to see this? I really don't see any differences
16:06 run4flat I just said "less blib/lib/PDL/pdldoc.db"
16:06 run4flat and also examined a copy generated with the traditional one
16:06 run4flat Then I paged through to identify differences
16:11 run4flat Man, I wish the docs db was in plain text
16:14 run4flat Actually, I wonder if anybody would object to converting it to plain text
16:14 run4flat it's not like we make use of the binary format
16:14 run4flat any query against the docs db loads the entire db into a hash
16:16 run4flat Oh, I take that back
16:16 run4flat separating fields on the null character lets the documentation use any ASCII character, without having to worry about matching braces or anything like that
16:17 run4flat So, in other words, a home-grown text format like JSON or YAML would likely suffer problems
16:17 run4flat but that means we should probably use a full-blown YAML or JSON reader/writer
16:35 jberger https://gist.github.com/4453920
16:36 jberger sorry, I got distracted
16:36 jberger there is a simple engine to dump the renderer object
16:36 jberger I ran it with and without blib
16:37 run4flat nice. DDP is Data-Dumper-Printer?
16:37 jberger on the file Basic/Complex/Complex.pm
16:37 jberger Data::Printer
16:37 run4flat so I should run `cpanm Data::Printer`?
16:38 jberger yeah
16:38 jberger then I did a diff on the two outputs
16:38 jberger and yes there is one additional field
16:38 jberger Ref => ""
16:39 run4flat only one?
16:39 run4flat Or is that there for all the different funcs?
16:39 * run4flat is about to run the thing himself
16:41 jberger only one on that document
16:41 run4flat that is so strange
16:42 run4flat why would Cacosh have a blank Ref, but not the others?
16:42 run4flat the vast majority of their documentation is auto-generated
16:42 run4flat OH, I see
16:42 run4flat because Cacosh has a Doc string that is *blank*
16:43 run4flat and the others have a Doc string that says "Works inplace"
16:43 run4flat wtf
16:43 run4flat Now I see
16:44 run4flat When the newer parsers analyze Complex.pm, they treat the three blank lines after Cacosh's "=for ref" differently from the old parser
16:44 run4flat huh
16:45 * jberger thinks its funny that Complex is in Basic (hehe)
16:46 * run4flat thinks jberger is easily amused
16:46 jberger run4flat, let me look, I have a guess
16:47 run4flat Well, for what it's worth, I just added the 'Works inplace' string to Cacosh Doc string, so it should be a non-issue here
16:47 run4flat But I think that otherwise we're pretty safe to move forward.
16:47 opkick joined #pdl
16:47 opkick [pdl01] run4flat pushed 1 new commit to master: http://git.io/Fzi4mw
16:47 opkick pdl/master 964a514 David Mertens: Minor doc tweaks to Complex.pm and Core.pm
16:47 opkick left #pdl
16:47 opkick joined #pdl
16:47 opkick [pdl01] run4flat deleted pod at c4117fd: http://git.io/XSEJyw
16:47 opkick left #pdl
16:48 run4flat Weird, it deleted the pod branch
16:48 run4flat why the hell did it do that?
16:49 jberger you pushed via `git push` not `git push origin master`
16:49 run4flat lemme check that script...
16:50 opkick joined #pdl
16:50 opkick [pdl01] jberger created pod (+3 new commits): http://git.io/84m-Bw
16:50 opkick pdl/pod 6245954 Joel Berger: removed PDL::Pod:: classes in favor of core modules Pod::...
16:50 opkick pdl/pod 69260d2 Joel Berger: removed problematic "last" directive
16:50 opkick pdl/pod c4117fd Joel Berger: removed warning about Pod::Parser incompatibility
16:50 opkick left #pdl
16:50 run4flat yeah, it says "git push github"
16:50 run4flat because the github remote is called github
16:50 jberger right
16:50 run4flat what should it say?
16:50 run4flat git push master github?
16:50 jberger you need to have the pod branch on your system
16:50 run4flat I do, but I don't have a local tracking branch
16:51 jberger git push basically says push all my branches
16:51 jberger and if you don't have pod locally I guess it destroys it
16:51 jberger that sounds odd to me
16:52 jberger and I would say, don't fix it yet
16:52 jberger let me see if I can fix the parser to ignore blank tags
16:52 jberger which is probably what we want
16:52 run4flat oh, sorry, I already took care of it
16:52 jberger nm
16:52 jberger I'm sure other modules have done it
16:52 jberger I just wont pull yet
16:53 run4flat I think that (1) the new result is more correct and (2) if that's the only difference, it's fine
16:53 run4flat in other words, that's not a difference worth chasing
16:53 run4flat 'twould be better to look for more important differences
16:56 run4flat And btw, one of the quirks of PDL::PP is that if you supply undef to the Doc key, it doesn't generate documentation, but if you supply a blank string, it autogenerates stuff for you
16:56 run4flat like the signature, for example
16:58 jberger ok, well I was having a hard time deciding where to put logic to ignore a blank section
16:58 jberger so if you think its ok, I'm all for it
16:58 jberger :-)
16:58 run4flat yeah, don't worry about it
16:59 run4flat Hurray, PDL::Parallel::threads has a 100% pass rate so far!
16:59 run4flat http://www.cpantesters.org/distro/P/PDL-Pa​rallel-threads.html#PDL-Parallel-threads-0.03
16:59 jberger nice
16:59 run4flat tested on Windows, BSD, Linux, and Sun
16:59 run4flat :-)
16:59 jberger and like I said, it doesn't get rendered (that I can tell) so who cares if the database has an unused key
16:59 jberger cool, passes on windows
16:59 run4flat exactly
16:59 jberger very nice
17:00 run4flat (to both things you just said)
17:00 jberger as to storing the database in JSON
17:00 jberger I think you could, but why if this is working
17:00 run4flat only because plain text is easier to examine and debug
17:01 run4flat Note the Sun passes are not very strong: they were not compiled with ithreads
17:04 jberger actually, you probably can use the ->gethash method and dump the result
17:04 jberger that probably is exactly what you want
17:05 run4flat just a one-line change to your test script
17:05 run4flat yes, that's exactly what I want
17:06 run4flat :-)
17:13 jberger \o/
17:14 run4flat o/ \o
17:15 jberger well, how about you reply to my email yesterday to chris and concur about the patch (if you do)
17:16 jberger see what he says
17:16 run4flat oh, sure
17:20 run4flat well, let me see if there are other differences, first
17:24 jberger run scantree on the whole tree
17:25 run4flat yeah
17:26 run4flat actually, the plan is to generate the docs database using both parsers
17:27 run4flat then to write some code to compare them
17:27 run4flat I just finished generating the two docs databases
17:27 run4flat some time later, maybe this afternoon, I'll write a script to compare their contents
17:28 run4flat FWIW, diff tells me they differ
17:28 run4flat and ack couldn't find anything in the pdl tarball that looked like "Doc => ''" or 'Doc => ""'
17:28 run4flat But I'm afraid it'll have to wait for now
17:36 jberger it would be nice if ->scantree worked correctly
17:36 run4flat yes, yes it would
17:36 run4flat I think that is what Chris plans on addressing
17:37 jberger I think its one line
17:37 run4flat there are many things one could improve about the docs system, though
17:37 jberger my $n = $this->scan($File::Find::name,$verbose); # bind $this lexically
17:38 jberger becomes
17:38 jberger my $n = $this->scan($_,$verbose); # bind $this lexically
17:38 jberger or else set nochdir
17:38 run4flat really?
17:38 run4flat I hadn't noticed that
17:39 run4flat at any rate, I've used scandir in PDL::Parallel::threads's Build.PL: https://github.com/run4flat/PDL-Par​allel-threads/blob/master/Build.PL
17:39 jberger I tried to change my script to use ->scantree rather than scan, so as to do whole directories rather than individual files
17:39 run4flat oh, I see
17:39 jberger and I kept getting errors about locating the files
17:39 jberger I'm sure it has to do with who's chdiring when
17:40 jberger neway
17:41 run4flat like I said, I think the whole thing could stand to be cleaned up
17:41 jberger another story for another day
17:41 run4flat :-)
17:41 run4flat yep
23:02 run4flat I'm heading out pretty soon. Hope everyone has a good weekend!

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