Perl 6 - the future is here, just unevenly distributed

IRC log for #perl11, 2015-04-30

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

All times shown according to UTC.

Time Nick Message
02:01 willthechill joined #perl11
02:35 davido_ joined #perl11
03:08 travis-ci RPerl build passed. Will Braswell says 'Stringify, Rename *__stringify() to *__to_string()'
03:08 travis-ci http://travis-ci.org/wbraswell/rperl/builds/60636722 https://github.com/wbraswell/rperl/compare/6f0a44c79bc9...69cabf1c0137
03:08 willthechill okay great!  :)
06:19 travis-ci RPerl build failed. Will Braswell says 'Data Types; Remove 'const' & Scalar 'ref' Sub-Types, Collapse 'hash_ref' to 'hashref' & 'array_ref' to 'arrayref', Collapse '__' to '_' In Data Type Names'
06:19 travis-ci http://travis-ci.org/wbraswell/rperl/builds/60649523 https://github.com/wbraswell/rperl/compare/69cabf1c0137...7e489cba2c84
06:21 willthechill dang
06:41 travis-ci RPerl build failed. Will Braswell says 'Data Types, Fix '__method' to '_method' in Class.pm'
06:41 travis-ci http://travis-ci.org/wbraswell/rperl/builds/60650074 https://github.com/wbraswell/rperl/compare/7e489cba2c84...76cb318b6ee4
06:42 willthechill ugh
06:58 rurban joined #perl11
07:02 willthechill rurban: I collapsed all the underscores in data type names
07:02 willthechill hash_ref -> hashref
07:02 willthechill integer__hash_ref -> integer_hashref
07:03 willthechill also I have completely deleted all 'const' data types in favor of only 'use constant' in RPerl v1.0
07:10 travis-ci RPerl build passed. Will Braswell says 'Data Types, Reintroduce Test Error'
07:10 travis-ci http://travis-ci.org/wbraswell/rperl/builds/60651829 https://github.com/wbraswell/rperl/compare/76cb318b6ee4...7acb87172566
07:12 willthechill okay yay!  :)
08:18 basiliscos joined #perl11
08:48 rurban joined #perl11
16:07 ToApolytoXaos joined #perl11
17:18 willthechill joined #perl11
17:58 ToApolytoXaos there you are willthechill :) greetings
17:58 ToApolytoXaos i was waiting for you to come
17:58 willthechill ToApolytoXaos: hello sir!  I am at school now but I am available to talk for a bit before my next class starts
17:59 ToApolytoXaos i did not know you are a teacher / professor
17:59 willthechill haha actually I am a grad student in astrophysics
17:59 willthechill my undergrad degree is computer science & math
17:59 ToApolytoXaos brillinat
17:59 ToApolytoXaos *brilliant
18:00 willthechill this is my first semester back at school, I switched majors to astrophysics, I am at Baylor University
18:00 ToApolytoXaos i'm a Computer Science myself, but up to a Diploma degree lol
18:00 ToApolytoXaos awesome
18:00 ToApolytoXaos about RPerl
18:00 willthechill yes Baylor is a very prestigious school!  :)
18:00 ToApolytoXaos remember when I said about template mechanism?
18:04 willthechill kinda, what was the template idea again?
18:04 ToApolytoXaos well, the way Template Toolkit works, but to generate the code you want with C or C++
18:04 ToApolytoXaos like a transcompiler in a way
18:05 ToApolytoXaos that's how I thought RPerl actuall works
18:05 ToApolytoXaos but i would love to see a clearer template logic so I can start experimenting with C++
18:05 willthechill well I have used Template Toolkit a little bit...
18:05 willthechill oh I see what you are saying
18:06 willthechill I don't think it is very accurate to compare RPerl to TT, but I think I get it
18:06 ToApolytoXaos this way anyone would be able to test their C++ code and pass it to someone who knows how to implement it to RPerl
18:06 willthechill oh okay maybe I don't understand!  :P
18:06 ToApolytoXaos kind of how WordPress themes and plugins work
18:06 willthechill okay wow we are reallly stretching the analogy here
18:06 ToApolytoXaos bad example huh? :D
18:06 ToApolytoXaos your worst nightware as a Perler
18:06 willthechill uh yeah maybe
18:07 willthechill can you please try to explain your idea without referring to other existing software?
18:07 ToApolytoXaos sure thing!
18:07 ToApolytoXaos your RPerl engine generates a C++ code as inline, correct?
18:10 willthechill okay a little problem with your english grammar here
18:10 ToApolytoXaos obviously
18:10 willthechill the RPerl compiler takes as input RPerl source code and generates as output C++ source code, which is then further translated by Inline::CPP into XS, and then THAT is further compiled by gcc into binary code
18:11 ToApolytoXaos awesome!
18:11 ToApolytoXaos now I fully understand how RPerl works
18:11 ToApolytoXaos therefore, should I just look inside _Inline to find the C++ generated code?
18:12 willthechill no, there is not any human-readable code inside _Inline/
18:12 willthechill what you can look for is any file that ends in *.cpp or *.h
18:13 ToApolytoXaos can I compile those files outside Perl scope?
18:13 willthechill again, the only full manually-compiled example we have today is Bubble.cpp and Bubble.h
18:13 ToApolytoXaos as a stand alone project to confirm possible flaws or whatsoever?
18:13 ToApolytoXaos ah okay
18:13 willthechill yes those files can be compiled without Inline
18:14 ToApolytoXaos i'm sure RPerl will be an amazing development journey at least to me
18:14 ToApolytoXaos i still need to learn so many things
18:16 willthechill I suggest you start looking at the *.cpp and *.h files
18:16 willthechill it is pretty complicated
18:16 willthechill of course I'll be here to answer any questions!  :)
18:25 ToApolytoXaos awesome
18:26 ToApolytoXaos by the way, why you include .cpp files instead of .h?
18:27 willthechill uh, good question, I remember that I had to do it that way for some reason, but I would have to go back and figure out why!
18:27 willthechill it is pretty difficult to get the build to happen correctly
18:31 ToApolytoXaos interesting investigation lol
18:31 willthechill yes indeed!
18:32 ToApolytoXaos also, inside a header file, for instance in Algorithm.h you have using std::cout;  using std::cerr; at the top of your file before the ifdef guards
18:32 ToApolytoXaos I have never seen such thing in my programming life lol
18:33 willthechill I will admit that my C++ code is probably quite strange, not only because I am not exactly a C++ expert, but also because I am forced to write super weird C++ code to get it to work with Inline::CPP
18:34 ToApolytoXaos ah i see
18:36 ToApolytoXaos is such code parse-able from RPerl? ////# [[[ INCLUDES ]]]
18:36 ToApolytoXaos I have seen such syntax all over the place
18:39 willthechill ///# [[[ INCLUDES ]]]
18:39 willthechill this shows the RPerl code (a non-functional comment in this case) which was used to generate the C++ code
18:40 willthechill it makes it easier for me to hand-compile that way
18:41 ToApolytoXaos oh okay
18:41 ToApolytoXaos well, based on official documentation from Inline::CPP I haven't seen anything peculiar or whatsoever
18:42 ToApolytoXaos I need to investigate further to see what could possibly cause the issue
18:42 ToApolytoXaos the .cpp inclusion that is
18:42 ToApolytoXaos in place of .h
18:44 willthechill I think it was the only way to get the build to work
18:46 ToApolytoXaos if i make those C++ files to compile successfully, does it mean it *should* compile with Makefile.PL as well in case I run some changes?
18:49 willthechill I don't understand your question, sorry
18:49 willthechill there is a huge test suite
18:49 willthechill if you make changes, see if it breaks the tests
18:49 willthechill if so, not good
18:50 ToApolytoXaos i meant, in case i fix those C++ files and try to compile them manually with my compiler and everything works as expected, does it mean "perl Makefile.PL" et al should work as expected?
18:53 willthechill well, like I said, I have no idea
18:53 willthechill the test suite is large
18:53 willthechill try and see!
18:53 ToApolytoXaos ok
18:53 ToApolytoXaos for the moment i will try to read your code
18:54 willthechill haha yes good idea!
18:58 ToApolytoXaos by the way, are there any plans to rename your classes / functions in order to replace those underscores?
18:58 ToApolytoXaos because based on C++03 / C++11 standard "Each name that contains a double underscore (_ _) or begins with an underscore followed by an uppercase letter (2.11) is reserved to the implementation for any use."
18:58 willthechill in class now, will catch up after
18:59 ToApolytoXaos no worries, chees
18:59 willthechill I just removed tons of double-underscores yesterday
18:59 willthechill there are still quite a few left
19:00 ToApolytoXaos oh, i did not sync :D
19:00 ToApolytoXaos that's why!
19:12 willthechill yeah I upload new code pretty much every day
19:12 willthechill it is important to always pull the latest code!  :)
19:14 ToApolytoXaos now I know :P
19:17 ToApolytoXaos so, where a binary file should be located?
19:17 ToApolytoXaos meaning, if i run make test
19:17 ToApolytoXaos or does it discard it as soon as it finishes?
19:32 willthechill all binary files are temporarily stored in _Inline/
19:32 willthechill automatically built by Inline::CPP
19:32 willthechill but again, I strongly suggest you do NOT even look at any files in _Inline/
19:32 willthechill those files are not for humans
19:33 willthechill Inline is WAAAAAY too complicated to dig into
19:34 ToApolytoXaos it is indeed much more complicated than I thought. I guess I need to finish with my Perl experience and then start offering my full support
19:36 willthechill haha well we STILL haven't had a discussion where I try to help you find some easy places to start working on RPerl
19:38 ToApolytoXaos well, I would love to use RPerl for back-end development in the near future and use vanilla Perl only to areas performance does not matter
19:38 willthechill yes that is a good plan, but it does not relate to helping figure out which parts of RPerl itself which you can help with
19:39 ToApolytoXaos that's why I initially mentioned "template"
19:43 willthechill ah yes I see
19:43 willthechill well may I suggest you don't really want to guess too much or try to figure it out on your own
19:45 willthechill your ideas are very interesting, but they seem kindof random, haha!  :)
19:48 ToApolytoXaos yeah, i have that by nature
19:48 ToApolytoXaos it seems i have a radix algorithm embedded inside my brain
19:48 willthechill curiosity is good!  :)
19:49 willthechill haha embedded brain algorithm
19:49 ToApolytoXaos but also "curiosity killed the cat" we say in my country
19:51 ToApolytoXaos if we could create a cling-like interpreter for RPerl to produce the results of C and C++, that my friend would be really mind blowing for all of us lol
20:00 willthechill what do you mean when you say "cling-like"?
20:00 willthechill first, do you mean "clang" instead of "cling"?
20:02 ToApolytoXaos no, i meant cling
20:02 ToApolytoXaos https://root.cern.ch/drupal/content/cling
20:03 willthechill oh I see, cling is a C++ interpreter built on top of clang (and thus LLVM)
20:03 willthechill interpreted C++, even using JIT, is (in my opinion) counter-productive
20:03 willthechill we are trying to get AWAY from interpreted code and go TOWARD compiled code
20:04 willthechill if you want interpreted code, just go ahead and use regular old Perl
20:04 ToApolytoXaos ok, in what way a newbie would run his RPerl sample code?
20:05 ToApolytoXaos via perl Makefile.PL as we have done thus far?
20:05 ToApolytoXaos or using rperl with flags?
20:05 willthechill Makefile.PL is for building and testing the RPerl system code, it is not for users to access or utilize in any meaningful way
20:06 ToApolytoXaos ah nice
20:06 willthechill (same goes for any Perl project's Makefile.PL file)
20:06 willthechill the 'rperl' executable is for users
20:07 ToApolytoXaos therefore you just want people with Perl experience to take it a step further and replace old, slow code with something newer, fresher, and faster
20:07 willthechill RPerl already runs in an interpreted form, that's how we currently test RPerl code for correct execution and syntax
20:07 willthechill yes that is mostly correct, although we also want to attract non-Perl people as well
20:07 ToApolytoXaos cool
20:08 ToApolytoXaos any chance to add function signatures like those of 5.22?
20:08 ToApolytoXaos or should we stick with my() = @_ ?
20:08 willthechill existing Perl function signatures are fake
20:09 willthechill if they were real or usable I would have used it years ago
20:09 willthechill and I would not have had to invent my own
20:09 ToApolytoXaos have you?
20:10 willthechill function signatures are given by the first line of each subroutine
20:10 willthechill (my footype $invar1, my bartype $invar2, ...) = @_
20:11 ToApolytoXaos yeah, i saw that
20:11 ToApolytoXaos my string $string_name = @_;
20:11 ToApolytoXaos i loved that string type
20:12 willthechill without function return types and argument type signatures, RPerl doesn't exist
20:12 willthechill okay class is over, time to get back on the road to head home!
20:13 willthechill left #perl11
21:02 rurban joined #perl11
23:26 basiliscos joined #perl11

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