Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2017-05-02

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:07 mcmillhj joined #perl6
00:13 mcmillhj joined #perl6
00:26 Cabanossi joined #perl6
00:29 samcv looks like majensen is gone. sent him an email though :)
00:30 TEttinger did the email have lots of unicode?
00:30 TEttinger the entire email above codepoint 0x10000
00:30 samcv no. it probably was sent as ascii
00:31 samcv i have my email configured to set it as ascii then if not possible to utf-8
00:31 TEttinger (it would prove the point of unicode being important to handle, though)
00:31 samcv XD
00:31 samcv m: say 0x10000.chr
00:31 camelia rakudo-moar e5870c: OUTPUT: «𐀀␤»
00:31 TEttinger huh
00:31 TEttinger I wonder if that's even assignd
00:31 samcv m: say 0x1FFFFF.chr
00:31 camelia rakudo-moar e5870c: OUTPUT: «Error encoding UTF-8 string: could not encode codepoint 2097151 (0x1FFFFF), codepoint out of bounds. Cannot encode higher than 1114111 (0x10FFFF)␤  in block <unit> at <tmp> line 1␤␤»
00:31 samcv yey got my nice error message there :)
00:32 TEttinger m: say 0x1FFFF.chr
00:32 camelia rakudo-moar e5870c: OUTPUT: «\x{1FFFF}␤»
00:32 TEttinger uh
00:32 samcv before it used to just say error could not encode
00:32 samcv now it tells you the reason
00:32 TEttinger m: say 0x1FFEF.chr
00:32 camelia rakudo-moar e5870c: OUTPUT: «🿯␤»
00:32 samcv if it's out of bounds and tells you the max. and if it's a utf-16 surrogate then it says that as well
00:32 TEttinger why does 1FFFF (4 F) print \x{1FFFF}
00:32 samcv though not sure why people can't put surrogates in utf-8 even though it's not a great idea
00:33 samcv not sure the question
00:33 TEttinger oh
00:33 TEttinger these two print differently:
00:33 TEttinger m: say 0x1FFFF.chr
00:33 camelia rakudo-moar e5870c: OUTPUT: «\x{1FFFF}␤»
00:33 TEttinger m: say 0x1FFEF.chr
00:33 camelia rakudo-moar e5870c: OUTPUT: «🿯␤»
00:33 TEttinger they should be in the same block, I think
00:34 TEttinger they're both in range
00:35 pierre_ joined #perl6
00:36 samcv oh
00:36 samcv it literally prints \x{1FFFF}
00:36 samcv maybe it's camelia doing it? idk
00:37 samcv sec
00:37 samcv m: say  0x1FFFF.chr.uniname
00:37 camelia rakudo-moar e5870c: OUTPUT: «<illegal>␤»
00:37 samcv ah cause it's illegal
00:37 samcv wee wooo call the police!~
00:39 samcv my @a; for ^0x1FFFFF { @a.push($_) if .uniname eq '<illegal>' }; say @a[0]; say @a.tail
00:41 BenGoldberg joined #perl6
00:43 mcmillhj joined #perl6
00:44 kurahaupo joined #perl6
00:57 Actualeyes joined #perl6
00:59 mcmillhj joined #perl6
01:08 pierre_ joined #perl6
01:11 mcmillhj joined #perl6
01:11 Cabanossi joined #perl6
01:16 adu joined #perl6
01:27 mcmillhj joined #perl6
01:39 pierre_ joined #perl6
01:47 mcmillhj joined #perl6
01:47 wamba joined #perl6
01:48 ilbot3 joined #perl6
01:48 Topic for #perl6 is now »ö« Welcome to Perl 6! | https://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:,  or /msg camelia p6: ... | irclog: http://irc.perl6.org or http://colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
02:01 wigner joined #perl6
02:16 poohman_ joined #perl6
02:17 poohman joined #perl6
02:19 poohman joined #perl6
02:19 pierre_ joined #perl6
02:30 mcmillhj joined #perl6
02:30 jeek joined #perl6
02:37 mcmillhj joined #perl6
02:46 pierre_ joined #perl6
02:56 adu joined #perl6
02:57 mcmillhj joined #perl6
03:14 mcmillhj joined #perl6
03:16 khw joined #perl6
03:23 Resol joined #perl6
03:25 Cabanossi joined #perl6
03:30 aborazmeh joined #perl6
03:30 aborazmeh joined #perl6
03:33 Geth ¦ perl6-examples: 5f60c7e987 | (David Warring)++ | META6.json
03:33 Geth ¦ perl6-examples: [META6.json] add license
03:33 Geth ¦ perl6-examples: review: https://github.com/perl6/perl6-examples/commit/5f60c7e987
03:41 adu joined #perl6
03:41 poohman joined #perl6
03:46 Geth ¦ ecosystem: CurtTilmes++ created pull request #333: Add Math::Primesieve to ecosystem
03:46 Geth ¦ ecosystem: review: https://github.com/perl6/ecosystem/pull/333
03:53 poohman joined #perl6
03:55 Cabanossi joined #perl6
03:57 grondilu m: say ([\+] ^Inf) ...^ * > 100;
03:57 camelia rakudo-moar e5870c: OUTPUT: «(0 1 3 6 10 15 21 28 36 45 55 66 78 91)␤»
03:57 grondilu m: say ([\+] grep &is-prime, ^Inf) ...^ * > 100;
03:57 camelia rakudo-moar e5870c: OUTPUT: «(2 5 10 17 28 41 58 77 100)␤»
03:57 grondilu ^my bad, ignore that
04:01 raschipi joined #perl6
04:05 poohman joined #perl6
04:10 poohman joined #perl6
04:13 CIAvash joined #perl6
04:18 cpage_ joined #perl6
04:36 kent\n joined #perl6
04:44 curan joined #perl6
04:50 poohman joined #perl6
04:54 poohman joined #perl6
04:57 cyphase joined #perl6
04:59 raschipi samcv: Surrogates shouldn't be put in utf-8 because they're used to detect utf-16, I think.
04:59 samcv shouldn't
04:59 samcv i agree lol.
04:59 samcv you can encode illegal codepoints. but
05:00 samcv i mean you can do plenty of silly things that don't mean anything useful
05:01 samcv i mean does that mean than perl 6 is incapable of encoding all unicode codepoints as utf-8?
05:01 samcv technically
05:01 samcv but it's still kind of arbitrary. even though you can do plenty of other dumb things. so idk
05:02 samcv though it could be in the utf-8 spec to never do it. idk
05:02 samcv i know our upper limit of 0x1FFFFF is in the utf-8 spec
05:03 samcv ok yeah it's not supposed to be done apparently
05:03 raschipi One alternative Unicode gives is to just substitute the illegal codepoint with a (U+FFFD)
05:04 samcv m: 0xFFFD.uniname.say
05:04 camelia rakudo-moar e5870c: OUTPUT: «REPLACEMENT CHARACTER␤»
05:04 raschipi REPLACEMENT CHARACTER
05:04 samcv oh that one
05:04 samcv that's wha i thought it was
05:04 poohman joined #perl6
05:04 samcv the utf8 RFC gods have spoken though. looking at the rfc now
05:05 samcv m: 0xD800.say
05:05 camelia rakudo-moar e5870c: OUTPUT: «55296␤»
05:05 samcv m: 0xD800.chr.say
05:05 camelia rakudo-moar e5870c: OUTPUT: «Error encoding UTF-8 string: could not encode Unicode Surrogate codepoint 55296 (0xD800)␤  in block <unit> at <tmp> line 1␤␤»
05:06 samcv hmm maybe should mkae that error a bit more strong and say UTF-8 spec prohibits encoding surrogates
05:06 samcv and to blame them not us :)
05:07 samcv m: 0xD800.chr.encode('UTF-16)
05:07 camelia rakudo-moar e5870c: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Unable to parse expression in single quotes; couldn't find final "'" ␤at <tmp>:1␤------> 0xD800.chr.encode('UTF-16)7⏏5<EOL>␤    expecting any of:␤        argument list␤        single quot…»
05:07 samcv m: 0xD800.chr.encode('UTF-16')
05:07 camelia rakudo-moar e5870c: ( no output )
05:07 samcv m: 0xD800.chr.encode('UTF-16').say
05:07 camelia rakudo-moar e5870c: OUTPUT: «utf16:0x<d800>␤»
05:07 samcv m: 0xD800.chr.encode('UTF-16').decode('utf-8').say
05:07 camelia rakudo-moar e5870c: OUTPUT: «Can not decode a utf-16 buffer as if it were utf-8␤  in block <unit> at <tmp> line 1␤␤»
05:07 samcv m: 0xD800.chr.encode('UTF-16').Buf.decode('utf-8').say
05:07 camelia rakudo-moar e5870c: OUTPUT: «No such method 'Buf' for invocant of type 'utf16'␤  in block <unit> at <tmp> line 1␤␤»
05:07 samcv m: 0xD800.chr.encode('UTF-16').^methods.say
05:07 camelia rakudo-moar e5870c: OUTPUT: «(decode encoding COMPARE bytes unpack of allocate join Int Numeric subbuf reverse chars SAME contents Str Stringy WHICH new Method+{<anon|78544448>}.new Method+{<anon|78544448>}.new Bool Method+{<anon|78544448>}.new Method+{<anon|78544448>}.new gist perl…»
05:07 raschipi I think it shouldn't barf like that at all, just warn and substitute.
05:07 samcv hm
05:08 samcv that. idk if i like that either
05:08 raschipi Because if the function is used in user input, that's a denial of service attack.
05:08 samcv i mean you shouldn't ever encounter it unless your program does something wrong
05:08 samcv hm
05:08 samcv if user enters some number hmm. and then it tries to encode it. i could see that
05:08 samcv m: try { 0xD800.chr.say}; say 'blah'
05:08 camelia rakudo-moar e5870c: OUTPUT: «blah␤»
05:09 samcv they could put it in a try block
05:09 raschipi A database returns something and you need to turn it into a string for manipulation.
05:09 samcv hm
05:09 samcv m: 0xD800.chr.say; say 'blah'
05:09 camelia rakudo-moar e5870c: OUTPUT: «Error encoding UTF-8 string: could not encode Unicode Surrogate codepoint 55296 (0xD800)␤  in block <unit> at <tmp> line 1␤␤»
05:09 samcv hm yes
05:09 samcv i mean we can have surrogates but just not print it to utf-8 buffers iirc
05:09 samcv m: 0xD800.chr
05:09 camelia rakudo-moar e5870c: ( no output )
05:09 samcv yeH
05:10 raschipi It needs to put something in there, and it can't be an illegal codepoint.
05:10 samcv or just not print it out?
05:10 raschipi If it doesn't substitute, that makes debugging difficult.
05:10 samcv hm yeah
05:10 samcv wonder how perl 5 handles it
05:11 samcv oh nice
05:11 samcv heh it just prints it out
05:11 raschipi If there's an illegal codepoint, it could end up in a CArray and then be emitted. Better just kill it.
05:11 raschipi Here's a test string: http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-test.txt
05:12 samcv idk if it would be insecure to have a surrogate
05:12 raschipi There's no unicode engina capable of dealing with it.
05:12 samcv i think main issue is a NULL ending up someplace by accident from what the UTF-8 spec says
05:12 raschipi engine*
05:13 samcv you mean no standards compliant one?
05:13 samcv specs say it has to not encode invalid sequences
05:13 raschipi If a null ends up sent to C, that's a potential buffer overrun.
05:13 samcv though surrogates are just arbitrary
05:13 samcv yeah of course. i don't know how you could do that with a surrogate? hm. maybe. a decoder that assumes it will never get a surrogate?
05:14 samcv perl5 just prints it out and my terminal renders it as replacement characters like a bunch of them
05:14 samcv eee
05:14 samcv hmm i don't think my irc client lets my paste surrogates..
05:15 samcv i can paste it into chromium though
05:15 samcv https://www.google.com/search?q=%EF%BF%BD%EF%BF%BD%EF%BF%BD%EF%BF%BD%EF%BF%BD&amp;oq=%EF%BF%BD%EF%BF%BD%EF%BF%BD%EF%BF%BD%EF%BF%BD&amp;aqs=chrome..69i57.7982j0j7&amp;sourceid=chrome&amp;ie=UTF-8
05:15 samcv i think that's actually encoded as the surrogate probably
05:15 samcv url encoding uses utf-8
05:15 samcv the hex digits are bytes
05:16 samcv or maybe it copies replacement character. argh
05:17 samcv ok i'm gonna pipe output to a file and then check the hex... gotta be super sure
05:17 samcv nope it does output 0xD800
05:20 raschipi "When  a  conversion  algorithm  encounters  such  unconvertible  data,  the  usual  practice  is either  to  throw  an  exception  or  to  use  a  de fined  substitution  character  to  represent  the unconvertible data. In th e case of conversion  to  one of the encoding forms of the Unicode Standard,  the  substitution  character  is  defined  as  U+FFFD   replacement  character . However, there are different possible ways to us
05:21 wamba joined #perl6
05:23 raschipi Section 5.22: "Best Practice for U+FFFD Substitution"
05:29 ChoHag joined #perl6
05:35 pierre_ joined #perl6
05:40 lowbro joined #perl6
05:40 lowbro joined #perl6
05:41 domidumont joined #perl6
05:45 labster joined #perl6
05:48 domidumont joined #perl6
05:49 domidumont joined #perl6
05:58 ufobat joined #perl6
06:03 mcmillhj joined #perl6
06:06 sammers joined #perl6
06:10 Geth ¦ ecosystem: 2af4592e90 | (Curt Tilmes)++ (committed by Moritz Lenz) | META.list
06:10 Geth ¦ ecosystem: Add Math::Primesieve to ecosystem
06:10 Geth ¦ ecosystem:
06:10 Geth ¦ ecosystem: See https://github.com/CurtTilmes/perl6-primesieve
06:10 Geth ¦ ecosystem: review: https://github.com/perl6/ecosystem/commit/2af4592e90
06:24 Celelibi joined #perl6
06:26 dg joined #perl6
06:39 * lizmat clickbaits https://p6weekly.wordpress.com/2017/05/01/2017-18-starlight-starbright/
06:40 Cabanossi joined #perl6
06:41 grlnix joined #perl6
06:43 grlnix hey friends, just wondering, how long does doc typically take to compile nowadays? it was pretty long last time i was involved around here
06:47 lizmat I'm pretty sure it's less nowadays...  but I have no idea as I can't say I have ever compiled the docs ever
06:48 lizmat otoh there's a *lot* more doc nowadays as well, so YMMV
06:48 grlnix hm :)
06:48 * lizmat usually just goes to http://docs.perl6.org
06:48 grlnix thx
06:52 anton_p joined #perl6
06:52 anton_p does someone use perl6 on ubuntu? what ppa?
06:56 stmuk joined #perl6
07:00 ccntrq joined #perl6
07:05 ChoHag joined #perl6
07:11 moritz anton_p: I build from source on Ubuntu, but if I wanted a package, I'd go with https://github.com/nxadm/rakudo-pkg/releases
07:11 eater Do we have any idea how to solve problems like this: https://github.com/perl6/ecosystem/pull/333#issuecomment-298500756 ?
07:11 eater On linux is tbh pretty straight forward since they store shared libs in a known place, and so does Mac OSX, but afaik Windows is a bitch to do this correct
07:13 samcv hmm hi eater
07:13 eater hi samcv
07:13 samcv imo there should be a META field for native pre-requisites
07:13 eater samcv: should as in "there isn't but there needs to be one" or should as in "there is one"
07:14 samcv there is none in the spec currently
07:14 samcv but if/when/i wouldlike there to be one, that would give bin dependencies and also give shared library dependencies
07:15 eater bin dependecies as in executables?
07:15 samcv because package names are different between different such things. but usually the .so files have the same base name. and the bin are the same
07:15 samcv yes
07:15 samcv like 'libssl' for libssl.so
07:15 samcv on openssh for the openssh binary proper. maybe would have seperate fields? idk
07:15 samcv but regardless would make it trivial ta check if the person has that dependency installed
07:15 samcv if the bin is in the path or not, and if the .so exists and can be located
07:16 eater ye
07:16 eater it would be nice if it could give hints too where to find that shared library
07:16 darutoko joined #perl6
07:16 eater but maybe that's too much to ask?
07:16 samcv well. a human readable thing could be useful too. but at least what i said above would be nice for computers to check and be distro neutral
07:16 eater so a package manager can install the binary req. it self via apt
07:16 eater yea
07:17 samcv and technically don't even need  package installed to meet if if they're in path
07:17 samcv yeah often the package managers you can check which thing has a file
07:17 samcv some? i know arch has a semiofficial one pkgfile
07:17 samcv i think debian has one too
07:17 eater VoidLinux has one
07:17 eater but windows :(
07:18 samcv tho. libssl is named libssl.dll on windows right?
07:18 samcv they don't ruin the libnames right?
07:18 zakharyas joined #perl6
07:18 eater Windows doesn't have a
07:18 eater collection of libraries stored somewhere
07:19 eater most libraries go side to side with the binary
07:19 samcv /^<libname> [32]? '.dll' $/
07:19 samcv you mean are stored in the program install folders yes
07:20 eater and that's also totally up to the perl application
07:20 samcv what is up to perl application?
07:20 eater because for such libraries you just load the full path to the dll for nativecall's
07:20 samcv yeah. though binaries would be in path maybe? or hould be
07:21 samcv probably named the same
07:21 samcv but uhm dll's though that could be more complex
07:21 bolangi joined #perl6
07:22 eater e.g. Mp3TagC isn't even looking for the windows dll
07:22 eater it just expects in that case that it's given via ENV :')
07:22 samcv heh
07:25 samcv eater, https://gist.github.com/samcv/c61f0dcf3d55106ec7cd73976b006719
07:25 samcv thoughts on this?
07:25 samcv it would jive with how other things are layed out
07:26 astj joined #perl6
07:26 samcv imo. and let us provide "support" with url's
07:28 dakkar joined #perl6
07:29 eater samcv: https://gl.zt.je/snippets/13
07:29 eater if we're gonna make a split between lib and bin we need to be /consistent/ in that
07:29 samcv yeah sure that's fine too
07:29 samcv ofc
07:31 samcv perl uses '/' for directories even on windows yes?
07:33 parv joined #perl6
07:33 eater Windows /does/ accept it
07:33 samcv no i mean perl 6
07:33 eater so I don't know if perl does magic before it
07:33 samcv i know it does accept /
07:33 samcv no i mean. when you print out a directories location
07:33 samcv m: $*CWD.say
07:33 camelia rakudo-moar e5870c: OUTPUT: «"/home/camelia".IO␤»
07:35 eater I dont have a Win VM close to me
07:35 eater sorry
07:35 samcv it's ok. not super critical
07:35 samcv also can't believe window uses backslash though
07:35 samcv so weird
07:35 domidumont joined #perl6
07:37 geekosaur historical
07:37 TEttinger windows allows slash as well in most cases, since vista
07:37 samcv yeah i know that XD
07:37 samcv still though
07:37 TEttinger mac classic used, what, :
07:37 geekosaur just think, gates could have ripped off zcpr3 instead of ordinary cp/m, and then you'd have to deal with tops-20 filespecs instead >.>
07:37 geekosaur yes
07:37 TEttinger also \r for line separator
07:38 geekosaur there are still places in finder which swap : and / in filenames
07:39 samcv eater, we must go deeper! https://gist.github.com/samcv/2afe20aa64f5d43880c2ea06f1db8306#file-sample2-json-L20-L63
07:40 u-ou hey
07:40 eater samcv: :'D that was more the point of making the support items an object, so such things can go in there
07:40 u-ou what's happening in perl6land tonight?
07:40 samcv but that's not really support
07:40 samcv idk.
07:40 eater samcv: it's ~machine support~
07:40 eater :')
07:40 samcv you could have support level under the distribution too
07:41 samcv i don't follow
07:41 eater I think this is kind of too big and complex of a structure tho
07:42 samcv yes i agree
07:42 eater at the other hand I like to have one object that says what it depends on, what the site is, and where to get it
07:42 AlexDaniel joined #perl6
07:42 abraxxa joined #perl6
07:42 samcv well you mentioned windows
07:43 samcv and so i came up with a horrible looking solution to it lol
07:43 samcv i liked it better before when we only had to think about linux :X
07:44 samcv maybe we need to seperate bin and lib for support. idk. it's meant for for humans i think. though could be better for computers to find the dependency links and show them if they don't have it installed
07:46 eater samcv: https://gl.zt.je/snippets/13
07:48 samcv maybe could have a package manager key? hm
07:48 eater samcv: would be nice
07:48 eater so ubuntu and debian can use the same key
07:48 samcv may be more useful than the distro name
07:48 samcv well i'd think for a package manager like zef
07:48 samcv it would check for the distro, if not found see if another thing has the same package manager
07:49 samcv if so then that's probably fine
07:49 eater ye
07:49 eater and pip etc.
07:49 samcv hmm
07:49 samcv pip
07:49 eater but this proposal keeps all the info about 1 dependecy together
07:49 samcv maybe would be better to list package managers instead
07:49 eater and name is imo purely optional
07:49 samcv yeah. that is nice
07:50 samcv yeah
07:51 eater samcv: https://gl.zt.je/snippets/13
07:51 eater something like that?
07:51 eater with a default so it can ~try~?
07:51 eater curl e.g. is curl in almost every distro package manager
07:51 samcv sure that seems fine
07:52 samcv yeah
07:52 TEttinger joined #perl6
07:52 samcv and if they want under distribution they could go down to distro specific things but i think package manager makes like way more sense in the end
07:52 samcv plus could expand to like pip and such
07:52 samcv cpan or whatever
07:52 eater ye
07:53 samcv yeah i like that one very much
07:53 eater plus this add the ability to the ecosystem build system to install the correct packages for the packages that need binaries a/o libraries
07:53 samcv you spelled dependecies wrong
07:53 eater samcv: :(
07:53 samcv it's ok though
07:54 abraxxa joined #perl6
07:54 eater samcv: why did you say that I spelled something wrong, and then use the exact same wrong spelled word :')
07:54 samcv it was on purpose :)
07:56 samcv eater, could even fit in a license thing there too even
07:56 samcv :)
07:56 samcv yeah i like this last one very much
07:56 eater :> good
07:57 eater so what steps to take now?
07:57 samcv making the easy hard, and impossible within reach
07:58 eater :')
07:58 samcv note missed comma. :)
07:58 samcv uhm i'm gonna open an ecosystem RFC
08:00 jonas1 joined #perl6
08:01 TEttinger joined #perl6
08:01 eater samcv: cool thanks
08:02 samcv prolly post an issue in github.com/perl6/specs maybe too
08:02 samcv make sure people see it
08:03 eater samcv: looking forward to it :>
08:03 mcmillhj joined #perl6
08:04 samcv oh btw versioning
08:04 samcv lib: [ "libcurl": "*" ]
08:04 samcv y/n
08:04 samcv or put version there or whatever
08:04 eater well
08:04 samcv err as its own fields
08:04 eater I would use { "libcurl": "*" }
08:04 samcv sorry meant
08:04 eater but that only works in the package manager rigt?
08:04 eater *right
08:05 samcv nah i think it should be optional in the native-dependencies, like on the same level as 'name' and such
08:05 samcv and under distribution i think it can be after the packages name
08:05 eater curl>=10.34
08:05 eater like that?
08:06 samcv no
08:06 samcv as the value
08:06 samcv sec
08:08 shadowpaste0 joined #perl6
08:08 rindolf joined #perl6
08:08 mcmillhj joined #perl6
08:09 samcv what?
08:09 samcv oh sorry nvm
08:10 masak :)
08:10 * masak .oO( as developers, it falls on us to eliminate distrac... ooh, shiny! )
08:10 samcv eater, https://gist.github.com/samcv/ed59c2bf070c3c544be25fe199f63881
08:11 lizmat https://www.youtube.com/watch?v=EzQpkQ1etdA   # whee!
08:11 samcv hah somebody highlighted me in another channel and i thought it was here heh
08:11 eater samcv: what for version requirement notation do we use with META6.JSON for dependecies?
08:12 samcv that
08:12 samcv * is any + at end means that or newer
08:12 lowbro joined #perl6
08:12 samcv m: say v6.2 cmp v6.1+
08:12 camelia rakudo-moar e5870c: OUTPUT: «More␤»
08:12 g4 joined #perl6
08:12 eater MORE
08:12 lowbro joined #perl6
08:12 eater okay
08:12 samcv m: say v6.0 cmp v6.1+
08:12 camelia rakudo-moar e5870c: OUTPUT: «Less␤»
08:13 samcv pretty nifty
08:13 eater yeah there are so many notations
08:13 samcv yep
08:13 eater so didn't know which one perl6 uses
08:13 eater so then imo this is nice
08:13 samcv perl 6 has version objects too even
08:13 samcv m: say v6.0.WHAT
08:13 camelia rakudo-moar e5870c: OUTPUT: «v6.0.WHAT␤»
08:13 samcv dammit
08:13 samcv m: say (v6.0).WHAT
08:13 camelia rakudo-moar e5870c: OUTPUT: «(Version)␤»
08:14 lizmat m: say WHAT v6.0
08:14 camelia rakudo-moar e5870c: OUTPUT: «(Version)␤»
08:14 samcv patch version WHAT
08:15 geekosaur .oO { c'est what? }
08:20 wamba joined #perl6
08:21 pierre_ joined #perl6
08:21 samcv eater, https://github.com/perl6/ecosystem/issues/334
08:24 mcmillhj joined #perl6
08:25 eater samcv: your code snippet does not eqaul your linked gist :>
08:25 samcv yes. :)
08:25 eater maybe we can even make the "location" key an array so multiple locations are allowed 🤔
08:28 samcv huh?
08:28 samcv there are bin and lib under location
08:28 samcv you can put more than one under bin
08:28 samcv just add a coma
08:29 samcv i think [ ] is for an array of scalars not value keys
08:29 samcv or something idk json be json
08:29 samcv not sure about the [ ] 100% but for { } you can have multiple entries
08:30 samcv err wait. sorry thinking harder
08:30 samcv you mean multiple with the same name. ok
08:33 samcv ok should be fixed
08:33 kurahaupo joined #perl6
08:39 eater hahaha
08:39 eater samcv: need some sleep maybe?
08:39 eater what you did is exactly what I meant :)
08:40 Cabanossi joined #perl6
08:41 samcv that is possible
08:42 samcv i have a headache though so i think it's that mostly
08:43 renormalist joined #perl6
08:44 mcmillhj joined #perl6
08:44 eater samcv: don't have pills for it?
08:45 samcv yes. i now have only 3/4 of the headache i had before :)
08:46 eater :')
08:46 eater get better soon
09:00 cosimo joined #perl6
09:00 mcmillhj joined #perl6
09:05 Geth Swapped META.info → META6.json in 2 dists in https://github.com/perl6/ecosystem/commit/d18a12ed49
09:11 vytas joined #perl6
09:15 bjz joined #perl6
09:16 mcmillhj joined #perl6
09:20 abraxxa joined #perl6
09:25 Cabanossi joined #perl6
09:32 mcmillhj joined #perl6
09:46 jhill__ joined #perl6
09:55 pierre_ joined #perl6
09:57 jkva_ joined #perl6
10:04 wamba joined #perl6
10:09 kurahaupo_ joined #perl6
10:12 kurahaupo joined #perl6
10:18 anton_p joined #perl6
10:26 astj_ joined #perl6
10:27 cpage__ joined #perl6
10:28 mr-foobar joined #perl6
10:33 wamba joined #perl6
10:39 stmuk_ joined #perl6
10:45 stmuk joined #perl6
10:48 stmuk_ joined #perl6
10:50 shlomif joined #perl6
10:52 stmuk joined #perl6
10:53 ilmari joined #perl6
10:55 Cabanossi joined #perl6
10:57 samcv gotta go to bed night all
10:58 timotimo nite samcv
10:58 stmuk joined #perl6
11:06 stmuk joined #perl6
11:45 * grondilu wonders (probably not for the first time), why we don't have a Prime subset of UInt instead of &is-prime.
11:49 stmuk_ joined #perl6
12:00 stmuk joined #perl6
12:05 bjz_ joined #perl6
12:05 stmuk_ joined #perl6
12:08 stmuk joined #perl6
12:10 Cabanossi joined #perl6
12:16 raschipi joined #perl6
12:24 raschipi grondilu: submit a PR: https://github.com/bradclawsie/Subsets-Common
12:32 domidumont joined #perl6
12:32 pierre_ joined #perl6
12:32 bjz joined #perl6
12:36 haxmeister good morning perl
12:36 raschipi morning haxmeister
12:39 timotimo raschipi: did you know that json is utf8, but contains surrogate pairs?
12:45 raschipi It's not valid utf-8, then
12:45 timotimo yeah, tell that to those people who invented that
12:46 timotimo if you ever try to correctly implement a json parser you get to know the deep, deep horrors of this terrible and terrifying format
12:46 raschipi Should be manipulated using utf8-c8 and sanitized before being converted to utf8
12:48 timotimo does utf8-c8 accept stuff like out-of-range surrogates?
12:48 timotimo i think we still error out for that kind of thing
12:48 mcmillhj joined #perl6
12:48 raschipi JSON is just like a ".perl" dump but for an ancient ECMAScript version, isn't it? A JSON parser is madness because it's a Javascript parser.
12:48 timotimo well, it's madness because it's somewhat thought to be kind of like javascript
12:48 timotimo but it actually totally differs in a few key areas that can drive you mad
12:50 raschipi This page should be changed to include the new linux packages: http://rakudo.org/how-to-get-rakudo/
12:50 timotimo i thought they weren't actually finished yet?
12:51 timotimo yeah, the versions that are up there are still from yesterday
12:51 raschipi Compilation and rakudobrew instructions should be moved for a "developer's intro" page too.
12:51 timotimo i thought stmuk had to redo them and would upload 'em today?
12:51 timotimo or am i 1 day off?
12:51 skids joined #perl6
12:51 raschipi OK, I didn't know there was a problem with the packages.
12:52 timotimo oh, it was only the windows packages
12:52 timotimo yeah, you're right, the linux and mac package ought to be updated on that page
12:52 timotimo however, it's only the text that needs changing, the link is already correct (because it's just -latest.foo)
12:54 timotimo updated it, how does it look?
12:54 raschipi It also recommends panda still, should recommend zef
12:54 stmuk joined #perl6
12:55 mxco86 joined #perl6
12:55 Cabanossi joined #perl6
12:55 timotimo how about now
12:58 _ramix_ joined #perl6
12:58 rindolf joined #perl6
13:00 raschipi I'm not seeing any updates on the page.
13:01 timotimo when i ctrl-f panda i get 0 results
13:01 timotimo why isn't it updating for others?
13:01 * [Coke] has to remember to be careful when volunteering to do stuff.
13:02 nadim joined #perl6
13:02 raschipi I see the "zef" update.
13:03 raschipi But it still recommends intalling from source or rakudobrew
13:03 nadim hi all, I have a class which has an attribute that I give a default value to. In the .new method I want to access the default value I gave in the class definition. How do I do that ?
13:03 raschipi And the download link is still a .tar.gz.
13:05 Geth ¦ doc: eca21ff851 | (Zoffix Znet)++ (committed using GitHub Web editor) | doc/Type/IO/Path.pod6
13:05 Geth ¦ doc: [io grant] Document copy/move behaviour for same target/source
13:05 Geth ¦ doc:
13:05 Geth ¦ doc: RT#131242: https://rt.perl.org/Ticket/Display.html?id=131242
13:05 Geth ¦ doc: Rakudo fix: https://github.com/rakudo/rakudo/commit/08a8075f91
13:05 Geth ¦ doc: Tests: https://github.com/perl6/roast/commit/4fdb8504cd
13:05 Geth ¦ doc: review: https://github.com/perl6/doc/commit/eca21ff851
13:05 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131242
13:05 Sound joined #perl6
13:05 Sound joined #perl6
13:06 moritz nadim: I don't think there's an easy mechanism for that
13:07 raschipi nadim: compare it to a constant with the value you want as default, then use the value of the constant to know what was assigned as default.
13:08 raschipi Solve it with another level of indirection.
13:10 * [Coke] mentioned zef to someone who uses perl but not perl6, and was asked "do they know what that means!?!?!?!"
13:10 nadim I could move everything to .new and not use any other mechanism but it seems to me that things declared in the class should be available.
13:11 nadim thank you both for the answers
13:12 cdg joined #perl6
13:12 jnthn It's available via the MOP, but it's something like ::?CLASS.^attributes.grep(*.name eq '$!foo').default or so
13:12 timotimo well, surely .first or >>.default
13:12 jnthn Or that
13:13 jnthn And even then it's a little interesting to call it because it expects an instance of the object
13:13 * timotimo wonders if that counts as code-review
13:13 moritz and the default tends to be a closure, right?
13:13 jnthn I did say "something like" ;)
13:13 jnthn moritz: Yeah, thus my note on calling it :)
13:14 jnthn It handles to handle stuff like `has $.x; has Foo $.y .= new(:$!x)`
13:14 nadim can one flatten something that could be undefined?
13:14 jnthn Thus why it needs the object reference
13:15 jnthn m: class FlatAndUndefined does Iterable { method iterator() { Empty.iterator }; method defined() { False } }; my @a = flat 1, FlatAndUndefined.new, 2; say @a;
13:15 camelia rakudo-moar 08a807: OUTPUT: «[1 2]␤»
13:17 nadim I was thinking more in the lines of: | %something // ()
13:17 ChoHag joined #perl6
13:18 jnthn Oh
13:19 jnthn But a %something will probably always be defined? :)
13:19 jnthn But |($foo // ()) would work
13:19 jnthn Or |(%something<blah> // ())
13:20 moritz %something can be undefined :(
13:20 moritz m: sub f(%h) { say %h.defined }; f Hash
13:20 camelia rakudo-moar 08a807: OUTPUT: «False␤»
13:23 jnthn Well, yes, if you go out of your way... Also it's quite possible that %, @, and & won't imply :D in 6.d. :)
13:23 jnthn uh
13:23 jnthn *will* imply
13:23 nadim yes but %something<color> may not
13:23 jnthn Gah, I wish sentences came with a test suite for when you refactor them :)
13:24 moritz :-)
13:24 nadim hehe
13:25 Cabanossi joined #perl6
13:26 raschipi m: my @a; say @a
13:26 camelia rakudo-moar 08a807: OUTPUT: «[]␤»
13:26 raschipi m: my @a; say @a.defined
13:26 camelia rakudo-moar 08a807: OUTPUT: «True␤»
13:27 raschipi What would happen with moritz's code above, then?
13:27 araraloren joined #perl6
13:27 moritz raschipi: try and see?
13:28 mscha joined #perl6
13:28 raschipi m: use 6.d.PREVIEW; sub f(%h) { say %h.defined }; f Hash
13:28 camelia rakudo-moar 08a807: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Undeclared routine:␤    use used at line 1␤␤»
13:28 stmuk_ joined #perl6
13:29 mscha m: use lib ~$*PROGRAM.sibling('lib');  # This works, but ...
13:29 camelia rakudo-moar 08a807: ( no output )
13:29 mscha m: use lib $*PROGRAM.sibling('lib');  # ... it'd be nice if this worked as well.
13:29 camelia rakudo-moar 08a807: OUTPUT: «===SORRY!===␤Type check failed in binding to parameter '$spec'; expected Str but got IO::Path (IO::Path.new("/tmp/li...)␤»
13:29 raschipi m: use v6.d.PREVIEW; sub f(%h) { say %h.defined }; f Hash
13:29 camelia rakudo-moar 08a807: OUTPUT: «False␤»
13:29 nadim bleah, three flat() needed. https://nopaste.linux-dev.org/?1123994
13:29 raschipi As I understood it, that was a change that might land in 6.d, not something already there.
13:30 nadim and the default would have been nicer somewhere in the class declaration indeed
13:30 timotimo nadim: have you tried using | instead?
13:31 timotimo m: my %foo; %foo<bar> = 1, 2, 3, 4, 5; %foo<bar> = |<<blah bloo foo bar>>, |(%foo<bar>//()); say %foo.perl
13:31 camelia rakudo-moar 08a807: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Malformed postfix␤at <tmp>:1␤------> 4, 5; %foo<bar> = |<<blah bloo foo bar>>7⏏5, |(%foo<bar>//()); say %foo.perl␤    expecting any of:␤        argument list␤        postfix␤»
13:31 nadim I would have 3 |
13:32 timotimo m: my %foo; %foo<bar> = 1, 2, 3, 4, 5; %foo<bar> = <<blah bloo foo bar>>.Slip, |(%foo<bar>//()); say %foo.perl
13:32 camelia rakudo-moar 08a807: OUTPUT: «{:bar($("blah", "bloo", "foo", "bar", 1, 2, 3, 4, 5))}␤»
13:32 timotimo i count only two
13:32 mniip joined #perl6
13:35 raschipi nadim: Think of all the code you're not writing when you want to keep the structure. It would be much more, massaging references and such.
13:36 timotimo aye, we used to hvae automatic flattening
13:36 timotimo and it wasn't very good
13:36 raschipi The other side of that is that you need to explicitly tell p6 when you don't want to keep it.
13:38 timotimo nadim: you can forego | and flat completely and autovivify an array inside the hash with .append
13:38 timotimo that seems a whole lot more perl6ish
13:38 timotimo m: my %foo; %foo<bar>.append(<foo bar baz>>); say %foo.perl
13:38 camelia rakudo-moar 08a807: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Missing required term after infix␤at <tmp>:1␤------> 3my %foo; %foo<bar>.append(<foo bar baz>>7⏏5); say %foo.perl␤    expecting any of:␤        prefix␤        term␤»
13:38 timotimo m: my %foo; %foo<bar>.append(<<foo bar baz>>); say %foo.perl
13:38 camelia rakudo-moar 08a807: OUTPUT: «{:bar($["foo", "bar", "baz"])}␤»
13:39 timotimo now you have an array instead of a list
13:39 lizmat commute to Amsterdam&
13:39 timotimo but that should be fine
13:39 timotimo that also throws out the need for a //
13:40 nadim Does indeed look much better!
13:41 nadim no flat not undef testing
13:41 eater timotimo: you edited your comment on #334?
13:41 CIAvash joined #perl6
13:41 timotimo yeah
13:42 timotimo i somehow missed the existence of the distribution key in the hash
13:42 eater ah cool :)
13:42 eater timotimo: what do you think about it tho?
13:42 timotimo looks okay at first glance
13:43 timotimo i'm not good at figuring out the wide range of consequences and corner cases this would have
13:44 eater afraid of them?
13:44 timotimo it could have world-ending consequences!
13:46 eater :O
13:46 eater at least I worked on something great then :>
13:46 araraloren Perl 5's structure is auto flat, it's not a clever design ..
13:46 timotimo it took long for the six to drop the auto flat
13:47 eater auto flat?
13:47 eater you mean folder structure in /usr/lib/perl5?
13:47 araraloren automate flatting
13:48 eater oh wait diff convo :')
13:49 eater btw, why the hashes in the perl6 modules folder
13:49 eater it's a real bitch to package w/ a package manager
13:49 raschipi What is a "folder"?
13:50 timotimo eater's refering to CompUnitRepo
13:50 araraloren don't know reason about that ..~~
13:50 timotimo it's a combination of "immutable files, so we use their contents as their name" and "modules can have names that the filesystem won't understand"
13:51 eater timotimo: is there any docs on it, or is it just ~there~?
13:52 timotimo not sure, haven't looked
13:53 eater perl5 had a very simple structure
13:53 eater which was nice
13:53 eater monkey patching scripts :>
13:53 timotimo perl5 also doesn't support multiple versions of the same module being installed at the same time
13:53 eater true
13:53 timotimo and you can always just -Imychangedlib
13:54 raschipi Is the garbage collection for old versions?
13:55 raschipi Is there*
13:55 kurahaupo joined #perl6
14:06 skids joined #perl6
14:11 timotimo *shrug* :)
14:17 lizmat joined #perl6
14:17 raschipi joined #perl6
14:20 pmurias joined #perl6
14:20 pmurias do we run roast rest with 32bit rakudos?
14:20 nadim joined #perl6
14:22 wamba joined #perl6
14:23 tyil joined #perl6
14:25 Cabanossi joined #perl6
14:29 MasterDuke_ pmurias: dogbert17 does regularly
14:40 lowbro joined #perl6
14:40 lowbro joined #perl6
14:42 kurahaupo joined #perl6
14:42 khw joined #perl6
14:43 [particle] joined #perl6
14:43 zoosha_ joined #perl6
14:45 araraloren joined #perl6
14:47 jcallen joined #perl6
14:48 llfourn joined #perl6
14:48 f3ew joined #perl6
14:48 jkva_ joined #perl6
14:49 m0ltar joined #perl6
14:49 sammers joined #perl6
14:50 vcv joined #perl6
14:50 zostay joined #perl6
14:52 mattp__ joined #perl6
14:52 mrsolo joined #perl6
14:52 Grrrr joined #perl6
14:53 eyck joined #perl6
14:53 tharkun joined #perl6
14:53 jnap_ joined #perl6
14:54 nadim I believe, looking at what y code, which may be broken, does, that Clone does not clone roles, am I right?
14:55 zakharyas joined #perl6
14:56 cpage_ joined #perl6
14:56 raschipi joined #perl6
15:00 eroux joined #perl6
15:03 jnthn nadim: You mean something like role R { }; R.clone ?
15:04 jnthn In that case the call to .clone will pun the role and call .clone on the resulting class; .clone on a type object is identity
15:09 nadim jnthn: No I mean class A{method do_with_clone{my $o2 = self.clone; $o2.so_something() } } ; my $o = A.new() ; $o does xxx; $o does yyyy; $o.do_with_clone()
15:10 zakharyas joined #perl6
15:12 jnthn Oh...
15:13 jnthn m: class C { }; role R { has $.x = 10; method tweak() { $!x = 42 }  }; my $a = C.new does R; my $b = $a.clone; $b.tweak; say $a; say $b;
15:13 camelia rakudo-moar 08a807: OUTPUT: «C+{R}.new(x => 10)␤C+{R}.new(x => 42)␤»
15:13 jnthn Looks cloned to me
15:15 nadim indeed
15:22 abraxxa joined #perl6
15:25 Cabanossi joined #perl6
15:27 alimon joined #perl6
15:37 raschipi A Microsoft employee making Linux on the desktop marketing: https://medium.com/@trstringer/the-surfing-linux-user-or-the-linux-surfer-8006ac72c21e
15:48 Geth Swapped META.info → META6.json in 16 dists in https://github.com/perl6/ecosystem/commit/15ff25a32a
16:06 tharkun joined #perl6
16:13 lizmat joined #perl6
16:14 st_elmo joined #perl6
16:17 Spot__ joined #perl6
16:30 haxmeister left #perl6
16:35 nadim jnthn: does Clone call new?
16:37 timotimo nadim: see Mu.pm
16:37 timotimo line 645
16:37 timotimo it just calls nqp::clone
16:38 timotimo and then it binds a bunch of attributes if there are any twiddles
16:38 timotimo well, if there's no twiddles it also does something
16:38 timotimo but no call to .new
16:43 mcmillhj joined #perl6
16:44 nadim thanks
16:44 domidumont joined #perl6
16:45 clkao joined #perl6
16:48 TreyHarris that's how you'd implement a prototype-based class system, I guess?
16:50 araraloren Now the .clone does shadow copy or deep copy ?
16:53 araraloren Gotta to sleep ~~ night
16:53 stmuk joined #perl6
16:53 MasterDuke_ joined #perl6
16:55 araujo joined #perl6
16:55 Cabanossi joined #perl6
16:56 araujo joined #perl6
16:59 timotimo shallow
17:00 Geth ¦ ecosystem: Tyil++ created pull request #335: Add Config::Parser::toml
17:00 Geth ¦ ecosystem: review: https://github.com/perl6/ecosystem/pull/335
17:03 cdg joined #perl6
17:05 kent\n joined #perl6
17:13 Sgeo_ joined #perl6
17:21 Geth ¦ ecosystem: 7109f60dfe | (Patrick Spek)++ (committed by eater) | META.list
17:21 Geth ¦ ecosystem: Add Config::Parser::toml
17:21 Geth ¦ ecosystem: review: https://github.com/perl6/ecosystem/commit/7109f60dfe
17:25 setty1 joined #perl6
17:28 buggable joined #perl6
17:36 nadim RTFM Nadim! Clone makes a shallow copy. Is there a deep copy cloning?
17:38 buggable joined #perl6
17:39 buggable joined #perl6
17:41 grondilu_ joined #perl6
17:45 buggable joined #perl6
17:45 buggable 🎺🎺🎺 It's time for the monthlyAccidental /win Lottery 😍😍😍 We have  ballots submitted by  users! And the winner is...
17:45 buggable True
17:45 ugexe lol
17:46 geekosaur :p
17:47 Zoffix joined #perl6
17:47 Zoffix woooops :)
17:48 grondilu joined #perl6
17:48 Zoffix Dammit. I ruined the surprise! :)
17:49 jnthn .oO( More like accidental /fail... )
17:49 Zoffix Good thing that due to a bug the prize was not revealed :P
17:50 ugexe i thought it was on purpose as a joke... since its called buggable
17:51 Zoffix heh :) Nah, I was debugging a new plugin in #zofbot, totally forgetting the channels for the wins were hardcoded :P
17:54 zengargoyle joined #perl6
17:55 buggable joined #perl6
17:57 nadim how does one create an anonymous hash from two lists?
17:57 nadim anonymous as "going to be passed as parameter"
17:58 tadzik what will be keys and what will be values?
17:58 tadzik creating an anonymous hash doesn't differ much from creating any other
17:58 tadzik m: my @a = 1, 2, 3; my @b = 4, 5, 6; say @a Z=> @b
17:58 camelia rakudo-moar 08a807: OUTPUT: «(1 => 4 2 => 5 3 => 6)␤»
17:58 tadzik that did something
17:58 buggable joined #perl6
17:59 timotimo all you need to know is that if you put a %( ) around it it'll hashift
17:59 nadim that's enough for me
17:59 timotimo hashify it*
18:00 nadim can one write hash { ... }
18:00 timotimo you'll fo course need to | that if you want it to be named parameters
18:00 nadim you mean the two list? yes
18:00 timotimo no around the %( ... )
18:01 nadim hmm, I don't understan what you mean, the code now works as i intended it. but I certainly want to hear more if you have a minute
18:01 Zoffix nadim: keep in mind Z=> will silently stop when one of the lists exhausts, if they have unequal number of stuff in them
18:02 Zoffix nadim: %(@a Z=> @b) is another way to coerce to a hash
18:03 * colomon just wrote @yellow1 Z=> @yellow2; about ten minutes ago in a $work program
18:03 timotimo if you just %( @a Z @b ) or what, it'll pass the hash as a single positional parameter
18:03 nadim ah, no the two lists were already key => value, I didn't need to Z them
18:03 Zoffix nadim: %(|@a, |@b)
18:03 nadim that's what I wrote
18:04 nadim so I had that done
18:05 stmuk_ joined #perl6
18:05 Zoffix m: my @a = 1, 2, 3; my @b = 4, 5, 6; (my %x){@a} = @b; dd %x
18:05 camelia rakudo-moar 08a807: OUTPUT: «Hash %x = {"1" => 4, "2" => 5, "3" => 6}␤»
18:05 cdg_ joined #perl6
18:08 stmuk joined #perl6
18:11 stmuk_ joined #perl6
18:11 buggable joined #perl6
18:13 buggable joined #perl6
18:13 Zoffix /win 42
18:13 buggable Zoffix, Thank you for entering Accidental /win Lottery! The next draw will happen in 4 weeks, 2 days, 5 hours, 46 minutes, and 10 seconds
18:13 Zoffix buggable: draw
18:13 buggable Zoffix, The next Accidental /win Lottery draw will happen in 4 weeks, 2 days, 5 hours, 46 minutes, and 1 second. Currently have 1 ballots submitted by 1 users!
18:14 Zoffix ehehehe :)
18:14 Zoffix left #perl6
18:14 freeze joined #perl6
18:38 domidumont joined #perl6
18:47 stmuk joined #perl6
18:49 rindolf joined #perl6
18:50 rindolf joined #perl6
18:52 rindolf joined #perl6
18:55 mcsnolte joined #perl6
18:56 raschipi joined #perl6
19:02 labster joined #perl6
19:03 DrForr perl6-Games-Shogi on github - collection of roles to let you crate Shogi boards from 3x4 out to 36x36.
19:04 xinming_ joined #perl6
19:10 azawawi joined #perl6
19:10 azawawi hi
19:10 raschipi oi
19:12 * azawawi is working on Term::Caca for some Perl 6 ascii art fun :)
19:13 raschipi What's better ? Sixel or libcaca?
19:15 buggable joined #perl6
19:16 buggable joined #perl6
19:17 azawawi raschipi: im nearly done with a hello world for Term::Caca :)
19:18 cpage_ joined #perl6
19:18 buggable joined #perl6
19:19 raschipi azawawi: Does it need any special terminal capabilities?
19:19 rindolf joined #perl6
19:20 azawawi raschipi: https://github.com/cacalabs/libcaca
19:20 itaipu joined #perl6
19:20 yqt joined #perl6
19:21 raschipi I already looked at that, didn't see anything about requirements.
19:21 rindolf joined #perl6
19:25 azawawi i already have it running on my ubuntu
19:26 azawawi raschipi:  sudo apt install caca-utils # for some demos
19:27 itaipu joined #perl6
19:27 espadrine_ joined #perl6
19:28 azawawi raschipi: https://github.com/azawawi/perl6-term-caca/blob/master/examples/01-hello-world.pl6 :)
19:29 raschipi Now looking closedr at a generated image, I remeber it, saw in vlc running in pure text mode.
19:30 azawawi i was looking at some ascii art and found it also... so i thought why not Perl 6 :)
19:30 azawawi and the license is fun :)
19:32 raschipi The license is very bad, but whatever.
19:36 shicheng joined #perl6
19:36 rindolf raschipi: license f what?
19:37 rindolf s/f/of/
19:37 raschipi libcaca
19:37 azawawi http://pasteboard.co/1xvX7W0V8.png
19:37 rindolf raschipi: seems like WTFPL
19:38 Ven joined #perl6
19:39 raschipi azawawi: Draw Camelia next!
19:40 raschipi rindolf: sorry, confused it with another license, my bad.
19:42 zengargoyle lol, want to rename «RFC Native Dependency Specs for META6.json (#334)» along the lines of Outside Context Problem https://en.wikipedia.org/wiki/Excession#Outside_Context_Problem
19:44 azawawi raschipi: sure
19:44 * azawawi starts adding travis ci (osx, linux) for Term::Cap
19:45 rindolf raschipi: ah
19:53 Geth ¦ perl6.org: ac65bcabcb | (Steve Mynott)++ | source/downloads/index.html
19:53 Geth ¦ perl6.org: Name of replacement MSI
19:53 Geth ¦ perl6.org: review: https://github.com/perl6/perl6.org/commit/ac65bcabcb
19:54 Geth ¦ ecosystem: eee0de8c81 | (Ahmad M. Zawawi)++ (committed using GitHub Web editor) | META.list
19:54 Geth ¦ ecosystem: Add Term::Caca - Perl 6 Colour AsCii Art Library Bindings
19:54 Geth ¦ ecosystem: review: https://github.com/perl6/ecosystem/commit/eee0de8c81
20:01 labster joined #perl6
20:20 zakharyas joined #perl6
20:22 shicheng joined #perl6
20:24 AlexDaniel joined #perl6
20:43 Cabanossi joined #perl6
20:54 Ven joined #perl6
20:56 dct joined #perl6
21:00 Geth ¦ doc: eaa4d3ddeb | (Samantha McVey)++ | 2 files
21:00 Geth ¦ doc: Add Japanese Yen symbol (¥) to ntfs filename blacklist
21:00 Geth ¦ doc:
21:00 Geth ¦ doc: ¥ on ascii codepage is apparently a backslash, so for security reasons
21:00 Geth ¦ doc: NTFS disallows the ¥ Unicode symbol in directory or filenames.
21:00 Geth ¦ doc: Fun.
21:00 Geth ¦ doc: review: https://github.com/perl6/doc/commit/eaa4d3ddeb
21:02 cdg joined #perl6
21:09 ingy joined #perl6
21:12 TEttinger joined #perl6
21:24 gfldex samcv: windows is held together by workarounds
21:24 unicodable6 joined #perl6
21:24 evalable6 joined #perl6
21:27 mcmillhj joined #perl6
21:29 ingy joined #perl6
21:32 bjz joined #perl6
21:37 gfldex samcv: the name badchar-ntfs is a bit misleading. Besides ':' all those chars are valid for ntfs, it's actually windows that doesn't like them.
21:39 samcv maybe
21:39 tyil samcv: lizmat gave us a sneak preview of her current work :3
21:39 samcv oh?
21:40 tyil also, I got a sneak peak on the pricelist for YAPC europe
21:40 tyil seems I'll be there
21:40 tyil I've asked them wether it would be possible to get you there too
21:41 cdg_ joined #perl6
21:44 mcmillhj joined #perl6
21:57 pmurias joined #perl6
22:00 azawawi https://github.com/azawawi/perl6-terminal-caca/blob/master/examples/01-hello-world.pl6 # Better Perl6ish API. Feedback is welcomed :)
22:05 Geth ¦ ecosystem: cac6f3cb4c | (Ahmad M. Zawawi)++ (committed using GitHub Web editor) | META.list
22:05 Geth ¦ ecosystem: Rename Term::Caca into Terminal::Caca
22:05 Geth ¦ ecosystem: review: https://github.com/perl6/ecosystem/commit/cac6f3cb4c
22:06 azawawi how often is http://modules.perl6.org/update.log updated?
22:15 cdg joined #perl6
22:16 tadzik heh, I see Terminal has caught on after all
22:18 azawawi Terminal:: is cooler :)
22:18 samcv azawawi, thank you for ot using WTFPL :)
22:18 samcv i firmly believe it doesn't grant users of software any rights becuase people already "Do what the fuck they want to"
22:19 samcv ;)
22:19 azawawi samcv: :)
22:22 tyil wtfpl is a joke license
22:22 samcv i mean it could be made infinity times better as a license if it said "this license grants you the maximum rights allowable under law to do what the fuck yo uwant to with this software"
22:22 samcv yeah but people actually use it tyil :(
22:22 tyil they sadly do
22:23 samcv it's literally not a license. even though some people think it is
22:23 tyil just release it as public domain if you want it to be "do whatever"
22:23 samcv since it gives you no rights
22:23 samcv CC-0
22:23 samcv s/public domain/CC-0
22:23 timotimo azawawi: this has little to do with what you're doing, but i've started a binding for libsixel :D
22:23 samcv which has fallback clauses in case the law doesn't let you public domain it for whatever reason
22:24 samcv and "public domain" is not a license
22:24 tyil yeah, CC-0 is legally a better pick
22:24 samcv oh god libtommath is dual licensed under "public domain" and WTFPL
22:24 samcv neither of which are licenses
22:24 tyil kek
22:24 * samcv facepalms
22:26 samcv i think he lives in canada reading their page it says
22:27 samcv "country of origin" "canada" "follow canadain law"
22:27 samcv "berne convention cuontry" "if item would be in public domain if created in canada then it's in public domain in canada"
22:27 samcv which is why public domain is not a license
22:29 samcv i'm gonna open a ticket on the libtommath repo
22:29 tyil hot
22:29 tyil make it gpl
22:29 timotimo hot diggity damn
22:29 samcv doubt they gonna do that
22:29 timotimo 2-cause BSD?
22:29 timotimo clause*
22:29 cdg_ joined #perl6
22:29 samcv they licensed it wtfpl and public domain. would be nice if it could be CC-0/wtfpl or something
22:29 samcv if they wanna be rebels
22:30 samcv i'm gonna recommend they do CC-0
22:31 mcmillhj joined #perl6
22:35 azawawi timotimo: cool :)
22:35 azawawi timotimo++
22:35 timotimo i wish more terminals supported it. there's already a whole bunch, but not mate-terminal (which i use mostly on my laptopr and konsole (which i use mostly on my desktop)
22:40 samcv tyil, https://github.com/libtom/libtommath/issues/76
22:41 samcv feel free for you guys add it comments on +1 it. would be cool if the devs address this :0
22:43 timotimo hm
22:43 timotimo if we had a canadian, could they take it and relicense a copy of it?
22:43 samcv lol. what
22:43 tyil if that would work, we can ask justin bieber, so he can make amends for his "career"
22:43 samcv idk if you can even put in public domain without dying under canada law
22:44 samcv i didn't see anything on the canadian copyright and public domain site period
22:44 timotimo yeah, if you die in canada, you die in real life
22:44 samcv it clearly said they had to die
22:44 samcv XD
22:44 tyil kek
22:44 samcv tell them to build a time machine and kill themselve 40 years before they publish the software
22:45 samcv kill their modern selves in the past, and let the other self continue working on the project that is
22:45 tyil do they have to die in canada
22:45 samcv no
22:45 tyil invite them over to YAPC, we can kill them there
22:45 samcv but they do have to die in rel life
22:45 samcv then wiat 40 years?
22:45 tyil yes
22:45 samcv :(
22:45 tyil what if
22:46 tyil they wrote the code using redstone in minecraft, but were sitting on their pc in canada
22:46 tyil do they still have to die in real life
22:46 samcv oh if they die in minecraft?
22:46 tyil or does it depend wether the server is also in canada
22:46 samcv no if they're in a Berne convention country
22:46 samcv then the laws of where the user of the material is located for public domain stands
22:46 samcv if they're not then idk
22:47 samcv so like almost all countries https://en.wikipedia.org/wiki/Berne_Convention#/media/File:Berne_Convention_signatories.svg
22:47 tyil pls ask a canadian lawyer on this important matter
22:47 tyil I must know now
22:47 mcmillhj joined #perl6
22:47 samcv well all countries have to recognize copyrights from other countries as much as they recognize local copyright
22:48 AlexDaniel joined #perl6
22:49 samcv The Convention relies on the concept of "country of origin". Often determining the country of origin is straightforward: when a work is published in a party country and nowhere else, this is the country of origin. However, under Article 5(4), when a work is published simultaneously in several party countries (under Article 3(4), "simultaneously" is defined as "within 30 days" [2]), the country with the shortest term of protection is defined as the
22:49 samcv country of origin.[4]
22:50 samcv In the Internet age, unrestricted publication online may be considered publication in every sufficiently internet-connected jurisdiction in the world. haha
22:51 timotimo i hope by "in the world" they also include outer space
22:51 samcv it's an earth convention from 1886
22:51 samcv so unlikely
22:52 tyil well
22:52 tyil given they were more religious back then
22:52 tyil I'd say its pretty likely they considered other world
22:53 tyil s
22:53 samcv so in heaven?
22:53 samcv what.
22:53 geekosaur the question of space law is actually pretty thorny
22:53 samcv if one was in heaven i doubt they would have a concept of copyright
22:53 samcv not that thorny
22:53 DrForr Our Lord who art routed over IPv8...
22:53 samcv there's just not that many laws
22:54 samcv https://en.wikipedia.org/wiki/Outer_Space_Treaty
23:00 azawawi timotimo: https://github.com/azawawi/perl6-terminal-caca/commits/master # libsixel vs libcaca :)
23:01 skids joined #perl6
23:03 timotimo i don't know what you're trying to tell me with that?
23:03 mcmillhj joined #perl6
23:05 azawawi timotimo: added circle, line, ...
23:07 timotimo ah
23:08 timotimo i don't think libsixel has drawing primitives built in
23:08 azawawi timotimo: hopefully i will get draw-bitmap working tomorrow :)
23:09 timotimo cool
23:16 timotimo though of course sixel is vastly superior when it comes to resolution of images :)
23:16 stmuk_ joined #perl6
23:17 azawawi timotimo: i noticed
23:18 azawawi what about https://metacpan.org/pod/Term::Kaka ? :)
23:18 azawawi ...a subclass of Term::Caca with virtually identical behavior
23:21 raschipi joined #perl6
23:23 * azawawi good night &
23:24 r3m joined #perl6
23:32 Actualeyes joined #perl6
23:32 Cabanossi joined #perl6
23:32 r3m joined #perl6
23:35 mcmillhj joined #perl6
23:39 r3m joined #perl6
23:51 mcmillhj joined #perl6
23:54 labster joined #perl6

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

Perl 6 | Reference Documentation | Rakudo