»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
00:00 raschipi joined, dwarring joined, MasterDuke joined, zoll joined
ijneb What was all of that Netsplit stuff about? 00:00
brimonk AlexDaniel: Where do I do that, and where are the instructions for how to do that?
timotimo it's an IRC thing; an IRC network ("freenode", "oftc", "ircnet") is made up of many servers which are interconnected
AlexDaniel huggable: rakudobug 00:01
huggable AlexDaniel, Report bugs by emailing to [email@hidden.address]
AlexDaniel hm… that's not very instructional
ijneb timotimo: Ah, never knew freenode did that
timotimo if one of these servers goes down and that happens to split the whole network in half (because not all servers are connected to every other server in the network)
00:01 ChanServ sets mode: +vvvv ZofBot buggable NeuralAnomaly huggable
timotimo you get a netsplit where a whole bunch of users are suddenly no longer reachable from your position 00:01
AlexDaniel huggable: rakudobug :is: Report bugs by emailing to [email@hidden.address] See also: github.com/rakudo/rakudo/wiki/rt-introduction 00:02
huggable AlexDaniel, Added rakudobug as Report bugs by emailing to [email@hidden.address] See also: github.com/rakudo/rakudo/wiki/rt-introduction
ijneb Neat
AlexDaniel brimonk: basically, you just write an email to [email@hidden.address] that's it
00:02 dubi0us left
brimonk AlexDaniel: And I should take that zef output and just say, "I was trying to install DBIish, and I got this error, here's the version of my things" 00:02
That it? 00:03
AlexDaniel brimonk: yes! Also include bisectable6's answer to me
00:03 tomaw joined, parisba is now known as Guest17156 00:04 simcop2387 left, simcop2387 joined
AlexDaniel brimonk: what happened is that it did binary search over the commit history, and found that the behavior changed on github.com/rakudo/rakudo/commit/46...ea9779a104 00:04
for example
00:04 xxpor joined
AlexDaniel commit: 46ef1b5b48dd5^ gist.githubusercontent.com/AlexDan...rs-test.p6 00:04
committable6 AlexDaniel, Successfully fetched the code from the provided URL.
AlexDaniel, gist.github.com/d4308db19dca64d163...95c2fa3381
AlexDaniel that's before that commit
commit: 46ef1b5b48dd5 gist.githubusercontent.com/AlexDan...rs-test.p6
committable6 AlexDaniel, Successfully fetched the code from the provided URL.
00:04 ennio left
committable6 AlexDaniel, gist.github.com/516d327afa00080e4c...77ba167220 00:04
AlexDaniel and that's after
00:05 giraffe joined, giraffe is now known as Guest83487 00:06 |oLa|1 left, protium joined, BenGoldberg joined
AlexDaniel by the way, who was that wonderful person who gave me a clue that I can use bisectable with modules? 00:07
ugexe m: use Zef; # me ? 00:08
camelia ( no output )
00:09 dubi0us joined, mienaikage joined
AlexDaniel ugexe: oh, I think so! 00:10
AlexDaniel sends virtual hugs
ugexe: thing is, whateverable already has all of the modules cloned (this is needed for greppable), so no Zef hackery is required :) 00:11
you just have to use lib the right path
ugexe m: use Zef::Client; use Zef::Config; my $client = Zef::Client.new(:config(Zef::Config::parse-file(Zef::Config::guess-path()))); my CompUnit::Repository @to = CompUnit::RepositoryRegistry.repository-for-name("home"); my $candi = $client.search("CSV::Parser").head; say $client.install($candi, :!test, :@to); 00:12
AlexDaniel scary, I know! But we just had a rather useful bisectable result with this :)
e: use Zef
evalable6 (exit code 1) ===SORRY!===
Could not find Zef at line 1 in:
/home/bisectable/git/whate…
AlexDaniel, Full output: gist.github.com/9f76e948639597b105...712824f407 00:13
camelia (timeout)
AlexDaniel :P :P :P
00:14 dubi0us left
brimonk AlexDaniel: bug report sent. 00:16
ugexe m: use CSV::Parser;
camelia ( no output )
AlexDaniel ugexe:that's actually interesting. Didn't it kill it after a timeoet? 00:17
timeout :)
ugexe precomp happens after its already installed 00:18
00:18 dubi0us joined
brimonk Is there a way to execute my perl script within a debugger like I used to in perl5? 00:19
AlexDaniel brimonk: thank you very much for your report!
brimonk AlexDaniel: Anything for you! 00:20
Wait, does that mean that you literally just fixed it?
AlexDaniel no
brimonk What did you do then?
AlexDaniel .tell nine Can you take a look at RT #131898? It looks scary, I'd say a blocker. Please tell me what you think. 00:22
synopsebot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=131898
yoleaux AlexDaniel: I'll pass your message to nine.
AlexDaniel brimonk: the bot has rakudo built on *all* commits, so you can ask the bot when something got broken
brimonk: it will run the code you provide on a bunch of builds and figure it out for you 00:23
ugexe calling it a block might be a stretch - if you actually look at the code in question is already defined in a global scope elsewhere so the code itself is not exactly kosher (even if it should technically work)
AlexDaniel brimonk: 46ef1b5b48dd5 is a commit that changed the behavior, so if you compile rakudo on something older, then it works :)
00:25 tadzik joined, mack[m] joined, M-Illandan joined, tyil[m] joined, unclechu joined, Matthew[m] joined, wictory[m] joined, ilmari[m] joined 00:26 xui_nya[m] joined, CIAvash[m] joined
AlexDaniel ugexe: maybe you are right. That said, DBIish is one of the most popular modules I think, so we should do something about it one way or another 00:26
we can fix the module instead, that would work too 00:27
00:29 pierre_ joined, notostraca is now known as TEttinger 00:35 lookatme joined
lookatme morning 00:35
00:39 huf joined 00:43 Cabanossi left 00:45 Cabanossi joined 00:55 dwarring left
hythm m: $[Array[Str].new("Hello", "Perl 6"),] 00:59
camelia ( no output )
hythm :m say $[Array[Str].new("Hello", "Perl 6"),] 01:00
m: say $[Array[Str].new("Hello", "Perl 6"),]
camelia [[Hello Perl 6]]
hythm How to flatten this array to get (Hello", "Perl 6") Array items? 01:01
raschipi m: say $[Array[Str].new("Hello", "Perl 6"),].flat.map(*.Slip).join("|") 01:03
camelia Hello|Perl 6
hythm Thanks raschipi 01:04
AlexDaniel m: say gather [["Hello", "Perl 6"],]».take
raschipi m: say $[Array[Str].new("Hello", "Perl 6"),]map(*.Slip).join("|")
camelia (Hello Perl 6)
5===SORRY!5=== Error while compiling <tmp>
Two terms in a row
at <tmp>:1
------> 3ay $[Array[Str].new("Hello", "Perl 6"),]7⏏5map(*.Slip).join("|")
expecting any of:
infix
infix stopper
postfix
raschipi m: say $[Array[Str].new("Hello", "Perl 6"),].map(*.Slip).join("|") #one too many previously 01:05
camelia Hello|Perl 6
raschipi » is like .map but it parallelizes things, so it won't keep the order of the itens... 01:07
Or am I confused with .race? 01:08
Oh yes, » preserves the order. 01:09
brimonk AlexDaniel: I reverted to the patch that you suggested, but I still got the same error. 01:12
AlexDaniel raschipi: uhhhhh! Oops!! You are actually right
timotimo ≫ preserves the order of results, not of execution. but take relies on the side-effect of jumping back to the outer gather, so you'll get it in the wrong order, still
AlexDaniel yes, please ignore that snippet 01:13
raschipi Right, the flow control exceptions are side effects.
AlexDaniel brimonk: that's interesting
brimonk: are you sure? 01:14
u: ≫
unicodable6 AlexDaniel, U+226B MUCH GREATER-THAN [Sm] (≫)
AlexDaniel timotimo: ↑ ? O,o
raschipi u: » 01:15
unicodable6 raschipi, U+00BB RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK [Pf] (»)
brimonk git says, 'HEAD detached at 46ef1b5'
raschipi timotimo: You want this ↑ one
brimonk Unles I needed the full sha hash and I messed it up.
geekosaur brimonk, that's normal if you specify a hash and it's not the actual HEAD of that branch 01:16
you should not make commits in that state, is what it's warning you
AlexDaniel brimonk: but on *that* commit there's a bug, you need a parent of that commit if you want to do it like that
brimonk: so perhaps try checking out to 46ef1b5b48^ (where ^ tells it to use its parent) 01:17
in other words, da4a0f50ac0 01:19
brimonk so install -> da4a0f50ac0a00332920e330b062d03543290fd6
Yes.
Trying now.
I think that did it! 01:20
Still testing modules.
timotimo raschipi: yeah i was too lazy :)
brimonk AlexDaniel: Works! 01:23
raschipi Next we will learn there are modules out there already relying on tha commit and that it can't be reverted... 01:24
AlexDaniel raschipi: huh? It's just 8 days old 01:26
01:28 Cabanossi left 01:30 Cabanossi joined
raschipi AlexDaniel: Never understimate users. Wasan't nadim using development versions to get bug fixes need for his dumper? But it was but a joke. 01:31
01:31 pierre_ left 01:34 cdg left
brimonk Is there a good way to store perl6 rationals in sqlite? Is the preferred method a string? 01:41
s/preferred/best 01:42
01:43 pierre_ joined 01:45 Rawriful left, ilbot3 left
raschipi m: (1/3).^methods 01:49
camelia ( no output )
raschipi m: (1/3).^methods.say
camelia (Rat FatRat Range atanh Bridge sign sqrt asech sin tan atan2 acosech truncate asinh narrow base floor abs conj acosh pred new asec cosec acotan cosh ceiling nude acos acosec sech unpolar log exp roots cotan norm sinh tanh acotanh Int Num Real sec asin ra…
01:50 dubi0us left
raschipi m: (1/3).nude.say 01:50
camelia (1 3)
raschipi brimonk: Could you get the numerator and denominator and store them as ints?
lookatme Will Perl 6 add support for Web Assembly ?
01:51 pilne joined 01:52 ilbot3 joined, ChanServ sets mode: +v ilbot3
raschipi lookatme: The plan is yes, from what I gather. rakudo-js will target webassembly. This way it avoids the wonky JavaScript types. 01:52
mspo why does star have json and json_fast 01:53
also these github projects use all different naming
01:53 epony joined 01:54 dubi0us joined
lookatme raschipi, oh, cools! 01:54
raschipi lookatme: You need to ask pmurias, though. 01:58
01:58 dubi0us left 01:59 pierre_ left, dubi0us joined
lookatme Hmm thanks 01:59
raschipi It will certainly target asm.js, though. Going from asm.js to wasm isn't much. 02:00
mspo is panda going to be dropped from star? 02:01
02:03 dubi0us left
mspo also could star make a csv or something out of MODULES.txt that included github info? :) 02:03
raschipi mspo: I never seen any volunteers around to decide what goes into *. 02:04
02:05 noganex_ joined
raschipi In every discussion about it, some want it to be just the bare necessary to install other modules, while others just say a standard library is a good idea, yet no one wants to do the job. 02:06
02:07 Guest17156 is now known as parisba_, noganex left 02:08 dubi0us joined 02:09 cdg joined 02:13 dubi0us left 02:18 dubi0us joined 02:23 dubi0us left 02:29 dubi0us joined 02:42 Cabanossi left 02:45 Cabanossi joined
zengargoyle oh, sweet... The official videos of TPCiA are still in post-production. 02:48
02:48 dubi0us left, pierre_ joined
zengargoyle and samcv++ /me in the middle of first or second talk... 02:50
02:52 dubi0us joined
zengargoyle .ask lizmat did you do that talk thing from a while back? 02:53
yoleaux zengargoyle: I'll pass your message to lizmat.
02:57 dubi0us left, pilne left, dubi0us joined 02:58 dubi0us_ joined 03:01 dubi0us left 03:02 dubi0us_ left 03:07 dubi0us joined 03:12 Cabanossi left, dubi0us left 03:14 Cabanossi joined 03:16 pharv_ joined, dubi0us joined 03:20 bwisti joined 03:21 dubi0us left, BenGoldberg left 03:47 wigner joined 03:48 pierre_ left 03:51 pierre_ joined 03:52 cdg_ joined, raschipi left 03:54 cdg left
ugexe www.dropbox.com/s/tnxrbmwwcf80n96/IMG_0120.jpg line noise camelia 04:00
04:00 dubi0us joined 04:01 pharv_ left 04:05 cdg_ left 04:06 huggable left, huggable joined, ChanServ sets mode: +v huggable, skids left, NeuralAnomaly left, buggable left, ZofBot left, simcop2387 left, samb1 left, timotimo left 04:07 NeuralAnomaly joined, ChanServ sets mode: +v NeuralAnomaly, hoelzro left 04:08 hoelzro joined 04:09 dubi0us left, itaipu joined 04:13 simcop2387 joined 04:14 itaipu left 04:18 timotimo joined 04:19 samb1 joined
zengargoyle ugexe: :) 04:20
04:20 MilkmanDan left 04:21 itaipu joined, dubi0us joined, MilkmanDan joined
zengargoyle isn't sure i get it.... 04:22
04:27 lspaans joined
lspaans p6: say pi; 04:31
camelia 3.14159265358979
04:31 dubi0us left 04:32 lspaans left 04:34 wigner left 04:35 dubi0us joined 04:39 khw left 04:40 dubi0us_ joined, khw joined, dubi0us left 04:44 dubi0us_ left 04:53 dubi0us joined 04:57 dubi0us left 04:58 Cabanossi left 04:59 dubi0us joined, Cabanossi joined 05:03 dubi0us left 05:04 pierre_ left 05:09 dubi0us joined 05:13 pharv_ joined, dubi0us left 05:14 andrzejku joined 05:15 andrzejku left 05:17 andrzejku joined 05:18 itaipu left 05:25 dubi0us joined 05:27 Cabanossi left 05:29 Cabanossi joined, dubi0us left, dubi0us joined 05:34 dubi0us left 05:39 khw left 05:48 |oLa| joined 05:54 dubi0us joined 05:58 big_num joined 05:59 nadim joined
lookatme is reading p6weekly.wordpress.com/2017/08/14/...in-review/ 06:00
06:03 dubi0us left 06:08 mtj_ left, mtj_ joined 06:10 dubi0us joined 06:15 dubi0us left 06:18 pierre_ joined 06:19 dubi0us joined
moritz lizmat++ # p6weekly 06:20
06:23 dubi0us left 06:24 big_num left 06:27 Cabanossi left 06:28 dubi0us joined 06:29 Cabanossi joined 06:33 dubi0us left
lookatme modules.perl6.org not available with 503 error 06:37
06:39 dubi0us joined
nadim I confirm it is down here too 06:40
morning lookatme
lookatme nadim, morning :)
moritz it seems /tmp/ is full 06:41
06:43 dubi0us left
moritz Aug 13 07:24:55 www systemd[1]: [/etc/systemd/system/smoke.perl6.org.service:6] Unknown lvalue 'restart' in section 'Service' 06:44
the log is full with these messages
seems that previous versions of systemd were either case insensitive to configuration, or didn't warn about unknown values 06:51
06:56 dubi0us joined, darutoko joined 06:59 dubi0us_ joined 07:00 dubi0us left 07:01 nadim left 07:03 ijneb left, dubi0us_ left, andrzejku left 07:04 andrzejku joined
zengargoyle totally doesn't know how to properly answer a StackOverflow question. (this should be interesting...) 07:06
i have a feeling it's not as forgiving as PerlMonks. 07:07
07:09 dubi0us joined 07:13 dubi0us left 07:19 dubi0us joined
moritz the main difference is that perlmonks encourages discussion 07:20
stackoverflow wants a straight-forward answer if possible
lizmat clickbaits p6weekly.wordpress.com/2017/08/14/...in-review/
07:23 mspo left 07:24 ribasushi left
zengargoyle i probably did poorly, a mix between "i've asked this and have an answer" and just linking to IRC log and saying read this. 07:25
yoleaux 07:18Z <lizmat> zengargoyle: if you're referring to my "talk" at the TPCiA: no. This was a completely unscripted Q&A session with most of the answers provided by people in the audience
zengargoyle what?
07:26 andrzejku left
zengargoyle .tell lizmat nah, i don't think i've gotten far enough into TPCiA to know what you mean. :) i was just curious in general and thought maybe talk was for TPC but maybe not. 07:27
yoleaux zengargoyle: I'll pass your message to lizmat.
07:27 nadim joined, andrzejku joined 07:28 ribasushi joined, wamba joined, pharv_ left
lizmat . 07:29
yoleaux 07:27Z <zengargoyle> lizmat: nah, i don't think i've gotten far enough into TPCiA to know what you mean. :) i was just curious in general and thought maybe talk was for TPC but maybe not.
zengargoyle my internet has been down or flakey for the past week. i've missed a lot of things and i'm still catching up. :) 07:31
07:34 dubi0us left 07:38 dakkar joined 07:39 dubi0us joined 07:41 zorin-os joined
zorin-os can anyone help me statically compile perl with -Drelocatableinc and with thread support 07:41
07:42 Cabanossi left
zengargoyle zorin-os: wrong IRC channel. this is #perl6 and any perl5 help will a bit iffy. :) 07:42
zorin-os is perl6 as stable as perl5? 07:43
or at least compatible with perl5 scripts?
zengargoyle but -Drelocatableinc ... i'm not sure that is really involved or tied in with threads at all.
07:44 dubi0us left, Cabanossi joined
zengargoyle -Drelocatableinc is just a string manipulation that turns .../ into $^X/../ there's not really much magic there the last time i looked. 07:44
zorin-os (its so i dont need to manually set @INC in every single script to point to the perl ./lib/perl5 and other folders with are required to work correctly) 07:45
(wich in tern can lead to problems if a string or path is missing from @INC)
(although i am not sure what paths are needed to enable the use of "use lib" so its better to just make @INC relocatable) 07:47
zengargoyle all relocatable inc does IIRC is let you specify during configure and suce a path like .../ and that gets search and replaced with the $^X path of the executing perl.
userelocatable and usesitelocal was the one thing i actually fixed in perl5... :) maybe i don't understand your problem. 07:48
but you are in the wrong channel for p5 stuff... :) 07:49
s/suce/such
07:50 rindolf joined 07:52 pierre_ left
zorin-os my main problem is getting perl to compile statically 07:53
as i have tried "./Configure -d -Uusedl ; make", "./Configure -des -Uusedl ; make", "./Configure -des -Uusedl -Dldflags=-static", "./Configure -d -Uusedl -Dldflags= ; make", "./Configure -d -Uusedl -Dldflags=-static", and "./Configure -des -Dldflags=-static ; make" but all have failed with "collect2: error: ld returned 1 exit status [ new line ] makefile:369: recipe for target 'perl' failed [ new line ] make: *** [perl] Error 1" 07:55
zengargoyle ah, got it... i've never tried static... i think irc.perl.org/#perl5 or the like would be more helpful. unless you just get lucky here. :P
geekosaur something failed before that, those are about the least useful part of the error
but in any case I think forcing static link for perl 5 will have very bad effects
zorin-os i do get "warning: Using '...' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking" 07:56
zengargoyle and then there's geekosaur.... :)
geekosaur (like disabling dlopen(), meaning you can't use XS modules unless you compiled them into perl)
07:56 dubi0us joined, pierre_ joined
geekosaur yes, glibc itself is hostile to static linking also 07:57
zorin-os how do i get around that
geekosaur basically, static linking anything on a modern linux takes special setup and you can expect to have to bundle parts of glibc with the result
the correct answer is: don't 07:58
zengargoyle will p5 build with any of the glibc alternatives?
geekosaur the answer you want to hear, of course, is magic
zorin-os are you able to determine how a perl was compiled 07:59
geekosaur -V
zengargoyle -V
zorin-os are there any other important options other then config_args 08:00
assuming that alone isnt enough
08:00 dubi0us left 08:01 dubi0us joined, MilkmanDan left
zorin-os aalso irc.perl.org/#perl5 only has 1 user in it ._. 08:01
also*
person* 08:02
zengargoyle i'm almost half sure i've built perl with -Uusedl but it was on Solaris.
08:02 MilkmanDan joined, jonas1 joined
zorin-os im trying to re-create/re-compile this but with threaded support s.minos.io/archive/bifrost/x86_64/p...-3.tar.bz2 08:02
but all attempts have failed 08:03
zengargoyle and probably accidental as when i tried to do VIM with Perl there was no libperl.so to be found....
zorin-os www.cpan.org/src/5.0/perl-5.10.1.tar.bz2 08:04
zengargoyle zorin-os: it might be just #perl and not #perl5 08:05
08:05 dubi0us left
zengargoyle there are 600+ users in #perl on freenode... i'm not totally sure about perl5 IRC location. 08:06
08:07 andrzejku left
zorin-os ok 08:07
zengargoyle sorry, i'm not really sure what the 'official' Perl 5 IRC is....
08:08 andrzejku joined
zorin-os although staticperl (App:staticperl) contains -Uusedl yet a ldd of its perl shows it as a dynamically compiled executable even though -Uused1 is refered to as " *This symbol, if defined, indicates that dynamic loading of some sort is available." 08:08
App::Staticperl *
08:09 dubi0us joined
zorin-os and -U meand to undefine what ever symbol is after -U 08:09
means*
08:10 ufobat joined
zengargoyle true static is hard, it seems to mean just libc and libm and like geekosaur said it's really a hard process to get a truly static binary. 08:10
are you trying to embed somewhere?
zorin-os no, i need it for my script to work should someone not have perl installed 08:11
zengargoyle ah, so not even libc .... 08:12
zorin-os the requirements are: to be able to work in a chroot
with just perl and the script alone 08:13
08:13 dubi0us left
zorin-os (including perl lib and bin dirs also) 08:13
zengargoyle that doesn't necessarily imply static. unless you're being horribly strict about not even loading anything at all dynamic. 08:14
zorin-os yes
zengargoyle i will way it's a total PITA.
zorin-os as even i the libs required for perl to work are missing or even renamed perl will still work cus it can be ued from within a chroot with only perl/bin/perl and a script located in perl/ 08:16
if*
used*
zengargoyle i did not have your chroot restriction, but close enough. i ended up copyiong .so files into .../lib/perl5 and taking pains to point everything there.
zorin-os but that also is not a solution (making the application require chrooting into to work) 08:17
zengargoyle ah, doubt i'd try a single perl binary and single script.
i had single directory....
zorin-os chroot is just to varify that everything can still work even i they are the only thing on the system
zengargoyle but everything needed under that directory.
except for libc/libm that OMG the whole machine won't work without that... 08:18
zorin-os for example, chroot ./perl /bin/perl /script.pl AND the /lib/perl5 directory exists and succesfull execution of the script means the script is then fully portable (except for its shebang) 08:19
./perl/lib/perl5*
08:20 mr-foobar joined
zengargoyle you might look for user 'mst' here or on 'perl' channel somewhere. he does a lot of similar stuff. 08:20
08:20 dubi0us joined
zengargoyle i don't see why chroot is special if you at least have basic system functionality that sorta has to be there... 08:22
zorin-os cus it makes sure there is absolutely no chance of perl failing due to one o its dependancies being incompatible or missing a unction that it uses 08:23
of*
zengargoyle ldd perl --- linux-vdso.so.1 libdl.so.2 libm.so.6 libpthres.so.0 libc.so.6 libcrypt.so.1 /lib64/ld-linux-x86.64.so.2
zorin-os function* 08:24
or if the distro has a compleately different but still functional file heirachy
08:25 dubi0us left
zengargoyle if those don't work, nothing at all will work. no need for static if you have a ./perl and everything under it. 08:25
zorin-os still, i want it static
zengargoyle Doctor, It Hurts When I Do This... good luck. :) 08:26
08:26 rindolf left
zorin-os lol 08:26
zengargoyle :)
08:27 Cabanossi left, jeek left
zorin-os u try to recreate this then s.minos.io/archive/bifrost/x86_64/p...-3.tar.bz2 08:27
zengargoyle my old $WORK wouldn't upgrade (long story) and i pretty much built an entire system under /var/local/net 08:28
if you toss to 'must be completely static' thing... you can totally make 'under this directory' do anything you want.
including XS modules and all that. 08:29
08:29 Cabanossi joined, dubi0us joined
zengargoyle and libxml and libexpat and libssl and .... 08:29
but trying without a dynamic loader at all.... i wish you well. :) 08:30
08:33 wamba left
zengargoyle really i think the #perl or mailing lists might get you what you want... perl 5 runs on practically everything in the world, i doubt 'static' is terribly hard with people who know how to make it work on a cellphone. 08:33
08:34 domidumont joined
zengargoyle recreate? is that not just perl-5.10.1 plus some distro things? 08:36
08:37 dubi0us left
zorin-os as in get perl 5.10.1 to at least compile as static like it has been in s.minos.io/archive/bifrost/x86_64/p...-3.tar.bz2 08:38
cus the fact that it is compiled statically means it IS possible 08:39
08:39 dubi0us joined
zengargoyle i think you're chasing after the near impossible. if you want to run under linux kernel, you are not fully static. 08:40
there is no big fat blob of binary that just works always.
even debian /bin/dash that is used in startup scripts and such uses libc.so and ld.so 08:41
you either dynamic load some very basic things, or you are tied to very specific kernel ABI and not working because of some filesystem change is the least of you worries when you totally can't work at all if the kernel changes. 08:43
08:43 dubi0us left 08:44 rindolf joined
zengargoyle you're not on an embeded system runnin on bare metal where it will always be the same thing no matter what. 08:44
zorin-os i just need s.minos.io/archive/bifrost/x86_64/p...-3.tar.bz2 re compiled as is but with thread support
08:45 pmurias joined
zorin-os (or if possible with a relocatable /usr/local/local.archive and a relocatable /lib/x86_64-gnu.../ 08:47
zengargoyle what is that? is it just perl 5.10.1?
zorin-os that works the same way @INC relocatable works
zengargoyle you're chroot doesn't work if there is no /lib/x86_64-gnu.... 08:48
it's a moot point.
i get you want safety.
zorin-os and s.minos.io/archive/bifrost/x86_64/p...-3.tar.bz2 is a statically compiled version of perl-5.10.1 that unfortunately hasnt been compiled with thread support
zengargoyle but you're desired thing won't actually work at all if the things that make it possible to work at all don't work. 08:49
zorin-os ;-;
is there a way to see exactly what compiler was used 08:50
08:50 dubi0us joined
zengargoyle why? you have to have a directory for perl modules and scripts. you have to have ld support for *anything* to work at all. why do you want a static perl? 08:51
probably, look for the Config module or the Config_heavy??? module in the lib of the perl you want to look at. 08:52
zorin-os "you have to have a directory for perl modules and scripts. you have to have ld support for *anything* to work at all. why do you want a static perl?" what do you mean
zengargoyle all of the -V information about compiler and flags and etc... is in the Config* modules.
they are built during build time... 08:53
zorin-os whats the direct paths to them
08:54 ShalokShalom joined
ShalokShalom hi there 08:54
08:54 andrzejku left
lookatme hi ShalokShalom 08:54
ShalokShalom can i use Perl6 purely with functional concepts? 08:55
08:55 dubi0us left
zengargoyle zorin-os: depends... my system it's /usr/lib/x86_64-linux-gnu/perl/5.26/Config.pm and Config_heavy.pl 08:55
andreoss ShalokShalom: yes 08:56
zorin-os btw is it possible to compile perl interperator and script.sh into a statically compiled binary with all needed dependancies and still have the script fully functional? as when i try with the staticperl (App::Staticperl) script i get -e instead of the path to the binary
andreoss docs.perl6.org/language/haskell-to-p6
not as purely as in Haskell though. There's no IO monad in Perl 6 and stuff like that 08:57
ShalokShalom andreoss: thanks a lot
08:57 domidumont left
ShalokShalom i mean, will i miss something? 08:57
pattern matching?
zengargoyle zorin-os: you're still totally in the wrong channel. :)
ShalokShalom call functions in functions?
what do you use for UIs?
i guess there is no Qt5 binding? QML?
andreoss ShalokShalom: pattern matching, first-order functions, list comprehensions are present 08:58
ShalokShalom thanks a lot
lookatme ShalokShalom, you can do what you can do in other functional style language
08:58 Cabanossi left
ShalokShalom static typing in any way also? 08:58
lookatme: thanks a lot
this is exactly, what i wanted to know
lookatme yeah it has static type check
08:59 Cabanossi joined, dubi0us joined
ShalokShalom oh wow 08:59
how that?
ah gradual typing 09:00
nice
lookatme yeah, you can read some tutorial first 09:01
zengargoyle ShalokShalom: there are some GTK bindings, but they're pretty basic.
ShalokShalom i see
so you dont do GUIs, do you? 09:02
09:02 andrzejku joined
zengargoyle i sorta think most would just use the Python bindings.... i think you can pretty well use like matplotlib and such Pythong modules from p6. 09:03
zorin-os btw how does Cwd abs_path work
and is it possible to make a C or C++ version of it that does the same thing
09:03 dubi0us left
moritz zorin-os: please ask Perl 5 questions in Perl 5 channels 09:03
and C/C++ in the appropriate channels as well 09:04
zorin-os ok
zengargoyle and yeah, i don't do GUI's. :) but there is good NativeCall C library integration, so you can use fancy GUI, just somebody needs to write the wrappers and make it easy to use in a p6 fashion.
so i think most people have put it at bottom of list of things to finish or create. 09:05
andreoss ShalokShalom: you probably can use python bindings through Inline::Python
ShalokShalom aha, ok i see 09:06
so PyQT
zengargoyle really sad now for not learning more Python just to be able to use Inline::Python easily... 09:07
09:07 piojo9 joined
lookatme Can we use Qt binding of Perl5 through Inline::Perl5 09:07
?
andreoss python's should be better
zorin-os what path is the correct path to the config codepad.org/aESZuRdM/raw.rb 09:09
09:10 dubi0us joined
zengargoyle zorin-os: look for the path that also has a Config_heavy.pl 09:11
zorin-os ok 09:12
09:12 domidumont joined
zorin-os is it possible to use that to re-create the configuration state when it was built? 09:12
zengargoyle and then yes please go to a Perl 5 channel, i enjoy filling empty time, but this is Perl 6 channel and .... 09:13
zorin-os: final answer... :) yes. that Config.pm and Config_heavy.pl are generated during the build and are what 'perl -V' shows. 09:14
zorin-os how would i do so 09:16
lookatme How about the ruby binding for GUI framework ?
I dont' want use python 09:17
ShalokShalom github.com/seanchas116/libqmlbind
this might work 09:18
while it is work
:)
moritz github.com/awwaiid/p6-Inline-Ruby
no idea how good it is
ShalokShalom ruby is without qt
moritz ShalokShalom: you missed an opportunity for a pun there 09:19
"ruby has no qt"
ShalokShalom www.youtube.com/watch?v=ON0A1dsQOV0
pun ^
09:19 dubi0us left
moritz (some people pronounce qt as "cute") 09:19
ShalokShalom yep
its as meant
lookatme: perl5 bindings for Qt5 exist? 09:20
i am maintaining the bindings page on qt wiki, this is why
09:20 wamba joined
zorin-os is it possible to compile perl into a perl.so 09:20
then somehow access all of its funtions threw C/C++ 09:21
through*
09:22 ShalokShalom left 09:23 zakharyas joined
zengargoyle still just wants Tk. 09:23
09:28 Cabanossi left 09:29 Cabanossi joined 09:30 dubi0us joined
BooK_ hey, unicode math question 09:32
09:33 bp_ joined
BooK_ what should this return? 2⁴⁻³ 09:33
09:33 bp_ is now known as b_p_
zorin-os also does the .so include everything in $HOME/perl/lib folder (assuming the prefix was $HOME/perl) and if not how do i include stuff from there 09:33
BooK_ also, 2⁽⁴⁻³⁾ and 2³⁻⁴
p6: say 2⁴⁻³ 09:34
camelia 0.000244
09:34 dubi0us left
BooK_ p6: say 2³⁻⁴ 09:34
camelia 0.000244
BooK_ p6: say 2⁽⁴⁻³⁾
camelia 5===SORRY!5=== Error while compiling <tmp>
Bogus postfix
at <tmp>:1
------> 3say 27⏏5⁽⁴⁻³⁾
expecting any of:
infix
infix stopper
postfix
statement end
statement modifier
Juerd AlexDaniel: It's a 560 tests, not really short :)
AlexDaniel: I had just upgraded with rakudobrew 09:35
lookatme m: say 2⁴⁻³ .WHAT; 09:38
camelia ===SORRY!===
Method call must either supply a name or have a child node that evaluates to the name
lookatme m: say (2⁴⁻³).WHAT;
camelia (Rat)
BooK_ is there a deparse thingy for perl6? 09:39
lookatme BooK_, you mean the return type ?
BooK_ I mean the value
moritz BooK_: there's a --target=ast
lookatme ast mast
moritz not quite deparse
BooK_ I'd expect that to be 2**(4-3) not 2**4**(-3)
lookatme oh 09:40
BooK_ I can understand how that won't be fixed, but people will try cute things with superscript stuff, so at least the docs should mention it 09:41
anyway, no superscript $ or * so there's not much math available in the upper region
it's basically 10 digits and a few signs: ⁰¹²³⁴⁵⁶⁷⁸⁹⁺⁻⁼⁽⁾ and two letters: ⁱⁿ 09:42
(note I didn't find this, a colleague did... I'm just reporting) 09:47
09:48 kybr left
lookatme I think they not consider priority of unicode operator 09:48
09:49 eroux joined 09:50 stmuk_ is now known as stmuk, kybr joined 09:51 dubi0us joined 09:53 mcmillhj joined, pierre_ left, piojo9 left 09:54 lookatme left 09:56 pierre_ joined, eroux left, dubi0us left 09:57 mcmillhj left 09:58 damnlie joined 09:59 dubi0us joined 10:00 piojo joined 10:03 TEttinger left, dubi0us left 10:04 grumble left, ijneb joined 10:11 Aaronepower joined 10:12 lichtkind left 10:13 grumble joined 10:14 dubi0us joined 10:17 markmont left 10:18 dubi0us left
andreoss is it possible to know type expected by lhs? i.e my Int $a = foo(); my Str $b = foo(); 10:19
jnthn No
foo(my Int $a) where sub foo(::T $a is rw) { } would work out though 10:20
10:25 piojo left 10:26 lichtkind joined
andreoss m: sub infix:«*=*»(::T $a is rw, ::T $b) { $a = $b }; (my Int $x) *=* 10; say $x; 10:26
camelia 5===SORRY!5=== Error while compiling <tmp>
Redeclaration of symbol 'T'
at <tmp>:1
------> 3sub infix:«*=*»(::T $a is rw, ::T7⏏5 $b) { $a = $b }; (my Int $x) *=* 10; sa
andreoss m: sub infix:«*=*»(::T $a is rw, T $b) { $a = $b }; (my Int $x) *=* 10; say $x;
camelia 10
10:30 dubi0us joined 10:31 espadrine joined 10:33 pierre_ left 10:35 dubi0us left
iviv is `rakudobrew build moar-blead` what I want to get the latest rakudo? 10:37
BooK_ this trap github.com/perl6/doc/commit/d7feaf...dd525f428c has no title, and gets merged under =head2 Exponentiation Operator and Prefix Minus 10:38
10:38 grumble left
BooK_ if anyone can come up with a proper title, I'll do the patch 10:38
10:39 grumble joined
BooK_ and then add a warning about 2³⁻⁴ close by 10:39
10:39 dubi0us joined 10:40 sena_kun joined, ufobat left 10:41 Cabanossi left
andreoss m: role G {} ; role F does G {} ; say F ~~ G 10:41
camelia True
andreoss m: role G[::A] {} ; role F[::A] does G[A] {} ; say F[Int] ~~ G[Int]
camelia False
10:42 b_p_ left 10:44 dubi0us left, Cabanossi joined 10:45 notbenh left
andreoss m: role G[::A] {} ; role F[::A] does G[A] {} ; say F[Int].^roles.any ~~ G[Int] 10:45
camelia False
andreoss m: role G[::A] {} ; role F[::A] does G[A] {} ; say F[Int].^roles.any ~~ G[*] 10:46
camelia False
10:46 notbenh joined
andreoss m: role G[::A] {} ; role F[::A] does G[A] {} ; say F[Int].^roles.any ~~ G 10:47
camelia True
andreoss m: role G[::A] {} ; role F[::A] does G[A] {} ; say F[Int].^roles
camelia ((G[A]))
andreoss i guess it doen't match because it's G[A] not G[Int]
is there a reason for this?
10:49 dubi0us joined 10:50 markmont joined 10:54 dubi0us left
jnthn m: role G[::A] {} ; role F[::A] does G[A] {}; class C does F[Int] { }; say C ~~ F[Int]; say C ~~ G[Int] 10:54
camelia True
True
jnthn I think the type vars aren't resolved until the role is composed
10:54 Rawriful joined 10:55 Rawriful left, Rawriful joined 10:56 dustinm` left 10:58 dubi0us joined 11:03 dubi0us left 11:07 rindolf left 11:09 dubi0us joined 11:13 dubi0us left 11:19 dubi0us joined 11:21 dustinm` joined 11:24 dubi0us left 11:26 dubi0us joined 11:42 Cabanossi left 11:44 Cabanossi joined 11:47 mr-fooba_ joined, araraloren joined 11:48 mr-foobar left 12:02 epony left 12:14 buggable joined, Geth_ left 12:15 Geth_ joined, huggable left, huggable joined, ChanServ sets mode: +v huggable
Geth Swapped META.info → META6.json in 1 dists in github.com/perl6/ecosystem/commit/8b60cbc779 12:15
12:15 NeuralAnomaly left, NeuralAnomaly joined, ChanServ sets mode: +v NeuralAnomaly 12:16 ZofBot joined, ChanServ sets mode: +v ZofBot 12:23 araraloren_ joined 12:25 araraloren left 12:27 dubi0us_ joined
Geth doc/book-patch-1: 07cd369015 | (Philippe Bruhat (BooK))++ (committed using GitHub Web editor) | doc/Language/traps.pod6
Add missing title for but in list construction
12:28
doc: book++ created pull request #1450:
Add missing title for but in list construction
12:30 araraloren_ is now known as araraloren, dubi0us left 12:35 _4d47 joined 12:46 dubi0us joined 12:47 pierre_ joined, mcmillhj joined 12:48 imcsk8 left, imcsk8 joined 12:50 dubi0us_ left, mr-fooba_ left
zorin-os is this statment correct? "running 1 thread with 1 process and running 10 threads with 10 process should take around the same time as 1 thread with 1 process" 12:51
12:52 cdg joined 12:53 mr-foobar joined
nadim timotimo: Curses interface to Datq::Dump::Tree is done. it allows you to say ddt :curses, $data, ... ; it opens a window, you play around in it, it folds, etc ..., you close and get back where you were. You can do that multiple times of course. Can I wish for some test from you? 12:53
12:54 andreoss left 12:56 rindolf joined
_4d47 On my machine `perl6 -I ~ -M P6rc' takes 10s before a prompt, any way to load faster? 12:57
lizmat hmmm... does -I ~ actually do what you think it does? 12:58
or does your shell expand ~ for you ?
moritz and what's in your P6rc? 12:59
_4d47 I think the shell expand, doing same cmd with /home/user is equally long
just some exported sub 13:00
13:01 travis-ci joined
travis-ci Doc build passed. Philippe Bruhat (BooK) 'Add missing title for but in list construction' 13:01
travis-ci.org/perl6/doc/builds/264722969 github.com/perl6/doc/commit/07cd36901511
13:01 travis-ci left
BooK_ going back to 2⁴⁻³, this is doubly surprising: 1. one would expect it to mean 2¹. 2. once we understand that both superscript numbers are taken to mean "to the power of that superscripted number", we'd might read it as 2**4**-3, but in fact it's (2**4)**-3 (so precedence/associativity is different for those superscripted powers) 13:09
_4d47 ok much better when module is in empty subdir 13:10
13:10 pierre_ left 13:17 dubi0us left
AlexDaniel BooK_: as I see it, the right solution would be a compile-time error or worry. However, the same kind of fix for ²² was treated as unnecessary special-casing so it didn't move anywhere. I'm not entirely sure if 2⁴⁻³ is any different 13:20
moritz would bay any fancy superscripts, possibly with the excption of a single digit or a negated single digit 13:22
13:22 ufobat joined, dubi0us joined 13:23 konsolebox left
BooK_ AlexDaniel: ²² should mean **22 13:23
AlexDaniel m: say ²²
camelia 4
BooK_ ouch
AlexDaniel BooK_: rt.perl.org/Ticket/Display.html?id=126732 and github.com/rakudo/rakudo/pull/1095
moritz: whoa! 2³² is a perfectly fine use-case, no need to restrict it to one digit 13:25
moritz m: say: 2³²
camelia ( no output )
AlexDaniel m: say 2³²
camelia 4294967296
13:26 mspo joined
moritz AlexDaniel: as long as we manage not to shoot ourselves by being fancy, I'm all fine with it. But it seems currently we're shoot our foots :/ 13:26
mspo stmuk: last night my builds started to randomly work so I added half of star to pkgsrc-wip :)
13:26 konsolebox joined
mspo stmuk: I'll try to plow through the second half when I get some free time 13:26
13:26 dubi0us left
perlpilot (less foot-shooting)++ 13:27
13:31 itaipu joined
perlpilot m: say 2⁴-³; # works fine ;-) 13:31
camelia 13
BooK_ ONOES 13:32
Geth mu: 3521e795b6 | (Zoffix Znet)++ (committed using GitHub Web editor) | util/update-design.perl6.org.sh
Load up brewed perl
13:33
perlpilot m: say 2⁴¯³; # contrast 13:34
camelia 0.000244
13:34 itaipu left
mspo perlpilot: wtf are those symbols? :) 13:35
took me a minute to notice the low vs high "minus" 13:36
perlpilot mspo: see above about shooting ourselves in the foot by being to clever. :)
s/to/too/ 13:37
13:37 itaipu joined, Zoffix joined, Actualeyes joined
Zoffix BooK_: the precedence for superscript ops is just broken and the fix is a bit more complicated. 13:38
BooK_: it should be the same as ** op
mspo perlpilot: I'm trying to think of PEMDAS in that case. I could have sworn you would subtract the exponents first
but maybe that requires (parens)
BooK_ Zoffix: a colleague pointed the 2⁴⁻³ and I went down the rabbit hole
Zoffix github.com/perl6/roast/issues/200 13:39
13:40 dubi0us joined
BooK_ m: say ¹+² 13:42
camelia 3
BooK_ m: say ¹⁰+²
camelia 3
Zoffix BooK_: ^ in that case, they're not power ops. They're just your off-the-mill No chars (which you can't chain) 13:43
BooK_ yeah, that was the argument in the PR pointed above. I see
Zoffix BooK_: with ¹⁰+² being 1**0 (can't chain No, so after ¹ term you get ⁰ which must be an op, so it's a power op), +² (you need a term after the + op, so you get the No char)
BooK_ it's just because they are listed as numbers/digits in unicode, basically? 13:44
Zoffix Yeah
BooK_ m: say ¹.WHAT
camelia (Int)
Zoffix m: say "¹⁰".uniprops
camelia (No No)
13:44 dubi0us left
stmuk mspo: :) 13:45
Zoffix m: say (^0x110000).grep(*.uniprop eq 'No')».chr
BooK_ this is definitely confusing, even if it makes sense
camelia (² ³ ¹ ¼ ½ ¾ ৴ ৵ ৶ ৷ ৸ ৹ ୲ ୳ ୴ ୵ ୶ ୷ ௰ ௱ ௲ ౸ ౹ ౺ ౻ ౼ ౽ ౾ ൘ ൙ ൚ ൛ ൜ ൝ ൞ ൰ ൱ ൲ ൳ ൴ ൵ ൶ ൷ ൸ ༪ ༫ ༬ ༭ ༮ ༯ ༰ ༱ ༲ ༳ ፩ ፪ ፫ ፬ ፭ ፮ ፯ ፰ ፱ ፲ ፳…
BooK_ m: say ৶+0
camelia 0.1875
BooK_ m: say (৶+0).perl
camelia 0.1875
BooK_ m: say (৶+0).gist
camelia 0.1875
AlexDaniel u: No 13:46
unicodable6 AlexDaniel, U+00B2 SUPERSCRIPT TWO [No] (²)
AlexDaniel, U+00B3 SUPERSCRIPT THREE [No] (³)
AlexDaniel, 676 characters in total: gist.github.com/8ae5f326b0da695e80...54105ba036
Zoffix m: say ¼⁰+¾
camelia 1.75
moritz u: ৶ 13:47
unicodable6 moritz, U+09F6 BENGALI CURRENCY NUMERATOR THREE [No] (৶)
moritz I... don't....
BooK_ moritz: same here
Zoffix u: half zero
unicodable6 Zoffix, U+0F33 TIBETAN DIGIT HALF ZERO [No] (༳)
Zoffix :)
m: say ༳
camelia -0.5
moritz that one I knew
BooK_ The codepoint has the Numeric value 3/16.
I was trying to show it as a Rat before 13:48
13:48 dubi0us joined
Zoffix m: say ৶.WHAT 13:49
camelia (Rat)
Zoffix m: say ৶.^name
camelia Rat
Zoffix m: say ৶.nude
camelia (3 16)
BooK_ ah .nude
that was the bit I was missing
mspo .nude?
Zoffix stands for .nu(merator)de(nominator)
BooK_ ah so it's not a general-purpose thing
Zoffix Nah. 13:50
13:50 pierre_ joined
BooK_ I'd have hoped (1+i).nude to give something similar 13:50
13:50 andrzejku left
Zoffix m: say (1+i).perl 13:51
camelia <1+1i>
Zoffix .perl is the general pupose thing, though for Rationals it don't always display them as numerator/denominator
13:51 andrzejku joined
Zoffix m: say (1/3).perl 13:51
camelia <1/3>
BooK_ m: say ৶.perl 13:53
camelia 0.1875
13:53 dubi0us left
BooK_ why doesn't that give the nu/de version then? 13:53
Zoffix BooK_: because it can be represented as a decimal (which is still a Rat), while 1/3 can't, so it spits out a Rat literal with nu/de 13:54
.perl basically gives you the version you can .EVAL and get original object back
BooK_ got it
Zoffix (more or less; it's an ideal behind it, but not always possible to do)
13:56 rgrau joined 13:58 epony joined
Geth mu: b454bd93d3 | (Zoffix Znet)++ (committed using GitHub Web editor) | util/update-design.perl6.org.sh
Use $HOME instead of hardcoded user
14:01
mu: 93aa6aad64 | (Zoffix Znet)++ (committed using GitHub Web editor) | util/update-design.perl6.org.sh
List required Perl modules

Not sure where else to stick 'em; these are needed for the script to run properly.
14:02
14:02 wamba left 14:03 itaipu_ joined 14:06 itaipu left
nadim blogs.perl.org/users/nadim_khemir/2...othes.html 14:07
14:08 itaipu_ left, skids joined 14:09 dubi0us joined 14:10 Zoffix left 14:12 zakharyas left, zakharyas joined 14:13 itaipu joined, dubi0us left 14:14 Zoffix joined 14:16 itaipu left, zakharyas left 14:19 dubi0us joined
sena_kun nadim++ 14:22
14:23 dubi0us left, itaipu joined 14:28 itaipu left 14:29 dubi0us joined
Geth modules.perl6.org: 36f256e0d7 | (Zoffix Znet)++ | lib/ModulesPerl6.pm
Do not name route aliases

Dupes mess with url_to and redirect_to not knowing what to direct to
14:31
modules.perl6.org: 577437ab1e | (Zoffix Znet)++ | lib/ModulesPerl6/Controller/Root.pm
Direct failed "Lucky" searches to search page

For that term, instead of a 404 page.
14:32
14:34 dubi0us left, lisbeths` left
Geth modules.perl6.org: 95a217fee8 | (Zoffix Znet)++ | lib/ModulesPerl6/Controller/Root.pm
Fix Lucky search losing by-description results
14:34
14:34 pierre_ left 14:35 mls left
Zoffix sjn: ^ that fixes the lucky search issue you were having. In the future, would you please report issues to the repo, so they don't get missed? github.com/perl6/modules.perl6.org/issues/new 14:36
14:36 mls joined 14:37 Zoffix left, andrzejku left 14:38 andrzejku joined, dubi0us joined 14:41 alimon joined 14:42 dubi0us left 14:44 _4d47 left 14:45 mls left, mls joined
brimonk AlexDaniel: Any update on what's going to be done with DBIish? 14:45
AlexDaniel brimonk: irclog.perlgeek.de/perl6-dev/2017-...i_15017267
dalek frastructure-doc: 1a4a43c | (Zoffix Znet)++ | hosts/www.p6c.org.pod:
Mention many www.p6c.org sites get built on hack
14:52
14:52 mcmillhj left 14:53 mcmillhj joined
dalek frastructure-doc: 6b5419f | (Zoffix Znet)++ | hosts/hack.p6c.org.pod:
Fix incorrect scheduling for docs build
14:54
14:56 araraloren_ joined 14:58 araraloren left
dalek frastructure-doc: f7bb1c4 | (Zoffix Znet)++ | hosts/hack.p6c.org.pod:
List design.perl6.org perl setup instructions

These steps weren't mentioned anywhere and were missed during last system upgrade.
14:59
ugexe El_Che: if you can hook up your images to travis, then go for it. ideally it would use images if a release is requested (`perl6: - moar-2017.06 - moar-2017.03` etc) but do `rakudobrew build whatever` if its not a release it knows about (this is how perl travishelpers works)
14:59 dubi0us joined
ugexe that way you get the fast builds for releases, but can still easily target other commits (just slowly) 15:00
15:00 releasable6 left, releasable6 joined, ChanServ sets mode: +v releasable6
ugexe github.com/travis-ci/travis-build/...t/perl6.rb 15:01
15:01 wamba joined
Geth infrastructure-doc: 07e4cc95d9 | (Zoffix Znet)++ (committed using GitHub Web editor) | hosts/www.p6c.org.pod
Stupid POD…
15:02
15:03 cdg left 15:04 releasable6 left
ugexe i'm tempted to changed that PERL6LIB=lib to PERL6LIB=. 15:05
15:05 dubi0us left
Geth infrastructure-doc: b495cc452b | (Zoffix Znet)++ (committed using GitHub Web editor) | hosts/www.p6c.org.pod
Include instructions for modules.perl6.org web app

restart with dev/prod servers
15:06
15:07 cdg joined 15:09 zakharyas joined 15:10 cdg left, zakharyas left, deathstar_ joined 15:11 cdg joined, dubi0us joined 15:13 imcsk8 left
brimonk AlexDaniel: thanks! 15:13
15:15 dubi0us left 15:20 dubi0us joined 15:21 imcsk8 joined 15:23 Kyo91 joined 15:24 nadim left, dubi0us left 15:27 itaipu joined 15:28 ShalokShalom joined
ShalokShalom hi there 15:28
perl6 can use Python code inline, yes?
how is this feature called, in general?
i think this makes perl6 a wonderful way to integrate functional programming in Python 15:29
15:29 zakharyas joined
ShalokShalom and this is very underrated then? 15:29
15:30 cdg left 15:32 releasable6 joined, ChanServ sets mode: +v releasable6, releasable6 left
Geth whateverable: 0840d63c02 | (Aleks-Daniel Jakimenko-Aleksejev)++ | 2 files
Oops. Log range fixed

Otherwise prints commits for the previous (already released) release.
The main problem was here:
   $actual-commit-old = $actual-commit-old
Maybe I should auto-expand less. Or maybe this case should be caught automatically by something.
15:33
jnthn Hm, I guess in general it's "language interoperability" or some such.
But yeah, there's an Inline::Python module, and a selection of others
15:34 releasable6 joined, ChanServ sets mode: +v releasable6 15:36 iyra joined 15:37 frv_ joined, cdg joined, frv_ left
iyra is there a way to have multiple conditions for a 'when'? For example, given $a { when 3 or 5 { say "found"; } }? 15:38
sena_kun iyra, did you try your code? 15:39
m: given $a { when 3 or 5 { say "found"; } }
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable '$a' is not declared
at <tmp>:1
------> 3given 7⏏5$a { when 3 or 5 { say "found"; } }
15:39 cdg left
sena_kun m: my $a = 3; given $a { when 3|5 { say "found"; } } 15:39
camelia found
sena_kun m: my $a = 3; given $a { when 3 or 5 { say "found"; } } 15:40
camelia found
sena_kun iyra, ^
iyra it did seem to work... but when $a = 5 it doesn't work
jnthn It'd need to be |
Which makes a junction
or doesn't
sena_kun then |.
jnthn alternatively when any(3,5)
sena_kun m: my $a = 5; given $a { when 3|5 { say "found"; } }
camelia found
iyra ah, nice
thanks
15:42 pharv_ joined
sjn Zoffix: I was looking for a bugtracker link, actually, but found the irc channel link first :) 15:42
15:43 cdg joined
araraloren_ junction would work with when 15:45
ShalokShalom ah yeah
Foreign function interface
jnthn: thanks
araraloren_ buggable: eco Inline 15:46
buggable araraloren_, Inline 'use C-code from within Perl': github.com/FROGGS/p6-Inline-C 8 other matching results: modules.perl6.org/s/Inline
araraloren_ buggable: eco Inline::
buggable araraloren_, Found 7 results: Inline::Perl5, Inline::Python, Inline::Lua, Inline::Ruby, Inline::Scheme::Guile. See modules.perl6.org/s/Inline%3A%3A
araraloren_ ShalokShalom, see we have these Inline module 15:47
ShalokShalom i see
15:47 pharv_ left
ShalokShalom i am more thinking the other way around 15:47
adding functional programming into Python
15:47 cdg left
ShalokShalom while this list is also interesting :) 15:47
oh 15:48
Brainfuck <3 . <3
:D
araraloren_ yeah, Brainfuck is also exists
ShalokShalom i will create an entry here: en.wikipedia.org/wiki/Foreign_func..._interface
15:50 dubi0us joined 15:53 [particle]1 left 15:54 [particle] joined 15:57 khw joined 15:59 dubi0us left, dubi0us joined 16:01 konsolebox left 16:02 dubi0us_ joined 16:04 dubi0us left 16:06 raschipi joined, konsolebox joined
Geth modules.perl6.org: 336dcb4f41 | (Zoffix Znet)++ | 2 files
Add link to Issue Tracker on error pages; sjn++
16:07
16:08 nadim joined 16:11 cdg joined 16:13 cdg left 16:14 cdg joined 16:15 mcsnolte joined 16:19 araraloren_ left 16:22 nadim left 16:29 jonas1 left 16:30 cdg left 16:34 deathstar__ joined, deathstar_ left
raschipi ShalokShalom: You didn't mention that Perl6 can call C in the Wikipedia page. 16:39
ShalokShalom how is that mentioned on the inline page? 16:40
via Scheme?
ilmari docs.perl6.org/language/nativecall.html 16:41
raschipi Besedes NativeCall, which ilmari already mentioned, there is a Inline::C module, but it isn't listed in the ecosystem: github.com/FROGGS/p6-Inline-C 16:42
ShalokShalom i also create a PR for the awesome-functional-python page on Github 16:43
i think this feature can attract a lot of people
since functional programming in python is not that awesome 16:44
sena_kun isn't it uses NativeCall under the hood? github.com/FROGGS/p6-Inline-C/blob...ne/C.pm#L4
raschipi, ^
ShalokShalom add this Inline::C module and i add C to this list on Wikipedia
raschipi ShalokShalom: NativeCall is the FFI. The Inline::Modules also parse the languages. 16:45
In fact, most of the Inline:: modules will actually call those other languages through the NativeCall FFI 16:47
16:50 setty1 joined
raschipi For example, in Inline::Python github.com/niner/Inline-Python/blo...hon.pm6#L8 16:50
16:51 dakkar left
ShalokShalom what speaks against a add to this list? 16:51
modules.perl6.org/s/Inline
*an 16:52
raschipi Because if it's there people will actually try to use it, and the module isn't working.
Like I said, why do you care about Inline::C if the FFI is called NativeCall
I understand the issue of the citation, but you'll just have to use two. 16:53
ShalokShalom how should the user know that? 16:54
pmurias raschipi: re targeting asm.js/wasm I'm not doing that because they currently don't support basic things like GC
16:56 jjatria joined
raschipi ShalokShalom: Read the description? 16:57
ShalokShalom of what?
raschipi pmurias: Right, they're going for barebones there.
ShalokShalom: How do people discover modules and the FFIs in other languages? Buy a book? 16:58
16:59 itaipu_ joined
pmurias raschipi: running C/C++ stuff is the goal of asm.js (and the current goalof webasm) 16:59
* goal
raschipi Right, then you'll just need to compile rakudo to wasm and it's done? 17:00
rakudo, nqp and moar
ShalokShalom i use this one: docs.perl6.org/language/nativecall
pmurias: and Rust too 17:01
its the next one, probably
APic 😎
iyra is there a way to modify the members of an instance of a class from inside a function?
17:02 devmikey joined, itaipu left
raschipi iyra: sure 17:02
sena_kun iyra, attributes are read-only by default. You can mark them as mutable as `has $.foo is rw`.
17:02 Praise left, Praise- joined, Praise- left, Praise- joined
sena_kun m: class A { has $.foo is rw; }; my $a = A.new; $a.foo = 5; say $a.foo; 17:03
camelia 5
raschipi sena_kun: Isn't it about modiyng the structure of the class?
iyra thanks; I assumed that naming the function like: sub my_func(MyClass $x is rw) { $x.my_member = 5; } would work
sena_kun raschipi, well, it's the other option.
iyra raschipi: no, I was talking about modifying the values of the members, that's all 17:04
sena_kun raschipi, but I thought that MOP is too cool here.
17:04 itaipu joined, itaipu_ left
raschipi I see it now. 17:04
ShalokShalom done 17:05
APic k
sena_kun iyra, official docs have quite a good tutorial on this matter, see docs.perl6.org/language/classtut.html#State
raschipi Thanks ShalokShalom
ShalokShalom sure
thank you too
raschipi ShalokShalom: It can also call C++ 17:06
ShalokShalom i think this feature is underrated
17:06 jjatria left
ShalokShalom raschipi: haha, what? 17:06
you tell me that now? :P
17:06 jjatria joined
raschipi NativeCall can call C and C++ 17:06
ilmari ShalokShalom: did you read the nativecall docs? it has a section on c++ 17:07
17:07 MilkmanDan left
ShalokShalom hope thats it now :P 17:09
APic 😎
17:09 MilkmanDan joined
devmikey DO I have to use Perl6? 17:09
Why can't I use Perl5? 17:10
ugexe i dunno, why cant you? 17:11
17:11 dubi0us joined
devmikey ShalokShalom told me I had to 17:11
ShalokShalom huh?
b2gills Both Perl 5 and Perl 6 are actively worked on 17:12
ShalokShalom devmikey: what do you mean?
i know
devmikey I'm kidding, relax
ugexe metacpan.org/pod/NativeCall 17:13
17:15 dubi0us_ left
pmurias raschipi: you could compile moarvm to wasm and run moarvm bytecode in the browser 17:15
raschipi What's the advantage of rakudo.js, then? Is the obvious question to ask... 17:16
17:18 zorin-os left
pmurias raschipi: interop with js/DOM will be annoying for a rakudo-on-moarvm-on-js 17:21
raschipi Well, wasm is said to be able to call Javascript interfaces, but I see now that moar would have to support it. 17:22
17:24 itaipu_ joined
devmikey Why is there perl6? 17:24
raschipi buggable: Hundred year Language
ilmari devmikey: because TimToady decided to create it 17:25
devmikey But why?
raschipi huggable: The Hundred-Year Language
huggable raschipi, www.paulgraham.com/hundred.html
ilmari why is anything?
devmikey what does it do better than perl5?
raschipi devmikey: Everything 17:26
Except being fast
mst and UNIX
perl6 is much less tied to a unix host environment than perl5, for better and for worse 17:27
17:27 dubi0us_ joined, itaipu left
mst (I like this fact, I like the idea of having a choice of perls depending on if I want that or not) 17:27
raschipi mst: Perl5 was always UNIX done right, Perl6 is UNIX done righter.
pmurias raschipi: also I doubt that rakudo-on-moarvm-on-js will be ever fast 17:28
raschipi: someone can try it and see how it works, I'm not going too as it's a bunch of unfun work to try something I don't believe in
devmikey Can I use perl instead of python? 17:29
mst raschipi: no fork. no unix domain sockets. file-on-disk layouts don't work nicely with 'find'. perl6 is really not very unix. this is fine though, it's a very good perl6.
raschipi devmikey: You should. Better yet, you should use Perl6.
devmikey Ooo, you think Perl6 is better? 17:30
17:30 dubi0us left
ugexe python is not doing. only alah is going 17:30
mst devmikey: #perl's advice is generally "perl5 and python are pretty equivalently powerful, so learn both and use whichever one fits your brain better"
ugexe doing
ilmari *doing* 17:31
raschipi devmikey: Perl6 is certainly much more fun.
devmikey mst: I use perl, so I'm just happy to know that I'm not missing anything
ilmari has started mentally pronouncing all words that end in -oing to rhyme with boing
devmikey lol
17:32 tojo_ joined
mspo no fork? 17:34
17:35 captain-adequate left
tojo_ hm, it seems that there is no IO::Socket::UNIX class in perl6? 17:35
mspo tojo_: someone was working on it recently I think 17:36
tojo_ ok nice, do you know is there any public stuff anywhere?
mspo I do not, but it was in this chat room 17:37
raschipi I'm curious to see what the interface for sending file descriptors will look like.
tojo_ mspo: thx, i lookup the logs
mst mspo: not cross-platform so you have to nativecall in 17:38
MasterDuke tojo_, mspo: a recent PR for MoarVM ( github.com/MoarVM/MoarVM/pull/630 ) adds support for unix sockets, but it hasn't been merged yet
mst raschipi: I'm not sure how amenable the libuv abstraction is to doing that
devmikey Is Perl6's suport of MS Excel better? 17:39
mspo mst: guess it should be a module
17:39 nadim joined
raschipi devmikey: If it isn't better, you can just use Perl5's modules. 17:39
mst mspo: yeah, I'm ok with this. I'm just pointing at it as a 'different aesthetics' thing
geekosaur github.com/MoarVM/MoarVM/pull/630 is the basic AF_UNIX support; you'd also need the updated module 17:40
whiis
I see I'm slow
mspo mst: I was worried that it was a go-lang style "no forking" argument
geekosaur *whoops
mspo mst: being arbitrarily restricted by the runtime and having no trap doors is not very perl-y 17:41
mst mspo: naw. just there's a difference between the languages in what's baked into the runtime and what you get at through trap doors, and it fits with my "perl5 is a UNIX aesthetic, perl6 is a cross-platform perly aesthetic" description
also forking vs. threading informs a lot of things 17:42
17:43 zakharyas left
mst (this is not meant as an argument for/against either, btw, more an observation of which I'd tend to use when) 17:43
17:45 MilkmanDan left 17:46 MilkmanDan joined 17:47 deathstar__ left 17:48 deathstar joined
raschipi There are some things that are much easier with fork(or clone)/exec, for example dropping privileges/capabilities or changing CGroups/namespaces. 17:50
mspo indeed 17:52
17:55 deathstar left 17:58 Cabanossi left, nadim left 17:59 Cabanossi joined 18:12 nadim joined 18:17 dubi0us joined 18:20 dubi0us_ left 18:21 gilbert joined 18:27 Cabanossi left, ShalokShalom left
gilbert Using perl6 from 7/17 rakudo I get puzzling error about 'feed operator not yet implemented' see pastebin.com/xzGgcEJK 18:28
18:29 Cabanossi joined, ShalokShalom joined
gilbert Can anyone suggest a simple workaround for this perhaps using concatenation? 18:29
18:30 tojo_ left 18:32 tojo_ joined
raschipi gilbert: It's exactly what it says in the tin: the operators haven't been implemented yet. 18:33
moritz gilbert: @y.append(@x) 18:34
ShalokShalom pygments.org/
... and it highlights even Perl 6!
moritz aye 18:35
we used to use it for doc.perl6.org/ 18:36
raschipi It's not perfect: pygments.org/demo/6635007/ 18:37
ShalokShalom report it? 18:39
is Perl6 suitable for complete newbie?
raschipi ShalokShalom: Community is split on that one 18:40
ShalokShalom i see
pros?
raschipi This one also doesn't work very well: pygments.org/demo/6624011/
ShalokShalom i like to use a functional language 18:41
all that looks too mathematical to me
18:42 itaipu_ left
basket` What does? 18:42
ShalokShalom functional programming 18:43
Elixir looks a bit easier
while its purly dynamic
18:43 itaipu joined
ShalokShalom and i think some static checking let the code look more clean 18:44
raschipi rosettacode.org/wiki/A%2BB#Elixir -> try teaching that to someone new to programming. 18:47
Will take a day to teach them how to sum two numbers and they will have to just memorize a lot of cruft. 18:48
18:50 itaipu left
Geth doc/molecules-patch-3: cb4c913d54 | (Christopher Bottoms)++ (committed using GitHub Web editor) | doc/Language/faq.pod6
How to work around immutable string issues
18:50
raschipi Perl6 get's rid of the "line noise" and makes it unnecessary to memorize formulations.
18:51 basket joined 18:52 itaipu joined 18:53 jjatria left
raschipi Elixir default behavior in the REPL is to dump memory to stdout after every statement, it's plain to see they try to be really beginner friendly. 18:53
18:54 jjatria joined
raschipi ShalokShalom: Do you see why Perl6 might be easier to teach? 18:57
ShalokShalom i like to use it in an IDE
pmurias raschipi: is that elixir snippet the easiest way to do it? it looks like example of something that's written to be cool
ShalokShalom why REPL instead?
mspo perl6 is a little big for a first language, imho 18:58
it depends on who the person is, I think
I know it talks about being friendly for 12 y/o girls but having done some instruction to 12 y/o girls on computers.. I'm not so sure 18:59
ugexe its marketed towards 12 year old girls
mspo I also think python is too big
pmurias the logo is
ShalokShalom i guess its maybe easy to inline coconut
mspo lua or even golang are probably good first languages
ShalokShalom which is a functional python
basket pmurias: It looks pretty straightforward to me
ShalokShalom mspo: i prefer functional 19:00
mspo ShalokShalom: are you the pure newbie?
ShalokShalom nope
pmurias basket: I meant the camelia logo is marketed towards 12 year old girls
ShalokShalom i use computers all my live
basket pmurias: I meant the Elixir snippet, sorry
ShalokShalom i am just plain stupid
:P
pmurias: fully agree xD
mspo most young people don't know how to do basic things on a computer 19:01
ShalokShalom i thought its some kind of temporary logo
until i saw, how old it is xD
mspo: i am 29
just like to use a "native language"
mspo ShalokShalom: I'm still talking about teaching kids
ShalokShalom so, one that documents itself
mspo my canonical 12 y/o girl had never seen a text editor in her life 19:02
ShalokShalom with less mathematical stuff in its API, if possible
mspo: ah i see
mspo despite being told how great she is for being interested in STEM and given a year of instruction using scratch
no one ever bothered to teach her how to *use* a computer
ShalokShalom it compiles to Python bytecode: coconut-lang.org/
mspo so she go really frustrated really quickly 19:03
ShalokShalom sure
19:03 nadim left, wamba left, dustinm` left, markmont left, grumble left, kybr left, ribasushi left, darutoko left, |oLa| left, samb1 left, timotimo left, simcop2387 left, bwisti left, ilbot3 left
mspo javascript might be a decent first language, or one of its simplications 19:03
19:03 samb1 joined
mspo since you can get cool stuff going in the browser pretty quickly 19:03
19:03 grumble joined, |oLa| joined, timotimo joined, bwisti joined, awwaiid left 19:04 nadim joined
ugexe perl6 might be a bad first language if you dont restrict yourself 19:04
19:04 wamba joined, ilbot3 joined, ChanServ sets mode: +v ilbot3, dustinm` joined
ugexe if you need an artificial restriction, then use a different language that gives such restrictions 19:04
but there is nothing stopping you from restraining yourself
mspo yeah I mean 19:05
perl5 was my "first" language besides shell
and I still learn new stuff about it every few weeks without even trying
19:05 ribasushi joined
mspo basically I'm not much of a programmer :) 19:05
19:05 Xal left 19:06 S007 left
raschipi So, ShalokShalom, like I said above, depends on what you're looking for ina language for teaching. 19:06
19:06 simcop2387 joined
mspo yeah the target audience is important :) 19:06
ugexe the teacher is the most important thing, so you dont have a master throwing fast balls to rookies 19:07
ShalokShalom ugexe: you mean which kind of restrictions?
ugexe: this is exactly the nub of matter
pmurias being able to do cool stuff easily is likely more important for beginners than the language itself
ShalokShalom German is my first language
ugexe mspo said the language being large was a drawback
ShalokShalom and the most tuts and so on are in English
ugexe solution: dont use the entire language 19:08
ShalokShalom pmurias: i like QML for that
mspo another guy I know uses perl *4* for teaching because it is small
ShalokShalom being able to do cool stuff easily
19:08 kybr joined
ugexe its easy to teach a small language 19:08
Geth doc/molecules-patch-3: bcc126b4d3 | (Christopher Bottoms)++ (committed using GitHub Web editor) | doc/Language/faq.pod6
Improved explanation
raschipi So, Lisp is the easiest language to teach. 19:09
19:09 Xal joined
ugexe i didnt say anything about something being easier than another 19:09
mspo there are a lot of mechanics to get first: using a text editor, using the command line, organizing stuff; then concepts: scalar variables, data structures (various), scopes, function calls, stdin/stdout
if you get through those everything else falls roughly into place 19:10
for me
19:10 mr-foobar left
raschipi I think Bash is a good first language. 19:11
El_Che raschipi: if you're a linux user
raschipi It does work on windows...
19:12 mr-foobar joined
pmurias can you do anything cool with bash? 19:12
El_Che raschipi: it does
raschipi: but it's part of a unix mindset
raschipi: completely foreign on WIndows
19:12 dubi0us_ joined
raschipi Yes, it's good to start them early. 19:12
El_Che raschipi: and inmediately useful on linux
geekosaur and you have to think like everything is a string
or a stream/file
19:14 S007 joined
raschipi It's useful to start with either Bash or PoweShell because people will need that for any other language. 19:14
PowaShell
Geth doc: molecules++ created pull request #1452:
How to work around immutable string issue when using map
geekosaur powershell
El_Che I think that powershell is more complicated to start (objects); while in (ba)sh you can look at externeal programs as functions 19:15
19:16 dubi0us left, gilbert left 19:17 andreoss joined
andreoss m: role G[::A] {};role F[::A] does G[A] {}; say F[Int].^roles 19:19
camelia ((G[A]))
andreoss why it's not G[Int]? this causes problem with smart-matching on parametric roles 19:20
ugexe it doesnt happen in time 19:21
mspo awk :)
19:22 travis-ci joined
travis-ci Doc build passed. Christopher Bottoms 'How to work around immutable string issues' 19:22
travis-ci.org/perl6/doc/builds/264861947 github.com/perl6/doc/commit/cb4c913d540f
19:22 travis-ci left
Geth doc: 33b7767237 | (Christopher Bottoms)++ (committed by Zoffix Znet) | doc/Language/faq.pod6
How to work around immutable string issue when using map (#1452)

  * How to work around immutable string issues
  * Improved explanation
19:26
19:27 Cabanossi left 19:29 domidumont left, Cabanossi joined
Geth doc: 216a733209 | (Zoffix Znet)++ (committed using GitHub Web editor) | doc/Language/faq.pod6
Minor fixups for last merged PR

  - Use more idomatic code
  - Use more exact parallels between broken and working ops/methods used
19:32
ShalokShalom raschipi: i already know a bit bash
19:32 programjourney1 joined
ShalokShalom i like to write something with Qt 19:32
programjourney1 hello, i am new to perl, limited python knowledge. but i would love to help 19:33
ShalokShalom OCaml seems nice
raschipi programjourney1: You came to the right place, ask away.
But we will answer in Perl6 instead of Perl.
programjourney1 one thing i am curios about is how \n will be used in 6 19:34
raschipi m: say "\n" 19:35
camelia
ryu0 ... what are they getting at? \n is normally escaped to an ASCII control character.
Geth doc: 5f5f5098c8 | (Philippe Bruhat (BooK))++ (committed by Zoffix Znet) | doc/Language/traps.pod6
Add missing title for but in list construction (#1450)
19:36
ryu0 Zoffix is the trap master. lol 19:37
programjourney1 inside a string and outside like "string\n" and "string"\n
ryu0 outside isn't normally legal...
m: say ""\n
camelia 5===SORRY!5=== Error while compiling <tmp>
Confused
at <tmp>:1
------> 3say ""\7⏏5n
expecting any of:
postfix
zengargoyle the 'Think Perl 6: How to Think Like a Computer Scientist' book is pretty much a port of 'Think Python' and maybe 'Think Ruby' series of books. probably suitable for beginners and not too very Perl 6 specific. probably the most suitable thing i've read for 12 year olds... 19:38
programjourney1 yeah but in 6 will it be?
ryu0 obviously not it seems.
programjourney1 it just seems more natural to me. 19:39
19:40 travis-ci joined
travis-ci Doc build passed. Christopher Bottoms 'Improved explanation' 19:40
travis-ci.org/perl6/doc/builds/264867681 github.com/perl6/doc/compare/cb4c9...c126b4d389
19:40 travis-ci left
zengargoyle programjourney1: i think in p6 thinking it's just "string" and the \n stuff is taken care of because you may be on unixy \n land or OSX \r land or Windows \r\n land and you shouldn't have to usually do that yourself. 19:41
programjourney1 as a newbie to perl and programming in general i was wondering a good (cheap) source for step by step perl. i understand how strings, objects, variables, loops, ect work.
is the oreilly perl ref book good? 19:42
MasterDuke programjourney1: have you seen perl6intro.com/ ? 19:43
programjourney1 no, seems i will learn some. also 2 more questions
19:44 eroux joined
zengargoyle programjourney1: take a look at: greenteapress.com/wp/think-perl-6/ 19:44
programjourney1 1 do PHP and perl mix well, and where is a guide to make a website with perl and php, or just perl
ryu0 programjourney1: the one for Think Perl?
programjourney1: grab the free PDF version from the author's website. buy the actual book if you like it.
basket zengargoyle: OSX uses LF; it's a certified Unix. Pre-OS X MacOS (which was EOL 15 years ago) used CR 19:45
19:45 ijneb left
zengargoyle i think that's the most put-together introduction that is meant for beginners, but explains most of the basic structures and stuff and some of the more esoteric stuff. 19:45
19:45 Praise- is now known as Praise
Geth doc: 274dfaa8e4 | (Nadim Khemir)++ (committed by Zoffix Znet) | 2 files
Changed link in the data dump section of the FAQ (#1435)

  * Changed link in the data dump section of the FAQ
  * fixed dashes in nativecall doc
19:45
19:46 itaipu left
zengargoyle basket: lol, yeah. i just sorta mean like reading different file formats and not really wanting to do \n yourself. 19:46
programjourney1 thanks. will read. i guess one more Q, What is the most significant change in perl 6 to 5? 19:47
zengargoyle p6 usually chops off whatever line terminator you have and just puts the appropriate line terminator when you go back out. unless you really need to do that yourself for some reason...
perlpilot programjourney1: that's a weird question. 19:48
19:48 itaipu joined
zengargoyle programjourney1: for me, i think it's actually the precompilation of code thing. 19:48
El_Che zengargoyle: that was already there in p5 19:49
zengargoyle who actually used it?
El_Che I woudn't use the sha1 stuff if I had a choice :P
zengargoyle i've never seen a precompiled bit of perl5 in my life outside of examples and warnings to not do that. :) 19:50
perlpilot programjourney1: grammars. built-in objects. multiple dispatch. (one of those maybe)
El_Che concurrency and sane OO for me 19:51
perlpilot zengargoyle: you wouldn't want to see it anyway, it looks like a bunch of garbage ;)
zengargoyle and you can't just grep your lib directory to try and find the error message you saw and just look at the source very easily now... it's all in that sha'd repo thing now.
19:52 ijneb joined, programjourney1 left
ugexe grep ~/.zef/store 19:53
zengargoyle that's cheating. :) but point taken. 19:54
i consider .zef and .perl6 to be temporary things that can be nuked at whim. and prefer my things in site so it's not as per-user. 19:55
ugexe or `zef locate lib/Zef.pm6`, `zef locate Zef`, `zef locate E0A5C5E5697087B5AECE48D456692BE1B5C87193 --sha1` 19:56
Geth doc: aeab992995 | (Zoffix Znet)++ (committed using GitHub Web editor) | doc/Language/faq.pod6
Minor fixups

  - Get rid of unnecessary and confusing colon-pair syntax
  - Clarify `dd` is non-standard routine
  - Reword a sentence and improve its link
El_Che it took me a while to get used to the user repo by default, but I like that approach a lot
zengargoyle old habit. i totally have 4 or more users in /home that are really just me. :)
19:58 Cabanossi left
zengargoyle comes from .edu solaris giant unix nfs supporting 50k+ just students and you can't just rely on things just being in ~ 19:58
19:59 Cabanossi joined 20:00 itaipu left
zengargoyle i would really like a zef wrapper or the like for p6doc like perldoc. or tab completion. or cpandoc. (i'm just not sure if things have settled enough to start on those type of things). 20:02
ugexe m: my $needle = "resolve"; my $dist = $*REPO.need(CompUnit::DependencySpecification.new(:short-name<Zef>)).distribution; my @libs = $dist.meta<provides>.values.map(*.keys[0]); my $found := @libs.map({ $dist.content($_).lines.grep(*.contains($needle)).Slip }).grep(*.defined); say $found.perl
camelia (" method resolve(\$spec, :\@at) \{", " ?self.resolve(|c)", " abort \"Failed to resolve any candidates. No reason to proceed\" unless +\@candidates;", " abort \"Failed to resolve any candidates. No reason to proceed\" unless +\@ca…
andreoss m: BEGIN {role G[::A] {};role F[::A] does G[A] {}; my $x = F[Int] } say $x.^roles
camelia 5===SORRY!5=== Error while compiling <tmp>
Strange text after block (missing semicolon or comma?)
at <tmp>:1
------> 3le F[::A] does G[A] {}; my $x = F[Int] }7⏏5 say $x.^roles
expecting any of:
infix
infix stoppe…
andreoss m: BEGIN {role G[::A] {};role F[::A] does G[A] {}; my $x = F[Int]; } ;say $x.^roles
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable '$x' is not declared
at <tmp>:1
------> 3A] does G[A] {}; my $x = F[Int]; } ;say 7⏏5$x.^roles
andreoss m: BEGIN {role G[::A] {};role F[::A] does G[A] {}; constant $x = F[Int]; } ;say $x.^roles 20:03
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable '$x' is not declared
at <tmp>:1
------> 3s G[A] {}; constant $x = F[Int]; } ;say 7⏏5$x.^roles
andreoss ugexe: do you mean i should declare my derived role at compile time? 20:04
zengargoyle ugexe: heh, i have a bunch of cut-n-paste like that. just nothing worthy of packaging up yet.
20:05 Rawriful left
zengargoyle or i just haven't gotten around to it yet. :P 20:05
zengargoyle misses `perldoc Class<TAB><TAB>` and seeing what i have already... 20:06
20:07 itaipu joined
zengargoyle or `cpandoc Some::Interesting::Module` because now POD6 is code and if the code doesn't compile, you don't get the POD6 out of it. graaar. 20:09
20:09 markmont joined, zakharyas joined
zengargoyle that would be my pick for lamest p6 decision... or ²² == 4, not sure which annoys me more. :) 20:10
ugexe I mean that ::A does not get turned into something your `does A` can use in time 20:11
20:13 Rawriful joined 20:16 itaipu left 20:18 awwaiid joined 20:21 andrzejku left
ugexe m: role Bar[::A] { }; role Foo[::A] { submethod BUILD(|) { self does Bar[A] } }; say Foo[Int].new.^roles # i suspect you can do what I think you want to do like this 20:21
camelia ((Bar[A]) (Foo[Int]))
ugexe maybe not
20:23 jjatria left 20:24 dubi0us joined, jjatria joined 20:27 dubi0us_ left
ugexe m: role Bar[::A] { method bar { A } }; role Foo[::A] { my $t = A; .^add_role(Bar[$t]); .^compose; }; class XXX does Foo[Int] { }; say XXX.new.^roles; # andreoss this seems to be getting closer 20:38
camelia ((Foo[Int]) (Bar[Int]))
20:38 cdg_ joined 20:39 cdg_ left 20:40 markmont left 20:41 nicq20 joined
nadim hi, printing something in hex format is simple with $somethin.base(16) but if I know my $something to be 8 bits, how can i get a leading zero, eg 0x01? something more nifty than sprintf that is. 20:42
20:42 cdg_ joined, Cabanossi left 20:44 Cabanossi joined
raschipi m: (100..999).pick.polymod(2**8).say 20:44
camelia (186 3)
raschipi m: (100..999).pick.polymod(2**8 xx *).say 20:45
camelia (243)
zengargoyle i guess .fmt() is sprintf... 20:46
AlexDaniel m: say sprintf(‘%02x’, 4)
camelia 04
AlexDaniel m: printf(‘%02x’, 4)
camelia 04
ugexe m: say Buf.new(1).gist.subst(:g, /[^"Buf:"] | \< | \>/, "") 20:47
camelia 0x01
AlexDaniel m: 4.fmt(‘%02x’)
camelia ( no output )
AlexDaniel m: say 4.fmt(‘%02x’)
camelia 04
zengargoyle m: say 11.fmt('0x%02x')
camelia 0x0b
nadim yes sprintf is fmt but it is still interesting to see how other do it, ugexe that's almost vicious ;) 20:49
zengargoyle i could see some weird '0x00' and funny search/replace to put .base(16) into the end bits...
ugexe: hah
the bit that gets me is the '0x' leading. it's not really a part of base-16, just convention of what you want to see. 20:51
20:53 leego is now known as leedo
zengargoyle might as well be '0h' or something, so some really nice pure conversion thing is iffy. 20:53
20:55 cdg_ left, cdg joined
raschipi It could also be at the end and be .base(16) 20:57
Time to go. Bye everyone.
20:57 cdg_ joined
nadim bye 20:58
20:58 cdg__ joined
zengargoyle my thinking is you'll have to specify '0x' as the leader, and '2' as the expected max range, and '0' as the padding... so you'll end up with sprintf anyways... 20:58
20:58 cdg left
zengargoyle or i guess you could just expect multiple of 2 hex digits and leading 0 and then you just have to give '0x' and :padding or such.... 21:00
21:02 raschipi left, cdg_ left
zengargoyle heh, 11.base(16, :style<DWIM>) 21:02
21:04 markmont joined
zengargoyle heh, 11.base(16, :style<DWIM>), :style<cisco-mac> :style<ipv6> :style<ipv4> :style<short-mac> :style<canon> :style<RFC-XXXX> :P 21:05
MasterDuke looks like a module idea to me... 21:06
zengargoyle heh, i had a whole library of ip/mac/oid/dotquad conversion things due to reasons. :) 21:09
21:10 mcmillhj left
zengargoyle curse people who store and log mac addresses as 2 16bit ints... 21:10
21:10 TEttinger joined
zengargoyle and APIs that can't decide between "MAC-STRING" and dotted decimal 21:11
21:12 cdg__ left 21:13 cdg_ joined 21:15 zakharyas left
zengargoyle lols, 11.all-your-base(16, :style<C>) 21:20
andreoss m: role Bar[::A] { method bar { A } }; role Foo[::A] { my $t = A; .^add_role(Bar[$t]); .^compose; }; say Foo[Int].new.^roles; say Foo[Int].^roles.new; 21:21
camelia ((Foo[Int]) (Bar[Int]))
()
andreoss it's so obscure
ugexe not really, it works because its so simple 21:22
andreoss .^compose happens on coersion to class?
21:22 skids left 21:23 rindolf left, cpage_ left
ugexe m: role Foo { say 42; }; say 1; class Bar does Foo { }; say 2; 21:24
camelia 42
1
2
andreoss but MOP methods could be different
or why else .^roles is empty on Foo[Int]? 21:25
nadim Has anyone serialized object to send them over the network? What serialization module did you use? just .perl? 21:26
21:27 marcusramberg joined
andreoss YAML 21:31
ugexe irclog.perlgeek.de/perl6/2016-03-17#i_12202817 andreoss 21:32
nadim YAML is nice if you want to read it but the parsing is on the heavy side 21:33
even if modules do all the work
zengargoyle buggable: eco pack 21:35
buggable zengargoyle, Found 16 results: MessagePack, Net::Packet, HTTP::HPACK, if, Numeric::Pack. See modules.perl6.org/s/pack
andreoss ugexe: so it's sort of a bug?
i got this too 21:36
# No such method 'item' for invocant of type 'A'
in some cases
zengargoyle buggable: eco serial
buggable zengargoyle, Found 15 results: JSON::Tiny, JSON::Fast, Avro, JSON::Hjson, XML::Class. See modules.perl6.org/s/serial
ugexe andreoss: probably
zengargoyle buggable: eco rpc 21:37
buggable zengargoyle, Found 2 results: JSON::RPC, Odoo::Client. See modules.perl6.org/s/rpc
ugexe buggable: eco Ser 21:38
buggable ugexe, Found 103 results: Crust, JSON::Tiny, HTTP::UserAgent, HTTP::Server::Async, Farabi6. See modules.perl6.org/s/Ser
zengargoyle nadim: pls .tell me if you pick something...
andreoss should i golf my case into something reportable?
nadim zengargoyle: I will, going for .perl right now for the tries. github.com/teodozjan/perl-store is a thin wrapper around .perl, will be the next try. then I'll check sizes of the serializations 21:40
zengargoyle eco is getting big enough that i want MetaCPAN like browsing. 21:41
ugexe github.com/FROGGS/p6-Ser/blob/master/lib/Ser.pm 21:42
21:42 Cabanossi left
nadim ugex++ 21:43
ugexe:++
zengargoyle: you may want to look at that link, my guess is that it will be the fastest 21:44
21:44 Cabanossi joined
zengargoyle yeah, ugexe++ yowza. 21:45
21:45 pmurias left
zengargoyle well, FROGGS++ 21:47
andreoss m: sub foo(:::D $x) { $x }; say foo(10);say foo(Any); 21:53
camelia 10
(Any)
andreoss m: sub foo(::X:D $x) { $x }; say foo(10);say foo(Any);
camelia 10
(Any)
andreoss m: sub foo(Any:D $x) { $x }; say foo(10);say foo(Any);
camelia 10
Parameter '$x' of routine 'foo' must be an object instance of type 'Any', not a type object of type 'Any'. Did you forget a '.new'?
in sub foo at <tmp> line 1
in block <unit> at <tmp> line 1
andreoss :D doesn't work on type tags?
21:54 jjatria left 21:55 jjatria joined
andreoss m: sub foo(::T:D $x) { T }; say foo(10) 21:56
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared name:
T used at line 1
TimToady m: sub foo(Any:D ::T $x) { T }; say foo(10) 21:59
camelia (Int)
ugexe m: sub foo(::T:D $x) { ::("T:D") }; say foo(10) # what you were doing before 22:00
camelia (Int)
22:01 goki joined, goki left
zengargoyle that looks like 'T:D' is a name and not the :D defined. 22:02
ugexe well yeah, ::T isnt a type constraint 22:03
zengargoyle doesn't quite get Any:D ::T $x
but it's sorta starting to gel.... 22:04
22:04 cpage_ joined
zengargoyle is that like my Array @x is an array of Array? 22:05
22:05 wamba left
ugexe ::T is like destructure but for type, its not a constraint 22:06
zengargoyle ah, i think i follow. 22:08
22:08 wamba joined
andreoss probably ::T could go into [] just as it does for roles 22:08
sub foo[::T](T:D $x) {...}
22:09 Kyo91 left 22:12 setty1 left
ugexe yes, role signatures are just like any other 22:12
zengargoyle andreoss: did you speak at TPCiA? 22:14
andreoss defenetly not
definitely 22:15
zengargoyle ok, my bad. the audio on recordings isn't that good yet and your nick sort of sounded like some name i half heard. nm. :)
22:16 TEttinger left
MasterDuke zengargoyle: was it you who mentioned the videos are in post-production? 22:16
zengargoyle MasterDuke: i saw it in p6 weekly and went YAY!
so from lizmat... 22:17
22:17 gabiruh left
ugexe m: role Foo[::T = role :: { method bar { 42 } }] { .^add_role(T); .^compose; }; say Foo.bar; # you can stuff all sorts of stuff in the signature 22:17
camelia 42
22:18 Grrrr left, protium left
MasterDuke zengargoyle++, lizmat++ 22:18
andreoss ugexe: is it usefull anyhow?
zengargoyle yeah the livestream recordings are a bit hard to watch... i'm crossing my fingers for post-production recordings. 22:19
22:19 protium joined, awwaiid left, notostraca joined, m0ltar_ joined, ab5tract left 22:20 gabiruh joined
ugexe well, how is it not useful? 22:20
22:20 awwaiid joined
zengargoyle my brain hurts looking at two screens at an angle. 22:20
22:20 ab5tract joined
El_Che ah the main hall? yeah 22:20
it was hard talking there, with people on the left and right and empty space in the middle 22:21
22:21 Grrrr joined
andreoss m: role F[$T] {} ; role G[$T] does F[$T] {}; G[Int].new.^roles.say 22:21
camelia ((G[Int]) (F[Mu]))
zengargoyle and people's heads in the way. there's a lot of people peering around each other trying to read the screen. (but enough complaining.... ) 22:22
andreoss well, all of this stuff could just be constructor arguments
El_Che yeah, I adapted my slides when possible to get stoff on top and have the bottom mostly empty
22:23 notostraca is now known as TEttinger
ugexe yes you have to decide what works best with your design 22:24
andreoss what is the reason for not parameterising classes?
22:25 espadrine left
zengargoyle i've only watched the first few in the playlist as of yet. still on samcv++ second(or first) unicode talk. 22:25
El_Che: will it be obvious when i finally get to your talk? 22:26
El_Che it was on the last day, so don't hold your breath ;) 22:27
zengargoyle El_Che: i mean more like will El_Che be mentioned in some way that i know the person is actually you? :)
El_Che good question, probably nxadm 22:28
it's not about perl6, but about docker though
zengargoyle makes mental note. :)
22:28 devmikey left
zengargoyle IRC names are so weird when you know of someone twice but not once. :) 22:29
El_Che yeah, I tend to have different nicks on different platforms :)
I added El_Che to my nametag :)
22:39 Gruber joined, Grrrr left 22:40 cdg_ left 22:42 Cabanossi left 22:44 Cabanossi joined 22:47 skids joined 22:55 sena_kun left 23:01 cpage_ left 23:02 Kyo91 joined 23:04 wamba left 23:05 cpage_ joined 23:09 ufobat left 23:14 BenGoldberg joined, jjatria left 23:18 dubi0us_ joined 23:22 dubi0us left 23:28 dubi0us_ left
nadim zengargoyle: using .perl and EVAL was simple. I had to add another new method to create the object with the argument .perl thinks it should give new, but EVAL is SLOOOOOOOOOOW and I mean horribly slow. it's at the limit of unusable. A Data::Dump::Tree::Folding object, used to do curses stuff, in color, serializes to around 50 KB for 100 lines, decoding it takes a 1000th of a second but evaluating it takes 4 seconds!, 23:29
23:33 dubi0us joined
timotimo Ulti: the person on reddit that you promised the WAT module to has asked for you to deliver :D 23:37
23:37 dubi0us left, nicq20 left
nadim timotimo: did you see the message I wrote, to you, earlier today? 23:40
23:41 Cabanossi left
timotimo let me scroll up 23:42
ah, neat, the curses thing is done
nadim yes
timotimo i shall try it soon, but for today i'm done already 23:43
nadim and you can use it multiple times
no problem
I have just tried to do remote - curses -folding, eg: you send you rendered data with folding information to another process and can look at it there,. 23:44
but it's too bloody slow
23:44 Cabanossi joined
nadim on the other hand sending it to just look at, IE not folding, takes little time and is workable 23:44
23:47 dubi0us joined
timotimo hm, i wonder how workable it is to do the rendering 100% in the process that "owns" the object 23:48
and having a "dumb terminal" on the other side
nadim if you do not need folding on the other side, it's fast enough, although not a speed deamon. 23:49
just sending the rendering is just network traffic
but having folding means recreating the object that holds the fold information, very slow. 23:50
using the scrolling the terminal provides, in the remote.display.process is good enough 23:51
need to sleep, let's talk tomorrow 23:52
good night
zengargoyle .tell nadim thanks, and good night. 23:56
yoleaux zengargoyle: I'll pass your message to nadim.
23:57 pharv_ joined
andreoss Segmentation fault causes `No subtests run` with prove 23:59
timotimo gnite nadim
zengargoyle seems EVAL would have the same problems as the REPL, whole new scope and tons of work and nesting of levels.
timotimo andreoss: either that or just something about exit codes