»ö« 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('hi')</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: 012(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«01234(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: 01234(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)yupyupNil» | ||
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 signatureat <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«yupyupyup» | ||
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«50280» | ||
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«yupyupyup» | ||
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«50yup utf8.new(50)55296yup utf8.new(50)4294967295yup 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«nopenopenope» | ||
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«50yup utf8.new(50)55296yup utf8.new(50)4294967295yup 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«50yup utf8.new(50)55296nope4294967295nope» | ||
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«NilNilutf8.new(50)NilNilNil» | ||
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«20552964294967295» | ||
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«202055296» | ||
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«50280» | ||
[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. | |||
timotimo │ dataf3l: 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 |