»ö« 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.
jdv79 does look like stuff is flowing in that regard 00:00
00:01 girafe left
jdv79 i'll try to pick it back up again in the next weeks or give up then as there seems to be actual interest 00:01
brokenchicken cool 00:02
00:03 Ven left 00:09 Ven joined 00:18 Ven left 00:21 cibs left 00:23 cibs joined 00:25 nicq20_ left 00:37 kyan joined 00:39 lmmx left 00:40 aborazmeh joined, aborazmeh left, aborazmeh joined 00:46 lmmx joined 00:49 Ven joined 00:50 espadrine_ left 01:00 leego is now known as leegdo, leegdo is now known as leego 01:02 Ven left
Juerd Are there any tools to debug memory leaks in threaded Perl 6 code yet? 01:06
01:09 Ven joined
MasterDuke Juerd: i believe valgrind forces stuff onto a single thread, but that's what a bunch of people use 01:10
yoleaux 9 Jan 2017 03:46Z <AlexDaniel> MasterDuke: I have optimized Sift4 a bit. It is 60% faster now! :O
10 Jan 2017 06:17Z <AlexDaniel> MasterDuke: pull request sent: github.com/MasterDuke17/Text-Diff-Sift4/pull/4
Juerd MasterDuke: That's not something I could use myself :|
MasterDuke Juerd: you don't know how? or not possible? 01:11
Juerd I don't know how; I have no background in C or similar lower level programming.
I have a Perl 6 library with a simple test program. It leaks like crazy, and this prevents me (and probably anyone) from using the library in production use. 01:12
01:12 vendethiel- left, vendethiel joined
MasterDuke Juerd: well, i know very little C myself, but rakudo does come with a perl6-valgrind-m binary (really a shell script) that makes it pretty easy to get something to pass on to people who do 01:12
Juerd The equivalent (non threaded) Perl 5 program stays within 50 MB of memory. For the Perl 6 version, it starts at approximately 200 (used to be 250, so that's improving!), and then grows rapidly. 01:13
MasterDuke there are also a bunch of environment variables you could turn on that enable a bunch of debugging output
Juerd github.com/Juerd/p6-mqtt # it doesn't really do much, either :)
MasterDuke: Do you know where I can read about those environment variables? That seems more within my reach :) 01:14
MasterDuke trying to find them now
Juerd The really good part is that Perl 6 really lived up to the promise of keeping the language stable. I've been able to run the same code for over a year now :P 01:15
MasterDuke Juerd: docs.perl6.org/programs/00-running..._Variables
Juerd Thanks
MasterDuke which points to github.com/rakudo/rakudo/wiki/dev-env-vars, which i think will have more of the ones you'll be interested in 01:16
01:18 newbie|2 joined, Ven left 01:19 zacts left
MasterDuke Juerd: you might want to try asking in #moarvm also. most of them are probably asleep now, but there's less traffic and a better chance they'll see your question in their morning 01:23
Juerd Hm, even something as simple as react { whenever Supply.interval(.001) { say "hi" } } is leaking :( 01:24
Without "say", or with a loop {} instead of the react/whenever, no leaks. 01:25
MasterDuke: I might, if I remember to do so
For now, I'm off to bed. Thanks for the pointers! 01:26
01:26 newbie|2 left
MasterDuke np 01:26
Juerd: btw, how recent a rakudo do you have? jnthn++ made a bunch of moarmv fixes recently that may have helped 01:27
01:27 GezzMC joined
Juerd MasterDuke: Today's 01:27
01:28 dugword joined
MasterDuke ha, well nevermind then 01:28
Juerd I've been trying this every few weeks for a year now :D
Good night :)
01:28 Ven joined 01:30 Ven left
MasterDuke night 01:30
AlexDaniel geez… languages that don't support - in identifiers 01:35
AlexDaniel clenches his teeth 01:37
samcv nice i have it down to 14.5 seconds from 48 seconds, for generating a minimal unicode database (like a test run thing)
AlexDaniel \o
samcv then checking it each time the sha sum is the same. someday perl 6 will hopefully be as fast as nqp
AlexDaniel \o/* 01:38
what did you do?
ah
ok… right
samcv: note that not everything is faster with nqp, for some reason
samcv true
yeah i tried changing one part to nqp and it made it slower so reverted that
let me push my work to a repo
01:39 BenGoldberg joined
samcv like this made it slower github.com/samcv/UCD/commit/43098c...296d0aba50 01:40
though it worried me that doing this github.com/samcv/UCD/compare/43098...0...master 01:41
made this section of the code like 3x faster
the inside of the loop was already nqp optimized
most of the speed up came from just using nqp::while instead of for 0..$point-max 01:42
did not expect it to be that slow
AlexDaniel 0…$point-max hmmm
samcv but I am iterating over a huge number of things
in these test runs it is from 0 to 921599
AlexDaniel I wonder if 0..$point-max is faster
it probably is 01:43
samcv why? it should be the same?
or is there something i'm missing
AlexDaniel one is range, another is Seq
m: my $point-max = 5; say WHAT 0…$point-max
camelia rakudo-moar 0cd921: OUTPUT«(Seq)␤»
samcv ah
AlexDaniel m: my $point-max = 5; say WHAT 0..$point-max
camelia rakudo-moar 0cd921: OUTPUT«(Range)␤»
samcv well. i don't see why it should be slower though? hmm
let me try with .. instead 01:44
samcv thought .. was texas for …
timotimo nah, ... is the cleverer one
it can do geometric sequences and such
samcv ah
benching it now
AlexDaniel we don't have non-texas .. :( 01:45
samcv but yeah the main problem here is that once I have ALL this data
it takes AGES to like put all the data into the bitfields
AlexDaniel u: ‥
unicodable6 AlexDaniel, U+2025 TWO DOT LEADER [Po] (‥)
AlexDaniel what's a “leader”?
samcv which is where i'm NQP optimizing it
idk 01:46
samcv checks ftp://ftp.unicode.org/Public/9.0.0/ucd/NamesList.txt 01:47
nop it has no description for it
one dot leader does though
ONE DOT LEADER
* also used as an Armenian semicolon (mijaket)
AlexDaniel So can we use ‥ for .. or not? 01:48
samcv u: U+205A
unicodable6 samcv, U+205A TWO DOT PUNCTUATION [Po] (⁚)
samcv historically used to indicate the end of a sentence or change of speaker
* extends from baseline to cap height
cool
uh
sure
01:48 Ven joined
samcv u: U+FE30 01:49
unicodable6 samcv, U+FE30 PRESENTATION FORM FOR VERTICAL TWO DOT LEADER [Po] (︰)
samcv u: U+FE4B
unicodable6 samcv, U+FE4B WAVY OVERLINE [Po] (﹋)
01:49 Ben_Goldberg joined, BenGoldberg left, Ben_Goldberg is now known as BenGoldberg
samcv i can't see that one 01:49
can see it on another font
that one is nice the ﹋
weird i can see it when I type but not otherwise. i think it gets cut off. since the replacement font is bigger than the tiny font i'm using 01:50
u: U+FE54
unicodable6 samcv, U+FE54 SMALL SEMICOLON [Po] (﹔)
samcv ok 36 seconds to concat the points with …, testing with .. now 01:51
nice it takes about the same amonut of time as using nqp 01:52
also what's the fastest way to do `for @values -> $value { }` 01:53
AlexDaniel that is it I think
samcv: another think to test would be to use perl 6 while loop with native ints 01:54
thing*
probably not faster than the range thing, but should be just as fast I guess
samcv it unboxes though
AlexDaniel that's ok
samcv well it will be slower
AlexDaniel or maybe not
samcv it's a little faster to use nqp::while but only like .2 seconds
but… when doing like all the data, it could totally start mattering 01:55
time to test doing a full run. last time it took 48 minutes XD
now hopefully it will be cut in half at least
and i hope i didn't introduce any new bugs that show up… but I will find out soon enough 01:56
AlexDaniel, i don't think there's a way to make this faster but let me know github.com/samcv/UCD/blob/master/U...en.p6#L285 01:57
also note that the given $key2.WHAT.^name { } loop doesn't get called unless it tries to set the same property twice
AlexDaniel samcv: do you have something to play with it? 01:59
MasterDuke samcv: couldn't that just be given $key2 { when Int {}; when Bool {} } ?
AlexDaniel just some data for apply-to-points sub so that I can test a couple of things
samcv sure ok just check out the repo
and use this github.com/MoarVM/MoarVM/blob/mast...ownload.p6 02:00
to download the unicode files
it will download everything you need for you :)
MasterDuke or even when Int | Bool
AlexDaniel I have a feeling that if/else will work faster than given/when
samcv and just run it with, --less=number
if you run it with --less it will stop at that cp value in UnicodeData.txt and only run two enum properties (one enum is an int enum one is a char * enum) so that's what i'm using 02:01
for my test runs, so it doesn't take too long
true MasterDuke
it doesn't hit that code path in the --less= command line arg tho
02:02 Ven left
samcv if you do want to test that section, you want to run the binary-property(1, 'extracted/DerivedBinaryProperties'); and also run UnicodeData subs 02:03
if you run both of those together then it will trigger that for sure
GezzMC Hi, I'm evaluating Perl 6 on Win10, to see if I want it as my main application language. I have 2 problems. They're not show stoppers. I'm just asking whether I should report either of these to [email@hidden.address] All this together may be bad form, but this'll mostly be a one shot deal.
(1) PROBLEM 1: In short, I run 'perl6.bat' without giving it a tty, and it terminates with the message 'Unhandled exception: get_stream failed, unsupported std handle'.
(2) PROBLEM 1 WORKAROUND: I solve the problem with some redirection like this: `0</dev/null script -eqfc "perl6 --help" /dev/null`. I've run many languages without this problem, like GCC, Perl, Python, Julia, Rust, and Node.js.
(3) PROBLEM 1 INFO: I use an IDE called Isabelle/jEdit that runs on top of Cygwin. It allows me to un a bash script using an ML function called 'Isabelle_System.bash'. This bash script runs 'perl6.bat' and returns the result as a string.
(4) PROBLEM 2: The Windows Rakudo distribution seems to be hard coded to 'C:\rakudo'. From past experience I got the impression that Perl 5 did a lot of hard coding of paths when modules were added and things got built. Maybe this is the same kind of thing.
(5) PROBLEM 2 PROBLEM: With the path hard coded to 'C:\rakudo' I can't zip up an application with Perl 6, then it just works when someone unzips it.
samcv woah
hi GezzMC
i'm not sure exactly about the hardcoding since I don't run on windows, maybe somebody else knows 02:05
MasterDuke GezzMC: re #2, that's a known problem in rakudo (the path is hard-coded when it's built)
samcv yeah. i was thinking that could be the case. you will have to just compile it then with a different path
MasterDuke and when the binary you can download is built, it's built in c:\rakudo
samcv wow Took 659.2161227 seconds. 02:06
AlexDaniel samcv: I think you have to mkdir ‘build’ 02:07
samcv that. is amazing. it took 48 minutes before i optimized the hell out of it
GezzMC Thanks for the info. I don't build these things. Maybe it'll get fixed some day.
MasterDuke so yeah, redistributing complete Perl 6 "programs" (i.e., binary + scripts) doesn't really work right now
samcv ah yeah that too AlexDaniel
so from 48 to 10 minutes. not bad
MasterDuke GezzMC: timotimo++ recently did some experimental work on getting a moarvm+rakudo that could be redistributed
but i don't believe it's been merged into the main branches just yet 02:08
samcv especially because it only takes 3 seconds to concat all the points when doing a full run. that's awesome as hell
it used to take like 10 minutes or something ridiculous
MasterDuke and yeah, that is expected to get fixed someday
AlexDaniel samcv: how fast is your machine? Maybe it will be more convenient for you if you did that on Whateverable server?
02:08 Ven joined
samcv yeah it may be. I have an x220 02:09
AlexDaniel samcv: should I add this one for ssh? github.com/samcv.keys
samcv yep 02:10
AlexDaniel samcv: ssh [email@hidden.address] 02:11
samcv: thinks are a little bit messy there, don't freak out :)
things*
samcv ok
02:16 dugword left 02:17 Ven left
AlexDaniel wow, apply-to-points is called very often 02:18
samcv AlexDaniel, it's your server right?
AlexDaniel yea
samcv yeah it is
i need to rename them tho 02:19
apply-to-cp should be called apply-to-range
AlexDaniel feel free to use as many resources as you need
samcv and apply-to-points should be apply-to-point
can you install mosh?
ssh is lagging
AlexDaniel done 02:20
samcv mosh-server needs a UTF-8 native locale to run.
it says. you have it set to ASCII?
GezzMC samcv & MasterDuke: Thanks again. I just wanted to put the info out. I have the redirection workaround; that's good enough for me. If Perl6 didn't have great features, the hard coded paths would be enough for me to have already given it the reject. Adios.
samcv or maybe this is my problem I need to generate US-ASCII charset 02:21
AlexDaniel, can you run locale-gen en_US.UTF-8 ? that's what it suggests to be done
02:21 user_ joined
AlexDaniel samcv: done, try again? 02:22
samcv googles
02:22 GezzMC left
AlexDaniel :S it was en_GB.UTF-8 02:22
samcv ah
AlexDaniel samcv: should be fine now? 02:25
samcv maybe. i have en_GB.UTF-8 already generated on my computer tho :\ hmm
well not as my locale but i had it generated
02:25 kalkin- left 02:26 shayan_ left
samcv i'm reading the github bug ticket 02:26
it's closed so there must be some solution somewhere on the long page
02:27 shayan_ joined
samcv hmm I had to set LC_ALL, my LC_ALL didn't have a value 02:28
i don't have it set because LC_ALL overrides my settings
cause i have my LC_TIME="en_DK.UTF-8" 02:29
02:29 Ven joined
samcv so maybe mosh is mad when there's no LC_ALL 02:29
02:30 Ven left
AlexDaniel samcv: it works fine here from my computer 02:30
samcv what do you have LC_ALL set to?
AlexDaniel empty
samcv can you locale-gen en_DK.UTF-8 for me?
02:30 wamba left
samcv oddly i can connect with my fine on my server 02:31
AlexDaniel samcv: done 02:32
samcv ok connected fine :)
that is kind of shitty, oh well
maybe cause my server has a newer mosh? idk. i have debian unstable on my server
AlexDaniel samcv: try again? 02:33
samcv no i can connect fine now
AlexDaniel pulled mosh from unstable for you
samcv that you generated en_DK
02:39 xtreak joined 02:45 Ven joined, Ven left, ilbot3 left 02:48 ilbot3 joined 02:53 drrho left 02:57 drrho joined 02:58 dugword joined 03:00 sammers joined 03:02 Khisanth left, dugword left 03:04 Ven joined 03:12 dugword joined 03:14 Khisanth joined 03:18 Ven left 03:21 cyphase left 03:22 lizmat left 03:24 ttttt joined
ttttt o/ 03:24
03:24 ttttt is now known as teatime, Ven joined 03:25 teatime left 03:26 lizmat joined, cyphase joined 03:29 teatime joined
teatime let's try that again 03:29
03:32 ChoHag left
teatime hmm... I wonder if there are any hiking/backpacking IRC channels. 03:32
03:33 Ven left
BenGoldberg teatime, I wouldn't be surprised if there were (somewhere), but probably not on freenode, since it is software project oriented. 03:37
teatime I googled, found some leads, no one in any of them. Oh well.
Anyone hacking on anything interesting this evening? 03:38
03:40 bwisti joined 03:45 Ven joined 03:46 Ven left 03:50 Ben_Goldberg joined, BenGoldberg left, Ben_Goldberg is now known as BenGoldberg 03:51 aborazmeh left 03:55 Unavowed left 03:56 noganex_ joined 03:58 Unavowed joined 03:59 noganex left, xtreak left 04:02 xtreak joined 04:04 Ven joined
samcv my computer just totally locked up running this on a very long string. it works fine with this example gist.github.com/samcv/3661ba40798e...756ee1767f 04:05
basically going every 50 characters and replacing "," with ",\n" 04:06
TimToady I would guess you've managed to bypass the ropes implementation :) 04:08
samcv :( 04:10
TEttinger neat, there's rope data structures in NQP? 04:12
TimToady glancing at the MoarVM code, it looks like it should be using ropes 04:13
but it does treat every replacement as substr and concat
I'm guessing s:g/// would be more efficient here 04:14
or maybe some kind of comb, then .join("\n") 04:19
04:19 khw left, Ven left
samcv yeah i'm doing $string ~~ s:g/(.**50..60',')/$0\n/; 04:20
that works pretty fast 04:21
04:23 BenGoldberg left 04:24 BenGoldberg joined, Ven joined
TimToady .tell lizmat I'm fine with letting X work with multiple lazy lists, since we don't *know* that they're infinite, and we did put a certain amount of effort into making sure that degenerate case worked in the first place 04:27
yoleaux TimToady: I'll pass your message to lizmat.
AlexDaniel \o/ 04:29
04:32 Ven left 04:44 Ven joined 04:46 Ven left 04:48 Ben_Goldberg joined, BenGoldberg left, Ben_Goldberg is now known as BenGoldberg 04:55 faraco joined, faraco left 05:01 zacts joined 05:02 obfusk joined, obfusk_ left 05:04 Ven joined 05:18 Ven left 05:23 mohae joined 05:24 mohae left, Ven joined 05:27 shayan_ left 05:29 BenGoldberg left 05:32 labster left 05:33 Ven left 05:36 Cabanossi left 05:39 Cabanossi joined 05:44 Ven joined 05:46 Ven left 06:03 bwisti left 06:04 Ven joined 06:07 CIAvash joined 06:18 Ven left 06:23 thayne joined 06:24 Ven joined, dugword left 06:25 dugword joined, xtreak left 06:26 bjz joined 06:28 xtreak joined 06:29 dugword left 06:37 xtreak left, skids joined, xtreak joined 06:39 bjz left 06:41 kyan left, Tonik joined 06:48 Ven left 06:50 Ven joined 06:54 RabidGravy joined 07:00 bjz joined 07:02 skids left 07:05 holli_ left
samcv i'm toying with the idea of compressing the unicode name strings. 07:08
like on this string here: "latin upper case thingy" we can save 7 bytes
so applying that to all the unicode names could be nice
average length is 16 chars, so we could save 4 bytes per character. so we could save 512 KB? can that be right? maybe it is 07:12
07:13 domidumont joined
samcv m: my $num-seen = 0; my $tot; for 0..0x1FFFF { my $name = .uniname; next if $name eq '' or !defined $name; $num-seen++; $tot += .uniname.chars }; say "saw $num-seen, avg length {$tot / $num-seen}" 07:15
camelia rakudo-moar 0cd921: OUTPUT«saw 131072, avg length 16.240570␤»
07:15 wamba joined
samcv m: say 131072/1000 07:15
camelia rakudo-moar 0cd921: OUTPUT«131.072␤»
samcv ok so it looks like it takes up 131KB? ok 07:16
err wait that's the number of codepoints not the length of the chars 07:17
m: say 16.240570 - (4 * 131072)
camelia rakudo-moar 0cd921: OUTPUT«-524271.75943␤»
07:18 domidumont left
samcv yeah so we could save half a megabyte 07:18
07:18 Ven left 07:19 domidumont joined
samcv m: say 16 * 131072 07:20
camelia rakudo-moar 0cd921: OUTPUT«2097152␤»
samcv say 2097152/1000
m: say 2097152/1000
camelia rakudo-moar 0cd921: OUTPUT«2097.152␤»
07:21 Ven joined
samcv m: say 2097152 - 2 * 131072 07:21
camelia rakudo-moar 0cd921: OUTPUT«1835008␤»
samcv 1/4MB 07:22
07:24 dugword joined
samcv may be more. i'm going to run my script through all the unicode names and come up with a grand total that actually reflects the names, since some strings get different compression ratios depending on length and how close they are to a multiple of 3 07:27
07:28 dugword left 07:32 geekosaur left 07:34 geekosaur joined
nine_ samcv: half a megabyte sounds like worthy to pursue 07:36
samcv i think it's like 1/4 a MB
but i'm gonna try and see
07:36 nine_ is now known as nine
nine jdv79: print seems to be a very special case in Perl 5. I guess it's actually an op rather than a sub. 07:38
07:39 vendethiel left 07:40 fatguy joined, labster joined
samcv ok my estimate was accurate. not including anything with '<' in it like illegal, control etc 07:40
234,631 bytes total saved
07:40 labster left, labster joined
fatguy i'm learning getopt using sub MAIN, how can i remove (False True) e.g [--yes (False True)] 07:42
moritz m: sub MAIN(Bool :$yes) { } 07:46
camelia ( no output )
moritz m: sub MAIN(Bool :$yes!) { }
camelia rakudo-moar 0cd921: OUTPUT«Usage:␤ <tmp> --yes ␤»
moritz m: sub MAIN($x, Bool :$yes) { }
camelia rakudo-moar 0cd921: OUTPUT«Usage:␤ <tmp> [--yes] <x> ␤»
moritz fatguy: ^^ I don't get a (False True) from a Bool named argument 07:47
07:47 Khisanth left
moritz fatguy: what version of rakudo are you using? 07:47
fatguy 2016.11 07:48
multi sub MAIN (Bool :$prov!, Str :$course, Bool :$yes, Str :$node!)
--prov (False True) --node=<Str> [--course=<Str>] [--yes (False True)]
moritz fatguy: seems to be a regression In rakudo that has been fixed since then 07:50
fatguy moritz: what can i do ? 07:51
moritz fatguy: upgrade to a newer rakudo
committable6: help
committable6 moritz, Like this: committable6: f583f22,HEAD say ‘hello’; say ‘world’
fatguy moritz: thanks, will do 07:52
moritz committable6: 2016.12 sub MAIN(Bool :$yes!) { }
committable6 moritz, ¦«2016.12»: Usage:␤ /tmp/blbxDH9Ln8 --yes «exit code = 2»
moritz fatguy: seems to be fixed in 2016.12
fatguy moritz: great !
07:56 llfourn joined 07:57 redhands joined
dalek line-Perl5: a0e211f | niner++ | configure.pl6:
Make configure.pl6 compatible with rakudo > 393afcf9 2016-12-24

The argument to Distribution::Path's constructor was renamed, so we now have to pass the old and the new name to stay compatible with all Perl 6 versions.
08:00
08:00 Khisanth joined
arnsholt We can provide specialized candidates for metaop variants that need special-casing, can't we? 08:04
08:04 avuserow left
Woodi m: my @a = lazy ^10000; my $e = shift @a; @a.push($e); say @a[*-1]; 08:05
camelia rakudo-moar 0cd921: OUTPUT«Cannot push to a lazy list␤ in block <unit> at <tmp> line 1␤␤»
Woodi hi #perl6 :) 08:06
around 2 days ago geekosaur++ mentioned difference lists and homepages.inf.ed.ac.uk/pbrna/prolog...de180.html is nice description. and "holes" there are like ours infinite lists/iterators. so example above, teoretically, could work 08:09
08:09 rindolf joined
Woodi however i have no idea what is @ en.wikipedia.org/wiki/Difference_list :) 08:09
08:11 faraco joined
faraco howdy 08:11
A question about camelia bot. How it can interpret commands from IRC. Is it using any Perl 6 modules to do this? 08:14
08:14 xtreak left
faraco I'm thinking on IRC::Client, but idk if the bot using this. 08:15
nine faraco: camelia is actually written in Perl 5 08:16
08:17 xtreak joined
nine faraco: camelia started out in 2007, so it is even older than rakudo. 08:17
faraco is the bot source free for people to see? I want to learn from it. 08:18
samcv ok actually i think it will reduce storage by 0.5MB 08:20
faraco Where I can find it, if its free.
samcv new 272267 old 787271. diff: 515004; # just fixed a bug in my script
yeah it's online faraco
AlexDaniel faraco: there are a bunch of perl 6 bots though 08:22
samcv err. no wait it's still 1/4 MB. my bad
AlexDaniel evalable6: say 42
evalable6 AlexDaniel, rakudo-moar 0cd921e: OUTPUT«42»
AlexDaniel evalable6: source
evalable6 AlexDaniel, github.com/perl6/whateverable
samcv forgot to multiple the "new" by 2. since theyare 16 bit int's vs char *'s
m: say 787271 - 272267 * 2 08:23
camelia rakudo-moar 0cd921: OUTPUT«242737␤»
samcv yeah ok, so the bug didn't affect the computation, just caused it not to compute the right values. butyeah. that's a reduction of 1/3
08:25 xtreak left, ufobat joined 08:27 xtreak joined, redhands left
lizmat clickbaits p6weekly.wordpress.com/2017/01/16/...turing-ok/ 08:28
yoleaux 04:27Z <TimToady> lizmat: I'm fine with letting X work with multiple lazy lists, since we don't *know* that they're infinite, and we did put a certain amount of effort into making sure that degenerate case worked in the first place
08:28 dugword joined
lizmat TimToady: message received :-) 08:28
08:31 avuserow joined 08:33 dugword left
faraco is that for real mr Larry Wall? 08:33
hugme
lizmat faraco: yes, for real 08:34
faraco oh wow..thanks samcv and AlexDaniel, perl6.org has references for those.
lizmat huggable: hug faraco
huggable hugs faraco
samcv huggable, hug huggable
huggable hugs huggable
faraco * I just found 08:35
08:35 Ven left, zakharyas joined
nine Shave, shave, shave the yak. Shave it like a queen. Merrily, merrily, merrily, merrliy, code is never clean... 08:35
teatime haha, I had my 'omg, this guy that's been helping me learn Perl6 is actually my hero Larry Wall' moment a few months ago
faraco lizmat: I didn't expect for him to visit thi channel too. cool to know. 08:36
nine m: EVAL 'print "hello there!"', :lang<Perl5>;
camelia rakudo-moar 0cd921: OUTPUT«hello there!»
08:37 Ven joined 08:39 dugword joined 08:41 dakkar joined 08:49 g4 joined, g4 left, g4 joined 08:50 Ven left 08:51 rindolf left 08:54 wamba left, Ven joined
faraco .py print('hi') 08:57
yoleaux <html><head><meta http-equiv="content-type" content="text/html;charset=utf-8"><title>404 Not Found</title></head><body text=#000000 bgcolor=#ffffff><h1>Error: Not Found</h1><h2>The requested URL <code>/py/print(&#39;hi&#39;)</code> was not found on this server.</h2><h2></h2></body></html>
faraco omg...html
.ask TimToady hi 08:58
yoleaux faraco: I'll pass your message to TimToady.
09:01 faraco left
lizmat stackoverflow.com/questions/4168902...-in-perl-6 # any takers ? 09:01
09:01 faraco joined
lizmat faraco: if you want to ask TimToady something, you probably want to say more than just "hi" :-) 09:02
09:03 dugword left 09:04 jonas1 joined 09:05 Ven left 09:09 xtreak left
faraco lizmat: will do. :D 09:09
09:10 xtreak joined 09:13 xtreak left 09:14 Ven joined 09:17 domidumont left 09:18 domidumont joined, zakharyas left
tadzik hm, I have 2 stackoverflow accounts and I don't remember the password for neither %) 09:20
I think they used to allow openid
09:20 Ven left 09:22 faraco left
teatime well, I lost a tool I need and have looked everywhere. I'm certain I didn't take it anywhere or loan it out. 09:23
I will try to remember your password if you look for my tool.
09:27 llfourn left 09:29 Ven joined
masak tadzik: ...reset your password? 09:33
jast tadzik: still do, it's a little more hidden
I don't think my account even has a password
masak tadzik: as I reach old age, I've stopped caring about managing my passwords on sites, and mostly I just reset them when I log back in :P
09:35 bjz left 09:37 domidumont left, bjz joined 09:38 domidumont joined
tadzik masak: ah, I long abandoned the idea of trying to remember passwords, I just stuff them in a password manager 09:40
this time it doesn't know it, I don't remember the logins or emails I used, so eeh
I'll give someone else a chance, I barely use SO anyway 09:41
masak I get a lot of value out of SO, but only as a passive reader
I believe I've written one answer, once, to a Java question
oh! it was about an algorithm in which a hare was chasing a turtle! :D
(such algorithms turn up when you have a linked list and you want to figure out whether it contains a loop. iff the hare catches up with the turtle, there's a loop.) 09:42
teatime heh, usually when I find a good question with a good answer that helps me, there's a note on there that it's actually been deleted for one reason or another 09:43
masak surely frozen/archived rather than deleted, though?
teatime nah, deleted. I guess they're still indexed by google 'cause I get that a lot. 09:44
09:45 xtreak joined
masak we must mean different things by "deleted", then ;) 09:45
teatime I'm just using their terminology, assuming I am not mis-remembering.
I agree it's silly, 'cause people continue to answer and comment on the deleted ones too
masak yes, I believe you are
I don't have a kvetch as such with the fact that SO sets a question policy and enforces it 09:46
teatime I guess I meant "closed" rather than "deleted" 09:50
09:52 Guest23983 left 09:57 dudz left 10:00 giraffe joined 10:01 pmurias joined, giraffe is now known as Guest316, abraxxa left, labster left 10:02 abraxxa joined 10:05 Ven left 10:08 Ven joined 10:10 abraxxa left 10:11 abraxxa joined 10:12 holyghost joined, astj left 10:13 astj joined 10:14 llfourn joined 10:19 Ven left 10:26 rindolf joined 10:28 Ven joined 10:31 n0xff_ joined 10:33 Ven left 10:44 TEttinger left 10:46 ab6tract joined 10:48 Ven joined
ab6tract .tell brokenchicken i was never disputing that. but the list of things (^20) is still in order, so i was responding to the fact that i actually like that .say is ordered. side effects are not guaranteed. the order of results is. (^20)>>.say is a no-op on the original list. yes, auto-threading means it will be out of order. but i was originally jumping in to say that the list (^20) is guaranteed to be in the right order. the side-effects 10:49
yoleaux ab6tract: I'll pass your message to brokenchicken.
ab6tract anyway, i think i have hammered that bit of confusion into the ground well enough.
10:55 eiro left
DrForr Huh, the high usr-to-sys ratio I've got on my VM disappears on my linode. On linode it's 0.63 vs. Bond, at home it's 0.63 vs. 0.45. 10:55
teatime ... 0.07 ? 10:56
DrForr Yep. I just figured it was better than saying 0.63 vs. 0.07. 10:57
jast in my experience some VMs manage to make these timings entirely meaningless
DrForr Oh, I agree it's probably completely useless, just the disparity was exceptionally wack. 10:58
jast I've seen a VM that was completely I/O saturated and claimed 100% idle
10:58 ab6tract left
DrForr I don't think I've ever claimed my times were scientific :) 10:59
Or at least scientifically meaningful. For all I know some idiot could be running Rowhammer on the same blade thrashing the hell out of my cache... 11:01
brokenchicken .
yoleaux 10:49Z <ab6tract> brokenchicken: i was never disputing that. but the list of things (^20) is still in order, so i was responding to the fact that i actually like that .say is ordered. side effects are not guaranteed. the order of results is. (^20)>>.say is a no-op on the original list. yes, auto-threading means it will be out of order. but i was originally jumping in to say that the list (^20) is guaranteed to be in the right order. the side-
effects
11:04 Ven left 11:08 Ven joined
timotimo samcv, TimToady, when you use regexes on strings, we generate an op that'll flatten all ropes in a string so it becomes one contiguous string. that's why you're not getting the benefit of ropes when you run that splitting regex. i'd suggest maybe going with rindex to search for a , from 60 backwards and chopping the string up that way. 11:08
samcv thanks timotimo
DrForr Eep, sexeger :) 11:13
timotimo ah, cool, you're still up
but yeah. 11:14
also, using regexes a lot will guarantee slow run time :)
whereas i suspect a rindex-based solution will run circles around a regex based solution 11:15
DrForr Mmhmm. Lots, in fact most of the Perl6::Parser code could be sped up quite a bit by using indexes, but that doesn't quite feel like what I should strive for right now.
timotimo well, once you are running inside a regex, you're probably good 11:16
you've paid the overhead of starting and finishing a regex match, so if you're stopping to use other stuff instead, you may pay finishing and startup cost again
samcv: i know it's usually a bit explosive, but have you considered if you can put in any parallelism at all? 11:17
jnthn They'll get cheaper also...
(regexes)
samcv not yet
jnthn TimToady++ is working at it from the NFA side 11:18
samcv splitting with normal regex is fast enough
so I just did that
to add the newlines every X lines
err X characters
11:18 bjz left 11:19 Ven left 11:20 araraloren joined 11:23 Ven joined
timotimo of course if profiling says it's not a bottleneck that's fine 11:24
El_Che on route to strasbourg. Hopefully I'll have some time to meet some mongers 11:28
f*cking cold in the Airport station while waiting between 2 tgv 11:29
timotimo ugh 11:32
lizmat samcv: what are you splitting on? a fixed string or set of strings ? 11:36
samcv just a single character
just a comma
lizmat ok, then just specify "," with split
it will be 10x faster or so
11:37 xtreak left
lizmat $ 6 'my $a = "a," x 100; for ^10000 { $a.split(/\,/) }' 11:38
real0m4.592s
$ 6 'my $a = "a," x 100; for ^10000 { $a.split(",") }'
real0m0.488s
timotimo but it's supposed to bunch it up into sets that reach between 50 and 60 characters 11:39
lizmat .rotor(50) ?
11:39 xtreak joined, xtreak left
timotimo no, you'll have to calculate based on the sizes of the splits 11:40
lizmat m: dd (^20).rotor(4)
camelia rakudo-moar 0cd921: OUTPUT«((0, 1, 2, 3), (4, 5, 6, 7), (8, 9, 10, 11), (12, 13, 14, 15), (16, 17, 18, 19)).Seq␤»
lizmat ah
timotimo the things in between have different lengths, that's the tricky part
lizmat hmmm... maybe .rotor needs a Callable that gets the info collected so far, and allows you to return a flag whether it is sufficient already 11:41
hmmm.. maybe not as part of .rotor 11:42
timotimo yeah, that sounds like it's stretching rotor a bit far
tadzik between 2 tgv! Is that spinning you around, like a record? %)
11:43 leah2 joined
lizmat
.oO( I hope the 2 TGV's are going in the same direction, otherwise it would be quite a stretch :-)
11:44
DrForr *right* round?
11:45 Gasher joined, zakharyas joined 11:49 Ven left 11:52 Ven joined
araraloren Hi, guys! Anyone know how to deal out paramaters with perl6 NativeCall, some sample gist.github.com/araraloren/1ba08ad...6a639e993, 11:58
12:02 faraco joined
nine araraloren: "is rw" 12:03
foo(Int a is rw) for foo(int *a(
foo(int *a) of course
araraloren not working, yesterday i tried it
faraco Hi, I tried HTTP::UserAgent to get JSON data (HTTP GET) from a server. However, I don't see POST request example or doc in the README. Is anyone know other alternative (or similar to Perl 5 LWP::UserAgent)?
timotimo araraloren: it's usually a bit difficult to work with Str for various reasons. i'd suggest trying to work with CArray instead, making sure enough memory is allocated before passing it around, stuff like that 12:04
and afterwards grabbing enough elements from the CArray into a Buf or Blob and using .decode to get the Str 12:05
jnthn araraloren: fwiw, github.com/rakudo/rakudo/blob/nom/...-rw-args.t is the set of tests for `is rw` use
12:05 Ven left
jnthn (So, those types are the cases it's known to work on, and usage examples) 12:06
CIAvash faraco: github.com/sergot/http-useragent/b...t.pm6#L556
jnthn But yeah, Str is immutable in Perl 6, though in theory we could do some cleverness (encode it to a buffer, pass that, decode the buffer again after, assign)
But no idea if that's happening; if there's no test for it, probably not.
lunch & 12:07
araraloren timotimo, jnthn thanks i will try it later..
12:07 Ven joined
faraco CIAvash: omg, thanks so much! 12:08
12:08 raschipi joined
Geth oc: ilmari++ created pull request #1143:
Fix typo "engaged" → "engages"
12:12
ilmari lizmat: ^^ :-P 12:13
Geth oc: bf4c498149 | (Dagfinn Ilmari Mannsåker)++ | doc/Type/Signature.pod6
Fix typo "engaged" → "engages"
oc: 8e5282f5b9 | lizmat++ | doc/Type/Signature.pod6
Merge pull request #1143 from ilmari/patch-1

Fix typo "engaged" → "engages"
lizmat Thank you!
araraloren timotimo, `sub xmode(CArray[uint8] is rw) returns int32 is native('xmode') { * }`, is this declare correct, for function `int(char** str)` 12:16
timotimo good question. i'd have to try it myself tbh 12:17
araraloren It **Segmentation fault** with `my CArray[uint8] $astr .= new("54365".encode.list); fun($astr)` 12:18
timotimo i don't think you can .new a CArray with initial data 12:19
m: use NativeCall; my CArray[uint8] $test .= new(1,2,3,4,5); say $test[2]
camelia rakudo-moar 0cd921: OUTPUT«3␤»
timotimo turns out you can. okay!
12:19 faraco left
araraloren ok.. 12:19
Also **Segmentation fault**, i think it's not the key of this question, i just modified first char inside c function 12:22
timotimo well, have a look what exactly gets passed etc
araraloren (CArray[Str] is rw) not have problem, but i can not get modified string 12:23
as i write inside my sample code
12:24 mniip left
timotimo that's tricky business and i don't know very well how to work with it 12:24
araraloren hum ... thank you anyway 12:26
12:28 cognominal left 12:39 lukaramu joined 12:42 mniip joined 12:48 curt_ left, cognominal joined
Geth cosystem: ronaldxs++ created pull request #291:
Add US-ASCII to ecosystem
12:51
cosystem: 0713d95696 | (Ronald Schmidt)++ | META.list
Add US-ASCII to ecosystem

See github.com/ronaldxs/Perl6-US-ASCII
cosystem: d404eb8c67 | lizmat++ | META.list
Merge pull request #291 from ronaldxs/master

Add US-ASCII to ecosystem
12:54 wamba joined
holyghost Would it be helpful to have some amiga tools in perl6, is there any module I can look at ? 12:55
12:55 fatguy left
holyghost I am thinking of an emulator with assembler tools prolly in SDL2 12:56
lizmat for some people it might :-) 12:57
it's not my particular itch, tbh
12:58 cognominal left
araraloren I wonder why perl6 IO::Socket::INET can not bind a localport to client-socket like perl5 does . 13:02
Hum, this is a strange design ~~
13:05 dudz joined 13:06 Ven left 13:08 shayan_ joined 13:09 Ven joined 13:10 sufrostico joined, holyghost left, sufrostico left, sufrostico joined 13:16 cognominal joined 13:19 Ven left 13:26 Ven joined, faraco joined
faraco urgh, I'm hungry. Menu recommendation for lunch, anyone? 13:26
raschipi I'm having beef parmeggiana. 13:27
ilmari burrito? pizza? burger?
ilmari had burger yesterday, so is going for burrito today
faraco beef parmeggiana? Whoa, sounds like italian food.
raschipi It does sound like italian food. But it's brazilian food. 13:28
timotimo how much is a brazilian?
13:28 cognominal left
faraco burrito? Pizza? Burger? That's my regular staples (jk). 13:29
raschipi www.jamieoliver.com/recipes/beef-re...armigiana/
ilmari faraco: I have at least two of those three in a week
imgur.com/gallery/dB0Vx 13:30
13:30 curt_ joined
timotimo %) 13:30
faraco raschipi: "Heaven.". Nyummy! 13:31
13:31 cognominal joined
faraco ilmari: you better ask those chicken patties permission before you eat them. ;) 13:32
13:33 CIAvash left
ilmari faraco: good thing I'm having a steak burrito 13:33
faraco a steak burrito? 13:37
never tried that yet.
faraco 'cooking stuff' 13:39
13:39 dudz is now known as aussie, aussie left 13:40 aussie joined, aussie left 13:41 aussie joined, aussie is now known as dudz, dudz left, dudz joined 13:42 culb left
raschipi faraco, are you trying the recipe I gave you? 13:42
faraco raschipi: I wanted to try it, but I don't have the ingredients for the recipe now. So, I cook other meal instead. Sure, I'll try the recipe someday. Honestly, it's mouth watering by just looking at the meal picture. 13:44
13:44 heince joined
raschipi You can simplify it. It needs cheese, tomato sauce, beef, flour and eggs. 13:45
Here is a simpler version: www.justapinch.com/recipes/main-cou...giana.html 13:47
[Coke] accidentally filled his ☕ ½ with cream this morning. need caffeine to make caffeine. :| 13:52
13:53 ggoebel left, heince left
faraco raschipi: I don't have the cheese, tomato sauce and the beef. 13:53
13:53 ggoebel joined
raschipi Oh, that's a problem. 13:54
13:57 nightfrog joined 13:58 melezhik_ joined 13:59 nightfrog left
brokenchicken How did this person generate that error? rt.perl.org/Ticket/Display.html?id...et-history 13:59
I can only get it as "but got NativeCall::Types::CArray[int] (NativeCall::Types::CA...)" 14:00
titsuki: yo
melezhik_ Hi! How to say in perl6 what I'd say in perl5: @foo = qw{foo bar baz} ?
jnthn @foo = <foo bar baz> 14:01
brokenchicken melezhik_: @foo = <foo bar baz>; more or less
14:01 heince joined
brokenchicken melezhik_: actually, @foo = qw{foo bar baz} 14:01
melezhik_ jnthn: thanks
thank you!
faraco melezhik: I saw that you opened a PR to MetaCPAN about the github login issue. Is is still happening to you? 14:02
is it*
melezhik_ faraco: I guess it is still here ):
I am not active metacpan user though for the time being 14:03
so it looks no rush for me
ahh, please let me check ...
sorry, misunderstood your question
14:04 nightfrog joined, dugword joined
faraco melezhik_: Ahh, I hope the issue will be fixed soon. Went to #metacpan, a person say that they can't reproduce the problem, altough I agree, that is not the 'end' of the world for the occured issue. 14:05
melezhik_ faraco: have just checked, the issue is still here
brokenchicken ugh.. this guy bothered to find a potential source of issue but not bothered to provide a single line of code that actually produces the issue.
melezhik_ well, the way to reproduce is pretty described at github issue 14:06
faraco: btw, are you able to login to metacpan via github/google?
faraco melezhik_: I tried, and the 'sign in' bar still sitting on the top right corner of the site. 14:07
melezhik_ yeah, so may reproduce the issue, as well then ((
14:08 eyck left
melezhik_ s/so may/so you are able/ 14:08
14:08 cale2 joined, dugword left 14:11 heince left
AlexDaniel brokenchicken: why so grumpy :D 14:15
14:16 eyck joined
brokenchicken AlexDaniel: because it's a 10-second ticket and I'm ready to commit but I can't reproduce the actual issue 14:17
AlexDaniel brokenchicken: commit to whateverable then :P
14:20 ChoHag joined, bwisti joined 14:26 cdg joined
brokenchicken m: subset Foo of Int where 42; class { method foo (Foo $x) {} }.foo: 72 14:27
camelia rakudo-moar 0cd921: OUTPUT«Constraint type check failed for parameter '$x'␤ in method foo at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
brokenchicken I vaguely recall we had a better message for that at some point. Like it said "expected Foo but got Int (72)"?
[Coke] (antiparis) ooh, I saw that episode of voyager.
brokenchicken m: subset Foo of Int where 42; class { method foo (Foo $x) {} }.foo: 72e0 14:29
camelia rakudo-moar 0cd921: OUTPUT«Type check failed in binding to $x; expected Int but got Num (72e0)␤ in method foo at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
brokenchicken hmmmmm
melezhik_ does zef or panda support versions for perl6 modules/distributions?
brokenchicken melezhik_: zef does
melezhik_: but our ecosystem doesn't :)
(or not in any sane way that is)
Geth erl6-most-wanted: 1002475b7f | (Tom Browder)++ | most-wanted/modules.md
add api for GNU Mailman 3
melezhik_ brokenchicken: any plans for this feature? 14:30
brokenchicken melezhik_: in a way, yes. There was a conversation on that just last night: irclog.perlgeek.de/perl6/2017-01-16#i_13931598 14:32
melezhik_ ok, will probably take a look then 14:33
so how panda knows that distribution is updated? I always do parda --force install , which kinda workaround ... 14:34
s/parda/panda/ 14:35
14:36 smls joined
brokenchicken melezhik_: at a guess, it sees version in ecosystem is larger than one installed. 14:36
14:37 skids joined
brokenchicken melezhik_: but you can't ask to install a particular version. Our ecosystem always points to the latest available version unless module author manually hacks around that. 14:37
melezhik_ other thing. I want to declare a function which takes 2 required arguments ( Str, Str) and optionaly Hash as third argument, how to do that?
brokenchicken (Str, Str, Hash?)
melezhik_ ok, thanks
[Coke] docs: is nodality a word? spell check doesn't like it, and neither does google. 14:38
melezhik_ > it sees version in ecosystem is larger than one installed
I am bit confused, so I need to define a version at metafile for my modules?
brokenchicken Right
melezhik_ brokenchicken: thanks 14:39
smls bisectable6: say (.say for ^3).WHAT
yoleaux 15 Jan 2017 02:46Z <AlexDaniel> smls: what about writing some tests too to close the ticket? :) They should probably go here: github.com/perl6/roast/blob/d1baf2...ange.t#L51
bisectable6 smls, On both starting points (old=2015.12 new=0cd921e) the exit code is 0 and the output is identical as well
smls, Output on both points: 0␤1␤2␤(List)
smls Is it intended that a parenthesized `for` loop inside an expression is evaluated eagerly, and returns a `List` rather than a `Seq`? 14:41
llfourn [Coke]: "nodality" sounds like a good name for a hip new startup but I don't think it's a real word
oh it's already a biotech company. 14:42
smls S04 explicitly states that such a loop should be lazy: design.perl6.org/S04.html#line_688
AlexDaniel c: all say (.say for ^3).WHAT
Geth oc: 7adeb6347d | (Will "Coke" Coleda)++ | doc/Language/operators.pod6
fix typos
14:43
oc: 39c8d6b1bb | (Will "Coke" Coleda)++ | xt/words.pws
add new maybe-word
committable6 AlexDaniel, gist.github.com/dd0b5601f4198d88bb...c746d7eb25
melezhik_ brokenchicken: if any conventions on version format at META6.json files ?
smls Also, I thought at one point it was decided to make `for` and `map` compile to the same thing, and `map` returns a `Seq`.
brokenchicken melezhik_: no, but it doesn't hurt to go with semver 14:44
melezhik_: semver.org/
moritz note that semver implies you have a spec that you code against 14:45
melezhik_ brokenchicken: good
brokenchicken moritz: why?
smls m: say (lazy for ^5 { .say }).WHAT 14:46
camelia rakudo-moar 0cd921: OUTPUT«0␤1␤2␤3␤4␤(Seq)␤»
perlpilot moritz: not for one of our projects at $work it doesn't. 14:47
smls AlexDaniel: ^^ Looks like a bug, right?
14:47 acrussell joined
AlexDaniel hmmm 14:47
moritz brokenchicken: because it talks about features, bugs, and incompatible changes and such things 14:48
brokenchicken: you can only distinguish bug fixes from incompatible changes if there's a specification, and you say a bug is something that contradicts the specification
14:49 jonas1 left
moritz if you don't have a spec, every bugfix automatically counts as a backwards incompatible change, since somebody might rely on the buggy behavior 14:49
and so each bugfix would require a major version increase
brokenchicken uuuhh
Somehow I never felt such a problem without any specs and with 200+ projects using semver. 14:50
Incompatible changes are those that were documented as doing A but now do B. 14:51
AlexDaniel smls: it's weird, yes
14:51 Ven left
moritz brokenchicken: ah, so you have documentation; that's also some form of specification 14:52
AlexDaniel smls: if this “lazy” does nothing there, then perhaps it should warn about it
smls bisectable6: say (lazy for ^5 { .say }).WHAT
cale2 How can we improve the perl6 documentation? Wouldn't it be nice if there was something like this for browsing things that come included with Rakudo? hexdocs.pm/elixir/Kernel.html
bisectable6 smls, On both starting points (old=2015.12 new=7d5bbef) the exit code is 0 and the output is identical as well
smls, Output on both points: 0␤1␤2␤3␤4␤(Seq)
smls AlexDaniel: yeah, will RT
14:52 Ven joined
AlexDaniel cale2: soo… are you saying that docs.perl6.org is not enough? 14:52
moritz cale2: if you could prototype something like that for docs.perl6.org... why not? 14:53
14:53 kyan joined
brokenchicken moritz: so what you're saying is semver implies you have more than just a bundle of code? :) 14:53
melezhik_ brokenchicken: I stared with version 0.0.1 , hope it's ok
moritz brokenchicken: yes
cale2 AlexDaniel, moritz: The issue, for me at least, is the organization. For a beginner, it's impossible to know where things are placed
smls cale2: I think that would be a very long document in case of Perl 6 14:54
moritz well, it'd need some kind of different structure 14:55
cale2: then ask whenever you have questions
perlpilot cale2: what do you mean by "where things are placed"? Is the search feature of docs.perl6.org inadequate?
moritz cale2: gfldex does a lot of docs maintance, I used to; feel free to hilight us on docs questions
[Coke] myself as well. 14:56
moritz right, [Coke]++ too 14:57
[Coke] also, github.com/perl6/doc/issues
14:57 llfourn left 15:00 dugword joined
cale2 Well, I think it's a question of usability, not comprehensiveness. For example, where do you go to see all built in things that work on Strings? 15:00
timotimo like subs and methods?
you can grep that :)
cale2 Yes
from the website? 15:01
araraloren It's a class reference there.
cale2 but there's also the Stringy class
brokenchicken cale2: docs.perl6.org/type/Str
Stringy is a role
timotimo no, i mean, you can grep from a perl6 script
brokenchicken cale2: but it's a somewhat random thing to do
cale2: you can introspect a type to get its methods 15:02
m: say "foo".^methods».name.sort
camelia rakudo-moar 7d5bbe: OUTPUT«(ACCEPTS BUILD Bool DUMP Int NFC NFD NFKC NFKD Num Numeric Str Stringy WHICH WHY chars chomp chop codes comb contains encode ends-with fc flip gist indent index indices lc lines match ord ords parse-base perl pred rindex samecase samemark samespace split s…»
15:02 curt_ left, Guest316 left
brokenchicken cale2: I'd guess the general idea is you'd read tutorials in docs.perl6.org/language.html rather than go for "all methods in X" straight away 15:03
araraloren Hum, document for Stringy only one sentence, `Common role for string types (such as Str).` .
brokenchicken ++ Yeah, I agree .. 15:04
15:04 zakharyas left, zakharyas joined
cale2 brokenchicken, but if you already know how to program, you may just want to start putting things together 15:04
brokenchicken ummmm heh 15:05
cale2 If we look at the organization of the Elixir docs, there is Pages, Modules, Protocols, Exceptions. Could we not organize Perl6 docs in a similar manner? Pages (like FAQ for common things), Classes, Roles, Exceptions
brokenchicken cale2: I see a bunch of categories in secondary nav on Types: docs.perl6.org/type.html 15:06
cale2: and Perl 6 is not PHP. You won't be an effective programmer if all you've learned is a long list of routine names; hence the Language tutorials. 15:08
15:08 zakharyas left
cale2 And then when browsing methods, it could even tag the functions with "side effects" or "no side effects" :D 15:08
Yes, brokenchicken, I know. But a lot of stackoverflow questions come from things like not knowing certain methods exist 15:09
brokenchicken araraloren: it seems to be just that. Provides no methods.
moritz cale2: Perl 6 has a whole bunch of builtins that aren't tied to classes, which makes it harder to categorize unambiguously 15:10
brokenchicken cale2: unsure what point you're trying to make. The method reference exists...
moritz cale2: hence my suggestion that you prototype something, and then show that, so that we have something concrete to talk about
brokenchicken cale2: but the idea is you'd have at least rudimentary idea of the language.
cale2 moritz, I agree. The organization is quite tricky because of that. I'd almost say that we should have something like Hoogle where you can search for a function based upon the signature
moritz (and "prototype" could be as simple as writing a list of nagivation points in a text file) 15:11
araraloren brokenchicken, humm, maybe, it is a declaration .
AlexDaniel cale2: perhaps you don't even have to make a prototype if you have a very clear vision that you can describe in a textual form
like how we can generate that stuff or something
15:11 giraffe joined
AlexDaniel in this case, just file a doc issue 15:11
15:11 giraffe is now known as Guest44896
cale2 I can prototype something, but I'm just thinking aloud with y'all now. Have you used Hoogle? www.haskell.org/hoogle/?hoogle=Str...+-%3E+Bool 15:12
AlexDaniel cale2: we kinda already have “Types”, “Routines” on docs.perl6.org 15:13
cale2 since perl6 signatures are all typed now, that may work
AlexDaniel and each of them has subcategories
15:13 shmibs left
moritz cale2: right, but we also have coercion, which makes things harder 15:13
cale2: and slurpies, and funny stuff like that 15:14
cale2: not that I object; would be an intersting experiment
brokenchicken cale2: and what does that hoogle do?
raschipi cale2: And (Any).
cale2 moritz: the coercion is based on the hierarchy of types, though.
15:15 shmibs joined
moritz cale2: I don't know what you want to say with that 15:15
cale2 So if you search "String, String -> Bool" the results would include any signatures that include types ABOVE String and Bool
moritz cale2: we have list methods in Any, which try to interpret the invocant as a List
SmokeMachine m: role R {method r {...}}.^pun
camelia rakudo-moar 7d5bbe: OUTPUT«Method 'r' must be implemented by R because it is required by roles: R.␤ in any compose_method_table at gen/moar/Metamodel.nqp line 2832␤ in any apply at gen/moar/Metamodel.nqp line 2843␤ in any compose at gen/moar/Metamodel.nqp line 3015␤ in a…»
brokenchicken cale2: um, can't say I ever felt the need to do such a search :/ 15:16
pmurias cale2: something like hoogle would be cool
cale2 brokenchicken, that's fair. How do you normally handle finding a method? For example, how many times have you re-invented the wheel, only to find a method later on
faraco whoa 15:17
brokenchicken cale2: finding a method in what?
gfldex cale2: there are white a few methods that are missing the invocant in the docs. Would be really nice to see that fixed. 15:18
cale2 brokenchicken: say you are trying to solve a problem. You code up a solution. You share it with friends. And one friend says, "oh, there's a built in method that does all that already" womp womp
brokenchicken This stuff reminds me of some JavaScript engine: you enter a couple of names and it searches thousands of packages. People rave about how "cool" it is, but if you look at results most of them are nonsensical. Yes, it matched the name, but impl is completely irrelevant. 15:19
cale2: well, I'd search by what the method does, not by signature :S
I don't even know what signature .combinations/.permutation have really
cale2 brokenchicken: how do you know what terms to use in your search? The whole thing I'm proposing is an effort to reduce tribal knowledge 15:20
brokenchicken m: say &combinations.signature
camelia rakudo-moar 7d5bbe: OUTPUT«($n, $k)␤»
gfldex cale2: see the following for grepping method declarations from all docs github.com/perl6/doc/blob/master/u...methods.p6
brokenchicken cale2: what do you mean? I know the task I'm trying to solve and I'd search for those keywords.
15:20 mr_ron left
brokenchicken cale2: why the fuck would I need a list of 10,000 methods with signature (Any, Any)? 15:21
AlexDaniel ok, folks, calm down :)
cale2 Yeah, I don't mean for this to be a personal insult on the docs maintainers
15:21 Ven left
brokenchicken Oh, right, maybe 9,655th of them may end up doing combinations. Thank god this search engine exists, because searching for "combinations" is useless. 15:22
cale2 I'm just finding that the elixir docs are a fantastic way to just start using the language very quickly and easily. It's very browsable and everything is in a place that makes sense.
AlexDaniel cale2: I don't think it is. We kinda know that the docs are less than awesome
brokenchicken throws hands up in air and leaves to do $tasks
AlexDaniel cale2: but it's hard to think of something that will actually work
pmurias brokenchicken: why do you pick up some stupid strawman case?
15:23 Ven joined
brokenchicken cale2: have you considered that you're more familiar with Elixir's docs than with Perl 6's ones, which is why they seem to be "just there". I know where everything on docs.perl6.org is too, so it's all just tehre. 15:23
AlexDaniel huggable: hug brokenchicken
huggable hugs brokenchicken
brokenchicken pmurias: I'm not. I'm answering how I would search for "combinations" method. 15:24
And it wouldn't be by signature.
cale2 brokenchicken: I started with elixir 5 days ago. Granted, it's a very small language. But it's largely because "oh, i need list operations, let me look in Enum or in List"
brokenchicken cale2: and how does that differ from "let me look in List, or Array, or Seq" in Perl 6? 15:25
gfldex cale2: it's not that easy. There are plenty of subs and loads of operators with very loose type constrains. Searching for types wont get you far in Perl 6.
however, there is plenty of room for improvement 15:26
an updated version of the following would be nice glyphic.s3.amazonaws.com/ozone/mark...300dpi.jpg 15:27
timotimo yeah 15:28
brokenchicken m: say foo p5=> 42
camelia rakudo-moar 7d5bbe: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Undeclared routine:␤ foo used at line 1␤␤»
brokenchicken That's the only one I see out of date.. 15:29
and :true is now :so
perlpilot The documentation discussion makes me wish we had docs somehow centered around the tasks people are likely to do. "I want to ..." where the user fills in the ... part with "add some numbers" or "concatenate strings" or whatever and the docs search the subject index for routines/methods that would likely be used for such tasks. 15:30
gfldex sadly the svg is not in the public domain
perlpilot: we do have that with the examples but there are no links back to the docs to make it a good learning experience
pmurias brokenchicken: hoogle in haskell is useful for searching for things like "[a] -> [b] -> [(a,b)]", like "how to turn 2 list into a list of tuples"
brokenchicken: in haskell most of the type you know what type of things you have and what you need so being able to search for a conversion can be usefull 15:32
perlpilot pmurias: that's because types are king in haskell-land
araraloren pmurias, sound like a good search way. 15:33
perlpilot Perl 6, not so much
15:33 thayne left
raschipi In Perl6 you'll have (Any,Any) and want to end with (Any,Any) 15:33
pmurias perlpilot: I also fear that would reduce the usefulness of that in Perl 6 15:35
15:35 smls left
cale2 Building in knowledge of the type hierarchy is what could resolve searches, though 15:37
Mu > Any > Cool > String 15:38
faraco ..
cale2 perlpilot: I like the more "this is what I want to do" search. It makes sense. But a lot of times, a noobie wouldn't be able to explain if they aren't familiar with terms
The only way to group related methods and standalone subroutines would be by grouping type signatures, though 15:39
15:40 AlexDaniel left
perlpilot cale2: as soon as you say "The only way", you're wrong. :-) This is Perl, TMTOWTDI rules! ;) 15:40
pmurias does the "left-pointing magnifying glass" emoji that's the placeholder in docs.perl6.org display on people's browsers?
brokenchicken Not in Perl 6. Many routines with corresponding methods just use captures as their signatures and forward them 15:41
pmurias cale2: we group methods based on the types they are defined on 15:42
cale2 pmurias: But standalone subroutines are defined on what?
moritz pmurias: it does on my Ubutu 16.10 machine, but not on Debian Stable desktop 15:44
brokenchicken pmurias: does on mine 15:45
m: [].^lookup('splice').candidates.elems.say
camelia rakudo-moar 7d5bbe: OUTPUT«31␤»
15:46 g4 left
raschipi pmurias: I don't see any "magnifying glass" in docs.perl6.org, running Debian Unstable. 15:46
🔍 -> But I see it here. 15:47
u: 🔍
unicodable6 raschipi, U+1F50D LEFT-POINTING MAGNIFYING GLASS [So] (🔍)
15:49 bpmedley left
[Coke] raschipi: upper right hand corner, there's an input box. 15:53
ilmari sees it on firefox 50.1.0 on debian stable
raschipi Yes, now I see it.
[Coke] javascript required.
15:54 llfourn joined
perlpilot what controls the placement of the magnifying glass? In FF, it's on the right; in chrome it's on the left. 15:54
raschipi ilmari: Debian stable needs "ttf-ancient-fonts-symbola" installed, and it's only black-and-white. 15:55
Debian Testing and Unstable have color emojis for a couple of weeks.
Sorry, Stable needs "ttf-ancient-fonts" installed. 15:56
ilmari raschipi: firefox 50 comes with emojione 15:57
I'm using mozilla.debian.net/
15:59 llfourn left
brokenchicken perlpilot: CSS ::input-placeholder pseudo-el. Unsure of what current browser support is. 16:00
16:00 kyan left
brokenchicken or is it ::placeholder now 16:01
ilmari there's also a placeholder="🔍" attribute on the <input> 16:03
16:04 faraco left 16:07 heince joined 16:08 araraloren left, domidumont left, araraloren joined
bstamour Has anyone been using perl6 in production yet? I'd like to hear your stories :-) 16:10
16:10 holli_ joined
bstamour I'm starting to migrate a few simple build scripts over to it from powershell, and so far I'm not having many issues. 16:11
brokenchicken bstamour: yup. And I'm noticing some mild leakage on long-running programs. 16:12
bstamour brokenchicken: oh yeah?
16:12 zacts left
bstamour Luckily my build scripts are quite small. 16:13
16:13 heince left
brokenchicken Yeah, one leaks about ~50-100MB per day of runtime (though depends on how many queries it handles) 16:14
Also, bleed rakudo has a few fixes that may ameliorate that leakage, I was told.
16:14 zacts joined
brokenchicken By comparison, I have a Perl 5 script that I started in January 2016 that's still running... 16:15
bstamour Right on. So probably not quite ready for building 24/7 systems eh.
brokenchicken Yeah, not quite.
bstamour Still more pleasant than powershell for my tasks though :-) 16:16
brokenchicken :)
16:19 llfourn joined
brokenchicken guess this is as good a time as any to upgrade perl6 on my server... 16:21
16:22 zakharyas joined 16:23 acrussell left
araraloren I have a VPS, I used Perl 6 script manage agent program. 16:24
perlpilot bstamour: but, for getting stuff done, Perl 6 is totally ready. A couple of years ago I worked on a project to convert some fortran to java and used Perl 6 to build a testing framework that would parse them and run tests on individual routines. Worked great. 16:26
brokenchicken buggable: tag testneeded 16:27
buggable brokenchicken, There are 17 tickets tagged with TESTNEEDED; See perl6.fail/t/TESTNEEDED for details
brokenchicken ^ lots of low-lying fruit for contributors 16:28
16:28 colomon joined
colomon No such method 'slurp-rest' for invocant of type 'Proc' ? 16:28
Oh, it’s mentioned in the class Proc summary, but not listed in the actual …. 16:29
no, it’s used on .out
16:29 dugword left 16:32 araraloren left
timotimo right, otherwise it'd have to guess if you want stdout or stderr 16:32
16:32 araraloren joined
bstamour perlpilot: glad to hear it worked out nicely for you. 16:32
16:33 llfourn left 16:35 Ven left 16:36 wamba left
colomon timotimo: maybe I’m misremembering, but this seems more complicated than the last time I tried doing something like this. 16:36
maybe I just used qx in the past?
timotimo probably 16:37
16:37 holyghost joined
timotimo if you don't need to communicate back and forth, things get a lot easier 16:37
colomon oh yeah, that’s it — qx does exactly what I want 16:38
timotimo great :)
16:38 Ven joined
colomon is working on a short script to let himself grep against all the branch names in all the git repos under the current directory 16:38
colomon is always misplacing branches 16:39
16:41 melezhik_ left
araraloren Goodnight, guys . 16:42
16:42 kyan joined
colomon ’s script is now gist.github.com/colomon/d79c62638f...ebe484b1b3 16:47
16:49 acrussell joined
brokenchicken Nice exploit you got in it... 16:50
16:51 araraloren left, khw joined, Ven left 16:53 Ven joined
colomon brokenchicken: feel free to post a better version if you think it’s a worthwhile use of your time 16:55
brokenchicken colomon: gist.github.com/zoffixznet/b78b48d...a77558aa1d 16:57
colomon brokenchicken++ 16:59
17:02 obfusk left, obfusk joined, cog_ joined 17:05 cognominal left
brokenchicken oh crap 17:10
===> Install [FAIL] for DBIish:ver('0.5.9'): ===SORRY!===
P6M Merging GLOBAL symbols failed: duplicate definition of symbol TypeConverter
17:19 nicq20 joined, andrss joined
nicq20 Hey perlpilot, are you online? 17:20
[Coke] adds github.com/coke/p6-unicode-mangler...unifind.p6 in case anyone wants it.
andrss m: my $x = class { has $.foo = Nil }.new; say $x.?foo[0].?bar
camelia rakudo-moar 7d5bbe: OUTPUT«Nil␤»
andrss m: my $x = class { has $.foo = Nil }.new; say $x.?lines[0].?bar
camelia rakudo-moar 7d5bbe: OUTPUT«Nil␤»
andrss m: my $x = class { has $.foo = Nil }.new; say $x.?lines[0].?words
camelia rakudo-moar 7d5bbe: OUTPUT«Cannot resolve caller words(Nil: ); none of these signatures match:␤ (Cool:D $: |c is raw)␤ in block <unit> at <tmp> line 1␤␤»
brokenchicken heh 17:21
TimToady .? is for non-existing method, not for failure to call existing method 17:22
yoleaux 08:58Z <faraco> TimToady: hi
andrss but words(Nil) is not defined 17:23
17:23 zakharyas left
brokenchicken andrss: Nil is Cool and Cool does have .words method 17:24
andrss m: Nil.^mro.say
camelia rakudo-moar 7d5bbe: OUTPUT«(Nil (Cool) (Any) (Mu))␤»
andrss brokenchicken: shouldn't it be defined to something? 17:25
Nil.words == Nil
17:26 nicq20 left
[Coke] m: 55296.chr.say 17:26
camelia rakudo-moar 7d5bbe: OUTPUT«Error encoding UTF-8 string: could not encode codepoint 55296␤ in block <unit> at <tmp> line 1␤␤»
brokenchicken maybe
[Coke] O_o;
andrss m: my $x = Nil; say $x.?words
camelia rakudo-moar 7d5bbe: OUTPUT«Nil␤»
brokenchicken huh
m: class {}.?foo.?words 17:27
camelia rakudo-moar 7d5bbe: OUTPUT«Cannot resolve caller words(Nil: ); none of these signatures match:␤ (Cool:D $: |c is raw)␤ in block <unit> at <tmp> line 1␤␤»
brokenchicken Oh right
andrss: $x isn't Nil
It's Any
andrss why does it turn to Any?
brokenchicken andrss: because Nil is absense of value, not so much as a value in itself
[Coke] because that's the default type if you don't specify one, and assigning Nil to a container uses the default value. 17:28
brokenchicken andrss: it makes $x use it's default value, which by default is Any
andrss m: my Int $x = Nil; say $x.WHAT
camelia rakudo-moar 7d5bbe: OUTPUT«(Int)␤»
andrss i see
brokenchicken But the fact safe-method call ain't that safe is a problem IMO
17:30 llfourn joined
brokenchicken Nil special-cases some methods to propagate Nil: github.com/rakudo/rakudo/blob/nom/...pm#L10-L11 17:30
And has a FALLBACK that does the same, but for some Cool/Any/Mu methods that fallback ain't triggered, so it crashes and burns on the turn value of a safe-method call
*return 17:31
brokenchicken is reminded of similar situation with Failure and Any.elems -_-
[Coke] do we have a check for "is this codepoint a valid unicode char?"
Geth oc: 1f0be4a0a7 | (Wenzel P. P. Peppmeyer)++ | doc/Type/Nil.pod6
we may want to link here
17:32
oc: c23d9cafb2 | (Wenzel P. P. Peppmeyer)++ | doc/Type/Nil.pod6
link to container
brokenchicken try .chr ?
as in try { .chr }?
[Coke] right, was wondering if we had something less exceptional. 17:33
brokenchicken m: sub itcavuc { try $^c.chr andthen "yup" orelse "nope" }; say itcavuc $_ for 20, 55296, 0xFFFFFFFF
camelia rakudo-moar 7d5bbe: OUTPUT«WARNINGS for <tmp>:␤Useless use of constant string "nope" in sink context (line 1)␤yup␤yup␤Nil␤»
brokenchicken m: sub itcavuc { try {$^c.chr} andthen "yup" orelse "nope" }; say itcavuc $_ for 20, 55296, 0xFFFFFFFF 17:34
camelia rakudo-moar 7d5bbe: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Placeholder variable $^c may not be used here because the surrounding block takes no signature␤at <tmp>:1␤------> 3sub itcavuc { try {$^c.chr}7⏏5 andthen "yup" orelse "nope" }; say itca␤ expec…»
brokenchicken screw you
m: sub itcavuc ($c) { try {$c.chr} andthen "yup" orelse "nope" }; say itcavuc $_ for 20, 55296, 0xFFFFFFFF
camelia rakudo-moar 7d5bbe: OUTPUT«yup␤yup␤yup␤»
brokenchicken heh
weird
17:34 dakkar left 17:35 llfourn left
brokenchicken m: dd try {55296.chr} 17:35
camelia rakudo-moar 7d5bbe: OUTPUT«Error encoding UTF-8 string: could not encode codepoint 55296␤ in block <unit> at <tmp> line 1␤␤»
brokenchicken m: dd sub {try {55296.chr}}()
camelia rakudo-moar 7d5bbe: OUTPUT«Error encoding UTF-8 string: could not encode codepoint 55296␤ in block <unit> at <tmp> line 1␤␤»
brokenchicken gives up
TimToady you can't use and and or that way 17:36
brokenchicken Why not?
m: dd WHAT try {55296.chr}
camelia rakudo-moar 7d5bbe: OUTPUT«Str␤»
brokenchicken wat 17:37
TimToady well, you can, but "yup" is always defined
[Coke] note that this error is coming from moar's encoding files.
brokenchicken TimToady: which is why it'd get returned, but if the try {} is not defined, it'd switch to the orelese part
TimToady no 17:38
brokenchicken m: say (42 andthen "yup" orelse "nope")
camelia rakudo-moar 7d5bbe: OUTPUT«yup␤»
brokenchicken m: say (Int andthen "yup" orelse "nope")
camelia rakudo-moar 7d5bbe: OUTPUT«nope␤»
TimToady hmm, okay
brokenchicken TimToady: is it meant to work differently?
TimToady needs moar coffee
17:39 andrss left
TimToady was thinking of a different trap 17:39
brokenchicken m: my $x = try {55296.chr}; say "foo" 17:40
camelia rakudo-moar 7d5bbe: OUTPUT«foo␤»
brokenchicken m: my $x = try {55296.chr}; say $x.^name
camelia rakudo-moar 7d5bbe: OUTPUT«Str␤»
brokenchicken m: my $x = try {55296.chr}; say "foo $x bar"
camelia rakudo-moar 7d5bbe: OUTPUT«Error encoding UTF-8 string: could not encode codepoint 55296␤ in block <unit> at <tmp> line 1␤␤»
brokenchicken Weird. It's like a Failure, but a Str :)_
Ah. Now I get it. It doesn't explode until encoding operation 17:41
[Coke] m: say [+] (1..100).grep(* != 22); say [+] (1..100).race.grep(* !=22); #should this work?
camelia rakudo-moar 7d5bbe: OUTPUT«5028␤0␤»
brokenchicken m: sub itcavuc ($c) { try {$c.chr.encode} andthen "yup" orelse "nope" }; say itcavuc $_ for 20, 55296, 0xFFFFFFFF 17:42
camelia rakudo-moar 7d5bbe: OUTPUT«yup␤yup␤yup␤»
raschipi .chr should return a failure if something can't be a chr?
brokenchicken raschipi: and what would that be?
TimToady m: my $x = try {55296.chr}; say $x.ord 17:43
camelia rakudo-moar 7d5bbe: OUTPUT«55296␤»
brokenchicken m: my $x = try {55296.chr.encode}; dd ($x andthen "yup" orelse "nope")
camelia rakudo-moar 7d5bbe: OUTPUT«"nope"␤»
brokenchicken I don't get why it gives all yups in that last one :/
TimToady we've always kind of taken the approach with Perl that it's okay to think evil thoughts as long as you don't same them :)
*say
brokenchicken hah :D 17:44
m: sub itcavuc ($c) { try {$c.chr.encode} andthen "yup {.perl}" orelse "nope" }; say itcavuc $_ for 20, 55296, 0xFFFFFFFF 17:45
camelia rakudo-moar 7d5bbe: OUTPUT«yup utf8.new(20)␤yup utf8.new(20)␤yup utf8.new(20)␤»
brokenchicken m: sub itcavuc ($c) { $c.say; try {$c.chr.encode} andthen "yup {.perl}" orelse "nope" }; say itcavuc $_ for 50, 55296, 0xFFFFFFFF
camelia rakudo-moar 7d5bbe: OUTPUT«50␤yup utf8.new(50)␤55296␤yup utf8.new(50)␤4294967295␤yup utf8.new(50)␤»
brokenchicken cool, a bug 17:46
m: sub itcavuc ($c) { try {$c.chr.encode} andthen "yup {.perl}" orelse "nope" }; say itcavuc $_ for 55296, 50, 0xFFFFFFFF
camelia rakudo-moar 7d5bbe: OUTPUT«nope␤nope␤nope␤»
17:46 heince joined
TimToady m: sub itcavuc ($c) { $c.say; try {$c.chr.encode} andthen "yup $_.perl()" orelse "nope" }; say itcavuc $_ for 50, 55296, 0xFFFFFFFF 17:50
camelia rakudo-moar 7d5bbe: OUTPUT«50␤yup utf8.new(50)␤55296␤yup utf8.new(50)␤4294967295␤yup utf8.new(50)␤»
TimToady that's a weird one 17:51
m: sub itcavuc ($c) { $c.say; (try $c.chr.encode) andthen "yup $_.perl()" orelse "nope" }; say itcavuc $_ for 50, 55296, 0xFFFFFFFF 17:53
camelia rakudo-moar 7d5bbe: OUTPUT«50␤yup utf8.new(50)␤55296␤nope␤4294967295␤nope␤»
TimToady something to do with the block form of try
17:54 colomon left
brokenchicken m: sub itcavuc ($c) { dd try {$c.chr.encode} }; say itcavuc $_ for 55296, 50, 0xFFFFFFFF 17:57
camelia rakudo-moar 7d5bbe: OUTPUT«Nil␤Nil␤utf8.new(50)␤Nil␤Nil␤Nil␤»
brokenchicken block try + thunking of andthen?
17:58 cdg left
brokenchicken m: sub itcavuc ($c) { try {say $c} }; itcavuc $_ for 20, 55296, 0xFFFFFFFF 17:59
camelia rakudo-moar 7d5bbe: OUTPUT«20␤55296␤4294967295␤»
jnthn Could easily be...there's an amount of careless thunking happening.
brokenchicken m: sub itcavuc ($c) { try {say $c} andthen 42 }; itcavuc $_ for 20, 55296, 0xFFFFFFFF
camelia rakudo-moar 7d5bbe: OUTPUT«20␤20␤55296␤»
jnthn And every one of them is a concurrency bug
[Coke] jnthn: speaking of concurrency bugs: 18:00
m: say [+] (1..100).grep(* != 22); say [+] (1..100).race.grep(* !=22); #should this work?
camelia rakudo-moar 7d5bbe: OUTPUT«5028␤0␤»
[Coke] (and by work I mean emit 5028 2x) 18:01
jnthn Yes
[Coke] ok. rakudobugging.
18:03 heince left
brokenchicken Rakudobug for the try andthen rt.perl.org/m/ticket/show?id=130575 18:04
I mean rt.perl.org/Ticket/Display.html?id=130575
18:07 Ven left
jnthn [Coke]: Pretty sure it's already in there... 18:07
[Coke]: Oh, maybe the one in there is for map
18:08 Ven joined
[Coke] m: say [+] (1..100).race 18:10
camelia rakudo-moar 7d5bbe: OUTPUT«0␤»
[Coke] looks like it's happening even without .grep or .map
18:10 bstamour left
brokenchicken m: ^100 .race.elems.say 18:11
camelia rakudo-moar 7d5bbe: OUTPUT«0␤»
brokenchicken m: ^100 .race(:batch).elems.say
camelia rakudo-moar 7d5bbe: OUTPUT«0␤»
18:11 lmmx left 18:12 huggable left 18:13 huggable joined, ChanServ sets mode: +v huggable, buggable left, buggable joined, ChanServ sets mode: +v buggable 18:14 Geth left, Geth joined, ChanServ sets mode: +v Geth, bstamour joined 18:15 NeuralAnomaly joined, ChanServ sets mode: +v NeuralAnomaly
brokenchicken buggable: speed 18:15
buggable brokenchicken, ▄▄▄▄▆▃▄▅▃▅▄▄▃█▆▃▃▄▄▄▄▅▄▅▄▅▅▆▄▄▆▄▄▆▄▂▁▂▃▂▂▄▃▂▇▂▂▃▁▁ data for 2016-12-28–2017-01-17; range: 4.878s–5.958s
raschipi u: 🏳️‍🌈 18:16
unicodable6 raschipi, U+1F3F3 WAVING WHITE FLAG [So] (🏳)
raschipi, U+FE0F VARIATION SELECTOR-16 [Mn] (◌️)
raschipi, gist.github.com/b38c718a4e29ea8b5f...ab9d25ca88
18:17 zakharyas joined
brokenchicken upgraded to leatest and greatest perl6 18:19
timotimo too late. too great. 18:20
raschipi no, too laete.
brokenchicken m: say 316888-316852 18:21
camelia rakudo-moar 7d5bbe: OUTPUT«36␤»
brokenchicken cool!
oh wait
m: say 317216-317184 18:23
camelia rakudo-moar 7d5bbe: OUTPUT«32␤»
brokenchicken m: say 317264-317216
camelia rakudo-moar 7d5bbe: OUTPUT«48␤»
timotimo what just happened ...
brokenchicken jnthn: ^ as you predicted, the bot leakage got reduced. I see in the backlog saying that buggable's `speed` command leaks 172KB and now on HEAD rakudo it leaks only 32-48KB per command
18:24 ufobat left, domidumont joined
brokenchicken in here irclog.perlgeek.de/perl6-dev/2017-...i_13885210 18:24
ilmari[m] raschipi: riot.im on android 7 renders the rainbow flag right 🙆🏼‍♂️ 18:26
u: 🙆🏼‍♂️
unicodable6 ilmari[m], U+1F646 FACE WITH OK GESTURE [So] (🙆)
ilmari[m], U+1F3FC EMOJI MODIFIER FITZPATRICK TYPE-3 [Sk] (🏼)
ilmari[m], gist.github.com/e58543e6a54a14329b...9014cc088e
jnthn brokenchicken: That's an improvement. 18:28
brokenchicken indeed
18:31 llfourn joined 18:32 domidumont left
brokenchicken m: say 320492-320200 18:32
camelia rakudo-moar 7d5bbe: OUTPUT«292␤»
brokenchicken hm... or maybe it's much more variable than I originally though -_-
Need to find time to golf it down
18:34 domidumont joined
jnthn How are you measuring? 18:34
18:36 llfourn left, holyghost left
brokenchicken jnthn: looking at RES column in top, running "buggable, speed" in #zofbot and measuring the jump 18:36
jnthn ah
That's going to be noisy indeed
brokenchicken What's a better way?
mspo unix question? 18:37
jnthn Do a number of runs and average
brokenchicken OK
moritz or take the min 18:38
18:38 dataf3l joined
jnthn The GC runs when it's filled up its nursery, and only then will non-GC-managed I/O buffers also get cleaned up; old-generation collections also are done based on a percentage of RSS, meaning that its normal behavior for memory to increase until a platteau 18:38
dataf3l Hey guys
mspo csh's time has a memory-measuring feature but i'm not sure how accurate it is
jnthn So immediately after startup isn't representative of long term behavior 18:39
brokenchicken Ah
mspo can moar grow a signal handler to print out getrusage stuff?
ala kill -3 in java doing a stack trace, for example
dataf3l I’m wondering, how does one run rakudo v2016.11 or 2016.10 on Win32 when the OS is 32 bits? 18:40
the website only has 2016.01 on 32 bits
did Perl6 drop support for 32 bits?
brokenchicken dataf3l: no volunteers to build the package
dataf3l oh
but it builds?
I can just build it?
brokenchicken Dunno, try?
moritz who knows? 18:41
dataf3l If I bump into compilation problems will you guys assist, I can share the binaries
?
brokenchicken If we know the answer to those problems, sure.
dataf3l how likely is it that it’ll compile 18:42
100% ?
do I have to change the C sourcecode? 18:43
18:44 sortiz joined
sortiz \o #perl6 18:44
jnthn I think it's quite likely to build.
Especially with the MSVC toolchain
18:44 kyan left
brokenchicken dataf3l: only one way to find out, bruh :) 18:45
dataf3l: it does build on 32-bit Linux without issues
18:48 wamba joined, dataf3l left
brokenchicken heh, I guess it didn't work out :P 18:48
18:48 dataf3l joined
sortiz Some moar change in the last week broke DBIish with "P6M Mergin GLOBAL symbol failed: duplicate definition of symbol TypeConverter", a role recently added. Any ideas? 18:48
brokenchicken sortiz: is it definitely last week and not since 2016.12? 18:49
Do you have some isolated piece of code that can reproduce it? We could run it through bisectable bot 18:50
18:50 FROGGS joined
sortiz brokenchicken, the change in DBIish landing seven days ago, and was tested with current moar. 18:50
brokenchicken current as in whatever HEAD was 7 days ago? 18:51
sortiz yep
brokenchicken Don't recall anything relevant coming it. It was mostly unicode work and iterator shuffling 18:52
*commin g in
18:53 dataf3l left
brokenchicken oh, I actually have 1 install from Jan 10th 18:53
sortiz With 2016.12 there are no problems :-(
18:53 labster joined
brokenchicken That one is very different from HEAD as far as module loading goes. 18:54
sortiz: it'd be one of these commits: github.com/rakudo/rakudo/compare/2...866...HEAD 18:55
I'm not seeing that issue on 2016.12-266-ged5c866 rakudo (that's Jan 10 HEAD)
18:55 kaare_ joined
[Coke] has become the local git expert, apparently. 18:57
18:58 kyan joined
geekosaur (g)it happens >.> 18:58
brokenchicken sortiz: do you know which line of code causes that error? 18:59
18:59 acrussell left
brokenchicken nm, got it 19:01
We can bisect
sortiz The loading of the Pg driver, that uses the new role trigger it
brokenchicken c: HEAD use lib </home/bisectable/test/lib>; use DBIish; DBIish.install-driver(<Pg>) 19:02
committable6 brokenchicken, gist.github.com/0ed7f6b1d95f134259...01bffde16f
brokenchicken aww 19:03
1 sec
c: HEAD use lib </home/bisectable/test/DBIish/lib /home/bisectable/test/Blob/lib>; use DBIish; DBIish.install-driver(<Pg>) 19:04
committable6 brokenchicken, ¦«HEAD»: «timed out after 10 seconds, output»: «exit signal = SIGHUP (1)» 19:05
brokenchicken c: HEAD use lib </home/bisectable/test/DBIish/lib /home/bisectable/test/Blob/lib>; use DBIish; DBIish.install-driver(<Pg>)
committable6 brokenchicken, gist.github.com/e6e31cfdaa7d28f911...d458aaa980
brokenchicken yey
bisect: old=ed5c866 new=HEAD use lib </home/bisectable/test/DBIish/lib /home/bisectable/test/Blob/lib>; use DBIish; DBIish.install-driver(<Pg>) 19:06
bisectable6 brokenchicken, Bisecting by exit signal (old=ed5c866 new=7d5bbef). Old exit signal: 1 (SIGHUP)
brokenchicken gawddammit
oh
I thought it turned it off
bisectable6 brokenchicken, bisect log: gist.github.com/e94774c8bbd0c51bb0...8484a1f160 19:07
brokenchicken, (2017-01-17) github.com/rakudo/rakudo/commit/7d...dd045d9c4e
brokenchicken Hehe. Who knew the extra colon in the changelog could wreck such havok! 19:08
But yeah, all of them got killed due to timeout because it takes 10+s to compile :(
19:09 domidumont left
brokenchicken Plan B: change the bot timeout 19:10
Actually, I don't know how to restart the bots :/ 19:11
sortiz I'll try manually bisect... 19:12
19:12 bisectable6 left 19:13 bisectable6 joined, ChanServ sets mode: +v bisectable6
brokenchicken That did the trick... 19:13
bisect: old=ed5c866 new=HEAD use lib </home/bisectable/test/DBIish/lib /home/bisectable/test/Blob/lib>; use DBIish; DBIish.install-driver(<Pg>) 19:14
bisectable6 brokenchicken, Bisecting by exit code (old=ed5c866 new=7d5bbef). Old exit code: 0
brokenchicken, bisect log: gist.github.com/ca550dc5044ba4f208...cbb2acb23f 19:16
brokenchicken, (2017-01-16) github.com/rakudo/rakudo/commit/f6...db9d8e661d
19:16 RabidGravy left
brokenchicken ehehe 19:16
sortiz: got it!
sortiz brokenchicken, thank you so much!
brokenchicken pmurias: are you around? Seems the magic variables commit is now causing merge conflict 19:17
pmurias brokenchicken: I'm around
brokenchicken pmurias: see above bisectable log and commit it points to. Any idea how to fix that?
pmurias looking...
brokenchicken The "P6M Merging GLOBAL symbols failed: duplicate definition of symbol TypeConverter" error
19:19 bisectable6 left, bisectable6 joined, ChanServ sets mode: +v bisectable6
pmurias brokenchicken: does this happen only with DBIish or with other modules? 19:19
brokenchicken pmurias: it hasn't happened with any of these modules: gist.github.com/zoffixznet/3a528be...017d58b593 19:21
19:21 RabidGravy joined
brokenchicken pmurias: and it doesn't happen with DBIish when I check out a commit earlier than what these changes brought in: github.com/perl6/DBIish/compare/478fdb2...HEAD 19:21
Does anyone have an idea how to repro that error in rt.perl.org/Ticket/Display.html?id=130434 ? 19:24
The author says they don't remember and I can't repro anything that doesn't also include the full name along with abridged one :/ 19:25
m: use NativeCall; my CArray[num64] $x where :not = CArray[num64].new: 124e0 19:26
camelia rakudo-moar 7d5bbe: OUTPUT«Type check failed in assignment to $x; expected <anon> but got NativeCall::Types::CArray[num64] (NativeCall::Types::CA...)␤ in block <unit> at <tmp> line 1␤␤»
brokenchicken like this includes full name :/
19:30 llfourn joined
brokenchicken m: use NativeCall; class { has CArray[num64] $!x; submethod BUILD { $!x := CArray[int64].new; $!x[0] = 42e0 } }.new 19:31
camelia rakudo-moar 7d5bbe: OUTPUT«Type check failed in binding; expected NativeCall::Types::CArray[num64] but got NativeCall::Types::CArray[int64] (NativeCall::Types::CA...)␤ in submethod BUILD at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
brokenchicken is tempted to close that ticket without fix
19:33 dataf3l joined
dataf3l does compiling perl6 on windows 32 bit require java? 19:34
I’m trying to build moar
brokenchicken no
dataf3l: how are you compiling it
19:35 llfourn left
brokenchicken perl Configure.pl --gen-moar --gen-nqp --backends=moar; make; make test; make install 19:35
or whatever make is on windows.... cmake nmake? something
pmurias brokenchicken: do we have a 21 char type name limit in errors? 19:36
brokenchicken pmurias: nope 19:37
19:38 raschipi left
brokenchicken The 21 limit is for the .perl() of the thing, which makes sense. And I can't reproduce the reported error where it cuts the name like the way it was reported 19:38
timotimo dataf3l: how did you get the idea? that really interests me
19:41 dataf3l left, dataf3l joined 19:43 dataf3l left 19:44 dataf3l joined 19:45 xzhao joined 19:46 dataf3l left 19:48 dataf3l joined 19:49 bjz joined
dataf3l I’m trying to use Perl6 for $work 19:50
so,
one of my coworkers is trying to install the perl6 on 32 bits
but the last available version is 2016.01 19:51
timotimo right. i thought you were going to compile it yourself?
dataf3l which is ancient, so even panda fails on it
I ran the perl Configure.pl command advertised on the site
instructions to build perl6
by hand
timotimo yeah 19:52
dataf3l Instructions do not explain the difference between windows and linux, so I assumed it was the same steps
timotimo should be the same steps
dataf3l after trying the command, indicating as backend moar (and NOT jvm) the software failed
timotimo can you put the output up on some pastebin or something?
brokenchicken hm, what typechecks would fail when .^name of expected and given things match?
timotimo brokenchicken: you could have different actual objects there ... try outputting the .WHICH and/or .WHERE of both the .WHAT and the thing you're comparing against? 19:53
dataf3l it failed on nqp/Configure.pl while it building 19:54
it appears to complain about the lack of java.exe
albeit in a not very clear way
brokenchicken timotimo: what do you mean by different actual objects? How does that factor into type check other than a `where` clause (and with it, I can't repo the type check with names in it) 19:55
timotimo can you try manually going into nqp/ and running its configure.pl with the same commands, but also supplying --prefix=../install ?
brokenchicken: i think i'm misunderstanding what's going on?
brokenchicken dataf3l: well, what command did you run?
dataf3l: you had two questions you didn't answer.
timotimodataf3l: how did you get the idea? that really interests me 19:56
and brokenchic+│ dataf3l: how are you compiling it
timotimo they just gave the answer, that nqp's configure.pl said something about java.exe
dataf3l I’ll tell you in a second
wait
brokenchicken timotimo: I'm trying to get this case to run: github.com/rakudo/rakudo/blob/nom/...1975-L1976 19:57
when both $!got.^name and $!expected.^name are the same, so all you get is the abridged $perl
dataf3l how are you compiling it: I downloaded Strawberry perl and it seems to include a cc toolchain
timotimo oh, that's easy
dataf3l should I use VS2015 instead?
brokenchicken dataf3l: but what commands are you running?
timotimo just put two classes of the same name into two different packages
brokenchicken :S 19:58
timotimo then put a sub into one package that expects the type from that package, and call it with the type from the other package
something like that
dataf3l C:\Users\wfigueredo\Downloads\rakudo-star-2016.11>perl Configure.pl --backend=mo
ar --gen-moar
Building NQP ...
C:\Strawberry\perl\bin\perl.exe Configure.pl --prefix=C:\Users\wfigueredo\Downlo
ads\rakudo-star-2016.11\install --backends=moar --make-install
Creating tools/build/install-jvm-runner.pl ...
El sistema no puede encontrar la ruta especificada.
===SORRY!===
No suitable MoarVM (moar executable) found using the --prefix
(You can get a MoarVM built automatically with --gen-moar.)
Command failed (status 256): C:\Strawberry\perl\bin\perl.exe Configure.pl --pref
ix=C:\Users\wfigueredo\Downloads\rakudo-star-2016.11\install --backends=moar --m
ake-install
timotimo did you see the part where i asked you to put it up on a pastebin site?
dataf3l the part that says “el sistema no puede hallar la ruta especificada” is the actual error, that is, it says “I can’t find the file”, Windows, being a useless operating system doesn’t even tell me WHAT file it couldn’t find, because Win32 is garbage 19:59
19:59 espadrine_ joined
dataf3l I didn’t see it!!!!! 19:59
timotimo it doesn't make sense that it'd create that script there
something else must be going horribly wrong
dataf3l like?
timotimo can you run that without --make-install? 20:00
20:00 bjz_ joined, bjz left
dataf3l I just ran perl Configure.pl --backend=moar --gen-moar and it was the root Configure.pl that sent —make-install to the child nqp/Configure.pl 20:00
20:00 domidumont joined
dataf3l so in order to do that do I need to change Configure.pl ? 20:01
timotimo no
can you try manually going into nqp/ and running its configure.pl with the same commands, but also supplying --prefix=../install ?
that's what i asked ~five minutes ago
dataf3l ok I’ll try --prefix=../install and report back 20:02
20:02 girafe joined
timotimo be sure to do it inside nqp/ 20:02
and remove --make-install
i have to go AFK for a bit 20:04
but anyway, install-jvm-runner.pl doesn't depend on java at all, it's just a little perl script that spits out a .sh or .bat file
it could be that it's not finding perl.exe
dataf3l ok, it’s cloning a repo or something
brokenchicken that's good 20:05
timotimo and that the error you're getting is because it can't find perl.exe
dataf3l why can’t it
perl.exe is in the path
timotimo it was just a thought
you're calling configure.pl with C:\Strawberry\perl\bin\perl.exe rather than just perl
so i thought it's probably not in the path 20:06
20:06 Ven left
timotimo AFK now 20:06
dataf3l I ran “perl Configure.pl”
it’s in the path for sure 20:07
20:07 skids left
dataf3l I guess 32 bits is dead, right guys? 20:08
20:08 lucasb joined
brokenchicken has a 32-bit box two feet away 20:09
hobbs the irrelevant trolling nonsense isn't really helping you any.
dataf3l what I meant to say, was
brokenchicken dataf3l: I had issues building from source on Win7; I doubt the issues you're experiencing have any relation to 32-bit
dataf3l that perhaps 32 bits is no longer a viable architecture for computing in the future, given everybody has now moved on to 64 bits 20:10
20:10 Ven joined
dataf3l May I know which issues? 20:10
did you succeed?
brokenchicken dataf3l: also I see you're compiling "rakudo-star". I've no idea if it's meant to be compilable on windows.... I was under the impression these were pre-built packages for specific OSs
dataf3l: no, I just installed rakudo star. The issues... um, IIRC it was something with git
dataf3l I downloaded the sources to rakudo star from the website 20:11
brokenchicken mkay
dataf3l what should I be compiling instead? 20:12
brokenchicken dunno
dataf3l: on Win10, I successfully cloned github.com/rakudo/rakudo and ran perl Configure.pl --gen-moar --gen-nqp --backends=moar; nmake; nmake test; nmake install in it
with Strawberry perl
dataf3l: in your situation, my first take would be to compile Rakudo compiler: rakudo.org/downloads/rakudo/ 20:13
lucasb (arrived in the middle of the conversation) what, building R* on win doesn't work? what about building the 3 tarballs separated?
dataf3l Strawberry perl doesn’t include “make"
brokenchicken dataf3l: hence why my command reads "nmake"
lucasb: well, what is this? Is this the source that's meant to be compileable anywhere? rakudo.org/downloads/star/rakudo-st....11.tar.gz 20:14
dataf3l I also don’t have nmake :(
brokenchicken hm
dataf3l I wonder if this builds using mingw
the website said it doesn't 20:15
brokenchicken oh, maybe I'
lucasb brokenchicken: well, I would guess the R* tarball would work the same as the 3 individual tarballs for compiling from source. but idk, never tried it on windows :)
brokenchicken m misremembering
dalek line-Perl5: 12d2cb0 | niner++ | / (3 files):
Just use the recommended name for META6.json

  META.info support is on its way out of the toolchain.
brokenchicken dataf3l: I see I don't got an nmake on my Win7 box where I had issues in the past too
dataf3l I’ll buy a beer to whomever can provide win32 32 bits windows binaries for perl6.11
brokenchicken beer? gross. How about some cocaine instead? 20:16
lucasb perl6.eleven!
dalek line-Python: 5577232 | niner++ | META (2 files):
Just use the recommended name for META6.json

  META.info support is on its way out of the toolchain.
20:16 domidumont left
dataf3l is that because I’m Colombian? 20:17
brokenchicken dataf3l: what version of strawberry you got?
dataf3l 5.24 downloaded today
pmurias brokenchicken: I figure out why that commit broke DBIish
* figured
dataf3l downloading mingw now, in order to have make 20:18
brokenchicken dataf3l: no, I just find it strange there's only social acceptable drug offered as reward :)
pmurias++ sweet!
*only one
lucasb a style question: when you see 'loop (my $i = 0; ...; ...) {}' do you think it's ok? or do you feel uncomfortable because you know the scope of $i goes on? 20:19
brokenchicken dataf3l: weird. it says "compiler (gcc) + related tools" and I definitely don't got mingw on my Win10 box
perlpilot lucasb: I feel uncomfortable because it's a C-style loop and Perl has better looping constructs.
20:20 dataf3l left
brokenchicken lucasb: unncomfortable. And I'd never use that style a loop either. We got sequence operator to produce any sort of combination you could want 20:20
20:20 kyan left, dataf3l joined
dataf3l VS2015 perhaps? 20:20
pmurias brokenchicken: sugar is acceptable too
brokenchicken hehe, you're right!
lucasb ok, thanks! but I was refering specifically about the scope of the 'my $i'! forget about the loop construct :)
dataf3l Wait, DBIsh is broken!?!?! 20:21
brokenchicken lucasb: yeah, uncomfortable :) I
dataf3l guys, forget about me, I’m irrelevant!
brokenchicken lol
dataf3l DBIsh is way more important!
brokenchicken dataf3l: that's already being taken care of
dataf3l phew!
20:23 Ven left
dataf3l do you guys think it will build under mingw? 20:24
brokenchicken huggable: 8ball will it build under mingw
huggable brokenchicken, nothing found
brokenchicken dataf3l: if you ain't got nmake there's your problem
I thought that came with strawberry 20:25
pmurias pmurias-- # trying to be too smart and breaking things 20:26
20:26 dataf3l left, Ven joined 20:27 zakharyas left
brokenchicken pmurias++ fixing stuff when it brokle 20:27
20:28 dataf3l joined 20:30 dataf3l left
sortiz brokenchicken++ timely report 20:30
And bisecting support! :-) 20:31
20:31 llfourn joined, dataf3l joined 20:32 holyghost joined
brokenchicken \o/ 20:32
20:33 haxmeister joined 20:36 dataf3l left, llfourn left 20:37 Ven left, dataf3l joined
dataf3l Ok I’m trying to build perl6 and now I have a copy of make downloaded from mingw 20:37
20:38 lucasb left
brokenchicken dataf3l, well it took ages to download and unpack the right file, but I see Strawberry comes with "dmake" and "gmake" try one of those 20:38
dataf3l: heh, well, or mingw I guess :)
20:39 xzhao left, dataf3l left 20:40 dataf3l joined 20:41 Ven joined 20:42 dataf3l left 20:44 dataf3l joined 20:46 dataf3l left, dataf3l joined
dataf3l Perl6 rakudo 2016.11 on Windows on 32 bits failed to compile following the instructions of the website, from source pastebin.com/V3fWGSZ6 20:47
20:47 shayan_ left
dataf3l using gcc and mingw 20:47
brokenchicken dataf3l: is "MSVC toolchain" jnthn++ mentioned free? Try with that instead? 20:49
20:52 dataf3l left
geekosaur heh 20:52
20:52 Ven left
geekosaur there's a free version but it's fairly limited 20:52
20:52 dataf3l joined
FROGGS but it is enough to build rakudo 20:52
20:54 dataf3l left 20:55 Ven joined 20:56 dataf3l joined, RabidGravy left
FROGGS weird though that dyncall fails to build with gcc 20:57
tadzik FROGGS! \o/ 20:58
FROGGS hi tadzik :o) 20:59
20:59 RabidGravy joined, bjz_ left 21:00 Gasher_ joined, sufrostico left
geekosaur it's not going to be just gcc, it's also going to involve how mingw handles dynamic loading, which will almost certainly be weird because mingw wants to pretend to be unixish and windows ain't 21:00
21:01 Gasher left, dataf3l left
FROGGS geekosaur: well, you should know that rakudo is *known* to work on windows using gcc 21:02
even Nativecall works
21:02 andrzejku joined
FROGGS which was not even problematic to get it to work actually 21:02
geekosaur under which environment? mingw, msys, msys2, msysgit, cygwin ... each slightly different and needing different support hacks
(probably a few more variants in there too...) 21:03
FROGGS mingw IIRC
definitly not cygwin
21:03 setty1 left, dataf3l joined
andrzejku hi people 21:03
moritz, hi
21:03 zakharyas joined
FROGGS I just installed strawberry Perl 5 (or activestate's) and used their gcc to build moar, nqp and rakudo 21:03
hey andrzejku 21:04
andrzejku did you ever play tibia?
21:05 cygx joined
cygx o/ 21:05
21:05 dataf3l left
cygx I regularly build with mingw64 21:05
21:05 dataf3l joined
cygx I can take a shot at making the 32-bit build work later today if it's an easy fix 21:06
RabidGravy boo
yoleaux 16 Jan 2017 05:18Z <azawawi> RabidGravy: Shorter code without get- and set- prefixes github.com/azawawi/perl6-gtk-scint...02-basic.t :)
tadzik I've only ever seen tibia when people on programming classes in PKiN were slacking off :P 21:07
but I was a sweaty tryhard so I never even tried it
RabidGravy okay something weird has happened, mory 21:08
er 21:09
FROGGS dataf3l: I might have a solution for you... 21:10
andrzejku tadzik, :)
dataf3l I’m all ears
FROGGS dataf3l: alter this line: github.com/MoarVM/dyncall/blob/1da...allf.c#L90
dataf3l: to this: hg.dyncall.org/pub/dyncall/dyncall/...allf.c#l91 21:11
21:12 shayan_ joined
dataf3l all right 21:12
I’ll try back and report back 21:13
21:15 dataf3l left 21:16 dataf3l joined 21:17 RabidGravy left 21:20 RabidGravy joined, dataf3l left, dataf3l joined 21:21 teatime left, cdg joined
RabidGravy something in the last commit or two of rakudo has caused it to eat all my memory in the Parse stage 21:21
sortiz RabidGravy, yep. Was pmurias last commit, an endless loop. 21:22
RabidGravy ah 21:23
sortiz pmurias is trying to fix DBIish...
RabidGravy yeah I saw
that's why I was rebuilding :) 21:24
sortiz We are in the same... :) 21:26
RabidGravy In other DBIish news I found I can make DBD::Informix by largely copying DBD::ODBC :) 21:28
they "CLI" API is basically an un-managed ODBC
I could do more cool stuff with the esql interface but that entails, y'know, writing C 21:29
21:30 setty1 joined
timotimo cool? 21:31
21:31 Tonik left 21:32 llfourn joined
[Coke] 🝖 21:32
RabidGravy with the collections and UDR stuff and all 21:34
21:36 dataf3l left
RabidGravy I think all the special blob stuff is exposed though 21:36
andrzejku hi
21:36 dataf3l joined
andrzejku perl6 and C++ binding all is possible now? 21:36
21:37 llfourn left, Ven left
[Coke] docs.perl6.org/language/nativecall 21:38
geekosaur semi-possible, some aspects of c++ will never work well from not-c++ 21:39
andrzejku what do you mean some aspects?
geekosaur (then again some aspects of C are impossible with nativecall; too many dark corners)
21:40 Ven joined
[Coke] correctively hurls docs.perl6.org/language/nativecall#C++_Support 21:40
geekosaur if you refer to a template, it has to already have been instantiated
21:41 dataf3l left
geekosaur there is no way for perl 6, or anything other than compiling and linking C++ code, to instantiate a template itself; you can only use existing instances in compiled C++ code 21:41
RabidGravy I've got a working binding to a C++ library somewhere 21:42
21:42 FROGGS left
cygx using latest 32-bit strawberry perl portable, the moarvm build failed with 'dyncall_types.h: No such file or directory' (after applying FROGGS's fix) 21:42
[Coke] will bring his windows laptop home and give it a whirl tonight. 21:43
21:43 dataf3l joined
cygx could be a race condition - typing gmake again continues the build... 21:43
no luck :(
Geth cosystem: 4bcad33044 | (Nick Logan)++ | META.list
s/META.info/META6.json/
21:44 bjz joined
RabidGravy github.com/Perl6-Noise-Gang/Audio-...ndTouch.pm 21:44
21:47 dataf3l left 21:48 dataf3l joined 21:49 bjz left 21:50 dataf3l left 21:51 dataf3l joined, Ven left, TEttinger joined, skids joined 21:52 jonadab joined 21:53 skids left 21:55 Ven joined, dataf3l left 21:56 dataf3l joined 21:59 dataf3l left, zakharyas left 22:00 dataf3l joined, dataf3l left 22:02 dataf3l joined 22:04 andrzejku left 22:06 dataf3l left 22:07 rindolf left, dataf3l joined
RabidGravy toodles 22:08
22:10 dataf3l left
lizmat bibi 22:11
22:11 dataf3l joined 22:12 RabidGravy left, dataf3l left 22:13 dataf3l joined 22:15 dataf3l left 22:16 dataf3l joined 22:18 dataf3l left 22:19 dataf3l joined 22:22 dataf3l left 22:23 dataf3l joined 22:25 dataf3l left 22:26 dataf3l joined 22:29 kyan joined, dataf3l left 22:30 dataf3l joined, lukaramu left 22:32 dataf3l left 22:34 llfourn joined, dataf3l joined 22:37 dataf3l left, mr-foobar left, dataf3l joined, eady joined 22:38 mr-foobar joined 22:39 llfourn left 22:41 dataf3l left 22:42 dataf3l joined 22:45 dataf3l left, cygx left 22:46 dataf3l joined 22:49 dataf3l left, dataf3l joined 22:51 dataf3l left 22:52 dataf3l joined
brokenchicken gifts dataf3l a new router 22:52
dataf3l what?
brokenchicken Or is that dynamic.etb.net.co being *very dynamic* 22:53
dataf3l oh damn
sorry guys
Ok I may have solved it
brokenchicken dataf3l: i.imgur.com/1kNuxsK.png :)
22:55 haxmeister left, dataf3l left
samcv hello o/ 22:58
sortiz \o samcv 22:59
23:03 bstamour` joined
samcv hmm i wonder what's the highest number that is shorter when written in 0x hex notation 23:11
m: for 0..10000 -> $num { if $num.base(16).chars +2 < $num.chars { say $num; exit}} 23:12
camelia ( no output )
samcv m: for 0..10000000 -> $num { if $num.base(16).chars +2 < $num.chars { say $num; exit}} 23:13
camelia rakudo-moar 703799: OUTPUT«(timeout)»
samcv seems it has gotta be a bigger number than I am working with 23:15
kaare_ pmurias: I can confirm that your fix works for the DBIish installation 23:18
Just wondering if there could be a test in rakudo for that 23:19
geekosaur samcv, it doesn;t take long for the size difference to be > the prefix; the question that makes sense is not "highest number that is shorter in hex" but "highest number that is larger", because beyond some point all hex representations will be shorter than decimal 23:22
lizmat kaare_: maybe a simple solution would be a test for the problem seen in roast ?
brokenchicken samcv: don't think there's such a number at all. in hex num you can pack 150% of a dec num per char, so you'd never reach compactification of 1000%
or 100000% rather
samcv no there is a number that exists
it's like 99999999 or something tho
well i tested that and it was 1 digit shorter :P 23:23
23:27 ttt joined
pmurias kaare_, lizmat: there should be a regression test for the bug my optimalization caused 23:30
23:31 BenGoldberg joined
pmurias I'll write one tommorow as I'm not to be trusted today ;) 23:31
lizmat ++pmurias 23:34
lizmat calls it a day
good night, #perl6!
23:35 llfourn joined, tardisx left
sortiz 'gnight lizmat, and thanks again 23:36
23:38 tardisx joined 23:40 Gasher_ left, llfourn left 23:42 pmurias left, cibs left 23:44 cibs joined 23:45 girafe left
samcv META6 seems to be failing tests for me 23:48
===> Testing [FAIL]: META6:ver('0.0.11'):auth('github:jonathanstowe')
Aborting due to test failure: META6:ver('0.0.11'):auth('github:jonathanstowe')
An exception occurred while evaluating a constant 23:49
timotimo samcv: well, luckily they start being the same size at 1000000 23:54
samcv lucky for what?
seems unlucy
*lucky
timotimo yeah, it sucks
samcv oh also I think it may not have been packing those 16bituint arrays 23:56
i think so. at least the memory addresses of each element was one away from each other so it would seem so
maybe not in the source code, but at least in memory
going to see how big all the names base 40 encoded in one big array takes to store 23:57
timotimo yes yes :) 23:58
samcv idk maybe it will not pack :(
timotimo we will make it pack
samcv compiler hints?
timotimo violence if necessary