Perl 6 - the future is here, just unevenly distributed

IRC log for #pdl, 2013-12-18

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

All times shown according to UTC.

Time Nick Message
00:21 vicash joined #pdl
00:26 vicash jberger,jberger_: I am having problems with creating an Alien::* module for a C library that I am using. I am trying to do "perl ./Build.PL --install_base=$PWD/_installer" to test out the installation but it fails saying "Failed to change directory to '$PWD/_installer/lib/perl5/a​uto/share/dist/Alien-MyLib': No such file or directory at Alien/Base/ModuleBuild.pm line 311 . I am using Alien::Base version 0.003 from CPAN
00:31 vicash nevermind. The problem is that I had to re-run the Build with ./Build distclean and then re-run the whole build again. So if I modify Build.PL and then run perl ./Build.PL, it doesn't necessary rebuild the whole thing. If the _alien/_share directories had been built earlier and for some reason were removed then they are not rebuilt unless I do a Build distclean
00:34 vicash Otherwise Alien::Base is pretty fucking cool !
00:36 sivoais That it is. I've been telling non-Perl people I know about it. :-)
00:37 vicash how do I get the perl executable to use a library from a random directory without having to do  a "use lib" or change PERL5LIB on the command line
00:38 vicash i am trying perl -I$PATH but it seems to not work for my case.
00:40 sivoais vicash: and it's not showing up under perl -I/path -V ?
00:40 vicash let me try
00:41 vicash sivoais: well i had to do $MYPATH/lib/perl5 to get it to work instead of just $MYPATH .
00:41 vicash that's ok. that's all i wanted anyway. thanks
00:42 vicash sivoais: does Alien::Base support the SVN protocol ? or is there hope for that ?
00:43 vicash because that would be cool .. as then one could checkout a certain revision on demand and build an Alien Module out of that
00:43 vicash instead of finding a tarball which may not be provided
00:44 sivoais hmm, that'd be interesting. You could add support by subclassing Repository. I haven't delved into the code to see if it expects a tarball after downloading
00:44 * vicash just cloned the Alien-Base code to look
00:44 sivoais vicash: this <https://github.com/jberger/Alien-Base/blob/ma​ster/lib/Alien/Base/ModuleBuild/Repository.pm>
00:45 vicash yes. that's what i am looking at... seems like an addition would be useful.
00:46 sivoais this line extracts afterwards <https://github.com/jberger/Alien-Base/bl​ob/91157273105f21ab10959f012d5bf53046a6d​1cf/lib/Alien/Base/ModuleBuild.pm#L240>
00:47 sivoais that could be easily changed to skip that step if the path is a directory
00:50 sivoais maybe this <https://metacpan.org/pod/URL::Checkout> to support git, SVN, Hg, CVS?
01:21 vicash interesting
01:22 vicash i think the Line 237 which does $file->get is the key to downloading from HTTP/FTP before performing the extraction on Line 240 as you mentioned earlier
03:29 vicash jberger: https://github.com/jberger/Alien-Base/pull/33  Here is a pull request allowing checks for SHA-1/SHA-256 sums of the files being downloaded if the exact_filename is being used
04:38 vicash jberger: When Alien::Base is used with a library that doesn't have a pkgconfig file, Alien;:Base generates a _manual PkgConfig option in the ConfigData which uses the working_directory instead of using the final installed directory. This is a bug
04:39 vicash If the working directory gets removed for any reason, this will cause any modules using the Alien::* package to fail since despite the library being installed, the ConfigData says to refer to the working directory instead.
04:41 vicash To be specific, alien->cflags() and alien->libs() end up showing the wrong flags for -I and -L respectively. The pcfiledir value in vars is pointed to the working_directory in my case and in the Alien;:Base source code whereas it should be pointed to where the installation has taken place such as /usr/local or whatever the prefix was set to or --install_base value on the command line.
04:50 vicash I see that during the install time as well you're refreshing the pkgconfig that has been manually generated. seems right. :)
04:53 * vicash wonders why it wasn't working earlier !
05:20 sivoais vicash: have you done XS before?
05:21 sivoais I'm actually learning it right now.
06:33 vicash sivoais: no unfortunately, i have not used XS. i have used PDLpp for one or two functions.
06:34 vicash sivoais: i have used Inline::C and Inline::Java.
06:36 sivoais well, since you're making an Alien:: package... you might want to join #xs on irc.perl.org
06:37 vicash ok. is that beneficial ?
06:37 sivoais I came across it in this thread <http://www.nntp.perl.org/group​/perl.xs/2013/12/msg2749.html> and these <https://github.com/Perl-XS/no​tes/blob/master/Resources.md> are pretty much the same links I've been using to figure it out
06:38 sivoais so far, I'm finding it nice for making a clean interface for native libraries
06:38 sivoais I've used Inline::C and Inline::Java, but they felt a bit difficult to distribute
06:39 sivoais and I've used SWIG to generate XS automatically, but the bindings it made didn't feel like Perl
06:39 vicash swig sucks
06:40 vicash i have used it in the sense that i have debugged swig generated code
06:40 vicash for Java <--> C++ interfaces and sure it makes it easy to do but it still sucks
06:41 sivoais I'm learning XS so that I can make bindings for a couple image processing libraries
06:41 sivoais but right now I'm going for something a bit easier <http://billposer.org/Software/libuninum.html>
06:42 vicash cool
06:43 vicash well one day i will learn XS i hope if i find time..
06:44 sivoais The only reason I'm learning now is that I just found the time. :-) *clutches tuits*
06:44 vicash is that clutches "tits" or "tuts"
06:45 sivoais lol
06:46 sivoais no these <http://en.wiktionary.org/wiki/round_tuit>
06:46 sivoais <http://www.flickr.com/photos/hfb/56871343/>
06:47 * vicash had never heard of round tuit
07:18 drrho joined #pdl
14:13 run4flat sivoais++ for teaching vicash about tuits
14:13 run4flat also, vicash, jberger isn't around, according to my channel listing
14:13 run4flat :-/
14:15 run4flat I directed Joel's attention to the irc log for "today"
15:32 vicash run4flat: thanks.
16:56 webart hmm I did something to my pgplot install ... demo pgplot is not working :-|
16:57 webart with what is seemingly a common error: /usr/local/lib/libpgplot.so.5: Undefined symbol "_gfortran_concat_string"
16:58 webart the list archive has this solution http://mailman.jach.hawaii.edu/piper​mail/perldl/2011-October/005466.html but it is not working for me ...
16:59 run4flat webart, I know nothing about pgplot. Your best bet is to bug the mailing list
17:03 webart :)
17:04 webart I know nothing about fortran .... I hope to remain in the shelter  of perl :)
17:06 vicash webart, if there is an undefined symbol you can do "ldd -d -r /usr/local/lib/libpgplot.so.5" to see which library is not being found. then either install that library dependency or add the path to the LD_LIBRARY_PATH
17:07 vicash webart, i assume you are on Linux and not on the Mac OSX. If you are on OSX then you have to use otool -L instead of ldd
17:07 vicash webart, if you are on a BSD then I have no experience
17:07 webart vicash: yeah been trying that ...
17:07 webart I am on BSD
17:08 webart bascially close to OSX except I need X11
17:08 vicash seems like you're missing a package for gfortran.. maybe you need to install al the gfortran dependencies
17:09 vicash which could be the g77 or fortran77 or fortran95 related packages on your flavour of BSD
17:14 webart hmm cpanm PGPLOT installs  I will look at what tests are running there
17:57 vicash I am using Debian 6, where do I get cpanm from ?
17:58 vicash i see it is cpanminus !
18:33 run4flat vicash, it's distributed on CPAN as App::cpanminus
18:33 run4flat BUT, if you are using perlbrew, use perlbrew's tools to install it
18:37 vicash yea Debian 7 supports cpanminus in their own package repo but not in Debian 6 or backports. I will use App::cpanminus to see what it is about.
18:51 run4flat vicash, it's basically the same as "cpan" but (1) much less verbose and (2) permits many more dist sources
18:55 vicash cool
18:56 * vicash realized with App::cpanminus that one can release scripts under the App:: namespace on CPAN
19:00 run4flat yep!
19:01 run4flat like ack: http://beyondgrep.com/install/
20:00 vicash run4flat: i did a quick glance at your C::TinyCompiler. Is it limited to a particular system architecture like x86 or does it work on ARM/PowerPC etc ?
21:00 * vicash wonders if C::TinyCompiler can generate code for microcontrollers
23:24 dcmertens joined #pdl
23:26 dcmertens vicash, tinycc compiles to x86 or ARM
23:26 dcmertens and tcc can be *compiled* *as* a cross compiler
23:26 dcmertens but C::TinyCompiler is not designed to cross-compile
23:27 dcmertens though that is a *very* interesting idea
23:27 dcmertens at the moment C::TinyCompiler gets its libtcc from Alien::TinyCC
23:28 dcmertens so if you wanted some sort of C::TinyXCompiler, you'd have to build your own libtcc
23:28 dcmertens but that is certainly achievable
23:29 dcmertens You could fork fork Alien::TinyCC -> Alien::TinyXCC, and C::TinyCompiler -> C::TinyXCompiler
23:30 vicash dcmertens: i will look it up. thanks. need more time to do all this !
23:30 dcmertens no kidding!
23:30 dcmertens I'm torn between work on CUDA, tcc, PDL::Graphics::Prima, and Prima::Talk
23:30 dcmertens not to mention real work
23:30 dcmertens :-)
23:34 dcmertens btw, CUDA::Minimal works again!
23:34 dcmertens :-D
23:42 vicash yea i read your blog about it
23:44 vicash yea i am working on PDL::Finance::TA a technical analysis library that can be used on financial data stored as pdls.
23:44 dcmertens sweet
23:44 vicash of course for now it uses ta-lib under the hood. yesterday i wrote and released Alien;:TALib to CPAN. waiting for them to register the name
23:45 vicash i need to revisit PDL::PP now as i wrote stuff in it in March of this year ! so need to re-read all the docs.
23:45 dcmertens eh, yeah
23:45 dcmertens it's kinda a lot to keep in one's head
23:45 vicash esp since this is not my day job and just a side project that i want to do but never had any motivation to.. but now am just doing it
23:46 vicash i think i need to invest in my PDL future to see how i can use it in unique ways
23:47 dcmertens hmm, that's a very positive way of looking at it. :-)
23:47 vicash i also was learning PIC microcontroller programming and damn writing PIC assembly is annoying .. x86 assembly is a cakewalk compared to PIC. so i wanted to write a code generator in Perl
23:47 vicash but i guess that has to wait for a few months now
23:48 dcmertens heh
23:49 dcmertens I am only beginning to learn about PICs
23:50 dcmertens perigrin, could you bring one or more of the Benders into #xs?

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