»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend! 🦋
Set by Zoffix on 25 July 2018.
tbrowder ref p6 and chromebook: i just got my hands on one and there is already available an installable app: linux (beta). 00:12
tbrowder it’s ubuntu and i will try to install p6 on it if it has enough ram and hd space; otherwise i will provide a small digital ocean droplet the user can ssh to for the p6 cli 00:14
jnthn tbrowder: If it's Ubuntu you can perhaps just install a .deb instead of having to build it, which should greatly reduce the RAM needs compared to building it there 00:21
tbrowder jnthn: good idea! thnx 02:22
buggable New CPAN upload: Uzu-0.3.1.tar.gz by SACOMO modules.perl6.org/dist/Uzu:cpan:SACOMO 02:25
tbrowder i’ll try using nxadm’s rakudo-pkg repositories for chromebook ubuntu linux 02:33
kozet hey is there a way to ask .subst to replace the last occurrence of a match? 03:07
is the answer "pass * to :nth"? 03:12
because that seemed to work
loops kozet: It sure looks like that is the case. Can't find it in the docs though. 03:57
kozet yeah should probably be noted 03:58
uzl m: shell "date" 04:02
camelia Mon Dec 31 05:02:43 CET 2018
uzl m: my $var = shell "date"; say $var; 04:03
camelia Mon Dec 31 05:03:02 CET 2018
Proc.new(in => IO::Pipe, out => IO::Pipe, err => IO::Pipe, exitcode => 0, signal => 0, pid => 7696, command => ("date",))
uzl How do I store the stringified value returned by either `run` or `shell`? 04:04
Everything just print to the terminal. 04:05
noted: news.ycombinator.com/item?id=18783655 04:08
weekly: news.ycombinator.com/item?id=18783655
notable6 uzl, Noted!
buggable New CPAN upload: Sparrowdo-0.0.44.tar.gz by MELEZHIK modules.perl6.org/dist/Sparrowdo:cpan:MELEZHIK 04:15
loops m: my $var = qqx{date}; say $var 04:24
camelia Mon Dec 31 05:24:56 CET 2018
loops m: my $var = run("date", :out).out.slurp; say $var 04:28
camelia Mon Dec 31 05:28:49 CET 2018
loops m: my $var = run("date", :out).out.slurp.chomp; say $var 04:29
camelia Mon Dec 31 05:29:44 CET 2018
uzl I've posted my previous question on SO: stackoverflow.com/questions/539836...n-or-shell 04:34
u-ou Cannot import symbol Foo from Foo, because it already exists in this lexical scope. Why do I get this when exporting class Foo from module Foo? 04:44
Geth doc: ugexe++ created pull request #2530:
Add docs on $?DISTRIBUTION
05:09
pony ah, I can just do Foo::Foo without 'is export' 05:30
hythm_ p6: my @t = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".comb; @t.indices("H I"); @t[14] 06:49
camelia ( no output )
hythm_ p6: my @t = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".comb; say @t.indices("H I"); say @t[14]
camelia (14)
O
hythm_ Where does index 14 come from? 06:50
should not it return index 7, what I'm doing wrong? 06:52
loops hythm_: looks like indicies works on a string.. which ends up having all the characters separated by spaces first. 06:58
m: my @t = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".comb; say ~ @t 06:59
camelia A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
loops and H is in the 14th position accounting for those spaces
hythm_ aaah, makes sense now. thanks loops 07:00
loops m: my @t = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".comb; say @t.join.indices('H') 07:02
camelia (7)
hythm_ that works perfect, thank you 07:05
Geth doc: 7f6718347b | (Nick Logan)++ | doc/Language/variables.pod6
Add docs on $?DISTRIBUTION

Requires github.com/rakudo/rakudo/pull/2574
07:55
synopsebot Link: doc.perl6.org/language/variables
Geth doc: fdd5ef4c60 | (Juan Julián Merelo Guervós)++ (committed using GitHub Web editor) | doc/Language/variables.pod6
Merge pull request #2530 from ugexe/current-distribution

Add docs on $?DISTRIBUTION
cronus_ Hello everyone. Is there a way to explicitly install File::Zip from p6c using zef? when I try zef install File::Zip i get the one from cpan which is incompatible with Selenium::WebDriver. 08:33
jmerelo cronus_: You can always try from source. But a more permanent solution would be to tell the author... 08:54
cronus_: there's some chance you can use the :from<> to install from a particular source. Let me see... 08:56
.tell tyil can you please check the log around this sentence? 08:57
yoleaux jmerelo: I'll pass your message to tyil.
jmerelo cronus_: and right. If you do a zef search File::Zip you get two different versions and authors... The problem is that File::Zip is the default, and the latest version is from cpan. I think, anyway, that the p6c version is obsolete, but if it was versioned it could be installed directly. 08:59
cronus_: so I would say the real issue is what you mention about Selenium. It would be better if you raised an issue with the author, Tyil. 09:00
cronus_ jmerelo: thanks, I tried zef install github.com/azawawi/perl6-file-zip.git --force-install but I still get the version from cpan. 09:05
jmerelo cronus_: Problem is that they are two different modules, but they have the same name. They have to be differenced by author. I'm forking now the "original" one and will try to propose that as a change.
cronus_: meanwhile, you might want to download and install from source. Just cloning the repo and doing a zef install . will do (maybe preceded by a zef build .) 09:06
cronus_ jmerelo: thanks, I'll try that 09:07
cronus_ jmerelo: zef build . gave me !!!> Build failure: . After zef uninstall File::Zip and trying zef install github.com/azawawi/perl6-file-zip.git it seems to work. Thanks for your help 09:15
jmerelo cronus_: great :-)
jmerelo .tell lizmat is there some info about the next Perl Toolchain Summit? Because I'd like to propose a few topics and/or attend... 09:27
yoleaux jmerelo: I'll pass your message to lizmat.
jmerelo .tell lizmat (and maybe propose a venue) 09:29
yoleaux jmerelo: I'll pass your message to lizmat.
lizmat clickbaits p6weekly.wordpress.com/2018/12/30/...e-perljam/ 09:33
moritz lizmat: thanks! 10:23
I hadn't read that PerlJam had died; I'm very sad, I really liked him 10:24
El_Che yeah :(
tyil . 10:27
yoleaux 08:57Z <jmerelo> tyil: can you please check the log around this sentence?
tyil .tell jmerelo I can take a peek if it's still needed (in case its a bug on my end)
yoleaux tyil: I'll pass your message to jmerelo.
Ulti wow Apple are making it harder and harder to actually just build software on macOS 11:04
if anyone complains about macOS Mojave and building Rakudo tell them to do `open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg` installing XCode and the command line tools and signing the EULA is not enough in Mojave you also have to explicitly run that install package to get the header files in /usr/include! 11:05
Ulti starting to really hate Apple with each OS release they are making everything more and more idiot proof which also means expert fail 11:06
Ulti wow 1 hour to install them too this is crazy 11:08
more fun is if you do `xcrun --show-sdk-path` you discover XCode has all of the headers/libs just in a super weird path... so Im not sure what this installer is even doing given you could just do a single hard link 11:15
:<
lizmat holds off upgrading to Mojave a little longer 11:18
Ulti well its not something that will change ;3 11:21
jmerelo There are a few unanswered questions in StackOverflow. Can someone help? stackoverflow.com/questions/520823...l-approach 12:02
yoleaux 09:33Z <lizmat> jmerelo: the channel to ask this question on is #pts on irc.perl.org
10:27Z <tyil> jmerelo: I can take a peek if it's still needed (in case its a bug on my end)
jmerelo .tell tyil other than choosing that name, I guess you did OK, since you actually inserted the auth key
yoleaux jmerelo: I'll pass your message to tyil.
tyil it's one of the inconveniences of allowing duplicate module names 12:04
yoleaux 12:02Z <jmerelo> tyil: other than choosing that name, I guess you did OK, since you actually inserted the auth key
jmerelo tyil: right.
Also, having two separate ways to store modules. 12:05
tyil you should be able to give zef a :author, iirc
or :auth
jmerelo tyil: that, too. Or if there are two different authors, ask for disambiguation. If the other author all of a sudden changes its version it will supersede your file. It might be a zef problem, too... 12:06
tyil I generally try to have explicit dependencies in my META6.json, but it seems the de-facto standard is to just use the shortest name 12:07
which comes with all sorts of problems
like when a dep gets a 2nd :auth, or you need a newer version of a dep than you already have installed 12:08
I should see if I can get assixt's `depend` command to include all those :meta data when it writes a dep to META6.json 12:09
jmerelo tyil: great 12:10
andrzejku I followed DrForr advice and wrote my first blog post :D 12:43
unfortunately it is not related to Perl6
buuuut I am planning for the future to write Perl6 one
lizmat_ andrzejku++ 12:44
andrzejku Although I am afraid a little bit that people will ignore it it looks too amateur from view what I am usually reading 12:44
robertle give us a link!
andrzejku damaxi.github.io/personal/notes/20...rcise.html 12:45
I wrote yesterday how to write a small snippet instead of creating logging function :P 12:46
robertle but I have to train
robertle I pasted a link onto reddit but noone like it :D 12:50
buggable New CPAN upload: App-Mi6-0.2.4.tar.gz by SKAJI modules.perl6.org/dist/App::Mi6:cpan:SKAJI 12:55
Geth doc: ceedca6d70 | (JJ Merelo)++ | doc/Type/ForeignCode.pod6
Documents ForeignCode as Rakudo specific

Also clarifies difference between name and ^name (name is Callable specific) and what <anon> means. Closes #2528.
13:15
synopsebot Link: doc.perl6.org/type/ForeignCode
timotimo crypto in perl6: the dead fish operator: »+^» 0x80 13:38
lizmat m: dd (1,2,3,4) »+^» 0x80 13:40
camelia (129, 130, 131, 132)
masak I think I have an idea how to break that crypto 14:04
masak .oO( nah, if running it once is not enough, we'll just do it more times ) :P 14:05
masak sometimes I'd like a "grammar querier", not a full grammar debugger 14:16
I could ask it "hm hey so why does this rule not match this input here, even though I expected it to?" and it'd go "well, you see..." and explain it to me 14:17
one can dream :)
the same but for CSS would also be nice ;)
perhaps "grammar explainer" is a better term 14:18
timotimo how would you imagine the explanation to look like, UX wise?
masak let me think about it using a concrete example
ok, here's a small but good example 14:19
m: grammar G { regex TOP { <foo>+ }; rule foo { foo } }; say ?G.parse("foofoo")
camelia False
masak I'd ask the grammar explainer "why doesn't this parse?" 14:20
and it'd go "well, you see, you have significant whitespace at the end of rule `foo` which triggers (because the literal string "foo" ends in an alnum), but there's nothing matching that in the input string between 'foo' and 'foo'" 14:21
basically, the explainer would *debug for me*
and it'd deliberately go looking for the point at which things start to not match 14:22
same as I would manually when I'm debugging a grammar
I realize that's not being too specific with the UX -- maybe elm-lang.org/blog/compiler-errors-for-humans is a good start, though 14:23
like, a human-readable error message explaining why one's expectations failed on that grammar and that input 14:24
leont Given a class and a list of roles, is there an easy way to compose all of the latter into the former? (preferably in a way that detects collisions between the roles) 14:29
Currently doing ($class, |@with).reduce: { $^base but $^role }
It feels like there should be an easier and more correct way 14:30
andrzejku .seen lookatme_q 14:37
yoleaux I saw lookatme_q 25 Dec 2018 07:10Z in #perl6: <lookatme_q> Xliff, okay
Ulti masak: yeah something that visualised the grammar as a little graph with colours where a set of strings do/dont match and jumping around the code would be super nice 14:47
there are regex tools like this
timotimo masak: it'd be difficult to figure out the "real" failure reason when you have stuff that scans and backtracks, i'd think
Ulti generating usable strings where its gone wrong to patch and go further would be an interesting bit to add
timotimo like, if your regex is "foo\s+bar" it'll say "oh, the regex match failed because at the last character we expected "foo", but the string was already over 14:48
Ulti timotimo: you might as a human be able to see the real failure more easily though
timotimo yeah, with a graphical approach that shows "everything" that'd surely be easier
we also have the "high water mark" thing that could help in many cases i'd assume
Ulti en.wikipedia.org/wiki/Syntax_diagram 14:49
the current debugger walk but highlighting where it is in one of those diagrams would be quite handy 14:50
pmurias masak: re debugging grammars, the elm link helps with the ui, regardless how we present the info we need to figure out what info we want to present 15:27
yoleaux 30 Dec 2018 21:27Z <lizmat> pmurias: why do you think BINARY_ENDIAN_NATIVE is useless ? nqp f82058fc739db76c0
lizmat pmurias: I've reverted that removal... needed in rakudo
pmurias lizmat: saw the change, I removed it because I thought it's just a lack of any flags 15:28
but the BINARY_* constants aren't proper flags anyway so I think it's better if we have it
lizmat yeah, that was my reason to use it explicitely 15:29
pmurias by not being proper flag I mean we use 12 as marker for 32bit value 15:34
lizmat not 8 ? 15:38
pmurias 12
wait 15:39
lizmat 10 would be 32 bit, big endian, and 9 would be 32 bit little endian >
?
pmurias sorry 12 is for 64 bit
8 is for 32bit 15:40
lizmat ah, ok, indeed
jmerelo .seen pmurias 17:14
yoleaux I saw pmurias 15:40Z in #perl6: <pmurias> 8 is for 32bit
jmerelo .tell pmurias is there a way to embed program output in HTML in 6pad? 17:14
yoleaux jmerelo: I'll pass your message to pmurias.
timotimo jmerelo: you mean just "say" and "note" and such? 17:22
jmerelo timotimo: right. I've seen what you did in your Advent entry, and it's OK, but there should be an easier way... 17:28
jmerelo timotimo: I mean, it's amazing, changing the DOM and stuff from Perl 6, but I was looking for something like <html><!-- your output will be printed here --></html> 17:28
jmerelo timotimo: basically, some HTML tag that gobbles up all program output. 17:29
timotimo i mean, there's the console tab that does basically what you want? 17:33
jmerelo timotimo: right, but imagine I want the output in a blinking tag. 17:34
timotimo: I mean, who wouldn't want their output in a blinking tag?
AlexDaniel .tell pmurias `dd` is not working in 6pad, is that expected? 17:39
yoleaux AlexDaniel: I'll pass your message to pmurias.
jmerelo AlexDaniel: I would say so. dd is Rakudo (not rakudo.js) specific... 17:41
AlexDaniel ooooooooooooooooooooh… 17:42
I think anything that prints to stderr doesn't work 17:43
so I guess `dd` is actually working, you just can't see the output
same as you can't see the output of `note`
.tell pmurias oh, I think anything that prints to stderr doesn't show up in the console
yoleaux AlexDaniel: I'll pass your message to pmurias.
AlexDaniel .tell pmurias I can see it in the dev console though :) 17:44
yoleaux AlexDaniel: I'll pass your message to pmurias.
AlexDaniel so maybe all that is expected, hmm
jmerelo goes AFK to start new year's eve celebration by lying on the couch reading a book. 17:47
AlexDaniel already did a bit of cycling today :) 17:48
AlexDaniel this year the winter feels more like spring, even the grass is green 17:50
moritz ah, you're on the other side :-) 19:39
masak philosophically, I don't think you can be on the other side. you're always on this side. 19:54
masak runs and hides on the other side
moritz ... of a moebius strip 19:58
lizmat where taking sides is without choice :-) 19:59
masak suddenly feels all non-oriented 20:01
moritz: curious aside: do Germans usually write Möbius like that? or are you being kind to us umlaut-less foreigners? :) 20:02
masak .oO( Unicöde is your friënd! »ö« ) 20:03
moritz masak: I was just being läzy :-)
we do write it with ö, usually
lizmat
.oO( ösually )
masak .oO( moritz stripped away the Möbius ) 20:04
lucs »ö« agrees
masak may your new year be homeomorphic to your old one 20:07
lizmat
.oO( all the same to me )
20:08
Xliff \o 20:47
Happy Upcomming New Year
m: constant BULLET = '•'; my $text = "A bunch of bulleted lines:\n • Line 1\n • Line 2\n • Line 3"; say "B: { .from }, B: { .to }" for ( $text ~~ m:g/'•'/ )
camelia B: 29, B: 30
B: 40, B: 41
B: 51, B: 52
Xliff m: constant BULLET = '•'; my $text = "A bunch of bulleted lines:\n • Line 1\n • Line 2\n • Line 3"; say "B: { .from }, B: { .to }" for ( $text ~~ m:g/BULLET/ ) 20:48
camelia ( no output )
Xliff m: constant BULLET = '•'; my $text = "A bunch of bulleted lines:\n • Line 1\n • Line 2\n • Line 3"; say "B: { .from }, B: { .to }" for ( $text ~~ m:g/{ BULLET }/ )
camelia B: 0, B: 0
B: 1, B: 1
B: 2, B: 2
B: 3, B: 3
B: 4, B: 4
B: 5, B: 5
B: 6, B: 6
B: 7, B: 7
B: 8, B: 8
B: 9, B: 9
B: 10, B: 10
B: 11, B: 11
B: 12, B: 12
B: 13, B: 13
B: 14, B: 14
B: 15, B: 15
B: 16, B: 16
B: 17, B: 17
B…
Xliff ^^ Why doesn't this work?
m: constant BULLET = '•'; my $text = "A bunch of bulleted lines:\n • Line 1\n • Line 2\n • Line 3"; say "B: { .from }, B: { .to }" for ( $text ~~ m:g/{ \BULLET }/ )
camelia B: 0, B: 0
B: 1, B: 1
B: 2, B: 2
B: 3, B: 3
B: 4, B: 4
B: 5, B: 5
B: 6, B: 6
B: 7, B: 7
B: 8, B: 8
B: 9, B: 9
B: 10, B: 10
B: 11, B: 11
B: 12, B: 12
B: 13, B: 13
B: 14, B: 14
B: 15, B: 15
B: 16, B: 16
B: 17, B: 17
B…
Xliff m: constant BULLET = '•'; say "{BULLET}" 20:54
camelia
Xliff m: constant BULLET = '•'; my $text = "A bunch of bulleted lines:\n • Line 1\n • Line 2\n • Line 3"; say "B: { .from }, B: { .to }" for ( $text ~~ m:g/"{ \BULLET }"/ ) 20:55
camelia B: 29, B: 30
B: 40, B: 41
B: 51, B: 52
Xliff Oh piss.
AlexDaniel moritz: I think I'm on the same side :) 22:40
also, it snowed for the last few hours, and it's really cold right now :)
masak well, that's it. the other side. at least over here. 23:38
moritz same here. Godt Nytt Aar! 23:52