Perl 6 - the future is here, just unevenly distributed

IRC log for #perl11, 2017-03-29

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

All times shown according to UTC.

Time Nick Message
01:29 bpmedley joined #perl11
05:26 anton joined #perl11
08:57 sten joined #perl11
12:11 travis-ci perl11/cperl#2444 (coverity - db5b780 : Reini Urban): The build failed. https://travis-ci.org/perl11/cperl/builds/216319585
12:14 travis-ci perl11/cperl#2443 (smoke/master - 2fb67a6 : Reini Urban): The build was broken. https://travis-ci.org/perl11/cperl/builds/216311850
12:39 travis-ci perl11/cperl#2443 (smoke/master - 2fb67a6 : Reini Urban): The build was broken. https://travis-ci.org/perl11/cperl/builds/216311850
12:45 travis-ci perl11/cperl#2445 (coverity - de39653 : Reini Urban): The build is still failing. https://travis-ci.org/perl11/cperl/builds/216324273
14:24 willthechill joined #perl11
14:40 kentnl joined #perl11
15:01 travis-ci perl11/cperl#2446 (coverity - d13a9ff : Reini Urban): The build is still failing. https://travis-ci.org/perl11/cperl/builds/216369813
15:20 anton_p joined #perl11
15:35 travis-ci perl11/cperl#2443 (smoke/master - 2fb67a6 : Reini Urban): The build passed. https://travis-ci.org/perl11/cperl/builds/216311850
15:51 LearnedByError joined #perl11
15:55 travis-ci perl11/cperl#2449 (smoke/master - b1ef14a : Reini Urban): The build has errored. https://travis-ci.org/perl11/cperl/builds/216396631
16:20 LearnedByError I am attempting to getting rperl working, but I have run into a problem on both of my installs of rperl 2.45.  The platforms for Macos Sierra (Darwin Kernel Version 16.5.0: Fri Mar  3 16:52:33 PST 2017; root:xnu-3789.51.2~3/RELEASE_X86_64 x86_64) using perlbrew and perl 5.22.3 and Debian Jessie (4.4.44-1-pve #1 SMP PVE 4.4.44-84 (Thu, 9 Mar 2017 12:06:34 +0100) x86_64 GNU/Linux), perlbrew and perl 5.24.1.  The error message is the
16:20 LearnedByError same on both. The key portion of the output is:
16:20 LearnedByError ^
16:20 LearnedByError 1 warning and 1 error generated.
16:20 LearnedByError make: *** [eval_10_b4b2.o] Error 1
16:20 LearnedByError A problem was encountered while attempting to compile and install your Inline
16:20 LearnedByError CPP code. The command that failed was:
16:20 LearnedByError "make > out.make 2>&1" with error code 2
16:20 LearnedByError The full output is located at https://gist.github.com/lbe/295e957c910fbc968a56c008f8c508f5
16:20 LearnedByError Any advice for a rookie?
16:21 willthechill LearnedByError: hello, and welcome to the Perl 11 movement, home of the RPerl compiler!  :-)
16:21 willthechill I will be happy to help you
16:21 willthechill I am looking at your github gist now
16:21 LearnedByError Thanks!!
16:22 willthechill personally I only have Linux, so I can help you with the Debian part at least
16:23 LearnedByError I had to jump through some hoops on the mac and thought that maybe I had done something wrong.  The install on Debian Jessie was much easier but when I got the same error on Debian I decided it had to be a more systemic issue
16:23 LearnedByError Give me a minute and I’ll put the debian message up on gist, but it is almost exactly the same - only different paths due to different perl
16:24 willthechill on Debian, did you download & run the RPerl installer?
16:24 willthechill wget https://raw.githubusercontent.com/wbraswell/rperl/master/script/rperl_installer.sh; chmod a+x ./rperl_installer.sh; ./rperl_installer.sh
16:25 LearnedByError here you go https://gist.github.com/lbe/83a64b2896c5dec02d9bce65fac44db3
16:26 LearnedByError Hmm, I have slept since I performed the install.  I think I used you install directions from Learning RPerl on cpan.  Let me check my command history
16:26 willthechill okay it seems like you may be using an old version of g++?
16:27 willthechill `g++ -v`
16:28 LearnedByError No, Installed it with cpanm rperl on both platforms
16:28 willthechill `cpanm RPerl` is only 1 step in the installation process
16:28 LearnedByError Using built-in specs.
16:28 LearnedByError COLLECT_GCC=g++
16:28 LearnedByError COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.9/lto-wrapper
16:28 LearnedByError Target: x86_64-linux-gnu
16:28 LearnedByError Configured with: ../src/configure -v --with-pkgversion='Debian 4.9.2-10' --with-bugurl=file:///usr/share/doc/gcc-4.9/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.9 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.9 --libdir=/usr/lib --enable-nls --with-sysroot=/
16:28 LearnedByError --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.9-amd64
16:28 LearnedByError --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --with-arch-32=i586 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
16:28 LearnedByError Thread model: posix
16:28 LearnedByError gcc version 4.9.2 (Debian 4.9.2-10)
16:29 willthechill hmm okay g++ should be good
16:29 LearnedByError I was just following your instructions :)
16:30 willthechill I may need to update Learning RPerl
16:30 willthechill meanwhile, please download and run the RPerl installer, then select steps 20 and 25 only
16:31 willthechill and do not blindly select "yes", you have to read the instructions and make the proper selection each step of the way
16:31 LearnedByError OK, I will
16:31 LearnedByError What?
16:31 LearnedByError I have to read something? :)
16:31 willthechill yes I know, some people may just keep hitting <Enter> with the assumption that it will "just work"
16:31 LearnedByError Should I purge the existing rperl first?
16:32 willthechill actually I have a question for you first
16:32 willthechill why are you using perlbrew?
16:33 LearnedByError So that I don’t have to touch the system perl at all.  I have a script that i have used for years that downloads and installs the version I want and created a perlbrew lib (local::lib) and it just simply works.  I don’t have to manage the local::lib myself as I move between different versions of perl for testing.
16:34 LearnedByError Are you aware of problems with perlbrew?  Do you have a recommended perl version?
16:34 willthechill not exactly "problems" with perlbrew, it just adds an additional layer of complexity, and is often unnecessary
16:35 willthechill any system perl v5.10 or newer is just fine in my opinion
16:35 willthechill so generally I only use local::lib and and system perl
16:35 willthechill BUT that is just me
16:35 willthechill if you like or need perlbrew, that's fine, just be aware that it MAY be somehow involved in creating issues
16:36 willthechill another reason why I do not use perlbrew on my own machine is because I rely on Travis-CI to do my perlbrew tests for me
16:36 LearnedByError Yes, it could be contributing.  Most of the times where I see people having problems with it is because they don’t understand how it works.  I’m pretty familiar with the details and, knock, knock, knock on wood, I have not had problems with it
16:37 willthechill well perlbrew DOES work with RPerl, or else we would have no Travis coverage
16:37 LearnedByError Makes sense that you would use Travis-CI
16:37 LearnedByError So back to my question, do I need ot rip out the current rperl installation?
16:37 willthechill I just don't use perlbrew on my own machine, and I know that perlbrew's extra complexity can and does "interact" with RPerl, sometimes in a negative way
16:38 willthechill well that's related to the perlbrew issue
16:38 willthechill when I use local::lib, it installs RPerl and all related CPAN dependencies in ~/perl5/
16:38 willthechill so in theory I could just delete or rename ~/perl5/ and then start over with a fresh install
16:38 LearnedByError Sorry, what I am getting at is that rperl is in the local::lib right now.  Should I delete all of the exisitng rperl modules from it before I run the installer
16:39 LearnedByError I can also easily do that with perlbrew
16:39 willthechill from what I understand, perlbrew and local::lib are incompatible
16:39 LearnedByError Ahh, I just remembered something
16:40 LearnedByError Since I use the perlbrew libs feature, it adds a “@“ in the path.  Check the gist.  Does g++ have an issue with that?
16:40 LearnedByError I am NOT a C or C++ programmer.  I can just hack a bit with it here and there
16:40 LearnedByError See:
16:40 LearnedByError ^
16:41 LearnedByError Let’s try that again
16:41 LearnedByError /home/whgi/.perlbrew/libs/24.1t@std/lib/perl5/RPerl/HelperFunctions.cpp
16:41 LearnedByError ^
16:41 LearnedByError In fixed font, the ^ is immediately beneat the @ in 24.1t@std
16:42 willthechill first let's be clear... perlbrew and local::lib are 2 different software projects, and they have overlapping (thus incompatible) features including the ability to install CPAN modules in a single-user home directory, usually ~/perl5/
16:42 willthechill https://github.com/wbraswell/rperl/blob/master/script/rperl_installer.sh#L288
16:42 travis-ci perl11/cperl#2450 (smoke/master - 81c18b7 : Reini Urban): The build failed. https://travis-ci.org/perl11/cperl/builds/216401482
16:42 LearnedByError “perlbrew libs” uses local::lib.
16:43 LearnedByError Instead of using ~/perl5, it uses ~/.perlbrew/libs/…..
16:43 willthechill yes that's fine, I just wanted to make sure you were not trying to use 2 separate installations of both perlbrew and local::lib
16:44 willthechill and also yes, I have never seen anything using an at-sign "@" as part of a path, so that very well could be messing things up
16:44 LearnedByError Nope, that’s the most common mistake with perlbrew. Use one or the other but not both
16:45 willthechill okay great, then the next step is for you to try to do something about the at-sign
16:46 LearnedByError Let me make one change at a time.  I will keep my current configuration, rip out rperl from it, and run you installer - reading all questions before answering.  If that works, we know it is a procedure issue.  If I get the same result, I will discontinue using the perlbrew libs feature and use a conventional local::lib
16:46 willthechill no wait
16:46 LearnedByError ok
16:47 willthechill okay you can go with that plan
16:47 willthechill call options 20, 25, and 26 in the RPerl installer
16:47 LearnedByError OK, I’ll let you know what I learn
16:48 willthechill I am basically assuming that you have already manually completed step 22 in the RPerl installer, which is perlbrew
16:48 LearnedByError ok
16:49 LearnedByError I think I played around with the installer a while back, but things didn’t work then either and I decided to give you a bit more time.  Now its time for me to drive to finding the problem
16:49 LearnedByError That’s the great thing about an eternal bash history file, you can figure out what you did way in the past LOL
16:50 willthechill yes .bash_history is good
16:51 willthechill kent\n: clever "newline" nickname update  ;-)
16:52 kent\n oh thats my freenode nick. I transliterated it to nl when I got a PAUSE account :)
16:52 willthechill kentnl: AH okay makes more sense now!
16:52 kentnl just sometimes my client gets a bit forgetful which one I use on perl :)
17:17 LearnedByError Will, your installer is ugly :( LOL, I’ll drop you a note detailing the parts that bother me, once I get all of the way through it.  And per above, yes, you need to update the manual install instructions.  Through trial and error I discovered that I needd to install astyle and gmp in additon to what you already documented as requirements.  But now I realize that there are more requirements like pluto
17:18 willthechill LearnedByError: function before form, my friend.  :-)
17:19 LearnedByError Its the function that I am calling ugly
17:19 LearnedByError It violates the prime directive - don’t screw with my base system to install a user space program
17:19 willthechill ah okay then I would probably use the term "broken" instead of "ugly", but sure
17:20 willthechill actually, I have gone to great lengths to mess with the base system as little as possible
17:20 willthechill such as by creating Alien::astyle
17:20 willthechill and using local::lib
17:20 LearnedByError Yes, the aestethics could be better, but I am more concerned about it making changes where I don’t want them made
17:20 willthechill well you're going to have to be more specific
17:21 willthechill what, exactly, does the RPerl installer change in your base system, which you do not like?
17:21 LearnedByError I recognize that you have put a lot of time in on doing things right.  I’m keeping notes and will forward them when I finish instead of pinging you one at a time
17:21 willthechill okay well I'm here now and may be able to tell you right off the cuff why each thing is the way it is
17:22 LearnedByError Updating Extutils::MakeMake to 7.04 directly since the latest version in apt is 6.94.  Why do you need to update the system instead of just using what I have in local::lib
17:22 willthechill ExtUtils::MakeMaker MUST be upgraded system-wide, due to Inline::C requirements, which are beyond my control
17:22 LearnedByError That was one I said no to because I can’t imagine a case, for me, where it will be needed
17:23 LearnedByError I am fine with it being upgraded, but do it in local::lib
17:23 ribasushi <willthechill> ExtUtils::MakeMaker MUST be upgraded system-wide, due to Inline::C requirements, which are beyond my control
17:23 ribasushi ^^ willthechill this can't be right, something is amiss in your process if it trips you up
17:24 ribasushi once you stepped into l::l, what's available on the system should not be relevant
17:24 LearnedByError The other is pluto.  I took the chance that you insstalled it to /usr/local but I had to let the install complete to find that out
17:26 willthechill LearnedByError: if you do not upgrade ExtUtils::MakeMaker system-wide, then your RPerl installation is broken
17:27 willthechill LearnedByError: pluto can be skipped, but RPerl will only operate in serial, not parallel
17:28 willthechill ribasushi: due to how Inline::C works, ExtUtils::MakeMaker must be upgraded BOTH system-wide and (if utilized) in single-user such as local::lib
17:28 ribasushi I remain unconvinced ;)
17:28 willthechill ribasushi: https://github.com/wbraswell/rperl/blob/master/script/rperl_installer.sh#L263-L268    if you are smart enough to solve it, be my guest
17:29 LearnedByError No, rperl is broke in that case.  I will chose which perl executable any perl script requires.  If I choose to use local::lib and it is properly configured in my environment, then any perl script/application must respect it.  If it ignores updates in local::lib, then it is broken.  While this is my personal belief, this is Larry’s decision.
17:29 ribasushi willthechill: if I comment this out, will travis bomb with the proper error?
17:29 ribasushi if yes - I will have a play in couple days
17:30 willthechill LearnedByError: please feel free to try and fix Inline::C, it is well over my head and most other mortal humans as well
17:30 LearnedByError I have used Inline::C without having the system version of MakeMaker updated
17:30 willthechill meanwhile, if I want RPerl to exist, I must use Inline::C, which means ExtUtils::MakeMaker must be upgraded system-wide
17:30 LearnedByError As recently as a couple of days ago
17:31 willthechill LearnedByError: then please feel free to try and fix it
17:31 LearnedByError I don’t think Inline::C is broken.  Is this system wide dependency documented somewhere?
17:32 ribasushi this argument is a bit besides the point
17:32 ribasushi willthechill: see my question: is the problem be observable on travis?
17:32 willthechill Inline::C v0.75 requires EU::MM v0.74 or greater
17:32 willthechill ribasushi: it has been many moons since I last addressed this issue, so the answer is that I can't remember
17:33 ribasushi nod, fair enough
17:33 LearnedByError I am fine with that requirement.  But where does it say that EU::MM has to be in system as opposed to local::lib
17:34 willthechill the only place it says it is in my own code because apparently I am the one who discovered this issue
17:34 willthechill https://github.com/wbraswell/rperl/blob/master/script/rperl_installer.sh#L263-L268
17:36 LearnedByError OK, I’ll do some checking.  You are probably using parts of Inline::C that I am not.  But I did use it this weekend and my code working without problem with the system wide version of EU::MM being 6.94 which I had the latest, 7.24 installed in local::lib
17:37 willthechill sorry I can't give any more specific info, this is a relatively old issue (July 2015) and you are the first to bring it up in a long time
17:38 LearnedByError I’ll let you know if it is an issue “obvious” to me.  If your script completes and I can run rpel -v, we’ll need to perform further tests
17:38 willthechill it may be that only _some_ installation mechanisms require a system-wide EU::MM upgrade
17:39 willthechill all I know is that I, for sure, had to do this on my own Ubuntu systems back in 2015 to make it work
17:40 LearnedByError I would love to hear Ingy’s POV here.  I cannot believe that he would write something, on purpose, that would ignore local::lib.  The only that I know to do that would be to remove the local::lib from @INC in BEGIN and that is something that sounds like a very bad thing to do
17:41 willthechill we should have ingy's feedback in about 12 - 18 months, that is his usual turnaround time
17:41 willthechill unrelatedly, I have considered building Alien::pluto, which would solve the system-wide pluto issue, but that's like one of ten bazillion things on my to-do list
17:41 LearnedByError LOL, is that any way to talk about a friend of yours :D
17:42 willthechill only if it is the truth?
17:42 LearnedByError My concern on pluto was only on wanting to know up front that it would be installed to /usr/local.  Adding that to the documentation will address my concern there.
17:44 LearnedByError I’m not a total hardass, but I have learned by experience, over 25 years of it in unices, that there are somethings that you don’t mess with and system installed code is one of them.
17:44 willthechill yes, as a system software developer, I am PAINFULLY aware of this
17:44 willthechill emphasis on PAIN  ;-)
17:47 LearnedByError On a different point, I haven’t gotten there yet, but I ran into a timeout error in t/nonblock.t.  There are over 4000 tests in this script.  When I reran the install without, changing anything else, it completed.  I think you must be right on the cusp of the 1800 sec default timeout and my difference in system load for the first run must have put me just over the line.
17:48 willthechill okay I do not know what CPAN distribution is t/nonblock.t from?
17:48 LearnedByError I’ll check to see which one it is.  But If I remember correctly it was one of the RPerls
17:49 willthechill okay well there is no RPerl test named nonblock.t
17:49 LearnedByError Never mind, my memory was incorrect.  It is part of IO::Socket::SSL which is always a pain in the ass to build
17:50 willthechill IO::Socket::SSL is buggy and causes headaches across the board
17:50 willthechill you can force install that one without testing
17:50 LearnedByError That’s what I generally do
17:51 LearnedByError I don’t know why I didn’t force it that time
18:13 LearnedByError Bummer, rperl -v failed the same way as before :(  Let me try it not with a non-perlbrew local::lib and let me see if that works
18:23 willthechill LearnedByError: okay well at least now we know one more step of information along the way
18:24 willthechill gotta log off for a few mins, then will have delayed response for a few hours
18:24 LearnedByError rperl -v works without the @ sign in the path
18:24 willthechill OKAY YAY!
18:24 willthechill so now we know!
18:24 willthechill gotta log off now, be back shortly
18:24 LearnedByError I was able with links to do the second test without having to do a full re-install
18:34 willthechill joined #perl11
18:36 LearnedByError Will, just sent you an e-mail on follow up of my success and where I would like to use rperl.  Please check you e-mail when you have a minute.
18:37 willthechill okay I'm here but will have delayed response for a few hours
18:37 LearnedByError Also, all of your tests passed using EU::MM in local::lib
18:37 willthechill okay that's good to hear
18:38 LearnedByError NP, I have some other stuff that I need ot attend to for the rest of the afternoon so I won’t be reponding very fast either :)
18:38 willthechill no e-mail received
18:38 willthechill what address did you use?
18:38 LearnedByError wbraswell_cpan@NOSPAM.nym.hush.com
18:38 LearnedByError Do I need to delete the NOSPAM?
18:38 LearnedByError I didn’t get a bounc back
18:38 LearnedByError oops, yes I did
18:39 LearnedByError Just resent wo NOSPAM
18:57 willthechill LearnedByError: yes, RPerl is 100% backward-compatible with the Perl 5 core, so you can create an RPerl module Foo.pm, then call `rperl Foo.pm` to compile it into a Foo.pmc and Foo.so binary file, then `use Foo;` in a high-magic perl script, the high-magic code won't even realize it is loading Foo.pmc & Foo.so instead of Foo.pm
18:58 LearnedByError Wunderbar!!!! That was my interpretation of all that I read, but I did not find it explained that succinctly in the documentation!
18:59 willthechill yes RPerl is perfect for what you need
19:00 LearnedByError I almost almost finished with a normal perl 5 version of the module that I want to create in RPerl.  I am coding the normal perl 5 module without any high-magic in it.  Once I have the logic finalized and tested.  I want to convert it to RPerl.  Hopefully I’ll have the normal perl 5 finished this week and can spend some time over the week end in RPerl
19:04 willthechill yes I can help you with that if you like
19:27 LearnedByError Will I created two issues on your github, the first contains my observations and recommendations on the install script.  The second  ontains my pov on _Inline.
19:28 LearnedByError Just saw your respond at 2:04.  I’ll defintely ask for help!!
19:29 LearnedByError Also, I am assuming that the resulting rperl module can be designed to be thread safe so that I can parallelize its use with MCE ( or directly with forks or threads if so desired).
19:31 willthechill no you don't do manual parallelization with RPerl, it provides auto-parallelization via RPerl grammar, pluto, openmp, etc
19:33 willthechill create a low-magic for() loop in RPerl, give the loop a label including the text 'PARALLEL', and let RPerl do the rest!  :-D
20:00 LearnedByError Ahh, didn’t realize that you had added parallelization yet, I thought that was still in a future realease.  I missed that somewhere
20:18 willthechill LearnedByError++   thanks for submitting the github issues
20:19 willthechill http://rperl.org/learning/#Section_2.1.15%3A_Bitwise_Operators      bitwise ops "coming soon", means they are not yet implemented fully in RPerl, but not hard to do
20:19 willthechill bitwise negation w/ parens is done
20:28 LearnedByError Glad to submit the issues.  All good software projects need issues :)
20:31 LearnedByError Not having the bitwise operators is key to a part of my test project.  I do have this code already implemented in C.  Can I use Inline C in rperl yet?   The other performance improvment that I am after just depends on very fast for loops against a simple, but large array 1e6 elements.
20:35 LearnedByError Let me know what I can do to help.  Since the syntax for C and C++ are indentical isnofar as my ignorant brain knows, hopefuly there is something that I can do to help.
20:52 willthechill no RPerl is a replacement for Inline::C (and uses Inline::C itself), you don't combine them together
20:53 willthechill as I said, implementing the bitwise operators is not hard
21:05 LearnedByError OK, sounds like its time to implement - easy for me to say :)
21:40 travis-ci perl11/cperl#2451 (smoke/master - b138767 : Reini Urban): The build was fixed. https://travis-ci.org/perl11/cperl/builds/216498989
23:35 willthechill joined #perl11

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