»ö« 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 troys_ is now known as troys 00:01 BenGoldberg joined 00:02 rvhausen joined
Morfent inb4 it's some obscure libidn2 bug 00:02
00:03 rvhausen left
Morfent is there a way to create a list of multi subs through some form of metaprogramming? 00:06
the only way i can think of is eval but i'd rather that be the last resort 00:07
lizmat m: my &a := sub { say "foo" }; a() # like this ? 00:08
camelia foo
Morfent i mean like
i have a list of method names 00:09
the c functions they write are identical in how they work
00:10 llfourn joined
lizmat m: class A {}; BEGIN A.^add_method( "a", method { say "foo" } ); A.a # like this ? 00:10
camelia foo
Morfent that's not quite what i mean 00:11
lizmat Morfent: then I hope someone else will be able to help you, as I'm very tired and it's time for me to get some sleep 00:12
sleep&
Morfent tha's alright, dw about it
have a good nit
s/nit/night
00:16 Cabanossi left 00:18 Cabanossi joined, pilne joined
MasterDuke Morfent: can you explain in a little more detail? 00:21
Morfent alright 00:23
so i'm porting Net:DNS from perl 5
but i need to port its dependencies as well 00:24
once of them, Net::LibIDNS2, has some subroutines to convert string encodings between utf8, local, utf32 00:25
only probablem is afaik there is no utf32 support yet, which i'll have to work on myself 00:27
00:27 Actualeyes joined 00:28 sena_kun left
Morfent i'd rather not use ``CArray[uint32]`` to deal with utf32 00:28
00:30 lookatme joined
lookatme o/ 00:31
Morfent are there any plans on implementing utf32 supporting?
p6: ut32.net
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
ut32 used at line 1
Morfent p6: ut32.ne2
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
ut32 used at line 1
Morfent p6: ut32.ne3 00:32
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
ut32 used at line 1
Morfent fucking typosed
p6: ut32.new
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
ut32 used at line 1
Morfent p6: utf32.new
camelia ( no output )
Morfent p6: utf32.new.decode
camelia Unknown string encoding: 'utf32'
in block <unit> at <tmp> line 1
lookatme m: say buf32.new
camelia Buf[uint32]:0x<>
lookatme m: say "hmm".encode("utf32") 00:33
camelia Unknown string encoding: 'utf32'
in block <unit> at <tmp> line 1
lookatme m: say "hmm".encode("utf16")
camelia utf16:0x<68 6d 6d>
Morfent buf32.ne('test'.encode('utf32').list)
buf32.new('test'.encode('utf32').list) 00:34
pm6: buf32.new('test'.encode('utf32').list)
p6: buf32.new('test'.encode('utf32').list)
camelia Unknown string encoding: 'utf32'
in block <unit> at <tmp> line 1
Morfent sorry for the spam
lookatme m: say "hmm".encode("utf-32") 00:35
camelia Unknown string encoding: 'utf32'
in block <unit> at <tmp> line 1
lookatme m: say utf32.new.encoding 00:36
camelia utf-32
lookatme Don't know what happen
Morfent m: say 'test'.encode('utf8').list.encode('utf32') 00:40
camelia No such method 'encode' for invocant of type 'Seq'
in block <unit> at <tmp> line 1
00:40 ZzZombo joined
Morfent m: say 'test'.encode('utf8').list.map({ .encode('utf32') }) 00:40
camelia No such method 'encode' for invocant of type 'Int'
in block <unit> at <tmp> line 1
lookatme m: say 'test'.encode('utf8').encode('utf32') 00:41
camelia No such method 'encode' for invocant of type 'utf8'. Did you mean 'decode'?
in block <unit> at <tmp> line 1
lookatme m: say 'test'.encode('utf8').decode('utf32') 00:42
camelia Can not decode a utf-8 buffer as if it were utf32
in block <unit> at <tmp> line 1
lookatme :)
00:42 xi- left 00:43 xi joined 00:44 xi left 00:47 japhb joined
Morfent are any of yall well-versed in lldb? 00:50
00:50 xi joined
Morfent i'm not asking for you to debug my code or anything, but if you could point me to some resources to help teachh me the ropes 00:52
that's help me immensely 00:53
00:55 comborico1611 joined, DarthGandalf left, DarthGandalf joined
geekosaur apple has an lldb/gdb cheatsheet somewhere 01:04
and I think a tutorial 01:06
01:13 raschipi joined 01:14 cdg_ joined
Morfent that'll help a lot 01:15
thanks geekosaur
01:18 cdg left, cdg_ left 01:30 troys is now known as troys_ 01:38 Rawriful left 01:42 TimToady left
Morfent for a c library port i'm porting to perl 6, i want to be able to access macro values, but that can't be done with nativecall on its own. would something like makeing a build script to compile a c library that does not export some header macros that i need. is it bad practice to overwrite macros and redefine them as extern constants? 01:42
s/that does not export/that exports/g 01:44
01:44 TimToady joined
Morfent i'm debating ditching the idea of Net::LibIDN2 being a port of the perl5 port 01:50
there are a lot of features in the library that are not exposed, like some of the features from libidn 01:51
but are useful
01:52 jeromelanteri joined
lookatme The macro not exists in dynamic library :) 01:52
If you want access macro, I think you can write some help function in your help library, like: github.com/araraloren/Net-FTPlib/b...plibhelp.c 01:54
I write a test function test if __UINT64_MAX defined 01:55
Morfent i'll run a test
if there a simple way to compose functions in perl 6? 01:58
i haven't worked out how to do it like i would in js (yeah, yeah, i know) 01:59
comborico1611 Goodnight.
lookatme compose function ?
comborico1611, good night!
comborico1611 Thanks, bud!
Night. 02:00
Morfent like
comborico1611 Maybe we'll talk tomorrow!
02:00 comborico1611 left
lookatme I can read some js :) 02:00
gfldex Morfent: see docs.perl6.org/type/Callable#index...combinator 02:01
lookatme oh, I know :) 02:02
Morfent that reminds me a bit of fp languages gfldex 02:03
i'm glad this lang let's you do fp if you want to
or oop if that floats your boat
02:05 kyan left
lookatme m: sub f($p){ say 'f'; $p / 2 }; sub g($p){ say 'g'; $p * 2 }; say() <== f() <== g() <== 2; 02:06
camelia g
f
2
lookatme That like this feature :)
MasterDuke gfldex: heh, i went to the docs repo to create an issue about infix:<∘> not being in the operators page, but you beat me to it 02:07
02:10 Zoffix joined
Zoffix m: my %xy{Mu}; say %xy 02:10
camelia {}
Zoffix How to find out whether a hash was parametarized with Mu keys?
Morfent m: sub foo() { ::?NAME.say } 02:11
camelia 5===SORRY!5=== Error while compiling <tmp>
No such symbol '::?NAME'
at <tmp>:1
------> 3sub foo() { ::?NAME7⏏5.say }
Morfent m: sub foo() { ::NAME.say } 02:12
camelia 5===SORRY!5=== Error while compiling <tmp>
No such symbol 'NAME'
at <tmp>:1
------> 3sub foo() { ::NAME7⏏5.say }
Zoffix m: sub foo() { &?ROUTINE.name.say }
camelia ( no output )
Zoffix m: sub foo() { &?ROUTINE.name.say }()
camelia foo
Morfent thanks
02:13 ryn1x joined
TimToady m: my %xy{Mu}; say %xy.keyof 02:15
camelia (Mu)
Zoffix TimToady++ thanks
lookatme m: my %xy{Mu}; say %xy.keyof; say %xy.of; 02:17
camelia (Mu)
(Any)
ryn1x My copy of Parsing with Perl 6 just shipped! So excited! 02:18
Zoffix \o/ 02:19
Morfent unrelated to the convo, but i ran into a bug with dns resolution for simple http requests 02:21
02:22 Zoffix left
Morfent i'm praying it's not because i fucked up resolve.com, but the code i wrote works fine in ubuntu with the same dns settings 02:22
*resolv.conf 02:23
TimToady not running a proxy, I presume 02:24
Morfent nope
TimToady sometimes has to drop his vpn to get sane address resolution...
Morfent i don't run a vpn 02:25
i tested dns resolution in node and had no problems with it 02:26
though i don't trust node from my experience with it
from when i tried to debug it, i narrowed down what could be making dns resolution to fail 02:28
02:32 leah2 left, cpage left, tyil left, nine_ left, silug left, char_var[buffer] left, ilbot3 left, lizmat left, epony left, tailgate left, MilkmanDan left 02:35 leah2 joined, cpage joined, tyil joined, nine_ joined, silug joined, char_var[buffer] joined, ilbot3 joined, lizmat joined, epony joined, tailgate joined, leguin.freenode.net sets mode: +v ilbot3 02:36 MilkmanDan joined, squashable6 left, reportable6 left, unicodable6 left, bisectable6 left, bloatable6 left, nativecallable6 left, quotable6 left
lookatme :P 02:36
02:36 leah2 left 02:37 troys_ is now known as troys 02:39 leah2 joined 02:42 piojo joined 02:46 ilbot3 left
piojo eval: spurt 'sandbox/Zot.pm6', 'use XXX; sub zot() returns Array of Numeric is export { my Numeric @a; return @a; }' 02:50
evalable6 (exit code 1) Failed to open file /home/bisectable/git/whateverable/sandbox/Zot.pm6: Read-only file system
in block <unit> at /tmp/OGNWZH_PdD line 1
piojo Was the sandbox directory removed? AlexDaniel showed me this last week (working, obviously) 02:51
It looks like rt.perl.org/Public/Bug/Display.html?id=128287 is the same issue as my bug, but should give a better git bisect, since the testcase itself looks more powerful than my testcase. 02:58
02:58 ilbot3 joined, ChanServ sets mode: +v ilbot3 03:00 aborazmeh joined, aborazmeh left, aborazmeh joined 03:01 pilne left 03:02 colomon left, Cabanossi left 03:03 Cabanossi joined 03:04 colomon joined
lookatme Any module has ioctl available currently ? 03:08
03:10 cdg joined
Morfent not yet it looks like 03:10
lookatme I want make a script execute command in other terminal :
:)
Inspired by this blog post: www.humbug.in/2010/utility-to-send-...ls-ttypts/ 03:11
Morfent that's a really good idea 03:12
but what are the security implications?
lookatme lunch time & 03:13
03:13 TEttinger joined 03:19 cdg_ joined 03:20 cdg left 03:30 Cabanossi left 03:33 Cabanossi joined 03:35 rgrau left 03:43 colomon left 03:45 troys is now known as troys_ 03:46 colomon joined
Morfent is nativecall not intended to try load libfoo.so.0 if you try to make a subroutine like sub idn2_free(Pointer) is native('idn2', v0) { * } 04:09
04:09 troys_ is now known as troys 04:10 raschipi left
Morfent p6: sub idn2_check_version(Str? --> Nil) is native('idn2', v0) { * } 04:11
camelia 5===SORRY!5=== Error while compiling <tmp>
Malformed parameter
at <tmp>:1
------> 3sub idn2_check_version(Str7⏏5? --> Nil) is native('idn2', v0) { * }
expecting any of:
constraint
formal parameter
Morfent p6: sub idn2_check_version(Str $version? --> Nil) is native('idn2', v0) { * }
camelia 5===SORRY!5=== Error while compiling <tmp>
Can't use unknown trait 'is native' in a sub+{callable[nil]} declaration.
at <tmp>:1
expecting any of:
rw raw hidden-from-backtrace hidden-from-USAGE
pure default DEPRECATED …
Morfent p6: sub idn2_check_version(Str) is native('idn2', v0) { * } 04:12
camelia 5===SORRY!5=== Error while compiling <tmp>
Can't use unknown trait 'is native' in a sub declaration.
at <tmp>:1
expecting any of:
rw raw hidden-from-backtrace hidden-from-USAGE
pure default DEPRECATED inlinable nodal…
Morfent oh
p6: use NativeCall; sub idn2_check_version(Str) is native('idn2', v0) { * }
camelia ( no output )
Morfent p6: use NativeCall; sub idn2_check_version(Str) is native('idn2', v0) { * } idn2_check_version('0')
camelia 5===SORRY!5=== Error while compiling <tmp>
Strange text after block (missing semicolon or comma?)
at <tmp>:1
------> 3version(Str) is native('idn2', v0) { * }7⏏5 idn2_check_version('0')
expecting any of:
infix
Morfent p6: use NativeCall; sub idn2_check_version(Str) is native('idn2', v0) { * }; idn2_check_version('0')
camelia Cannot locate native library 'libidn2.so.0': libidn2.so.0: cannot open shared object file: No such file or directory
in method setup at /home/camelia/rakudo-m-inst-1/share/perl6/sources/24DD121B5B4774C04A7084827BFAD92199756E03 (NativeCall) line 28…
Morfent alright i'll stop stamming 04:13
04:13 BenGoldberg left 04:17 Cabanossi left 04:18 Cabanossi joined 04:26 wamba joined 04:28 aborazmeh left 04:48 rvhausen joined 04:50 rvhausen left
lookatme Morfent, only root can do that operator (write something to terminal) 04:50
Morfent oh 04:51
that's fair
lookatme I success execute a `ls` command in other terminal 04:53
sudo perl6 -MNativeCall -e 'sub ioctl(int32, int32, Str --> int32) is native(Str) { * }; say $*PID; my $x = "/proc/16168/fd/0".IO.resolve.open(:rw); say $x.native-descriptor; say ioctl($x.native-descriptor(), 0x5412, $_) for [ "l", "s", "\n" ]; my $var := cglobal("libc.so.6", "errno", int32); say $var; $x.close; '
you can try this command, replace 16168 with your terminal pid
A lot of fun :P 04:54
04:54 cdg_ left 04:55 cdg joined 04:59 cdg left 05:01 Cabanossi left 05:02 Cabanoss- joined, Cabanoss- is now known as Cabanossi
Morfent for a library using nativecall to wrap a c library 05:03
i'll need to make a build script to ensure the library can be found when using the library? 05:04
*will i
using just the libname like the native call docs don't work for badly configured env variables or odd install locations 05:07
05:08 geekosaur left 05:16 geekosaur joined
Morfent worked it out -- write a build script, offer parametres to customize where the library is and any extra compiler flags needed 05:22
only problem is how make that friendly with zef 05:23
05:31 Cabanossi left 05:32 Cabanossi joined 05:36 wamba left 05:42 piojo left 05:46 konsolebox left, piojo joined, konsolebox joined 05:53 domidumont joined 05:58 domidumont left, troys is now known as troys_ 05:59 domidumont joined, Cabanossi left 06:01 troys_ is now known as troys 06:02 Cabanossi joined 06:11 khw left
AlexDaniel piojo: looking… 06:11
yoleaux 01:39Z <Zoffix> AlexDaniel: can this ticket be closed? It got fix and tests and was resolved but then I see you marked it as open and taken but no reason was stated: rt.perl.org/Ticket/Display.html?id...et-history
06:20 darutoko joined 06:28 konsolebox left 06:29 wamba joined 06:30 konsolebox joined 06:41 committable6 left, wander joined
wander m: my $x := (42, 43); $x = 100 06:42
camelia Cannot assign to an immutable value
in block <unit> at <tmp> line 1
wander m: my \x := (42, 43); x = 100
camelia Cannot modify an immutable Int (42)
in block <unit> at <tmp> line 1
wander Should the latter report the same message as the former? If not, why? 06:43
06:43 coverable6 left, statisfiable6 left, releasable6 left, evalable6 left, greppable6 left, benchable6 left 06:44 committable6 joined, committable6 left, piojo left 06:45 committable6 joined, ChanServ sets mode: +v committable6 06:46 committable6 left 06:47 committable6 joined, committable6 left, committable6 joined, ChanServ sets mode: +v committable6, committable6 left 06:48 committable6 joined, ChanServ sets mode: +v committable6, committable6 left, committable6 joined, ChanServ sets mode: +v committable6 06:49 committable6 left
wander Besides, &infix:<o>() looks like .self, doesn't it? 06:49
m: say &infix:<o>().("Anything") 06:50
camelia Anything
wander m: say &infix:<o>().(Any)
camelia (Any)
wander m: say &infix:<o>(1, 1) # what signatures do you have ?
camelia Type check failed in binding to parameter '<anon>'; expected Callable but got Int (1)
in block <unit> at <tmp> line 1
wander m: &infix:<o>(1, 2) # what signatures do you have ?
camelia Type check failed in binding to parameter '<anon>'; expected Callable but got Int (1)
in block <unit> at <tmp> line 1
06:51 domidumont left
lookatme m: say (&infix:<o>(1, 1)).signature 06:55
camelia Type check failed in binding to parameter '<anon>'; expected Callable but got Int (1)
in block <unit> at <tmp> line 1
lookatme m: say (&infix:<o>(sub f() { }, sub g() {})).signature
camelia (|args is raw)
Geth doc: db05b11515 | (Alex Chen)++ | 2 files
Add infix:<∘> to Operators
wander Calling infix:<∘>(Int, Int) will never work with any of these multi signatures: 06:56
()
(&f)
(&f, &g --> Block:D)
well, as infix:<o> defined as "infix", this looks somewhat...tricky? 06:57
lookatme why ?
wander infix:<o>() likes `.self`, infix:<o>(&f) returns &f 06:58
it's an infix, but can do something don't like an infix
lookatme m: say infix:<o>
camelia { ... }
lookatme m: say infix:<o>.code
camelia No such method 'code' for invocant of type 'WhateverCode'. Did you mean any of these?
clone
none
note
one

in block <unit> at <tmp> line 1
06:58 piojo joined
lookatme m: say infix:<o>.signature 06:58
camelia (;; $whatevercode_arg_37 is raw)
lookatme m: say (&infix:<o>).signature 06:59
camelia (&?, &?)
wander maybe I will say, hey, infix:<o> is no more than a function, so things go well :)
lookatme The parameter is optional 07:00
Every operator is a sub :)
and regex and method :) 07:01
07:02 lowbro joined, lowbro left, lowbro joined
Geth doc: e9821adaf7 | (Luca Ferrari)++ | 2 files
Remove reference to Perl 5 in not 5-to-6 document.

As of discussion <github.com/perl6/doc/issues/1705> related to my previous pull request <github.com/perl6/doc/pull/1704> I decided to remove the explicit reference to Perl 5 and to make it a separate section in the 5-to-6 part related to regexps.
07:09
doc: 700085ca76 | (Luca Ferrari)++ (committed using GitHub Web editor) | 2 files
Merge pull request #1706 from fluca1978/fix-comment-regexp

Remove reference to Perl 5 in not 5-to-6 document.
07:11 committable6 joined, ChanServ sets mode: +v committable6, bisectable6 joined 07:12 committable6 left, committable6 joined 07:14 committable6 left, domidumont joined 07:15 bisectable6 left, Cabanossi left, MasterDuke left 07:16 committable6 joined, ChanServ sets mode: +v committable6 07:17 Cabanossi joined 07:18 committable6 left, nativecallable6 joined, ChanServ sets mode: +v nativecallable6, reportable6 joined, releasable6 joined, quotable6 joined, committable6 joined, coverable6 joined, ChanServ sets mode: +v quotable6, ChanServ sets mode: +v committable6, ChanServ sets mode: +v coverable6, benchable6 joined, bloatable6 joined, evalable6 joined, ChanServ sets mode: +v evalable6, unicodable6 joined, bisectable6 joined, squashable6 joined, greppable6 joined, ChanServ sets mode: +v greppable6, statisfiable6 joined, ChanServ sets mode: +v statisfiable6
AlexDaniel eval: spurt 'sandbox/Zot.pm6', 'use XXX; sub zot() returns Array of Numeric is export { my Numeric @a; return @a; }' 07:19
evalable6
AlexDaniel piojo: ↑ fixed I think 07:20
piojo AlexDaniel: Thank you! 07:22
eval: spurt 'sandbox/XXX.pm6', 'my Numeric @x;' 07:23
evalable6
piojo c: 2015.12,HEAD use Zot; zot(); 07:24
committable6 piojo, gist.github.com/7361551029e07d4fea...a313318be6
piojo c: 2015.12,HEAD use lib 'sandbox'; use Zot; zot();
committable6 piojo, gist.github.com/c22c5509c8f76690c6...064dc3ab9a
lookatme eval: use lib 'sandbox'; use Zot; say zot; # ?will work 07:25
evalable6 (exit code 1) Type check failed for return value; expected Array[Numeric] but got Array[Nu…
lookatme, Full output: gist.github.com/f8e14894846315c36d...e1648657ef
07:25 wander left
piojo lookatme: I wanted to see the oldest perl6 output as well. 07:26
AlexDaniel: it looks like the oldest Perl 6 is failing as well, so this isn't a regression.
lookatme eval: spurt 'sandbox/Pid.pm6', 'use NativeCall; sub getppid(--> long) is native(Str) {*}' 07:27
evalable6
lookatme eval: use lib 'sandbox'; use Pid; say getppid();
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/dCMgL5WOC2
Undeclared routine:
getppid used at line 1
lookatme eval: spurt 'sandbox/Pid.pm6', 'use NativeCall; sub getppid(--> long) is export is native(Str) {*}'
AlexDaniel piojo: oh…
evalable6
lookatme eval: use lib 'sandbox'; use Pid; say getppid(); 07:28
evalable6 30215
lookatme awesome!
piojo AlexDaniel: You found that a change to USAGE triggered this bug, and now we know why (probably): the bug is triggered when two modules use a parameterized type
AlexDaniel ah, it's ok as long as you specify the lib path. OK then 07:29
07:30 eliasr joined
AlexDaniel piojo: what was the ticket again? 07:31
piojo AlexDaniel: rt.perl.org/Public/Bug/Display.html?id=132525 07:32
AlexDaniel piojo: oh heh, so there are three tickets for this… :) 07:33
c: all use lib 'sandbox'; use Zot; zot(); 07:34
committable6 AlexDaniel, gist.github.com/4f641222f141961987...714fa09028
piojo AlexDaniel: Can you close my bug, since the other one has a stronger test case?
AlexDaniel piojo: so turns out that you're right that there is a bigger underlying issue? :)
piojo of course there was an underlying issue! pfft ;) 07:35
07:36 imcsk8 left, imcsk8 joined
AlexDaniel piojo: I can, but I really don't want to. All three tickets are now linked together, and your ticket demonstrates a more specific case 07:36
07:36 rurban joined
piojo AlexDaniel: okay, that's a good point 07:37
my test case is weaker, but more likely
I also don't know the RT bug workflow. 07:38
07:38 rurban1 joined 07:42 rurban left 07:44 sena_kun joined 07:47 rurban1 left 07:55 cdg joined 07:56 troys left 07:59 cdg left 08:00 zakharyas joined 08:05 Grauwolf left 08:06 Grauwolf joined 08:08 wamba left 08:09 abraxxa joined 08:14 wamba joined 08:23 rindolf joined 08:30 gfldex left 08:32 wamba left 08:36 dakkar joined 08:37 gfldex joined 08:43 lookatme left 08:52 woolfy joined, shady0wl_ joined 08:53 woolfy left 08:56 char_var[buffer] left 09:05 zakharyas1 joined 09:06 zakharyas left 09:07 scimon joined
scimon Ok.... I'm missing some kind of trick. Apparently it's possible to get this (0,1,*+*…*)[^31]».say 3 characters shorter.... And I'm stumped. 09:42
10:04 zakharyas1 left 10:05 zakharyas joined 10:15 astj left, astj joined 10:20 astj left 10:21 astj joined 10:37 TEttinger left 10:42 Ven`` joined
Ven`` o/, #perl6 10:42
can someone explain this one to me?
m: ([|"0123".comb>>.Int Xor 2]).perl.say; ([0, |"0123".comb>>.Int Xor 2]).perl.say; 10:43
camelia [1]
[2, 2, 1, 2, 3]
mienaikage scimon: Looks familiar, code-golf.io?
scimon Yes you wee scunner you. 10:44
10:45 zakharyas left
scimon There's some trick I'm missing. I mean I saved 3 characters moving to unicode but... Arrgh. 10:45
(Hope you're doing well BTW)
mienaikage Am doing good thanks 🙂 Same to you! 10:46
geekosaur Ven``, if I had to take a WAG at that, I'd guess precedence of >> is not what you expect
scimon I note you didn't tell me how you managed to pull off 18 characters there... 10:47
Ven`` m: (0, (|"0123".comb>>.Int) Xor 2).perl.say; # geekosaur
camelia (2, 2, 1, 2, 3).Seq
geekosaur and the shift in type causes the shift in behavior somehow
10:48 zakharyas joined
geekosaur hm, then prec of or (or X metaop is screwing with precedence unintentially) 10:48
unintentionally
mienaikage All I can say is, needs more unicode 😉
geekosaur which seems like it might make more sense (insofar as it makes any sense at all...) anyway
Ven`` I really don't understand, though. 10:50
scimon: code-golf.io counts in characters, not in bytes?
scimon It does.
Ven`` :\ That's bad.
scimon Which is awesome and gives perl6 even more super powers.
mienaikage You might spot a hint in docs.perl6.org/language/operators#infix_... 10:51
Ven`` I'm going to keep believing counting bytes is the proper way :).
geekosaur I am guessing that it's somehow (despite the slip, possibly it's applying it at the wrong level?) getting a list of lists instead of a single list at the Xor and this is changing the behavior. why, I don't know. it smells fishy but might be a DWIM/WAT 10:52
10:53 cdg joined
Ven`` m: ("0123".comb>>.Int Xor 2).perl.say 10:54
camelia (2, 1, 2, 3).Seq
Ven`` m: my @a = 1, 2, 3; say (|@a).perl;
camelia slip(1, 2, 3)
Ven`` m: my @a = 1, 2, 3; say ([|@a]).perl;
camelia [1, 2, 3]
10:55 astj left, wamba joined 10:58 cdg left 11:02 cschwenz joined 11:04 astj joined
cschwenz which bits of the documentation do i need to look at to figure out how to emit a raw bitstream to STDOUT from a perl6 script? 11:04
11:07 astj left 11:08 scimon left, spider-mario left, wamba left 11:10 scimon joined 11:20 cdg joined 11:25 cdg left 11:27 astj joined 11:28 Zoffix joined
Zoffix cschwenz: this docs.perl6.org/type/IO::Handle#method_encoding this docs.perl6.org/type/IO::Handle#method_write and this docs.perl6.org/type/Blob 11:29
m: $*OUT.encoding: Nil; $*OUT.write: Blob.new: 32, 65, 68 11:30
camelia AD
cschwenz ta zoffix! :-)
11:32 pmurias joined 11:34 astj left 11:36 spider-mario joined
Zoffix m: $*OUT.write: Blob.new: 32, 65, 68 11:38
camelia AD
Zoffix Now I remember, we allow binary writes even in character mode.
11:38 astj joined 11:40 itaipu joined 11:42 Zoffix left
Geth doc: 2f9fb9bd6f | (Zoffix Znet)++ (committed using GitHub Web editor) | doc/Language/operators.pod6
Fix ∘'s name

it's either `infix:<∘>` or `infix ∘`, not `infix <∘>`
11:49
synopsebot Link: doc.perl6.org/language/operators
11:50 nine_ is now known as nine 11:53 cdg joined 11:56 astj left, astj joined 11:58 cdg left 12:00 cdg joined, astj left 12:05 wamba joined, cdg left 12:08 cdg joined 12:12 cdg left 12:18 cdg joined
Geth doc: ce6e0196b1 | (Alex Chen)++ | 2 files
Remove duplicate document on ∘
12:20
12:22 cdg left 12:26 cdg joined 12:28 zakharyas left 12:31 cdg left, xi left 12:33 xi- joined 12:47 astj joined 12:53 astj left
Geth doc: b56885bfe7 | (Alex Chen)++ | 2 files
Improve documents on set ops
12:56
buggable New CPAN upload: LIVR-2.0.0.tar.gz by KOORCHIK cpan.metacpan.org/authors/id/K/KO/...0.0.tar.gz 13:08
13:13 cpage_ joined
scimon b 13:22
(ww)
13:25 astj joined 13:26 raschipi joined 13:28 astj left 13:32 astj joined 13:34 wander joined
wander When people talk about "Programming language", they focus more on the *Programming* part. 13:40
But when it comes to Perl 6, *Language* might be more important. 13:41
In other languages, if you ask counting the "length" of a List/String, what jumps out is, hmm, first set a counter, such as i, to 0, then run a for-loop, blablabla...
In Perl 6, the precedure will be, should I use .words, .bytes, .chars or .elems, that is, to choose a proper *word*.
Quite interesting to me.
lizmat pings Zoffix for a twitter worthy quote :-) 13:44
13:46 cdg joined, zakharyas joined 13:47 wander left
AlexDaniel buggable: testneeded 13:48
buggable: tag testneeded
buggable AlexDaniel, There are 30 tickets tagged with TESTNEEDED; See fail.rakudo.party/t/TESTNEEDED for details
13:49 khw joined 13:50 cdg left 13:53 cdg joined 14:05 ggoebel left 14:18 comborico1611 joined 14:19 itaipu_ joined 14:20 itaipu left
comborico1611 Hello 14:20
perlpilot comborico1611: greetings 14:21
comborico1611 Who here puts a cover on their computer-phone screen?
moritz 14:22
comborico1611 Has that screen protector ever saved your screen?
My thinking is that the camera on the back, and even on the front, don't have a protector to prevent it from being scratched. And I've never had a camera lens get scratched. Therefore I'm not really sure screen covers are needed. 14:23
perlpilot, whadja think of my article, eh? 14:25
14:25 natrys joined
perlpilot comborico1611: aside from it being long, I thought it was okay. :) 14:27
14:28 ggoebel joined, astj left
lizmat comborico1611: fwiw, I agree with Laurent R's comments regarding it being too many things at the same time 14:29
14:29 pmurias left 14:30 pmurias joined
moritz comborico1611: the difference is mostly size. Large glass plates break easier than small ones 14:33
DrForr I have a wrapover soft pad on my Samsung, nothing over the camera sensor. 14:36
It's inset from the padding, which probably takes care of 90% of the potential daage.
*damage
14:39 astj joined
comborico1611 It needed to be long because I must include examples to back-up my claims. In addition, I felt I needed to explain my differences and inadequacy. 14:42
I disagree that is an Errata sheet because they weren't errors, but inadequacies. 14:43
buggable New CPAN upload: LIVR-2.0.1.tar.gz by KOORCHIK cpan.metacpan.org/authors/id/K/KO/...0.1.tar.gz 14:48
raschipi comborico1611: gimme a link 14:49
14:53 natrys left 14:58 Sgeo left
comborico1611 raschipi, perl6advent.wordpress.com/2017/12/...ook-review 14:59
15:01 Sgeo joined
teatime comborico1611: jeez, you sound like me 15:03
comborico1611: I'm 32, self-taught programmer
I had the camel book in jr. high / high school, taught me a lot 15:04
AlexDaniel I loved the book review post
wow that post has so many comments on it 15:05
teatime it's a good post.
15:08 astj left
AlexDaniel it's *very* good IMO. The post makes you see the book through the eyes of a novice programmer. It succeeds in that 100% 15:09
and the amount of honesty in it. Definitely my favorite post this year 15:10
15:10 astj joined
AlexDaniel “Do yourself a favor: read the book again” 15:12
:D
.oO( don't know about others, but it makes *me* want to read the advent post again :P )
15:15 Grauwolf left 15:17 AlexDaniel left 15:19 lowbro left
comborico1611 Teatime, haha. You know tea can be dangerous? There was an Indian that drank a gallon of tea, and drowned in his own teepee. 15:19
teatime ... 15:20
15:20 Grauwolf joined, Grauwolf left, Grauwolf joined
teatime picardfacepalm.jpg 15:20
comborico1611 Dang, thanks Alex.
15:22 spider-mario left 15:23 Sgeo left, Sgeo joined 15:24 spider-mario joined 15:38 markong joined 15:40 rmusial left, geospeck joined 15:42 geospeck left 15:51 domidumont left, rvhausen joined 15:56 natrys joined 16:02 wamba left
Morfent i asked a while ago, but does anyone know how to deal with encoding when wrapping c libraries? 16:09
mainly with strings c functions return encoded in whatever the system's locale is 16:10
16:12 Sgeo left
Ven`` Morfent: you mean uselocale()? 16:14
Morfent not quite
16:15 Sgeo joined
geekosaur Morfent, as I answered yesterday, the documented stuff is not yet implemented by moarvm 16:15
Morfent ahh 16:16
sorry i missed your answer
geekosaur you will need to deal with locales manually and you will have to deal with both the internal names moarvm uses and moarvm's shortcomings in mapping the result (those ??? you got)
which probably means this is not going to work very well at all, until someone implements proper locale support in moarvm
Morfent i have moar and nqp's source downloaded
geekosaur and then updates nqp and rakudo to use it 16:17
...that said, if someone does do that work, it'll amount to reimplementing the functions you are trying to use anyway :)
kinda catch-22
I *think* you might be able to cheat and use buf8 instead of Str 16:18
Morfent the parts of libidn2 i'm interested in are for porting net::dns later on
timotimo you know you can set "is encoded" in signature and return value?
Morfent yeah
geekosaur that still runs into issues
Morfent that didn't work