»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend! | feather will shut down permanently on 2015-03-31 Set by jnthn on 28 February 2015. |
|||
00:02
skids left
00:03
skids joined,
travis-ci joined
|
|||
travis-ci | Rakudo build passed. Timo Paulssen 'BlockVarOptimizer's $!poisoned can be a native int | 00:03 | |
travis-ci.org/rakudo/rakudo/builds/54652614 github.com/rakudo/rakudo/compare/0...780b2f8a2f | |||
00:03
travis-ci left
|
|||
timotimo | ...oh? not sure why we got that announcement right now | 00:04 | |
but i guess i'm honored? | |||
geekosaur | hm? travis rebuilds on every commit | 00:08 | |
timotimo | yes, but it doesn't announce every commit | 00:09 | |
00:09
skids left,
skids joined
00:15
skids left,
skids joined,
laouji joined
00:16
skids left,
skids joined
00:20
madmuid left
00:27
skids left,
skids joined
00:30
skids left,
skids joined
00:36
virtualsue left
|
|||
raydiak | timotimo: travis-ci.org/rakudo/rakudo/builds looks like the previous build timed out, so guess it regarded yours as the point where it went from failing to passing again, even though we hadn't gotten the irc notification of the prior failure yet | 00:37 | |
00:39
laouji left
00:40
laouji joined,
laouji left
00:41
aborazmeh joined,
aborazmeh left,
aborazmeh joined,
laouji joined
00:48
skids left,
skids joined
00:52
skids left,
skids joined
00:56
skids left,
skids joined
|
|||
skids finally navigates the twisted maze of interlocking bitrotted desktop configration mechanisms and turns his new laptop's irc window black o/ | 00:59 | ||
Really the situation o linux desktop has gotten completely out of control. | |||
01:01
dayangkun joined
01:02
tinyblak joined
01:03
raiph left
|
|||
dalek | c: 876c83d | retupmoca++ | bin/p6doc.bat: Add p6doc runner for windows Pretty much a straight copy from panda.bat |
01:06 | |
01:06
ash-gti left
01:07
adu left
|
|||
raydiak gave up on desktop linux and basically just runs it for the web browser and graphics work, virtually everything else gets done in the transparent terminal | 01:07 | ||
Juerd | How is that not desktop linux? | 01:08 | |
01:09
yeahnoob joined
|
|||
raydiak | all the essential parts of my regular workflow work just as well sans X11, mainly excepting just the browser | 01:10 | |
heck I've spent months at a time doing it all over ssh | |||
Juerd | You're describing exactly how I've been using Linux, on the desktop, ever since I began using X. | 01:11 | |
I don't really see how using an xterm makes it any less "desktop linux" | |||
With higher resolutions I have switched from a single fullscreen xterm to smaller 80x24 ones. | 01:12 | ||
(No, 80 chars isn't because my screen is small, it's because my screen is BIG, and I like having multiple terminals side by side.) | 01:13 | ||
raydiak | I wouldn't describe that as much of a "desktop" as most people think of it | ||
honestly I think there's a more meaningful distinction to be made here than whether X is running | |||
ugexe | yeah, like nto having to deal with all the linux desktop machine crap like driver issues | 01:14 | |
Juerd | raydiak: I move xterms around to suit whatever I'm doing. These floating window thingies are a real innovation :) | 01:16 | |
And I use pointing devices to focus these windows. (Sloppy focus, of course.) | 01:17 | ||
Also, I do a lot of this: juerd.nl/i/65b1f14ff812c69fa4729b549aef7da9.png | 01:18 | ||
Don't you? Could you really work just as well on tty1..tty6? :P | |||
raydiak | Juerd: I just have one giant full-screen-sized drop-down console; I switch windows with the keyboard; I'm not even sure I remember the last time I had 2 things open side by side in different X windows | 01:19 | |
the last time I tried to go completely X-free, the main problem I had was some really nasty unicode limitations of the linux console | |||
Juerd | I see. Are you on a 1024x768 display? :) | ||
raydiak | that was last year | ||
ugexe | FROGGS: didnt appear to help. same error | 01:20 | |
raydiak | 1600x900, though admittedly I do use the mouse to adjust the split sizes of the terminal after I boot up | ||
Juerd | A-ha! :P | ||
I don't even do that, to be honest | |||
Something I do like about desktop linux: copy/pasting! | 01:21 | ||
It's why I have listchars off in vim. I use X select and paste more than vim's yank and paste | 01:22 | ||
raydiak | true, though I wish there was only 1 clipboard | ||
Juerd | A single clipboard can be had. | ||
raydiak | I have vim's yank/paste tied to the x clipboard...or copy buffer...or whatever it is | ||
Juerd | Try autocutsel | ||
Ooh, that's actually a nice idea. How does that work? | 01:23 | ||
01:23
perigrin joined
|
|||
raydiak | :set clipboard=unnamed or unnamedplus | 01:23 | |
iirc | |||
ah autocutsel looks nice, I'll keep it in mind when I switch desktops and distros in the hopefully near future | 01:24 | ||
Juerd | Doesn't seem to work for me. | ||
raydiak | "set clipboard=unnamedplus" straight out of my vimrc | 01:25 | |
01:32
yqt left
|
|||
ugexe | FROGGS: although im not sure im updating the nqp build or not. this shows the differece between Moar and JVM with my current build: gist.github.com/ugexe/96c82ddf7a63d7912dde | 01:33 | |
01:33
lichtkind_ left
|
|||
ugexe | say shell '//' prints '\\\' on my perl6-j and '//' on perl6-m | 01:33 | |
01:40
gfldex joined
01:48
espadrine left
|
|||
raydiak | Juerd: I guess my real point about "gave up on desktop linux" was that I've found relying too much on any particular linux desktop featureset to be a burden in several ways e.g. varying interoperability between different toolkits for things like drag and drop and DE integration, migrating settings for gconf-type-stuff is a pain, and getting things like colors and even keymaps to match everywhere can be a large | 01:52 | |
undertaking...irritations like that | 01:53 | ||
so to the extent it feels practical and productive, I've moved whatever I can out of GUI land, even though I still am technically using X...just endeavour to minimize my reliance on such things | 01:54 | ||
02:02
zakharyas joined
02:07
raiph joined
02:13
ash_gti joined
02:33
alini left
02:35
adu joined
|
|||
skids | m: gist.github.com/skids/9450e905562ca7fb6ee3 | 02:52 | |
camelia | rakudo-moar 0f780b: OUTPUT«TrueFalseTrueTrueTrueTrueTrueTrue» | ||
moritz | skids: what does <@array> do? | 02:58 | |
02:58
muraiki_ left
03:02
adu left
|
|||
skids | it evals all the elements as either Regex or Regex(Str) and puts them in a junctional alternative. | 03:02 | |
(supposedly) | |||
moritz | so same as @array when the elements already are regexes | 03:05 | |
moritz tries to sleep again | 03:06 | ||
skids | moritz: actually @array is supposed to do a P5 \Q$\E on each element if I read it right. | ||
So regexes should fail or warn with "code object coerced to string" | 03:07 | ||
Heh. The failure mode of RT#103106 is now bizarre: | 03:08 | ||
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=103106 | ||
skids | m: say "foo" & "a nice old foo" ~~ /foo/ | ||
camelia | rakudo-moar 0f780b: OUTPUT«「all(Failure.new(exception => X::OutOfRange.new(what => $("Start", "argument", "to", "substr"), got => 5, range => "0..3", comment => "use *5 if you want to index relative to the end")), "e o")」» | ||
03:11
ash_gti left
03:14
aborazmeh left
03:17
noganex_ joined
03:19
telex left
03:20
telex joined,
noganex left
03:25
exaybachay joined
03:34
gfldex left
|
|||
skids | Hrm RT#118697 RT#123465 RT#100232 RT#113884 and the above... maybe rx variable interpolation should be up on the "big fixes that are needed" list. | 03:34 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=118697 | ||
03:37
yeahnoob left
03:43
laouji left
03:50
adu joined
03:51
aborazmeh joined,
aborazmeh left,
aborazmeh joined
04:02
FROGGS_ joined
04:05
gfldex joined
04:06
FROGGS left
|
|||
ugexe | FROGGS_: i finally got it patched in correctly and it works now. i have rakudobrew (with pr) and panda working with moar/jvm on windows. mscv but i dont see why it wouldnt work for anything else if PATH is set correctly | 04:13 | |
testers.p6c.org/reports/32652.html | 04:15 | ||
04:25
skids left
04:26
exaybachay left
04:44
laouji joined
04:45
laouji left,
laouji joined
04:49
ash_gti joined
04:54
raiph left
|
|||
ugexe | C:\Users\Nick\Documents\Perl6\.rakudobrew\jvm-nom\install\bin>perl6-j.bat -e "say $*DISTRO.version" | 05:09 | |
v6.1 | |||
C:\Users\Nick\Documents\Perl6\.rakudobrew\moar-nom\install\bin>perl6-m.bat -e "say $*DISTRO.version" | |||
v6.3 | |||
05:14
aborazmeh left
|
|||
adu | p: say $*DISTRO.version | 05:27 | |
05:27
Ben_Goldberg left
|
|||
adu | p6: say $*DISTRO.version | 05:27 | |
camelia | rakudo-moar 0f780b: OUTPUT«v13.2.Harlequin» | ||
ugexe | 6.1 is win7. 6.3 is win8. im certainly not running both OSs at the same time on the same machine :) | 05:29 | |
6.1 is the correct value as well | 05:36 | ||
05:50
laouji left
05:51
camelia left
05:53
camelia joined,
anaeem1_ joined
05:54
ChanServ sets mode: +v camelia
06:00
laouji joined
06:05
chenryn joined
06:06
perlpilot joined
06:07
perlpilot left,
mr-foobar left
06:08
mr-foobar joined
|
|||
ugexe | java's os.version shows 6.1, so im not sure where 6.3 is getting set at | 06:11 | |
er oops its omar thats wrong | |||
06:15
camelia left
06:16
mr-foobar left,
mr-foobar joined
06:17
camelia joined
06:18
ChanServ sets mode: +v camelia
06:19
aborazmeh joined,
aborazmeh left,
aborazmeh joined,
camelia left
06:20
camelia joined
06:21
mr-foobar left
06:22
ChanServ sets mode: +v camelia
06:23
adu left
06:24
ash_gti left
06:25
bjz joined
06:36
alini joined
06:45
bayprogrammer left
06:51
virtualsue joined
06:53
diana_olhovik_ joined
|
|||
ugexe | ah its a perl5 bug in Config.pm | 07:00 | |
07:03
wicope joined
07:05
xprime left
07:06
prime joined
07:14
bjz left
07:20
MadcapJake left
07:27
Rounin joined
07:29
darutoko joined
07:31
bjz joined
|
|||
masak | good morning, #perl6 | 07:35 | |
07:37
bjz left,
aborazmeh left
|
|||
bartolin | o/ masak | 07:41 | |
nine_ | *yawn* good morning, all! | 07:42 | |
masak | good yawning, nine_ | 07:43 | |
Timbus | i agree, it was pretty good, but i'll give it an eight | 07:47 | |
masak holds up a... nine | 07:50 | ||
down scope. teaching. & | 07:53 | ||
moritz | good morning, and happy Saint Patrick's Day | 07:54 | |
07:55
alini left
08:02
bjz joined
|
|||
lizmat | good *, are we all green? | 08:04 | |
FROGGS_ realizes that testıng a Wındows only patch on lınux ıs kında poıntless | 08:06 | ||
moritz | our $work continuous delivery tool says all green, yes :-) | 08:07 | |
.u ı | |||
yoleaux | U+0131 LATIN SMALL LETTER DOTLESS I [Ll] (ı) | ||
moritz | FROGGS_: your i's seem to miss a dot :-) | ||
FROGGS_ | moritz: ıntentıon :o) | 08:08 | |
poıntless, you see :o) | |||
lizmat | I got your point | ||
moritz | did you mean: poınt? :-) | 08:09 | |
FROGGS_ | bbiab | ||
lizmat | no point, notice the dots over the i's :-) | ||
bartolin | it looks like my commit cd51b3401c from yesterday broke a test in integration/advent2012-day04.t | 08:10 | |
(I wonder how I missed that, I'm sure I spectested it) | |||
08:10
Ven joined
|
|||
bartolin | anyway, I created a second PR: github.com/rakudo/rakudo/pull/387 | 08:10 | |
dalek | kudo/nom: 91a1b7a | usev6++ | src/core/operators.pm: Do not flatten when SEQUENCE returns an array otherwise test 3 - Pascal's triangle from integration/advent2012-day04.t does not work |
08:11 | |
kudo/nom: 42e6cda | lizmat++ | src/core/operators.pm: Merge pull request #387 from usev6/nom Do not flatten when SEQUENCE returns an array |
|||
bartolin | oh, thanks! | ||
sergot | morning #perl6 \o | ||
lizmat | yw :-) | ||
bartolin | I hope those patches make sense. since the problems seem to be related to flattening of parcels, this will probably resurface with the GLR ... | 08:14 | |
lizmat | I have no doubt about that... :-) | 08:15 | |
08:15
rurban joined
|
|||
bartolin | maybe I can refine some tests for infix<...> in the meantime ... | 08:17 | |
08:21
pecastro left
08:22
[Sno] left
08:24
espadrine joined,
Ven left
08:44
Ven joined
|
|||
dalek | kudo/nom: 0992f1a | lizmat++ | src/core/native_array.pm: Make my num @a = 0e0..^10000e0 also 1000x as fast |
08:45 | |
moritz | lizmat: nqp::setelems(self, ($max - $val + 1).Int ); might want some guarding against Inf | 08:46 | |
propbably the whole thing does | |||
lizmat | why? I mean, we don't guard to my @a = ^Inf; say @a either ? | 08:47 | |
moritz | we do guard the assignment | ||
by making it lazy when the RHS is known infinite | |||
08:48
LonelyGM joined
08:50
eli-se joined
|
|||
eli-se | hola | 08:50 | |
08:50
alini joined,
eli-se left
08:51
Ugator joined,
LonelyGM left
08:52
Ugator left,
donaldh joined
|
|||
dalek | kudo/nom: 6bbc286 | lizmat++ | src/core/native_array.pm: Guard my num @a = Range against infinite lists moritz++ for mentioning |
09:02 | |
09:02
[Sno] joined
09:06
koo6 left
|
|||
FROGGS_ | jnthn: why to we turn forward slashes into backslashes at all on windows? | 09:06 | |
jnthn: like here github.com/MoarVM/MoarVM/blob/mast...ops.c#L182 | 09:07 | ||
09:07
espadrine left
09:08
eli-se joined
|
|||
eli-se | Better question: why does the code that does that appear in multiple places? | 09:08 | |
FROGGS_ | jnthn: and here github.com/perl6/nqp/blob/master/s....java#L965 | ||
eli-se: well, it appears for shell and spawn for moarvm | 09:09 | ||
lizmat | FROGGS_: in the newio branch, all is forward slashes, as Win doesn't need backward slashes, I'm told ? | ||
FROGGS_ | eli-se: and then for the jvm | ||
lizmat: yes, that's why I am asking if we need that at the vm level or not | |||
lizmat: either windows really understands forward slashes and we can remove the slash replacement code in the VMs | 09:10 | ||
lizmat: or it does not, and that VM code supports the forward slashes for rakudo | |||
so, I am running a spectest for moarvm on windows now, then remove the slash replacement and spectest again | 09:11 | ||
lizmat | agree | ||
FROGGS_++ | |||
09:11
eli-se left
|
|||
donaldh | one argument for using backslashes is user expectation. shell and spawn commands become visible to the user | 09:13 | |
09:16
yeahnoob joined
|
|||
dalek | ast: 03bdfe2 | lizmat++ | S09-typed-arrays/native-num.t: Add tests for initializing with an Inf range |
09:17 | |
Ven | lizmat++ # amazing work :) | 09:19 | |
FROGGS_ | did somebody get behind the throws_like weirdness on jvm, that makes so many TODOs pass? | 09:20 | |
or is_run or what it was | 09:21 | ||
lizmat | FROGGS_: I was under the impression the problem lie deeper there? | ||
09:21
eli-se joined
|
|||
lizmat | will have a look when I get back from fitness in a few hours | 09:21 | |
09:22
dakkar joined
|
|||
FROGGS_ | AFAIK we get an exit status 0 from a subprocess, when that subprocess is a perl6-j that does an exit 1 | 09:22 | |
or when that subprocess dies because of an exception or so | |||
09:24
virtualsue left
|
|||
Ven | moritz: your blog post blew up on reddit! | 09:32 | |
09:32
yeahnoob left,
cschwenz joined
09:33
rindolf joined
|
|||
moritz | Ven: yes, I saw it | 09:33 | |
Ven: it even made the page load slowly occasionally | |||
Ven | oh :o) | ||
moritz | I had 16k visitors over two days | 09:34 | |
normal would be about 2.5k to 3k | |||
09:35
abraxxa joined
|
|||
moritz | suddenly I wish that I hadn't written it bleary-eyed and shortly before going to sleep :-) | 09:35 | |
09:36
koo6 joined
09:38
zakharyas left
09:41
eli-se left
|
|||
Ven | moritz: alright :) | 09:43 | |
09:45
eli-se joined
|
|||
FROGGS_ | moritz++ # just read it | 09:47 | |
m-spectest on windows just got stuck in an S17 test file :o( | 09:48 | ||
09:52
andreoss left
09:54
eli-se left
|
|||
FROGGS_ | so this worked before and after the slash-fiddling-removal: | 09:56 | |
C:\rakudo>perl6-m -e "shell 34.chr ~ 'C:/Program Files/Debugging Tools for Windows (x64)/list.exe' ~ 34.chr" | |||
list [-s:string] [-g:line#] filename, ... | |||
I will remove that now from maorvm and jvm, bump all versions and then we'll see | 09:57 | ||
10:00
smls joined
|
|||
dalek | p: d0a0b12 | FROGGS++ | / (2 files): remove slash->backslash conversion mess This turned "git clone git://..." into "git clone git:\\...". |
10:04 | |
kudo/nom: e5a8f7a | FROGGS++ | tools/build/NQP_REVISION: bump nqp/jvm+moar rev for slash handling on windows |
10:05 | ||
FROGGS_ | ugexe: that should do... | ||
10:05
espadrine joined
|
|||
FROGGS_ | @all windows users: please test latest rakudo if you can, as this will be released on thursday | 10:06 | |
|Tux| | gist.github.com/Tux/0f46657fdfdbb2bf3267 <= So strongly typed, WTF do I get these compilation errors? | 10:12 | |
yoleaux | 13 Mar 2015 21:17Z <jnthn> |Tux|: latest NQP has a fix for the profile dump bug | ||
smls | .tell TimToady What do you think of this: i.imgur.com/CeF13gV.png | ||
yoleaux | smls: I'll pass your message to TimToady. | ||
smls | .tell TimToady My ulterior motive is the attempt to find a good color scheme for a redesigned perl6.org (for after the 6.0 beta release), that *both* fits Camelia *and* has colors that are pleasant enough to be used as the background of larger areas. Which I can't seem to do with the current Camelia colors. | ||
yoleaux | smls: I'll pass your message to TimToady. | ||
smls | .tell TimToady But it might also help end the recurring resistance to Camelia as Perl 6's mascot; because even though Camelias detractors don't always communicate the source of their dislike clearly, I think it has much to do with the colors. | 10:13 | |
yoleaux | smls: I'll pass your message to TimToady. | ||
10:14
grondilu joined
|
|||
|Tux| | ignore, found it. self!foo -> self.foo | 10:14 | |
10:15
donaldh left
|
|||
smls | ^^ I'd be interested in feedback from people other than TimToady, too. | 10:15 | |
|Tux| | in this case the error might be as helpful as with variable name typoes | ||
10:15
eli-se joined,
virtualsue joined
|
|||
grondilu | m: say 1 «/« (1..3); | 10:15 | |
camelia | rakudo-moar e5a8f7: OUTPUT«Cannot find method 'Range' in sub hyper at src/gen/m-CORE.setting:22085 in block at src/gen/m-CORE.setting:22041 in block <unit> at /tmp/Sk7C2gDY6C:1» | ||
grondilu | ^looks like a bug | 10:16 | |
10:16
Ven left
|
|||
grondilu | also, breaks: rosettacode.org/wiki/Probabilistic_choice#Perl_6 | 10:16 | |
|Tux| | something like "No such private method 'colrange' for invocant of type 'Text::CSV', did you mean the public method? | ||
eli-se | what's the difference between >>*<< and Z*? | 10:17 | |
moritz | eli-se: >>*<< is eager/hyper, Z* is lazy | ||
eli-se | ah, I see | ||
moritz | also, Z* stops when one of the input lists is exhausted | ||
m: say 1, 2, 3 >>*<< 4, 2 | 10:18 | ||
camelia | rakudo-moar e5a8f7: OUTPUT«12122» | ||
moritz | m: .say for 1, 2, 3 >>*<< 4, 2 | ||
camelia | rakudo-moar e5a8f7: OUTPUT«12122» | ||
moritz | m: .say for (1, 2, 3) >>*<< (4, 2) | ||
camelia | rakudo-moar e5a8f7: OUTPUT«Lists on either side of non-dwimmy hyperop of infix:<*> are not of the same lengthleft: 3 elements, right: 2 elements in sub hyper at src/gen/m-CORE.setting:22130 in block at src/gen/m-CORE.setting:22041 in block <unit> at /tmp/QeAKxSywr2:1…» | ||
moritz | and did I mention precedence? :-) | ||
eli-se | nice | ||
timotimo | smls: looks good to me | 10:19 | |
eli-se | m: say (1, 2, 3, 4, 5)>>i | 10:21 | |
camelia | rakudo-moar e5a8f7: OUTPUT«0+1i 0+2i 0+3i 0+4i 0+5i» | ||
eli-se | hehe nice | ||
timotimo | [Tux]: problem is: we can't know stuff about methods at compile time | 10:22 | |
[Tux]: not only are they late bound, but the object can also have fallbacks declared or a custom find_method method declared on it | |||
|Tux| | ok, but it took me a while to understand that message | ||
grondilu | m: say 1 «/« 1 .. 3 | 10:24 | |
camelia | rakudo-moar e5a8f7: OUTPUT«1.0..3» | ||
grondilu | ^that looks very wrong | 10:25 | |
m: say join ", ", 1 «/« 1 .. 3 | |||
camelia | rakudo-moar e5a8f7: OUTPUT«1, 2, 3» | ||
timotimo | precedence again | ||
m: say 1 «/« (1 .. 3) | |||
grondilu | m: say 1 «/« (1 .. 3) | ||
camelia | rakudo-moar e5a8f7: OUTPUT«Cannot find method 'Range' in sub hyper at src/gen/m-CORE.setting:22085 in block at src/gen/m-CORE.setting:22041 in block <unit> at /tmp/je3Pa5z61H:1» | ||
rakudo-moar e5a8f7: OUTPUT«Cannot find method 'Range' in sub hyper at src/gen/m-CORE.setting:22085 in block at src/gen/m-CORE.setting:22041 in block <unit> at /tmp/HP0l6TRV5i:1» | |||
10:25
pecastro joined
|
|||
timotimo | that looks a bit wronger | 10:25 | |
m: say 1 «/« (1..3) | 10:26 | ||
camelia | rakudo-moar e5a8f7: OUTPUT«Cannot find method 'Range' in sub hyper at src/gen/m-CORE.setting:22085 in block at src/gen/m-CORE.setting:22041 in block <unit> at /tmp/5n_tWNOrsH:1» | ||
grondilu | m: say 1 «/« (1, 2, 3) | ||
camelia | rakudo-moar e5a8f7: OUTPUT«1 0.5 0.333333» | ||
grondilu | that is what breaks rosettacode.org/wiki/Probabilistic_choice#Perl_6 | ||
m: say 1 X/ (1 .. 3) | 10:27 | ||
camelia | rakudo-moar e5a8f7: OUTPUT«1 0.5 0.333333» | ||
10:32
virtualsue left
10:33
eli-se left
|
|||
grondilu | aren't sigilless variable supposed to be state variables by default? | 10:34 | |
m: say map { $ = rand }, ^3 | 10:35 | ||
camelia | rakudo-moar e5a8f7: OUTPUT«0.234748164007963 0.139641988182091 0.637825247991833» | ||
grondilu | m: say map { state $ = rand }, ^3 | 10:36 | |
camelia | rakudo-moar e5a8f7: OUTPUT«0.0952926749619227 0.0952926749619227 0.0952926749619227» | ||
smls | grondilu: $ = rand compiled to (state $) = rand not (state $ = rand) | 10:37 | |
*compiles | |||
grondilu | I don't get the difference between those two | 10:38 | |
m: say map { ($) = rand }, ^3 | |||
camelia | rakudo-moar e5a8f7: OUTPUT«0.0347526105078272 0.598640238159065 0.536051382049224» | ||
moritz | m: say map { state $ = rand } | ||
camelia | rakudo-moar e5a8f7: OUTPUT«» | ||
grondilu | m: say map { (state $) = rand }, ^3 | 10:39 | |
camelia | rakudo-moar e5a8f7: OUTPUT«0.987317075041984 0.471019143728166 0.4660831965311» | ||
moritz | m: say map { state $ = rand }, ^3 | ||
camelia | rakudo-moar e5a8f7: OUTPUT«0.337303902812853 0.337303902812853 0.337303902812853» | ||
moritz | the state initializer is only run the first time | ||
grondilu | hum ok | ||
timotimo | i'd like to propose taking github.com/soh-cah-toa/p6-digest-sha256 out of the ecosystem; it's an implementation of sha256 that relies on pir::loadbytecode('Digest/sha256.pir') which only exists on parrot | ||
moritz | +1 | 10:40 | |
|Tux| | is it possible to use » as a start in post-fic for? | ||
».perl.say for $class.method; | |||
when method retorns a list of lists | |||
timotimo | you can start it with .» | ||
|Tux| | m: .».perl.say for ([^3],[^2]) | 10:41 | |
camelia | rakudo-moar e5a8f7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/p_IQ8bHCaiBogus statementat /tmp/p_IQ8bHCai:1------> 3.7⏏5».perl.say for ([^3],[^2]) expecting any of: dotty method or postfix» | ||
timotimo | oh | ||
well, perhaps not :( | |||
|Tux| | I did try that :) | ||
timotimo | i'd sort of expect that to work | ||
m: .>>.perl.say for ([^3],[^2]) | |||
camelia | rakudo-moar e5a8f7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/SQTaL74_IJBogus statementat /tmp/SQTaL74_IJ:1------> 3.7⏏5>>.perl.say for ([^3],[^2]) expecting any of: dotty method or postfix» | ||
|Tux| | so did I, hence the question | ||
timotimo | std: .>>.perl.say for ([^3],[^2]) | ||
camelia | std 28329a7: OUTPUT«5===SORRY!5===Bogus statement at /tmp/LPcbTPibQ5 line 1:------> 3<BOL>7⏏5.>>.perl.say for ([^3],[^2])Parse failedFAILED 00:01 136m» | ||
grondilu | m: .>>perl.say for ([^3],[^2]) | 10:42 | |
camelia | rakudo-moar e5a8f7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/xUGNDlXeUrBogus statementat /tmp/xUGNDlXeUr:1------> 3.7⏏5>>perl.say for ([^3],[^2]) expecting any of: dotty method or postfix» | ||
timotimo | OK, std disagrees, so we've got a bit of discussion to do | ||
grondilu | m: $_>>.perl.say for ([^3],[^2]) | 10:43 | |
camelia | rakudo-moar e5a8f7: OUTPUT«0 1 20 1» | ||
|Tux| | as I have no idea how to describe this question as it should, I leave the ticketing up to you | ||
dalek | osystem: c1f9544 | timotimo++ | META.list: remove digest-sha256, a perl6 interface to parrot's sha256 impl |
||
tadzik | shots fired | 10:44 | |
|Tux| | grondilu, yes, that is what I expected | ||
timotimo | testers.p6c.org/reports/31273.html - this is painful to look at | 10:45 | |
smls | timotimo: Who needs 'Basic functionality' anyway ;) | 10:46 | |
|Tux| | gist.github.com/Tux/73ec84b4c53c5002f6fb \o/ | 10:47 | |
timotimo | testers.p6c.org/reports/30790.html - this is equally painful to watch | 10:48 | |
in one case, the tests fail because of windows backslashes as file separators | |||
in the other case it's ordering of results that's different | |||
|Tux| | what can I use instead of $*IN to support both "< hello.csv" and "hello.csv" | ||
10:48
MadcapJake joined
|
|||
timotimo | that'd be $*ARGFILES | 10:48 | |
it'll also support more than one file name on the commandline | 10:49 | ||
|Tux| | $ p6 -MText::CSV -e'$_».text.perl.say for Text::CSV.new.fragment($*ARGFILES,"col=1;3")' test.csv | ||
Type check failed in binding $buffer; expected 'Str' but got 'Failure' | |||
timotimo | ARGFILES more or less only fakes being a file descriptor, as it is - in reality - more than one file object under the hood | ||
so if you're using ARGFILES in a low-level context, that may give you NYI things | 10:50 | ||
|Tux| | so it cannot be used as a drop-in replacement | ||
timotimo | i'd like it to be usable as that, tbh | ||
smls | |Tux|: What's that "col=1;3" string for? | 10:51 | |
|Tux| | RFC7111 | ||
timotimo | labster: yo, are you here? :) | ||
smls | ah | 10:52 | |
|Tux| | tools.ietf.org/html/rfc7111 | ||
col= and row= now work. cells are next (and much harder!) | |||
timotimo | oh, that's neat | 10:54 | |
|Tux| | maybe that explains my questions this weekend | ||
grondilu | m: (sub { say @_; say $_ })(^10); | 10:55 | |
camelia | rakudo-moar e5a8f7: OUTPUT«0 1 2 3 4 5 6 7 8 9Nil» | ||
grondilu kind of would like $_ to mean @_[0] | |||
m: (sub { say $_ })(^10); | 10:56 | ||
camelia | rakudo-moar e5a8f7: OUTPUT«Too many positionals passed; expected 0 arguments but got 1 in sub at /tmp/UmncDhtLj1:1 in block <unit> at /tmp/UmncDhtLj1:1» | ||
grondilu | m: (sub { say $_ })(10); | ||
camelia | rakudo-moar e5a8f7: OUTPUT«Too many positionals passed; expected 0 arguments but got 1 in sub at /tmp/vj2KUgZbc4:1 in block <unit> at /tmp/vj2KUgZbc4:1» | ||
grondilu | m: ({ say $_ })(10); | ||
camelia | rakudo-moar e5a8f7: OUTPUT«10» | ||
11:05
coffee` joined
11:06
Ben_Goldberg joined
|
|||
|Tux| | is this on purpose? | 11:06 | |
m: .say for ([^2],[^3]).map(*».Str) | 11:07 | ||
camelia | rakudo-moar e5a8f7: OUTPUT«01012» | ||
|Tux| | m: .say for ([^2],[^3]).map([*».Str]) | ||
camelia | rakudo-moar e5a8f7: OUTPUT«No such method 'count' for invocant of type 'Array' in method reify at src/gen/m-CORE.setting:9542 in block at src/gen/m-CORE.setting:9454 in method reify at src/gen/m-CORE.setting:9424 in block at src/gen/m-CORE.setting:9454 in metho…» | ||
11:08
nige joined
|
|||
colomon | m: [*».Str](1) | 11:09 | |
camelia | rakudo-moar e5a8f7: OUTPUT«Invocant requires a type object, but an object instance was passed in method CALL-ME at src/gen/m-CORE.setting:10464 in block <unit> at /tmp/pjHwGJZW8t:1» | ||
colomon | m: say [*».Str].WHAT | ||
camelia | rakudo-moar e5a8f7: OUTPUT«(Array)» | ||
colomon | oh, yes, that makes sense | ||
m: say [*».Str][0](1) | 11:10 | ||
camelia | rakudo-moar e5a8f7: OUTPUT«1» | ||
colomon | m: .say for ([^2],[^3]).map({[*».Str]}) | ||
camelia | rakudo-moar e5a8f7: OUTPUT«WhateverCode.new()WhateverCode.new()» | ||
timotimo | wow, colomon, your module IO::Prompter seems very unhappy; Cannot find method 'isatty': no method cache and no .^find_method | ||
colomon | timotimo: yes, yes it is | ||
timotimo | got any clue what causes this? | 11:11 | |
colomon | timotimo: yes, the lack of isatty | ||
timotimo | we ... don't have that at all? | ||
colomon | timotimo: it never got implemented for moar | ||
possibly not for jvm either | |||
timotimo | wow. | ||
docs.libuv.org/en/latest/misc.html#...ess_handle ... :\ | 11:13 | ||
oh, we already use this properly | 11:17 | ||
so isatty may be quite simple to implement after all | |||
just not sure what to hang it off of | 11:28 | ||
moritz | file handle? | 11:29 | |
nqp::isatty($handle) | |||
timotimo | well, i know that part | 11:37 | |
dalek | ast: 719ae5a | usev6++ | S03-sequence/basic.t: Adjust tests for using last in generator function of infix:<...> |
11:44 | |
b2gills | The main reason for using backslashes on Windows is for other programs which may be badly written | 11:46 | |
11:47
fhelmberger joined
11:51
eli-se joined
|
|||
eli-se | hi | 11:51 | |
dalek | kudo-star-daily: 4ad2903 | coke++ | log/ (9 files): today (automated commit) |
11:52 | |
rl6-roast-data: 951daba | coke++ | / (9 files): today (automated commit) |
|||
eli-se | I think I understand hyper operators. | 11:53 | |
timotimo | hooray | 11:54 | |
eli-se | except for <<?>> | ||
11:54
Ben_Goldberg left
|
|||
eli-se | what does "dwimmy" mean? | 11:55 | |
arnsholt | DWIM is "Do What I Mean" | ||
eli-se | oic | ||
11:57
Ven joined
|
|||
timotimo | aye | 11:57 | |
eli-se | I don't like DWIM | 11:58 | |
I like precise specifications. | |||
timotimo | these things are precisely specified, but tuned to do what you want as often as possible :) | 11:59 | |
11:59
eli-se left
|
|||
|Tux| | does perl6 support scalario yet, and if so, how? doc.perl6.org/routine/open does have no hints. my $fh = open $string, :r; does (of course) not work | 12:09 | |
awwaiid | |Tux|: scalario? | ||
oh, scalar io | 12:10 | ||
|Tux| | open a stream from a scalar (a string) as if the string was the file content | ||
awwaiid | haha, was reading it as one word :) | ||
lizmat | |Tux| NYI or even speculated, I believe | ||
|Tux| | hmm. scalario is sooooooooooooooooooooooooooooooooooo handy in tests :) | 12:11 | |
lizmat | yeah, I know | ||
|Tux| | where can I find the syntax for the new perl6 here-doc styles? (typing here in the search only shows where) | 12:14 | |
nine_ | PHP 7 - type safety without the safety: wiki.php.net/rfc/scalar_type_hints_v5 | 12:16 | |
12:18
laouji left
|
|||
smls | |Tux|: doc.perl6.org/language/quoting#Heredocs%3A_%3Ato | 12:18 | |
Ven | nine_: without the safety? | ||
|Tux| | thanks | ||
12:18
eli-se joined
|
|||
eli-se | lol | 12:18 | |
a2p prints "linehile (<>(<>) {" instead of "line: while (<>) {" :P | 12:19 | ||
timotimo | what is a2p? | ||
ada to perl? | |||
|Tux| | awk2perl | ||
timotimo | ah | ||
eli-se | AWK to Perl converter. :P | ||
|Tux| | that is how I learned perl4 :) | 12:20 | |
eli-se | It seems bugged. | ||
12:22
laouji joined,
alini left
|
|||
nine_ | Ven: you can declar a function's arguments' types but the caller can decider whether these should be checked or not. So you may declare your intention but cannot actually rely on your arguments having the types you declared. | 12:23 | |
Ven | nine_: ... | ||
nine_ | Feels like all the pain for no gain. | ||
Ven | I don't have anything else to say. | ||
timotimo | at least PHP is getting all those interesting features into the main stream of programming languages | 12:28 | |
nine_ | And of course they make it kind of hard to say that you want strict type checks by making the user remember rules like the declare(strict_types=1); _must_ be the first statement in a file and that declare(strict_types=1) {} (block mode) is specifically disallowed. | ||
12:28
chenryn left
|
|||
nwc10 | nine_: oh, um, sweet. That competely buggers the refactoring approach of putting use strict; as the last line of a file, and moving it upwards, bit by bit by bit. | 12:28 | |
Ven | timotimo: I think python and ruby talked about having it before, though? | 12:29 | |
nine_ | "Like the encoding directive, but unlike the ticks directive, the strict_types directive only affects the specific file it is used in, and does not affect either other files which include the file nor other files that are included by the file." | ||
timotimo | yeah, but neither got it earlier :) | ||
nine_ | Lots and lots of special rules. | ||
Like it's called "include" but actually does not work at all like an include but more like a require. | 12:30 | ||
timotimo | php has lots of problems with naming stuff vs explaining what stuff does | ||
dalek | osystem: 3527579 | (Kamil Kułaga)++ | META.list: added mortage calculator |
12:31 | |
12:32
rindolf left
|
|||
timotimo | isn't it spelled "mortgage"? | 12:33 | |
eli-se | mortage | 12:34 | |
colomon | mortage seems to be a pretty common misspelling of mortgage | 12:35 | |
timotimo | what's the etymology on mortgage? why is that word so f'd up? | ||
Ven | timotimo: I can explain it in french :P | 12:36 | |
timotimo | i don't understand french | ||
colomon | yeah, it’s from old French | ||
eli-se | timotimo: (latin mortuus -> old french mort) + old french gage -> old french mortgage | ||
Ven | I mean, I can decompose the french words | ||
timotimo | ah | ||
nine_ | The word mortgage is derived from a "law French" term used by English lawyers in the Middle Ages meaning "death pledge", | ||
en.wikipedia.org/wiki/Mortgage_loan | |||
eli-se | data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAaAAAACJCAIAAADlgHtEAAAbzUlEQVR42u2d+VdUV7qG79/iT612m1Z0rZteTYjxOiUQQSRAq4iA4hgIJgqhDa5ogkBaRETagVFEkBkiyqwtECaZRJR5EJBoMQUVAcH7xn1797k1YIEIBbzPOot1atfeZ9jUfur79qk69V91fa8NZ3lPGNQ5ztdOJsQA+S8KjoIjhIKj4Cg4Qig4Co6CI4SCo+AoOEIoOAqOgiNkmgR3t31g9dr1uobHoaMnPv6fdWK9ouPZpi02Ylm8ZInpZiuxnnTr7qr//hAVSpp7Fi1aFHMzX7kF+z0HE3NLZ1dwIfE3NttsM7eytbFzdHH3yqtuneDcUYizw3l9bmm9wcwcf4OvJGntN1FNLs4u36gVmlpscTrgll | ||
PZrLU+ltiMgrd2WlRaHg4elS1ttx/3/2dR41NdR77daW/y7XIKjlBwegmu+vGQ2eYvdn/5dVx2kdpTaIKG8qEU3IqVq4xXrylt7TMcwXn5ntm598vyR4PiYVpBNUx3p7ZzAsEpC3Eue1wP/93bX59+0ywMT86Cdybo54k7zedcmK39LvFUzZOR81dTITsKjpBpENyZsNjAiLj0ovsO+1z0FNya9Z+eCb8mhrQhCC63quWPy5ZJu4kFJ2Vt56C/pGCWT9ZtEKHTZAWHN4m/GJtMLDhdnVZQ1/2nZR8UN6mU9Q984xmacJOCI+RdBYeE7t6vw1jZ8jc7jEM9BYcVu137AkJjDEFw/peileKQp7zcaOWDnjE9JYVl3yEPpJOTFVz+gy5Xj2NefoFvFZzWTrsY+7PV1h1au46CI+SdBIeh8v2pc2I9LDHjxO | |||
colomon | (if you type mortgage etymology into google they give you the answer, but I don’t know how to link to it) | ||
eli-se | nz+gsOKRVyLkRPsy44j+N+/7gQpbnrz8wt86pb9Rfc0ZOngy4nTDwHh+RXrfCvJqshnXvdL3XNwU3caehztW6fYO9Y/rzCiIIjFJxegtvjelg5eNabbnrYO66n4LDEZhZu/NwCyd2sR3CIjDRP+Q+LF8M7+gtur5v7FCI49NjxU8GQrD4RnGan/R7BbbNnBEfINAsOo26b4x5lyeFj3sorfW8VHJYj3/u4f+9rCHNwFR3P1OYWLay3TmoODiW/NDyZwhxccZMK7w16Ck6t08QcXElLr7K+T1DoDwEXKDhCpi44xB1qGdn1X2qUk1n6CA5e2GBmjjRtdq+iIrt02OeivIr6ybqNmWX1ekoKD51dD3974qepXUXFYrJmrf6CU+u0k2dDtjo4l7X1Y71W9Souu2jtRtN7vw5TcIToKzi12ZzPLa2NP15T3v | ||
Ven | wuuut | ||
eli-se | 6bWs1P1m2QUYw+gsOSU9m8ZOnSWf8c3IWYNPMv/oZTM9v8hd3u/bdr2ieYyULEJAvhGjQJjIhTpueTFRyyThhK677Ck7Pe2mkRKdnic3D46/njKfmpOgqOkLcLjt9k4DcZCKHgKDgKjhAKjoKj4Aih4Cg4Co4QCo6Co+AI0UNw7AJCCAVHCCEUHCGEUHCEEELBEUIIBUcIIRQcIYSCI4QQCo4QQuar4LZt29bT0zOPu2l4ePh972Le9yEhFJyB0tvb++TJEwqOkDkmuPLycm9v7++++27Hjh1WVlYtLS3+/v4ODg5OTk4FBQWiUldXl5+fn6Ojo4eHx/3791GCVj4+PmFhYcbGxgcPHly5cuXOnTszMzNLS0s9PT3l1o8cOYKaWguxEhUV9dVXX2GzR48eHR0dNXDBNTU16XLc9PYhX5SETKfgli9fXl | ||
12:37
eli-se left
|
|||
tadzik | oh noes | 12:37 | |
Ven | well. | ||
12:37
eli-se joined
|
|||
eli-se | z/n0WNT3Ud+Xanvcm3yyk4Co4sIMF5+Z7ZuffL8keD4mFaQTVMd6e2cwLBKQtLW/v2uB7+u7f/xNV0FYYnZ8E7uupjgeBWrFxlvHoNdqQpOJ9zYbb2u8RTNU9Gzl9NhewouHkuuN7e3vj4+Cnv6R2bkzkkuNyqlj8uWybtJpbAiDhrOwf9JQWzfLJugwidJiu46sdDfzE2mVhwa9Z/eib8mvCgUnAFdd1/WvZBcZNKWf/AN56hCTcpOAqOgqPgXvtfilaKQ2poudHKBz1jekoKy75DHkgnJyu4/Addrh7HvPwC3yo4rNjt2hcQGqMU3MXYn6227tA6s0bBzTfB9ff35+TkxMbGXrt2rb29XRiqr68vOzsb63l5efL72DU1NSkpKShMTU2Vd0zT2pzMe8F5HPf7x4UoTUF8Zm6ZV92qv+COnjwddDlh4j | 12:37 | |
tadzik | so, who'll glue this and put it on imgur? :) | ||
eli-se | k4JL9qhX81WQ3p3Ot+qWsOTik45KFIVBFySsGdOH0eiy7BaW7tzyuMKLi5KrjLly+L72D29PTEv2F8fDw0NHRgYEAUxsTEYOX58+diBTx9+hSm09WcPb5AIjhERpp2+MPixfCO/oLb6+Y+hQjuYe/48VPBkKw+ERyW2MzCjZ9bICP+TwS3zZ4R3PwXHNyUnp4uHxYXF8NQCMTk7wy8fnP7o8HBQWUrlUp17tw5Xc3Z4wtnDq6i45my8ExYrIX11knNwaHkl4YnU5iDK25SrTfdpKfgsBz53sf9e1/lHFxJS6+yvk9Q6A8BFyi4eSW4srKyqqoq+bCzsxOGys/PDw8Pj1cA5eHZoqKiyMjIgICAwMDA4OBgXc3Z4wtBcCK7dNjnoryK+sm6jZll9XpKCg+dXQ9/e+KnqV1FxWKyZq3+goNMN5iZI7cVV1 | ||
FPng3Z6uBc1taP9VrVq7jsorUbTe/9OkzBzbcITvx4iqCkpASGam1tzcvLU6vZ0NAQFRXV2NiIaG5sbOzChQu6mrPHF4jgsFyISTP/4m+bttiYbf7Cbvf+2zXtE8xkIWKShXANmgRGxCHZnLLgkHXCUFr3FZ6cpSY4LDmVzUuWLpWfg4tIyRafg8Nfzx9PyU/VUXDzbQ5OXDHo7e3FupyDw8PXb+4advXq1f7+/oqKCvGTUUJkIkXV2pw9vnAEx28yEEMXXF9fX1ZWVkxMzJUrVxC7CUPBWRkZGVhPSkqqr69HycjISGpqalxcHOK4e/fuXb9+vbi4WFdzQsFRcMQgBEcoOAqOgqPgCAXHhYKj4AgFR8ERCo7MLcERQsERCo4QCo5QcIRQcISCI4SCIxQcoeAIoeAIBUcoOEIoOELBEULBEQqOEAqOzC | |||
timotimo | hahaha | ||
eli-se | HBDQ8Pv+9D3bZtW09PD/9lM9zzc6LbKTjyfgXX29srf6ODgptJWlpa3qvjKDhCwf0uOGxHl+PKy8u9vb2/++67HTt2WFlZYUz6+/s7ODg4OTnJO+N3dXX5+fk5Ojp6eHjcv39ftPLx8QkLCzM2Nj548ODKlSt37tyZmZn5+s29V728vOzt7VEeGRkp7r2akpLi4uKye/duV1fXhw8fis1qrdnW1nbixAlnZ2dfX9/Hjx/P9f+gLsctnG6n4MhMCE6X4zBmli9fXl1djXUMLSMjI3EX6P7+fmtra1Fn8+bN4naqra2tlpaW2A5abdq0CcNGNJShxOjoqIWFBYYr1vHURx99hPGjUqns7OzEpurr69FKV82xsTFTU9POzk5x+hj88+A/qNVxC6fbKTgy0fDofWcQCDT9G03HYcxgIIl1vPqXLl06MjIiB9 | ||
timotimo | that's fantastic :D | ||
Ven | tadzik: I'm pretty sure we missed other parts | ||
eli-se | jLly8rKiqOHj0q6ycmJiKCQKsVK1bIcStH2q1bt06ePCkrI3wQAYKksbER0YeumiUlJWfPnpWFCDTEb8IJhoaGeucUsts1HTeHup2CI+9RcNOO/CFdOdI8PT3lw/Xr18t1pE7Pnj0LCgpKTU2VhXifR1qEVocOHdKcDAoODlZWPn/+vBhpWMHWVq1a9eGHH5qYmOiqGRgYaG5uvlsBxp5mKDoXQQ44R7udgiMGHcFhbMhhpvnO/NaRphZKJCUlHTt2TK2VHGm1tbVHjhyR5du3b8f4ycnJQdqVm5vb3d2NaGXdunW6ahYWFvr4+OjqkHkWwc2VbqfgyNyYg9Oad7x1pImkCeMNK48ePbK1ta2qqlJr5ejoKGZwRCskU3gYEBBgZGSE8RMdHR0VFYWnxsfHQ0JCRK6ktearV6/MzMzEDBFSNgy/jo6O+T | ||
Ven | I hope this isn't a bmp :D | ||
eli-se | oHt0C6nYIjMyE4XbMq+oy0rq4uX19fpEgIGRAXaLaKi4vDU+JyHoIFrBw+fPjixYsYYKGhoS9evHBzc3NyckJAkZiYKJ7SWhOFDx8+ROSCLGn//v1ig3P6PzjBVdQF0u0UHHnvgpvGOeNJgdEorvdNY805xPv+HNyc6PYFITj+RMAUfi5gDn2TQaJSqWxsbBAjvH4zL25hYYH86B1rzl1mrOcNudspOAru/QpuhsnIyECag2TH3d29srJyWmqSudvtFBwFN68ERwgFR8FRcISCo+AoOEIoOAqOgiOEgjMUwYXE39hss83cytbGztHF3SuvulWU320fWL12vVplFC5esmTTFpvPLa03mJnjb/CVJM1tympycXb5Rq3Q1GKL0wG3nMpmrfWxxGYUlDT3LFq0KOZmvnLj9nsOJuaWivWotDwcPCpb2m4/7v | ||
tadzik | Ven: yeah, might be :( | ||
eli-se | /Posanuo58u9Pe5NvlFByh4BaQ4Lx8z+zc+2X5o0HxMK2gGqa7U9s5geCUhaWtfXtcD//d23/iaroKw5Oz4B1d9bFAcCtWrjJevQY70hScz7kwW/td4qmaJyPnr6ZCdhQcIRTc70tuVcsfly2TdhNLYESctZ2D/pKCWT5Zt0GETpMVXPXjob8Ym0wsuDXrPz0Tfk14UCm4grruPy37oLhJpax/4BvP0ISbc0twvb298fHx77t5V1fX9evXZ+B4ZpK2trasrCxdz4aEhOi5naGhIR8fn7KyMrXyoqIib2/vly9f4r+fl5enuXfNbxqIwokPTPLixQt/f/+o/09fX9+kTl/rsWntnAUnOP9L0UpxSA0tN1r5oGdMT0lh2XfIA+nkZAWX/6DL1eOYl1/gWwWHFbtd+wJCY5SCuxj7s9XWHVpn1ii4BSK4ws | ||
LC2tparU/19/dfu3ZNz+00NjYmJiaK28BJIJqwsLDLly9PsPeamhqthRMcmNp+09PT38fpa312wQnO47jfPy5EaQriM3PLvOpW/QV39OTpoMsJE8/BIflVK/yryWpI5173S11zcErBIQ9FooqQUwruxOnzWHQJTnNrf15hZDiCw/DLycmJjY3FIGxvbxdCwYjKzs7GOt6Q5Z2UMFpSUlJQmJqaKm8hp7W5pLOzE1u4c+dOdHR0QkJCXV3d+Pi4FJzWvWjdoEqlQjCCwuTkZEQ3CGd0NZ8t4uLiBgYGcL6ii5KSkhoaGkSnXbp0CRHczZs38XBwcBD9EBMTg7+ighq3b9+Ga9RchhOvqqoSAgoPDx8dHUUohz7ETrGp5uZmrKA3tBaKA9Nnv9iFWmFERERLSwtOB/8+GZqhq7HNyMhIHNXjx4+vXLkiT1 | |||
tadzik | Ven: if it is, we can read the header and see how long this will go on | ||
eli-se | 8cG04Zp49WaWlpCAzFszgp9MzVq1fFdhZiBIfISNMOf1i8GN7RX3B73dynEME97B0/fioYktUngsMSm1m48XMLZMT/ieC22c/RCA5jSXwptaenJ/4NcFBoaCher6IQowIrz58/Fyvg6dOneLHqaq4muLNnz4r7Yg8PD2OIYl0ITutetG5wbGwMIwfRnIj+zp07B8Hpaj5bQGGvXr1CWocc8/Wb766LL7EDWFjckwMgEBNnhwo4KTRR2w4UAE/hKVkCX2RkZFRWVkJAohU6BFoRtwxBP0D92JfWQpkd67Nf/FuVJaiJpBVvTuIrXOhhkbHCeiIcGxkZQbAJl4m9iC3DaNiU2ML9+/cRu2ElKCiovLxcuZ0FOgdX0fFMWXgmLNbCeuuk5uBQ8kvDkynMwRU3qdabbtJTcFiOfO/j/r2vcg6upKVXWd8nKP | ||
SHgAsGLji86JWJSXFxMYSCuEn+AgDAUMH7v7IV4ilYRldzNcGJmjLlRPQnBKd1L1o3iPPNzc2VhXArBPfWg5xJcF4Y6soSGE3ePldaD8esnFy7desW4hplK4hJqA2BqhA6GsJNeG9ANIRuR3+ifyoqKkQ8KA2IXtJaKA5Mn/0GBAQoZ98QPos3J6lCHADCdhQqJ/sQ90FhYi/i2FAfYn306JGyczS3sxCvoiK7dNjnoryK+sm6jZll9XpKCg+dXQ9/e+KnqV1FxWKyZq3+goNMN5iZI7cVV1FPng3Z6uBc1taP9VrVq7jsorUbTe/9OmzggsPrXpmY4DWKUZGfn49hFq8AI0TMcyMxwUgIDAwMDg7W1VxNcOIdXoKwSwhO6160bhBDSPy6ipxuB7oOcla4d+8eXNzd3Y3Re+PGjcw3YF1GbWIFgRiSNe | 12:38 | ||
Ven | tadzik: true, true. | ||
eli-se | Uxyxu3yfebn3/++fWbH2QQYS86SshI3L8I/QORIc1EBipbZWVl/fLLL1oLxYG9db8wjgy7lK8NMRUgQG+LwFApL2wWOxV7Eccm0nCYDgks/tGiczS3s0A/B3chJs38i79t2mJjtvkLu937b9e0TzCThYhJFsI1aBIYEYdkc8qCQ9YJQ2ndV3hylprgsORUNi9ZulR+Di4iJVt8Dg5/PX88JT9VZ+ARnHI+u6SkBK/+1tZWzWthDQ0NeGPHYMPLF9mQCE+0NtdMUbVGcFr3onWDKFRelMBQxIDR2ny2QOjU0dGBDBGJvJxWF6Md6bO8Gzh0MPFc4d27d5HKid5GbtjW1iamAtBK5OCQJjSKdXFvOAESQMhda6E4sLfuF/nvv/71L7VC7Ev+khayZjHXJi6Vygu+vr6++Cv2Io5NNsfBIG9F7IlnNbfDbz | ||
tadzik | but it says it's a png | ||
eli-se | LwmwwzNwcnrhjAPliXc3AiRYLLIJT+/n4MV/FjTsI7MvHUbK4mOG9vb4wfbHNkZASvdbU5OLW96NogIsfS0tKBgQEM+9OnT8s5OM3mswKiEoxkHI+4yxCOyt/fX4z22tpaRFIy0MPxyzcMzQ92QIWiFc4UERDOWhgTAaxoiGAQJ4tYCb0hs/hTp06Njo5qLRTTbW/dr4wT1WJt7Eus4+1E3FxTeBz/IJwjvCkCebEXcWxYF8eM9ejoaBxDRESE5nYoOApuhgTX19eHt2W8/+OFi9efEApewchrxNXA+vp6MaOM4YfXNOI4DBgMCYwiXc2VgktOTkYYgtc9cijYTXkVVXMvujaIEYIKYqfwrBjJWpvPPOgZmAgreA/AYeN4MIZv3bolQlEICyP89u3boiZEA3MlJibiHDVn+i9duiRdAEWin2Vui386HC | ||
p2hKBJXGgWXSouuWoWygN7634vXryIf5ByDg7nItpqfs4D3Q5FZmdn45DwzxV7kceGBBYHIC61owKeVV4Rltuh4Ci4GRLcewWCU/tI17uDDc71336eH+CdRvOTJXpCwVFwFNz/gZQHMYUIbcSHrSiXWeHFixcyHBscHES8Ka4OU3AUHAX3bi+Vujrx2dH09HRxbY7MCgjZ8F9AEoqsWXlJgYIj0wO/bE/mARQcoeAIBUcoOEIoOELBEULBEQqOEAqOUHCEUHCEgiOEgiMUHKHgCAVHCAVHKDhCKDgyNxgbG6PgCAVHfqehocHLy8ve3v7gwYORkZHiHo0pKSkuLi67d+92dXUVN03VVbOtre3EiRPOzs6+vr4GcvuK3377DXZTux0rIRTcgmN0dNTCwkL82Ed1dfVHH30EbalUKjs7O1Ghvr4ejtNVE7 | |||
12:38
anaeem1_ left
|
|||
timotimo | aye, a png | 12:38 | |
eli-se | GSqampUAmcsmPHDkM4IzgXBzPrvyBFCAU3y9y6devkyZPyIaI2+SMggsbGRmNjY101S0pKlPfaRnwnfpRIMDQ01DuzIIQUyanyjviEUHALlODgYHkvfHD+/HkhOKxYWVmtWrXqww8/NDEx0VUzMDDQ3Nx8twIoT9aBcZpmA0hW3vGVEApu4VJbW3vkyBH5cPv27dBWTk6OtbV1bm5ud3c3Mr5169bpqllYWOjj46Nr4zMfwSEtFT8rSQgFR34HkVpYWFhnZ2dAQICRkRG0FR0dHRUV9frND0GGhISIFFVrzVevXpmZmYmJuZGREVivo6ODXUoIBWcoIOTJzMw8fPjwxYsX4bXQ0NAXL164ubk5OTkhjktMTBRPaa2JwocPHx49ehTJ6f79+zV/iIgQQsEZCp6entXV1dNbkxBCwc0OKpXKxsZGzFsh97 | ||
SwsBC/WfkuNQkhFJyhkJGRgewSOaa7u3tlZeW01CSEUHCEEELBEUIoOEIIoeAIIYSCI4QQCo4QQig4Q6Srq+v69ev61Ozt7Y2Pj2ePEULBUXCEEApuBuns7MzLy7tz5050dHRCQkJdXd34+LgUXF9fX3Z2NhSGOvKGkf39/Tk5ObGxsdeuXWtvbxeCU6lUmZmZKExOTi4rKysqKtLVnBBCwc2c4M6ePSvuQj48PJyeno51ITiYLjQ0dGBgAE/19PTExMSIJpcvXxa3sURh/BvGxsbCw8MRzYno79y5cxCcruaEEApu5gQHHylTztTUVCE4RGcFBQXyKQRog4ODUBskKAuLi4shuKamptzcXFmYkpICwWltzg4nhIKbUcElJSUpSxB2CcHl5+cjLotXAGch/ayqqlI2R3lhYeH9+/dlYdEbtDZnhxNCwc | |||
10iqo1gmttbc3Ly1Orjwjuxo0b8mFJSQnMhULlRYmrV69CcFqbE0IouBkVnLe3d2Vl5fj4+MjIyM2bN9Xm4MTM2tjYGLTV39//+s0c3JMnT4QNsS4uMkRGRpaWlg4MDNy5c+f06dNyDk6zOSGEgps5wSUnJ6ekpCCdTEhIgN2UV1EhsoyMDCgMaWx9fb1o0tfXl5WVFRMTc+XKFYRpQnBQGCqgVXFx8d27dyE7Xc0JIRTczAlOmXJOC9iggfzkMyEUHAX3roJ7/vx5VFSU+Gk+ZKkIBtmxhFBw8yeCq6urQx6KbDQ9PR0ZLjuWkGnnfwEl144iXZyc6wAAAABJRU5ErkJggg== | |||
tadzik | damn, now I really want to pose this asciiart of Pope John Paul 2 I have | ||
Ven | moritz: do you do logs cleanup? | ||
eli-se | oops | ||
that URL was a little too long :v | |||
i.imgur.com/ItpcaEG.png | |||
timotimo | oh! | 12:39 | |
OH! | |||
tadzik | eli-se: please refrain from doing this again :) | ||
timotimo | you can use url shorteners as image storage services! | ||
eli-se | ok :p | ||
timotimo | this is BRILLIANT! | ||
tadzik | timotimo: lol | ||
Ven | timotimo: uhm? | ||
tadzik | let's try that right now | ||
lizmat | FROGGS_: fwiw, I don't see strange TODO"s passing on JVM anymore | ||
12:40
anaeem1 joined
|
|||
timotimo | tadzik: thanks. i'm too lazy to try it myself | 12:41 | |
also, i don't have an image ready to go | |||
FROGGS_ | lizmat: huh | ||
maybe I did not test with latest? | |||
lizmat | argh... | ||
12:41
eli-se left
|
|||
lizmat | I tested moar :-( | 12:41 | |
lizmat tries again | 12:42 | ||
FROGGS_ | ahh | ||
I'll retest this one: | 12:43 | ||
t/spec/S02-types/bag.rakudo.jvm (Wstat: 0 Tests: 193 Failed: 0) | |||
TODO passed: 17, 77 | |||
arnsholt | tadzik: Oooh, Jan Pawel ASCII art =D | 12:47 | |
tadzik | in all the colours of the rainbow | ||
that got lost in the irc log, unfortunately :( | |||
arnsholt: gist.github.com/tadzik/611b593f5dbf409b6e2f | 12:48 | ||
12:49
[Sno] left
12:50
[Sno] joined,
telex left
12:52
telex joined
12:53
alini joined
12:56
kurahaupo joined,
xfix joined
|
|||
dalek | kudo/nom: 412559b | lizmat++ | src/core/PseudoStash.pm: Make stuff like CALLER::<&?ROUTINE> work |
12:58 | |
timotimo | tadzik: how about we remove IO::Select from the ecosystem, as it only works on parrot and isn't strictly necessary on moar and jvm? | ||
tadzik | timotimo: sure, it's not very useful on parrot anyway | 12:59 | |
FROGGS_ | lizmat++ # good catch | ||
timotimo | tadzik: how about your Threads module, does that still exist? | ||
FROGGS_ | timotimo: are you getting further with isatty? | ||
tadzik | timotimo: probably :) git never forgets | ||
timotimo | FROGGS_: no, i've been distracted since i last wrote about it | ||
ThreadsThreads in Perl 6. Yeah, really | 13:00 | ||
lizmat hopes FROGGS_ or timotimo will do it | |||
timotimo | still in the ecosystem | ||
tadzik | hah, I need to read this code | 13:01 | |
lizmat | m: class A { method a { b() } }; sub b() { say CALLER::<self>.WHAT }; A.new.a # sort of expected (A) there :-( | 13:02 | |
camelia | rakudo-moar e5a8f7: OUTPUT«Cannot call method 'dynamic' on a null object in method AT-KEY at src/gen/m-CORE.setting:12600 in sub postcircumfix:<{ }> at src/gen/m-CORE.setting:3663 in sub b at /tmp/4YxbSys1na:1 in method a at /tmp/4YxbSys1na:1 in block <unit> at /…» | ||
lizmat | $ 6 'class A { method a { b() } }; sub b() { say CALLER::<self>.WHAT }; A.new.a' | ||
(Mu) | |||
I was pondering whether it would make sense for exceptions to be able to access their caller's "self" for more info | 13:03 | ||
FROGGS_ | is self a lexical symbol? | ||
lizmat | m: class A { method a { b() } }; sub b() { say CALLER::.keys }; A.new.a | ||
camelia | rakudo-moar e5a8f7: OUTPUT«self $! $/ $_ %_ $*DISPATCHER &?ROUTINE RETURN» | ||
tadzik | hah, my semaphore implementation looks like it was typed straight from Tanenbaum | 13:04 | |
it probably was | |||
lizmat | m: class A { method a { $_ = 42; b() } }; sub b() { say CALLER::<$_> }; A.new.a # $_ seems to work | ||
camelia | rakudo-moar e5a8f7: OUTPUT«42» | ||
FROGGS_ | m: class A { method a { $_ = 42; b() } }; sub b() { say CALLER::<$*PACKAGE> }; A.new.a | 13:05 | |
camelia | rakudo-moar e5a8f7: OUTPUT«(Any)» | ||
lizmat | m: class A { method a { $_ = 42; b() } }; sub b() { say CALLER::<$?PACKAGE> }; A.new.a # $? mnot $* | ||
camelia | rakudo-moar e5a8f7: OUTPUT«(Any)» | ||
FROGGS_ | I just read this: | 13:06 | |
method term:sym<self>($/) { | |||
make QAST::Var.new( :name('self'), :scope('lexical'), :returns($*PACKAGE), :node($/) ); | |||
lizmat | m: class A { method a { $_ = 42; b() } }; sub b() { say CALLER::<&?ROUTINES> }; A.new.a # this maybe? | ||
camelia | rakudo-moar e5a8f7: OUTPUT«(Any)» | ||
FROGGS_ | but yeah | ||
m: class A { method a { $_ = 42; b() } }; sub b() { say CALLER::<&?ROUTINE> }; A.new.a | |||
camelia | rakudo-moar e5a8f7: OUTPUT«No such method 'dynamic' for invocant of type 'Method' in method AT-KEY at src/gen/m-CORE.setting:12600 in sub postcircumfix:<{ }> at src/gen/m-CORE.setting:3663 in sub b at /tmp/p6p35uYYyX:1 in method a at /tmp/p6p35uYYyX:1 in block <u…» | ||
lizmat | that I just fixed | ||
FROGGS_ | yeah | ||
13:06
nige left
|
|||
lizmat | well, it was just a thought | 13:06 | |
FROGGS_ | if self is a lexical then it should be accessible I think | 13:07 | |
maybe an optimization kills it | |||
13:08
Gothmog_ left
|
|||
lizmat | tried it with --optimize=0 , no luck | 13:08 | |
FROGGS_ | what about spesh? | ||
lizmat | MVM_SPESH_DISABLE=1 right? no luck :-( | 13:09 | |
FROGGS_ | yes, this | ||
hmm :/ | |||
lizmat | no worries, was just testing an idea | 13:10 | |
FROGGS_ | sure | 13:11 | |
13:13
pecastro left
13:14
skids joined
13:15
pecastro joined
13:16
eli-se joined
|
|||
eli-se | woo | 13:17 | |
|Tux| | m: @x=[^2],[^3];@x.map({[*.map(*.Str)]}).perl.say | 13:19 | |
camelia | rakudo-moar 412559: OUTPUT«5===SORRY!5=== Error while compiling /tmp/jqKKsAKRMPVariable '@x' is not declaredat /tmp/jqKKsAKRMP:1------> 3@x7⏏5=[^2],[^3];@x.map({[*.map(*.Str)]}).perl expecting any of: postfix» | ||
|Tux| | m: @x=[^2],[^3];@x.map({[$_.map(*.Str)]}).perl.say | ||
camelia | rakudo-moar 412559: OUTPUT«5===SORRY!5=== Error while compiling /tmp/idF3jGrRAdVariable '@x' is not declaredat /tmp/idF3jGrRAd:1------> 3@x7⏏5=[^2],[^3];@x.map({[$_.map(*.Str)]}).per expecting any of: postfix» | ||
|Tux| | m: my @x=[^2],[^3];@x.map({[*.map(*.Str)]}).perl.say | ||
camelia | rakudo-moar 412559: OUTPUT«([WhateverCode.new()], [WhateverCode.new()]).list» | ||
|Tux| | m: my @x=[^2],[^3];@x.map({[$_.map(*.Str)]}).perl.say | ||
camelia | rakudo-moar 412559: OUTPUT«(["0", "1"], ["0", "1", "2"]).list» | ||
|Tux| | is that related to RT#123980 ? | 13:20 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123980 | ||
[Coke] | TPF current grant submission deadline extended: news.perlfoundation.org/2015/03/ext...t-pro.html | 13:30 | |
13:32
Ven left
|
|||
lizmat | FROGGS_ jnthn: I thought we had native int arrays on JVM as well??? | 13:36 | |
$ perl6-j -e 'say array[int] ~~ Positional' | |||
===SORRY!=== Error while compiling -e | |||
Undeclared routine: | |||
array used at line 1 | |||
13:36
eli-se left
13:37
Ven joined
|
|||
FROGGS_ | hmmm, that would explain the test failures I had seen :o) | 13:37 | |
lizmat | ok, I guess I'll add a skip_rest for JVM | 13:38 | |
13:39
nige joined
|
|||
lizmat | argh, it's a compile time issue :-( | 13:39 | |
dalek | kudo/nom: 99b410e | lizmat++ | t/spectest.data: Run native array tests only on Moar |
13:46 | |
13:52
zakharyas joined
|
|||
lizmat | FROGGS_: native_array.pm is not included in the JVM build | 13:52 | |
so no native arrays on JVM just yet | 13:53 | ||
:-( | |||
14:02
muraiki joined
14:03
pecastro left
14:05
pecastro joined
|
|||
dalek | pan style="color: #395be5">perl6-examples: 5266ef2 | paultcochrane++ | htmlify.pl: Use collected pod and metadata to write example files This removes the need to run perl6-m to extract the pod a second time. |
14:08 | |
pan style="color: #395be5">perl6-examples: 9b55d5f | paultcochrane++ | README.md: Correct link to example template file |
|||
timotimo | [ptc]: damn you are fast | ||
14:10
laouji left,
muraiki left
|
|||
dalek | ast: d316dd3 | usev6++ | S03-sequence/misc.t: Adjust test for sequence terminated by signature mismatch |
14:10 | |
ecs: 13e0016 | usev6++ | S03-operators.pod: Fix typo (remove superfluous word 'operator') |
14:18 | ||
ast: ee98133 | lizmat++ | S09-typed-arrays/native- (2 files): Add some more native int/num array tests Mostly skipped for now :-( |
14:19 | ||
ast: ffcc428 | lizmat++ | S03-sequence/misc.t: Merge branch 'master' of github.com/perl6/roast |
|||
FROGGS_ | m: say 'C:\\rakudo/t'.IO.cleanup | 14:22 | |
camelia | rakudo-moar 99b410: OUTPUT«"/home/camelia/C:\rakudo/t".IO» | ||
14:24
dayangkun left
|
|||
FROGGS_ | m: say $*CWD.WHAT | 14:24 | |
camelia | rakudo-moar 99b410: OUTPUT«(IO::Path)» | ||
14:26
LonelyGM joined
14:27
raiph joined
14:29
LonelyGM left
|
|||
dalek | ast: fa8e53d | FROGGS++ | S32-io/chdir.t: use .cleanup to compare paths We need to normalize paths for is() checks, and that also means we can use forward slashes to concat paths. |
14:30 | |
FROGGS_ | timotimo: that's what we should do in the test reports you've linked earlier | ||
dalek | ast: ec203fc | lizmat++ | / (11 files): Unfudge all passing JVM specific todo'd tests |
14:31 | |
FROGGS_ | what? | 14:32 | |
lizmat: these were the TODOs we talked about earlier | |||
lizmat | these were all tests that were marked todo for rakudo.jvm that now pass | ||
they seemed all role related somehow | 14:33 | ||
dalek | ast: 98ab70b | usev6++ | S03-sequence/misc.t: Fix quoting for skip message |
||
FROGGS_ | hmmmm | ||
14:34
lichtkind joined
|
|||
dalek | kudo/nom: bad2657 | lizmat++ | t/spectest.data: Add one more test file we don't test on JVM |
14:34 | |
FROGGS_ | lizmat++ # seems you are right | 14:35 | |
pheww | |||
that will make life easier until/on Thursday | |||
lizmat | still more breakage that needs further investigation | 14:36 | |
FROGGS_ | lizmat: on jvm or moar? or both? | ||
lizmat | some flappers on moar still | ||
I guess we will need to skip those | |||
FROGGS_ | S17? | ||
lizmat | yeah | ||
FROGGS_ | k | 14:37 | |
dalek | osystem: 0ac39c1 | retupmoca++ | META.list: Add HTTP::ParseParams |
14:39 | |
14:40
kst` is now known as kst
|
|||
abraxxa | FROGGS_: just read that you are/where working on a feature called nativesizeof for NativeCall, what's its status? | 14:42 | |
dalek | kudo/newio: 67156c1 | FROGGS++ | lib/NativeCall.pm: throw for wrong arity in native subs |
||
rakudo/newio: 051c602 | lizmat++ | src/core/native_array.pm: | |||
rakudo/newio: Make my int @a = Range about 1000x faster | |||
14:42
dalek left
|
|||
lizmat | sorry Dalek | 14:43 | |
FROGGS_ | m: use NativeCall; say nativesizeof(long) # abraxxa | ||
14:43
dalek joined,
ChanServ sets mode: +v dalek
|
|||
camelia | rakudo-moar bad265: OUTPUT«8» | 14:43 | |
FROGGS_ | m: use NativeCall; say nativesizeof(int16) | ||
camelia | rakudo-moar bad265: OUTPUT«2» | ||
abraxxa | FROGGS_: so a function that gets imported from NativeCall? is it already in rakudo 2015.02? | 14:44 | |
lizmat | afk for a bit& | ||
abraxxa | can i pass it a variable and it returns the number of bytes of it's contents? | ||
FROGGS_ | m: use NativeCall; class Foo is repr<CStruct> { has num32 $.a; has uint8 $.b }; say nativesizeof(Foo) | ||
camelia | rakudo-moar bad265: OUTPUT«8» | ||
FROGGS_ | star-m: use NativeCall; class Foo is repr<CStruct> { has num32 $.a; has uint8 $.b }; say nativesizeof(Foo) | ||
camelia | star-m 2015.02: OUTPUT«5===SORRY!5=== Error while compiling /tmp/kk1m9TRg9rUndeclared routine: nativesizeof used at line 1» | ||
FROGGS_ | abraxxa: apparently not :o( | 14:45 | |
abraxxa | FROGGS_: so just types? ok | ||
FROGGS_ | but it will be in 2014.03 which appears in about 53 hours | ||
abraxxa: no, nativesizeof() is not in 2015.02 | |||
abraxxa | FROGGS_: good enought, thanks! | 14:46 | |
moritz | justrakudobrewit | ||
FROGGS_ | aye | ||
unless you are on windows | |||
abraxxa | moritz: if I had time to continue with DBDish::Oracle I would ;) | ||
FROGGS_ | ... and dont have visual studio express installed | ||
psch | \o | 14:48 | |
turns out -noverify is why we SEGV on jvm | |||
without that we get a VerifyError | |||
14:49
tueriahe joined
|
|||
tueriahe | Hello, is there any plan to implement irrational numbers in perl6 ? | 14:49 | |
psch | (that's for RT #124051, the SEGV) | 14:50 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=124051 | ||
moritz | tueriahe: no; that's best left to modules | ||
[Coke] | I would not skip flappers for release. | 14:53 | |
the more we skip/unskip them on release, the less likely they'll get fixed. | |||
or unskipped. we've had that happen a few times where they get skipped, and then potentially borken worse because they aren't run | 14:54 | ||
abraxxa | can someone help me confirm that a sword in Oracle OCI is a int32 in Perl 6? | ||
same for size_t which should be a int32 | |||
tueriahe | wondering if one could do this things en.wikipedia.org/wiki/Standard_map with some perl representation of irrational numbers | 14:55 | |
|Tux| | size_t depends on the Oracle version. most often it is a long long (64bit) | ||
tueriahe | basically would mean implementing a computer algebra system | ||
14:56
rmgk_ joined,
rmgk left,
rmgk_ is now known as rmgk
|
|||
[Coke] | do the flappers have RT's yet? | 14:56 | |
abraxxa | |Tux|: how can I find that out? | ||
|Tux| was looking, have a minute | 14:57 | ||
14:58
rindolf joined
|
|||
abraxxa | |Tux|: thanks! | 14:58 | |
14:59
kaare_ left
|
|||
moritz | tueriahe: is that the standard way of representing irrational numbers in computer algebra systems? | 15:01 | |
because it's not quite what I'd expect :-) | |||
|Tux| | abraxxa, gist.github.com/Tux/da7d140d4b6e0c554f1a does that help? | 15:03 | |
it is a slimmed down example from how Oracle compiles c sources | 15:04 | ||
this is 11.2/64 on Linux | |||
15:05
zakharyas left
|
|||
abraxxa | |Tux|: how can I define my Perl 6 methods when this depends on the platform? | 15:05 | |
ugexe | you could probably use a Build file, or handle delegation yourself based on $*DISTRO or whatever | 15:07 | |
15:07
yqt joined
|
|||
abraxxa | das NativeCall have a type that can be used for size_t? | 15:09 | |
arnsholt | Not yet, I think. Probably should though | 15:10 | |
15:11
Rounin left,
LonelyGM joined
|
|||
|Tux| | abraxxa, IIRC Oracle 11 and newer *only* ship with 64bit, so assuming 8 is safe (64bit) | 15:11 | |
abraxxa | |Tux|: does sizeof return bits or bytes? | ||
|Tux| | bytes | ||
abraxxa | i could use int which also changes per platform | 15:12 | |
i would have switched to int32 as per recommendation from the last NativeCall release to not use int without defininig the specific size | 15:13 | ||
15:13
kurahaupo left
|
|||
abraxxa | |Tux|: InstantClient is still available for 32bits www.oracle.com/technetwork/database...97480.html | 15:15 | |
can I define my own native type which is also called size_t so that I have to specify the translation from the Perl to the C type only in one place and not change every method definition? | 15:20 | ||
FROGGS_ | abraxxa: I think you meant long when you said int | 15:21 | |
moritz | abraxxa: constant size_t = int32; # for example | 15:22 | |
abraxxa | FROGGS_: currently I had it defined as int because I wasn't able to determine the correct type | ||
15:22
Ven left
|
|||
abraxxa | so what I would do is: | 15:22 | |
constant size_t = long; | |||
and as long is different on 32 vs. 64bit platforms it should again conform to the OCI library?! | 15:23 | ||
15:26
kurahaupo joined
|
|||
FROGGS_ | aye | 15:28 | |
abraxxa | great! | ||
i will define constants for all the OCI types and use those in the methods | 15:29 | ||
15:30
perl6_newbee joined
15:32
aborazmeh joined,
aborazmeh left,
aborazmeh joined
15:36
nige left
15:37
aborazmeh left
|
|||
FROGGS_ | that makes sense | 15:37 | |
15:42
LonelyGM left
15:46
pecastro left
15:49
pecastro joined
|
|||
lizmat | commute to NRPM meeting& | 15:54 | |
15:54
lizmat left
15:57
eli-se joined,
eli-se left
16:18
dwarring left
16:19
diana_olhovik_ left
16:26
tueriahe left,
cschwenz left,
trzef joined
16:28
mr-foobar joined
|
|||
trzef | is there a place on the internet where some cool scripts in perl6 that show the quality of the language can be seen? | 16:29 | |
TimToady | rosettacode.org | ||
yoleaux | 10:12Z <smls> TimToady: What do you think of this: i.imgur.com/CeF13gV.png | ||
10:12Z <smls> TimToady: My ulterior motive is the attempt to find a good color scheme for a redesigned perl6.org (for after the 6.0 beta release), that *both* fits Camelia *and* has colors that are pleasant enough to be used as the background of larger areas. Which I can't seem to do with the current Camelia colors. | |||
10:13Z <smls> TimToady: But it might also help end the recurring resistance to Camelia as Perl 6's mascot; because even though Camelias detractors don't always communicate the source of their dislike clearly, I think it has much to do with the colors. | |||
TimToady | see rosettacode.org/wiki/Category:Perl_6 | 16:30 | |
also github.com/perl6/perl6-examples | 16:33 | ||
also anything mentioned on perl6.org/documentation/ | 16:34 | ||
16:34
rurban left
|
|||
TimToady | .tell smls I think your Camelia looks like she didn't get enough sleep. :) And I think Camelia should be the accent on a page, not match the page. | 16:37 | |
yoleaux | TimToady: I'll pass your message to smls. | ||
16:37
tbrowder joined
|
|||
tbrowder | Is 'die' the only current choice in Perl 6 for Perl 5's 'croak' or 'carp'? | 16:38 | |
TimToady | .tell smls also, the colors are not meant to appeal to people who are too old to enjoy life anymore :) | 16:39 | |
yoleaux | TimToady: I'll pass your message to smls. | ||
16:39
coffee` left
|
|||
TimToady | tbrowder: you can throw an exception object directly | 16:39 | |
and there's some lower-level backtrace controls I don't remember | 16:40 | ||
it's also possible to hide routines from the backtracer | |||
16:40
nige joined
16:41
alini left
|
|||
tbrowder | Um, as a newbie, I'm just trying to get past old Perl 5 idioms, so I have a lot of 'if/eslif/else carp/croak' situations. | 16:41 | |
16:42
mr-foobar left,
mr-foobar joined
|
|||
[Coke] | in p6weekly.wordpress.com/2015/03/16/...s-arrive/, why does the first p5 example use integer? | 16:42 | |
TimToady | tbrowder: to be honest, we haven't thought much about carp/croak yet | 16:43 | |
[Coke] | (is that required with native ints?) | ||
tbrowder | Um, backtrace controls would be cool. Any pointers to doc? | 16:44 | |
16:44
trzef left,
yqt left
|
|||
TimToady | [Coke]: it's just leveling the playing field by using the only effective integer declaration P5 has | 16:44 | |
[Coke] | pass --ll-exception on the command line for more deets on a backtrace. | ||
TimToady | yeah, but that sucks as an internal API | 16:45 | |
[Coke] | TimToady: But if it's uneeded in that sample, seems like an unfair leveling. | ||
which I get. there's marketing and stuff. :) | |||
tbrowder | Thanks TimToady and [Coke]. | 16:46 | |
TimToady | it actually does use different ops optimized for integers when you 'use integer' in P5 | ||
[Coke] | huh. it's actually SLOWER here if I comment out use integer. | ||
TimToady | yup | ||
[Coke] | so there you go. Thanks. | ||
abraxxa | yoleaux: regarding the proposed color scheme: i find the P 6 indeed very much better readable and standing out | 16:55 | |
16:55
abraxxa left
16:58
diana_olhovik_ joined
|
|||
TimToady | pity a computer screen can't reproduce irridescence... :) | 16:58 | |
jnthn | evening, #pelr6 | 16:59 | |
TimToady | o/ | ||
nwc10 | heresy! | ||
jnthn | heresy *and* typo | 17:00 | |
nwc10 | the beer is good there? | ||
17:00
[Sno] left
|
|||
jnthn | Only just got off teaching, not had any beer yet :) | 17:00 | |
17:01
liztormato joined
|
|||
jnthn | Last night's, however, was excellent | 17:01 | |
liztormato | colomon: I did not see much difference between use integer and without | 17:03 | |
TimToady | its main purpose is to for integer semantics where you might expect floating-point | ||
liztormato | Thought it was best to add it anyway | ||
TimToady | *force | 17:04 | |
17:04
coffee` joined
|
|||
liztormato | Oops I meant [Coke] ;-) | 17:05 | |
pmichaud | timotimo: +1 | 17:06 | |
TimToady | and the purpose of the P 6 is not primarily to be readable, more like secret markings that happen to look like P 6 if you squint against the glare | ||
pmichaud | oops, my +1 was in response to an apparently backscrolled item | ||
17:06
tinyblak left
17:14
madmuid joined
|
|||
TimToady | liztormato: your commit github.com/rakudo/rakudo/commit/42e6cda418 looks bogus to me; surely it should be paying attention to the itemization, not the Arrayness | 17:17 | |
17:18
eli-se joined
|
|||
TimToady | oh, it was bartolin's patch... | 17:18 | |
liztormato | Please don't blame the merger :-) | ||
bartolin | TimToady: yes, that was from me. Mouq++ already pointed out that "flat $value" instead of "$value.flat" would have been better. | 17:19 | |
TimToady | oh, I see the comment an hour ago now | 17:20 | |
jnthn | liztormato: In general, if you're not sure if a patch is right or not, it's better *not* to merge it and leave it to somebody surer :) | ||
TimToady | (still lackbogging) | ||
bartolin | I just spectested the suggestion from Mouq and it passed all tests. | ||
TimToady | bartolin++ Mouq++ | ||
"Pay no attention the man behind the curtain!" | 17:21 | ||
liztormato | jnthn: it passed all tests and made some todos pass | ||
TimToady | and it flattens something itemized, which is suspect | 17:22 | |
or versa vica | |||
17:22
mohij joined
|
|||
bartolin | sorry for the trouble | 17:22 | |
TimToady | one of my points last night was that it's okay to be wrong temporarily :) | ||
so don't be sorry | 17:23 | ||
17:24
virtualsue joined
17:26
spider-mario joined
|
|||
moritz | somebody please throw some motivation my way | 17:26 | |
TimToady | do it for your kids | ||
moritz | that would be playing with them, not hacking on perl6/doc :-) | ||
jercos | I'm already wearing these shades, make the future bright so I don't look like a dork. | ||
WHOOPS, TOO LATE | 17:27 | ||
jnthn | moritz: But your kids can use the docs to learn Perl 6 in the future, which will be awesome! :) | ||
dalek | c: 56c1912 | moritz++ | lib/Type/Supply.pod: correct a TODO comment |
17:28 | |
17:28
Rounin joined
17:31
LonelyGM joined
17:32
yqt joined
17:34
liztormato left
17:35
[Sno] joined
|
|||
bartolin | TimToady: my initial reason to fiddle with SEQUENCE was RT #80574 and the corresponding fudged test | 17:35 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=80574 | ||
bartolin | m: my @a := -> { "one", "two" } ... *; say @a[0] | ||
camelia | rakudo-moar bad265: OUTPUT«one» | ||
bartolin | do you agree that this should return only 'one'? | ||
17:36
J-L joined
|
|||
TimToady | yes, you'd need $("one", "two") or ["one,"two"] to get both | 17:36 | |
bartolin | thanks | 17:37 | |
TimToady | but it sorta has nothing to do with being an array | ||
that's what set off me jitters :) | |||
bartolin | (and rightly so :-) | 17:38 | |
J-L | Question: Using Perl6's REPL interface, I notice that it won't let me enter multi-line code unless I end the line with a backslash. So copying-and-pasting code into REPL won't work (without the backslashes at the end of each physical line). Is that the way it's going to stay, or are there plans to change it to be more copy-and-paste-friendly? | 17:39 | |
arnsholt | It's a known bug in the REPL | 17:40 | |
I don't think we have a timeline for when it'll be fixed, though | |||
17:44
lizmat joined
17:47
tinyblak joined
|
|||
J-L | arnsholt: Thanks! It's good to hear that the issue is temporary. Or supposed to be, at least. | 17:48 | |
TimToady | our own readline in P6 might be a good project for someone of a hacky disposition, and might serve as the basis for a better REPL | 17:50 | |
then we could avoid both license and unicode issues | 17:51 | ||
17:51
perigrin left
|
|||
TimToady | the main thing to learn would be which characters are double-wide in the typical terminal | 17:51 | |
17:53
eli-se left
17:54
smls left
|
|||
itz_ | tab complete on methods would be nice in the REPL | 17:55 | |
17:56
Sqirrel joined
17:57
dakkar left
17:59
espadrine left
|
|||
Sqirrel | m: say "look, a squirrel" | 17:59 | |
camelia | rakudo-moar bad265: OUTPUT«look, a squirrel» | ||
tadzik | welcome Sqirrel :) | ||
Sqirrel | :o) | 18:00 | |
skids | m: say <hello o/ greetings SQIRREL!>.pick(1) | 18:03 | |
camelia | rakudo-moar bad265: OUTPUT«o/» | ||
18:04
bayprogrammer joined
|
|||
hoelzro | itz_: I agree; I think for that to happen, though, we would need an NQP/VM level op for attaching a completion callback to readline/linenoise | 18:05 | |
now that NativeCall is core, though, is it necessary to have linenoise/readline stuff in NQP or MoarVM? | |||
18:05
pecastro left
18:06
virtualsue left
|
|||
jnthn | hoelzro: I wouldn't be sad to see linenoise go | 18:09 | |
It's a mess on Windows. | |||
Worse than not having it. | |||
And a REPL written in NQP or Perl 6 would mean maintaining it once on Moar and JVM too, if it's done using NativeCall | 18:10 | ||
18:13
Hor|zon left
18:19
eli-se joined
|
|||
hoelzro | would LineNoise.pm/ReadLine.pm just ship with Rakudo, then? | 18:20 | |
or should the REPL look for the modules and enable them if available? | |||
eli-se | woo | ||
LonelyGM | m: say <watching champions league> | 18:23 | |
camelia | rakudo-moar bad265: OUTPUT«watching champions league» | ||
eli-se | LonelyGM: almost like barewords! | 18:29 | |
LonelyGM | eli-se: use strict :p | 18:30 | |
moritz | quotes are almost like barewords, except for the quotes | 18:32 | |
18:39
yqt left
|
|||
arnsholt | Like barewords, except not ambiguous! \o/ | 18:45 | |
timotimo | these are bare quoted words | ||
18:46
Woodi left
|
|||
masak | m: say <watching champions league>.pick(2) | 18:49 | |
camelia | rakudo-moar bad265: OUTPUT«champions watching» | ||
masak | what's an idiomatic way in Perl 6 to say ".pick($n), but retain the order of the original list" ? | ||
jdv79 | quoted strings are like barewords except the quotes - mind blown... | 18:50 | |
colomon | masak: pick on the size of the list, sort the results and use them to get a slice of the original? | ||
FROGGS_ | m: my @a = 'a' .. 'z'; say @a[@a.keys.pick(5).sort] | 18:51 | |
camelia | rakudo-moar bad265: OUTPUT«c d n x y» | ||
FROGGS_ | masak: ^^? | ||
I dunno what "pick on the size" means | 18:52 | ||
ahh, size | |||
like .elems | |||
masak | FROGGS_++ | 18:53 | |
[Coke] | m: my @a = (1..100).pick(10); say @a; my @b = @a.pick(4); say @a.antipairs[@b]>>.values; | ||
camelia | rakudo-moar bad265: OUTPUT«77 48 7 16 89 23 98 3 93 52» | ||
timotimo | does @a.keys return a Range object? or does it handle undefined slots, too? | 18:54 | |
masak | m: sub pick-orderly(@a, $n) { @a[@a.keys.pick($n) }; say pick-orderly('a'..'z', 5) | ||
[Coke] | m: my @a = (1..100).pick(10); say @a; my @b = @a.pick(4); say @b; | ||
camelia | rakudo-moar bad265: OUTPUT«5===SORRY!5=== Error while compiling /tmp/pWkhWhFxEGUnable to parse expression in subscript; couldn't find final ']' at /tmp/pWkhWhFxEG:1------> 3ck-orderly(@a, $n) { @a[@a.keys.pick($n)7⏏5 }; say pick-orderly('a'..'z', 5) expectin…» | ||
rakudo-moar bad265: OUTPUT«23 42 82 18 53 27 29 19 31 4123 41 27 53» | |||
masak | m: sub pick-orderly(@a, $n) { @a[@a.keys.pick($n).sort] }; say pick-orderly('a'..'z', 5) | ||
camelia | rakudo-moar bad265: OUTPUT«c f k v x» | ||
masak | \o/ | ||
[Coke] | m: my @a = (1..100).pick(10); say @a; my @b = @a.pick(4); say (@a.antipairs[@b])>>.values; | ||
camelia | rakudo-moar bad265: OUTPUT«78 5 44 36 96 92 33 81 24 315» | ||
[Coke] | O_o | ||
that seems to be working in the rpl. | |||
18:55
labster left
|
|||
dalek | pan style="color: #395be5">perl6-examples: 10a3dd7 | paultcochrane++ | rosalind/cons-grondilu.pl: Remove superfluous rosalind example The up to date version is in the categories/rosalind directory |
18:55 | |
pan style="color: #395be5">perl6-examples: 0562a79 | paultcochrane++ | htmlify.pl: Format author heading |
|||
pan style="color: #395be5">perl6-examples: ed107f3 | paultcochrane++ | htmlify.pl: Set default values for title and author elements |
|||
18:55
labster joined
|
|||
FROGGS_ | jnthn: are arrays (the lowercase ones) implemented for the jvm? | 18:58 | |
18:59
labster left
19:08
telex left
19:10
Hor|zon joined,
rindolf left,
telex joined,
Celelibi left
19:11
Celelibi_ joined
19:14
Hor|zon left
19:16
perl6_newbee left
19:19
pullphinger joined
19:22
labster joined
|
|||
moritz | m: /\#/ | 19:22 | |
camelia | ( no output ) | ||
labster | timotimo: pong (I'm here, but you messaged right after my bedtime) | 19:23 | |
dalek | c: 01f598f | moritz++ | lib/Language/regexes.pod: Regexes: remove outdated special case \# also be a bit more specific in links |
19:24 | |
19:26
Hor|zon joined
|
|||
timotimo | labster: ah! i was looking at modules in the ecosystem and stumbled upon one of yours, but i forgot which one | 19:27 | |
labster | Well, at this point, I'm sure one of my modules stumbled on the compiler. | 19:28 | |
masak has been teaching Python for two days | |||
FROGGS_ | timotimo: one of these? testers.p6c.org/auths-L.html | ||
lizmat | hugme: hug masak | ||
hugme hugs masak | |||
masak | lizmat: thanks, but I enjoy it :) | ||
dalek | c: de11df8 | moritz++ | lib/Language/regexes.pod: More linking/indexing |
||
lizmat | then the hug is a bonus! | ||
FROGGS_ | masak: {} - take these, it is dangerous out there | ||
masak | lizmat: I actually asked $boss if I could create this course, so we'd get more courses like the Perl course :) | ||
timotimo | i think it was the one where i saw the comparisons between forward-slashed and backward-slashed paths as well as the reliance on ordering | ||
masak | FROGGS_: Python put all of them in their formatting strings. | ||
[Coke] | Are due for an nqp stage0 rebuild soon? | ||
*we due | |||
FROGGS_ | [Coke]: I dont think so... why? | ||
moritz | masak: I'm doing quite some python for $work, and I find that I spend quite some time debugging things where functions return None... | 19:30 | |
masak: simply because I forgot an explicit 'return' :-) | |||
masak | moritz: yeah. | ||
moritz: it happens to me all the time. | |||
moritz: sometimes in JavaScript too | |||
FROGGS_ | or C | ||
masak | hm, no. I never do that in C. | 19:31 | |
labster | timotimo: Ah, that module. Yeah, I'll fix when I get tuits | ||
timotimo | cool :) | ||
FROGGS_ | in P5 I usually think "ohh damn" in the middle of writing down a signature :/ | ||
masak | FROGGS_: I thought p5 had them now? | ||
FROGGS_ | masak: not on all of our production machines sadly | 19:32 | |
labster: when you compare paths, use .cleanup on both LHS and RHS of is() | |||
moritz | also, python is full of WTFs for me | 19:33 | |
iterating over keys and values of a dict | |||
labster | FROGGS_: that is a great suggestion, thanks. | ||
moritz | for k, v in d.iteritems() | ||
huh? | |||
masak | things I am jealous of Python for as a Perl 6 dev: a clear concept of "hashable" built into the language. a small, sensible set of core collection types. bound methods. (*sob*) a better REPL than ours. | ||
19:34
eli-se left
|
|||
moritz | also, (at least in py3), 'del' exists both as function and sub | 19:34 | |
but 'print' only as a function | |||
masak: yes, hashable is good | |||
masak | moritz: I taught people about 'del', and then immediately told them that using it is a code smell. | ||
moritz: and bound methods! | |||
moritz | masak: so, what does one use instead of del? | 19:35 | |
masak | I still can't believe how right Python gets bound methods. I need to study it more to understand how they seem to have basically no wtf-y corner in that part of the design. | ||
moritz: it's like asking, "so, what does one do instead of getting eaten by a lion?" | |||
moritz | also, it's kinda weird that len() and del() are subs, not methods | 19:36 | |
masak | just don't go near the bloody lion, and you'll be fine. | ||
moritz | masak: huh? I just want to delete items from dicts, for example | ||
masak | moritz: yes. it's weird. | ||
timotimo | or lists, yeah | ||
masak | moritz: oh, deleting from dicts is mostly fine. deleting variables ain't. | ||
moritz: even so, I find I don't delete from dicts so much either. not so much because it's bad; just that the case doesn't arise so much. | 19:37 | ||
jercos | len() is the one that gets me every time. is it length(foo)? no? foo.length? no? foo.len()? no? oh! right, len(foo). | ||
I've gone through a process nearly identical to that dozens of times :| | |||
moritz | masak: mostly? :-) | ||
19:37
regreg joined
|
|||
masak | moritz: I still maintain that there are better ways sometimes. | 19:37 | |
moritz | masak: dict.pop? | 19:38 | |
masak | no; just don't go near the bloody lion. | ||
sorry, I'm explaining it badly. | |||
FROGGS_ | the lion must be drawn here? | ||
masak | deleting things that you added to a structure is a sign of a poor design. | 19:39 | |
jercos | like taking the tabs off manilla folders. | ||
masak | even if the structure happens to be something as mutable as a dict. | ||
jercos | Stop recycling the same folders, go to officemax and buy another pack :| | ||
masak | jercos: right. you get me. | ||
timotimo | ooh, is this a contest? who wins gets the masak? :D | ||
masak | very unique offer! | 19:40 | |
vendethiel | mmh | ||
FROGGS_ | :D | ||
moritz | masak: for struct-like things I agree. Not so much for typical 'seen' hashes etc. | ||
vendethiel | I think I had a better one somewhere | ||
masak | moritz: sometimes you wish you'd unseen something? :P | ||
FROGGS_ | ohh yes | ||
masak .oO( what is this, Friday? ) | 19:41 | ||
[Coke] | FROGGS_: shouldn't we do it semi-frequently, with the thought that we're able to generate more awesome results with newer nqps? | ||
timotimo | masak: it's a joke. and don't call me Friday. | ||
moritz | masak: ok, not seen, but tracking items to-be-done by key, for example | ||
FROGGS_ | [Coke]: this will more likely just eat disk memory and will make the git repo explode | 19:42 | |
19:42
nige left
|
|||
FROGGS_ | [Coke]: and we already compile nqp twice when we build the nqp that gets installed | 19:42 | |
so there is no need for a more optimized nqp in stage0 | 19:43 | ||
unless you want to speed up building stage1 | |||
19:44
tgt joined
19:45
spider-mario left,
aoeuhtns left
|
|||
timotimo | that's only a tiny fraction of the actual compile time, isn't it? | 19:46 | |
and i don't think we've had a lot of improvement in the code-gen or optimization of nqp itself in the recent months | |||
masak | moritz: mark the item as done; leave it in the hash. | ||
FROGGS_ | yes yes | ||
19:47
spider-mario joined
|
|||
masak | moritz: a "done" item tells you more about the outcome than a missing item. | 19:47 | |
tgt | Hi. For some reason rakudo has very high memory usage on an Ubuntu VM I use. Any suggestions about how to figure out why? It's a VM at work so I can't look into it now. gist.github.com/tgt/090214c4e2a529820189 | 19:50 | |
timotimo | moarvm compiled with asan? | 19:51 | |
FROGGS_ | tgt: you could generate a profile by running: perl6 --profile -e '' | 19:52 | |
tgt: this way we had more to look at | 19:53 | ||
timotimo | that won't give much | ||
maybe --profile-compile? | |||
19:53
kurahaupo left
|
|||
tgt | Just perl6 --profile-compile -e ''? I get an error running that here. | 19:55 | |
gist.github.com/tgt/60f62771bc67febaf735 | |||
FROGGS_ | tgt: I'll push a fix | 19:59 | |
timotimo | thank you, FROGGS_ | ||
20:00
coffee` left
|
|||
arnsholt | masak: IMO, the really weird part about Python's methods is how methods as such don't really exist as a concept in the language itself | 20:00 | |
dalek | p: 039f320 | FROGGS++ | src/vm/moar/HLL/Backend.nqp: make $filename param optional on moar too |
||
kudo/nom: 3c46c70 | FROGGS++ | tools/build/NQP_REVISION: bump nqp rev for profiler fix |
20:01 | ||
FROGGS_ | tgt: ^^ | ||
tgt | Thanks very much. I'll get back to you once I have something useful to diagnose the memory issue. | ||
20:03
cognominal joined
|
|||
dalek | p: 2df8792 | FROGGS++ | src/vm/jvm/QAST/Compiler.nqp: fail in enumcharlist if position is negative This gets us further running Grammar::Profiler::Simple. |
20:03 | |
20:04
Celelibi_ is now known as Celelibi
|
|||
ugexe | it seems like upgrading your OS vers wont upgrade your `osvers` since its a generated value from perl5's build process :( | 20:05 | |
masak | arnsholt: not sure agree when you put it that way. | ||
s/agree/I agree/ | |||
>>> Foo().bar | 20:06 | ||
<bound method Foo.bar of <__main__.Foo object at 0x7fe546c30a10>> | |||
says right there it's a method. | |||
FROGGS_ | ugexe: yeah :o( $config{osvers} = $Config{osvers}; | ||
masak | arnsholt: furthermore, method invocation syntax works because you're invoking a method. | 20:07 | |
ugexe | yeah i dug around in the Config shell script from p5 and said no way | ||
masak | arnsholt: I guess what you really meant is "it kinda bothers me that a method is just a function defined inside a class block" ? | ||
FROGGS_ | ugexe: the plan is of course to pull no information out of P5's Config anymore | ||
ugexe: so we happily accept patches :o) | 20:08 | ||
(that work cross platform) | |||
20:08
eli-se joined
|
|||
ugexe | in my case strawberry perl was installed after cygwin. looking at the generated config it used 6.3 as my OS even though the uname line said 6.1. I ended up discovering my cygwin is version 6.3 (and perl was built with strwberry perl, not cygwin) | 20:08 | |
20:09
yqt joined
20:10
geever joined
|
|||
eli-se | hi | 20:11 | |
ugexe | in this case cross platform is probably a bunch of trys{}? | ||
FROGGS_ | ugexe: I'm not sure... | ||
hi eli-se | |||
20:13
cognominal left
|
|||
arnsholt | masak: Mostly that methods and attributes are the same thing, I think | 20:15 | |
Strikes me as a bit odd | 20:16 | ||
It works, obviously, but I find it a bit odd | |||
20:18
virtualsue joined
20:20
anaeem1 left
|
|||
grondilu | isn't there a subroutine version of .subst ? That would make it easier to include it in a "pipe". | 20:20 | |
20:20
anaeem1_ joined
|
|||
grondilu thought about that while rewriting second example in rosettacode.org/wiki/Generate_Chess...ion#Perl_6 | 20:21 | ||
20:21
bjz left
20:24
anaeem1_ left,
alini joined,
anaeem1_ joined
|
|||
masak | arnsholt: same in JavaScript. (and Self, which calls them 'slots', I think.) I remember finding it odd when I first encountered it, but nowadays it just feels like a possible solution in solution space. I don't really see how it hurts or hinders anything. | 20:27 | |
grondilu: there should be a subroutine version of .subst, IMO | 20:28 | ||
20:28
anaeem1_ left
|
|||
moritz | s/// defaulting to mutation feels so 20ths century | 20:29 | |
vendethiel | masak: do you happen to have a good Self intro? | 20:30 | |
[Coke] | "Hi, I'm masak" | ||
moritz | :-) | ||
vendethiel sighs and chuckles | 20:32 | ||
20:34
darutoko left,
anaeem1 joined
|
|||
masak | vendethiel: not offhand, no. | 20:35 | |
vendethiel: I remember reading a bunch about Self, but I don't remember where. odd. | |||
20:35
bcode left
|
|||
masak | moritz: I would say `s///` defaulting to mutation is the main reason `for` loops are `$_ is rw` by default | 20:36 | |
20:42
bcode joined
|
|||
grondilu | std: :2<.01> | 20:44 | |
camelia | std 28329a7: OUTPUT«ok 00:00 134m» | ||
grondilu | m: say :2<.01> | ||
camelia | rakudo-moar 3c46c7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/IfIY2v7g2DMalformed radix numberat /tmp/IfIY2v7g2D:1------> 3say :2<7⏏5.01> expecting any of: number in radix notation» | ||
20:45
anaeem1 left
|
|||
grondilu | m: say :2(".01") | 20:45 | |
camelia | rakudo-moar 3c46c7: OUTPUT«Cannot convert string to number: base-2 number must begin with valid digits or '.' in ':2<⏏.01>' (indicated by ⏏) in method gist at src/gen/m-CORE.setting:15769 in sub say at src/gen/m-CORE.setting:18592 in block <unit> at /tmp/YzoaAMN6jq:1…» | ||
grondilu | m: say :2("0.01") | ||
camelia | rakudo-moar 3c46c7: OUTPUT«0.25» | ||
20:50
anaeem1_ joined
|
|||
jdv79 | random thought - would it ever be possible to get some sort of profile data dynamically at runtime? | 20:54 | |
use case being profiling a specific url for a web setup without restarting anything and without terrible perf | 20:55 | ||
which is impossible with p5 so that'd be cool if p6 could do something like that | |||
20:57
gfldex left
20:59
virtualsue left
|
|||
FROGGS_ | jdv79: hmmm, it might be possible... | 20:59 | |
grondilu | say (sub { gather for ^Inf { take rand } })()[^3]' # works fine | 21:00 | |
m: say (sub { gather for ^Inf { take rand } })()[^3]' # works fine | |||
camelia | rakudo-moar 3c46c7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/AZrnybDV7wTwo terms in a rowat /tmp/AZrnybDV7w:1------> 3{ gather for ^Inf { take rand } })()[^3]7⏏5' # works fine expecting any of: infix stopper infix or meta-infix…» | ||
FROGGS_ | there are two ops, nqp::mvmstartprofile and nqp::mvmendprofile... there is some setup work around that though | ||
grondilu | m: say (sub { gather for ^Inf { take rand } })()[^3] # works fine | ||
camelia | rakudo-moar 3c46c7: OUTPUT«0.856428025844003 0.397287660914246 0.263656416590262» | ||
21:00
skids left
|
|||
grondilu | m: say (sub { 0, gather for ^Inf { take rand } })()[^3] # hangs ?? | 21:00 | |
camelia | rakudo-moar 3c46c7: OUTPUT«(timeout)» | 21:01 | |
grondilu | m: say (gather for ^Inf { take rand })[^3] | ||
camelia | rakudo-moar 3c46c7: OUTPUT«0.108772116621067 0.901917812348682 0.400246035019753» | 21:02 | |
grondilu | m: say (0, gather for ^Inf { take rand })[^3] | ||
jdv79 | maybe the jvm would be easier? idk much about it. i'll have to look into that sometime. | ||
camelia | rakudo-moar 3c46c7: OUTPUT«(timeout)» | ||
grondilu | does infix:<,> destroy lazyness or something? | ||
psch | jdv79: visualvm can connect to a running perl6-j process | ||
jdv79: but that's likely one abstraction deeper than you'd care about | 21:03 | ||
maybe even two | |||
grondilu | m: say (gather for ^Inf { take rand } , )[^3] | ||
camelia | rakudo-moar 3c46c7: OUTPUT«(timeout)» | 21:04 | |
FROGGS_ | m: say (gather for ^Inf { take rand } , )[0][^3] | ||
camelia | rakudo-moar 3c46c7: OUTPUT«0.793580569373412 0.957935732045326 0.230758992131537» | ||
FROGGS_ | m: say (0, gather for ^Inf { take rand })[1][^3] | ||
camelia | rakudo-moar 3c46c7: OUTPUT«0.187549771156082 0.200280777841328 0.516144010069139» | ||
FROGGS_ | grondilu: ^^ | 21:05 | |
21:05
pullphinger left
|
|||
grondilu | yeah now that I think about it, it makes sense that @lazy, @ is eager, but @, @lazy should not be, imho. | 21:10 | |
21:10
kaare_ joined
|
|||
grondilu | I mean, if the right-most operand of a sequence of concaneted lists is lazy, the whole thing should be lazy as well. | 21:11 | |
jdv79 | yeah, more of a simple profile at the p6 routine level would probably be fine - excl time,incl time,basic call graph maybe... | 21:16 | |
21:17
anaeem1_ left
21:20
Hor|zon left
|
|||
LonelyGM | Good night guys it was a pleasure again learning from you today! :) Still trying to catch up with you guys! $weet Dream$ | 21:20 | |
FROGGS_ | gnight LonelyGM | 21:23 | |
grondilu | m: say 0.polymod(2) | 21:25 | |
camelia | rakudo-moar 3c46c7: OUTPUT«0 0» | ||
grondilu | m: say 0.polymod(2 xx *) | ||
camelia | rakudo-moar 3c46c7: OUTPUT«» | ||
grondilu | m: say 2.polymod(2 xx *) | ||
camelia | rakudo-moar 3c46c7: OUTPUT«0 1» | ||
grondilu | in rosettacode.org/wiki/Van_der_Corput...nce#Perl_6 I had to write FIRST take 0 because 0.polymod($base xx *) was empty. | 21:26 | |
0.polymod(@) should always return 0 imho. | |||
that's allow me to write the Van der Corput sequence as: | 21:27 | ||
sub VdC($base = 2) { gather for ^Inf { take [+] ... } } | |||
.-1s/that's/that'd/ | 21:28 | ||
21:30
xfix left
|
|||
timotimo | .tell brrt could you look at what the code i added to the jit in moarvm's "jit_devirtualize_reprops" is doing wrong? it seems like the stable isn't getting passed properly. it ends up being 0 or something? not 100% sure. nqp build blows up with it. | 21:43 | |
yoleaux | timotimo: I'll pass your message to brrt. | ||
21:46
cognominal joined
21:54
kjs_ joined
21:57
raiph left
|
|||
lizmat | decommute& | 21:57 | |
21:57
lizmat left
21:59
camelia left
|
|||
renormalist | oh, did I just crash camelia? I experimented around with it... | 22:00 | |
22:00
camelia joined
|
|||
renormalist | there she is again, pheww... | 22:00 | |
22:00
abraxxa joined
|
|||
renormalist | p6: say "Sorry, camelia!"; | 22:01 | |
22:01
abraxxa left
|
|||
vendethiel | m: "say hi!" | 22:01 | |
gotta give her time :-) | |||
22:01
ChanServ sets mode: +v camelia
|
|||
camelia | rakudo-moar 3c46c7: OUTPUT«Sorry, camelia!» | 22:02 | |
( no output ) | |||
timotimo | especially if you use p6, as that also has the jvm, right? | ||
vendethiel | timotimo: exactly | ||
22:03
Rounin left
22:04
Ovid joined,
abraxxa joined,
Ovid is now known as CurtisOvidPoe
|
|||
CurtisOvidPoe | m: my @dice-rolls := ('⚀'..'⚅').roll(*);say @dice-rolls[^(3*$_)].perl for ^6 | 22:05 | |
camelia | rakudo-moar 3c46c7: OUTPUT«()("⚀", "⚁", "⚄")("⚀", "⚁", "⚄", "⚃", "⚁", "⚄")("⚀", "⚁", "⚄", "⚃", "⚁", "⚄", "⚁", "⚄", "⚅")("⚀", "⚁", "⚄", "⚃", "⚁", "⚄", "⚁", "⚄", "⚅", "⚀", "⚅", "⚅")("⚀", "⚁", "⚄", "⚃", …» | ||
CurtisOvidPoe | Hmm, I guess maybe mine is out of date. That gives me a large error list. | ||
timotimo | in the REPL, by chance? | 22:06 | |
22:06
[Sno] left
|
|||
CurtisOvidPoe | Nope. From the command line. Doing a “rakudobrew build moar” right now. | 22:06 | |
timotimo | hm | ||
22:06
FROGGS_ left
|
|||
eli-se | nice | 22:06 | |
timotimo: dat pun | |||
timotimo | eli-se: what, "by chance"? wasn't intended :) | 22:07 | |
eli-se | hehe | 22:08 | |
pun indented | |||
22:09
regreg left
22:10
cognominal left
|
|||
CurtisOvidPoe | What the heck? | 22:11 | |
11:10:50 ~ $ perl6 -e "my @dice-rolls := ('⚀'..'⚅').roll(*);say @dice-rolls[^(3*$_)].perl for ^6" | |||
===SORRY!=== Error while compiling -e | |||
Undeclared routine: | |||
panda used at line 1. Did you mean 'rand'? | |||
And I just ran it a second time and it gave me a *different* (and extra) error: | 22:12 | ||
Other potential difficulties: | |||
Redeclaration of symbol @dice-rolls | |||
at -e:1 | |||
------> (*);say @dice-rolls[^(3*my @dice-rolls :⏏= ('⚀'..'⚅').roll(*);say @dice-rolls[^(3 | |||
rjbs | Please do not use up all the pandas. They are endangered. | 22:15 | |
nwc10 | Vienna has randy pandas. | ||
They seem to be atypical | |||
22:17
Hor|zon joined
|
|||
CurtisOvidPoe | This is problematic: gist.github.com/Ovid/6eb19e5bc7573f065af7 | 22:17 | |
So every time I run it, I get extended error messages, like Perl 6 is somehow spawning children and then picking them up again the next time I run it. What the heck? | 22:18 | ||
22:20
Danwww joined
|
|||
CurtisOvidPoe | Here’s a much clearer example of the bug: gist.github.com/Ovid/a60c4c8fb68e34fb9b13 | 22:20 | |
Why is “Hello, World” being picked up on the next line? | |||
22:21
Hor|zon left
|
|||
TimToady | you can't use "" quotes to shell with $ inside | 22:21 | |
CurtisOvidPoe | D’oh! | 22:22 | |
I feel really stupid now. | |||
TimToady | we've all done that one | ||
jdv79 | classic | 22:23 | |
i think i did that last week | |||
TimToady | well, after midnight here, so night all | 22:24 | |
CurtisOvidPoe | Good night! | ||
Danwww | Any Perl developers looking for work in LA? | 22:27 | |
vendethiel | perl6 ones? :-) | ||
22:28
kjs_ left
|
|||
Danwww | Maybe in September | 22:29 | |
Perl5 for now | |||
22:33
fhelmberger left
|
|||
CurtisOvidPoe | Any chance min and max will ever take integer arguments? for ^6 { say ("⚀".."⚅").roll(4).max(3) } | 22:34 | |
El_Che | he is without shell escaping f* ups, let him first cast the backslash | ||
CurtisOvidPoe | Or is there an easier way of taking the largest X elements out of a list? (yes, rjbs, I’m cheating) :) | ||
22:36
adu_ joined
|
|||
timotimo | well, you can sort and then take the last 3 | 22:37 | |
CurtisOvidPoe | I though about that, but it seemed, well, uglier :) | 22:39 | |
timotimo | that's fair, i suppose; especially since you don't have to sort the whole list to get the top n elements | 22:40 | |
CurtisOvidPoe | Yeah, that should be O(n), I would think. | ||
adu_ | hi all | 22:41 | |
timotimo | yup | 22:42 | |
22:44
spider-mario left
22:45
Danwww left,
brrt joined
22:46
[Sno] joined
|
|||
rjbs | I was wondering if there was a set math you could use. | 22:48 | |
result diff [ result.min ] | |||
timotimo | a heap would be a good choice of datastructure here | 22:49 | |
CurtisOvidPoe | timotimo: but is there a way to set it up that would be more efficient (both in terms of CPU and grokking) than simply walking the list? | 22:50 | |
adu_ | ooo I just saw Digest on the list of most wanted modules | ||
I could implement sha512 and sha3 | |||
timotimo | adu_: we already have a partial implementation of many digests | ||
or is that what you mean? | |||
rjbs | Hm, is this still the same but I remember from ages ago? | 22:51 | |
adu_ | timotimo, according to the docs, grondilu/libdigest-perl6 has sha1, sha256, and md5 | ||
rjbs | m: [].^methods.sort | ||
camelia | rakudo-moar 3c46c7: OUTPUT«Code object coerced to string (please use .gist or .perl to do that) in any p6sort at src/vm/moar/Perl6/Ops.nqp:349Code object coerced to string (please use .gist or .perl to do that) in any p6sort at src/vm/moar/Perl6/Ops.nqp:349Code object …» | ||
CurtisOvidPoe | m: for ^6 { say (("⚀".."⚅").roll(4).sort)[1..3] } | 22:52 | |
camelia | rakudo-moar 3c46c7: OUTPUT«⚃ ⚅ ⚅⚁ ⚃ ⚃⚁ ⚂ ⚃⚂ ⚄ ⚅⚀ ⚂ ⚃⚂ ⚅ ⚅» | ||
22:52
diana_olhovik_ left
|
|||
timotimo | m: [].^methods>>.name.sort.say | 22:52 | |
camelia | rakudo-moar 3c46c7: OUTPUT«ACCEPTS ACCEPTS ASSIGN-POS AT-POS AT-POS BIND-POS Bool CALL-ME Capture DELETE-POS DUMP EXISTS-POS FLATTENABLE_HASH FLATTENABLE_LIST Int Int Num Numeric Numeric Parcel REIFY REIFY STORE STORE_AT_POS Str Str Supply antipairs combinations default dynamic eage…» | ||
CurtisOvidPoe | That’s O(n log(n)), yes? I don’t know if there’s a better. easier solution. | ||
timotimo | CurtisOvidPoe: if you're comparing only big-O, you may be more lucky with a heap that you're not exhausting completely | 22:53 | |
rjbs | timotimo: Seems unfortunate that my way does not work. IT's /wildly/ useful when figuring things out in ruby repl. | ||
22:53
Ben_Goldberg joined
|
|||
timotimo | but it's kind of likely that having a contiguous array that stores the things and gets walked linearly would be more beneficial | 22:53 | |
brrt | uhm, t/spec/s02-types/set.rakudo.moar - todo passes, this a known issue? | ||
yoleaux | 21:43Z <timotimo> brrt: could you look at what the code i added to the jit in moarvm's "jit_devirtualize_reprops" is doing wrong? it seems like the stable isn't getting passed properly. it ends up being 0 or something? not 100% sure. nqp build blows up with it. | ||
timotimo | m: [].^methods.sort(*.name).say | 22:54 | |
camelia | rakudo-moar 3c46c7: OUTPUT«ACCEPTS ACCEPTS ASSIGN-POS AT-POS AT-POS BIND-POS Bool CALL-ME Capture DELETE-POS DUMP EXISTS-POS FLATTENABLE_HASH FLATTENABLE_LIST Int Int Num Numeric Numeric Parcel REIFY REIFY STORE STORE_AT_POS Str Str Supply antipairs combinations default dynamic eage…» | ||
brrt | .snackbot | ||
timotimo | m: [].^methods.sort(*.name)[0].WHAT.say | ||
camelia | rakudo-moar 3c46c7: OUTPUT«(Method)» | ||
timotimo | rjbs: -^ | ||
brrt | .botsnack | ||
yoleaux | :D | ||
brrt | anyway, i consider that solved timotimo :-) | ||
CurtisOvidPoe | What I wrote is very efficient in terms of devs grokking it, though. If I needed a heap, I’d hide that behind a clean interface. | ||
timotimo | yep, it's solved all right :) | 22:55 | |
brrt | but anyway, the t/spec/s02-types/set.rakudo.moar passing, i'm assuming that's not some weird failure case | 22:56 | |
22:58
eli-se left
|
|||
adu_ | I'm having trouble understanding this mod2xB3xB2 business... | 22:58 | |
github.com/grondilu/libdigest-perl...SHA.pm#L20 | |||
rjbs | Hm. How can I mutate a bag? | 22:59 | |
timotimo | you want a baghash | ||
22:59
brrt left
|
|||
rjbs | woah | 22:59 | |
23:01
tbrowder left,
tbrowder joined
|
|||
adu_ | I don't suppose there's any chance of supporting simd types... | 23:01 | |
rjbs | timotimo: Even so, given BagHash(4,2,2,2), not sure how to turn it into (or produce a new BagHash(4,2,2) easily. | 23:02 | |
jnthn | m: my $bh = BagHash.new(4,2,2,2); $bh{2}--; say $bh.perl | 23:03 | |
camelia | rakudo-moar 3c46c7: OUTPUT«(4=>1,2=>2).BagHash» | ||
rjbs | jnthn: Thank you! | 23:04 | |
23:06
LonelyGM left,
tgt left
|
|||
rjbs | m: $r = BagHash((1..6).roll(4)); $r{ $r.keys.min }--; $r.gist | 23:07 | |
camelia | rakudo-moar 3c46c7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/c13wZIDyxuVariable '$r' is not declaredat /tmp/c13wZIDyxu:1------> 3$r7⏏5 = BagHash((1..6).roll(4)); $r{ $r.keys. expecting any of: postfix» | ||
adu_ | do you think there might be something like NumPy for Perl6 someday? | ||
rjbs | Sorry, entered dead zone. Laaaag! | 23:08 | |
timotimo | adu_: there was already PDL for perl, we'll have something very similar for p6 surely! | ||
at least i really want us to have something like that | |||
adu_ | timotimo, and will it have something like SIMD types? | ||
rjbs | m: my $r = BagHash((1..6).roll(4)); $r{ $r.keys.min }--; $r.kxxv.say | ||
camelia | rakudo-moar 3c46c7: OUTPUT«5 4 6» | ||
timotimo | our JIT will be doing SIMD at some point | ||
rjbs | CurtisOvidPoe: ^ not as pretty, but I'm happy with myself | ||
timotimo | on our regular native and/or shaped arrays | 23:09 | |
adu_ | single4, double2, short8, int4, long2, etc. | ||
23:11
wicope left
|
|||
grondilu | eventually someone will write a R slang. | 23:12 | |
jnthn | sleep & | ||
adu_ | grondilu, are you the Digest creator? | ||
grondilu | yes | ||
adu_ | jnthn, good night | ||
23:12
skids joined
|
|||
adu_ | grondilu, oo, can I help? | 23:12 | |
I was about to write a whirlpool impl, actually | 23:13 | ||
(in Rust, but I need to brush up on my Perl6) | |||
grondilu | please feel free to do so and request a merge | ||
also, one thing that should be done is have sha256 treat data as blocks, so that it does not have to put everything in memory in one go. | 23:14 | ||
also, using native types | |||
CurtisOvidPoe | kxxv is a very unfortunate method name. | ||
adu_ | grondilu, here is my resume: andydude.github.io/rust-sha/sha/index.html | ||
grondilu | adu_: I suggest you post a solution on rosettacode first, though. | 23:15 | |
(for whirlpool I mean) | |||
adu_ | grondilu, why rosettacode? for review? or for publicity? | ||
grondilu | for review | ||
but it's not absolutely necessary | 23:16 | ||
it's just a preference of mine | |||
adu_ | ok, I'll work on getting rosettacode write access | ||
23:17
geever left
|
|||
CurtisOvidPoe | Still trying to find the docs/discussion on .kxxv | 23:17 | |
adu_ | grondilu, so what is the "Digest" interface? | 23:18 | |
vendethiel | .u ᐛ | ||
yoleaux | U+141B CANADIAN SYLLABICS NASKAPI WAA [Lo] (ᐛ) | ||
grondilu | adu_: sub digest-function(Blob $b --> Blob) {...} | ||
adu_ | grondilu, is it just a module with a function from Str to Blob? | ||
because that won't work for Shake128 | 23:19 | ||
23:19
Osto joined
|
|||
grondilu | adu_: no, it should take only a Blob as input, since Str to binary is encoding-dependant. | 23:19 | |
the user is supposed to encode the string himself before feeding the disgest | |||
adu_ | grondilu, how would you recommend handling Shake128/256? | ||
grondilu | I don't know about those. | 23:20 | |
adu_ | grondilu, they're digest/hash functions from N bytes to M bytes | ||
so you need a way to specify how much digest you need | |||
grondilu | then you can use a where clause until sized arrays are implemented. | ||
adu_ | Ideally, it would be implemented using I/O interfaces, like .read(M) -> Blob of M bytes | 23:21 | |
23:21
Osto left,
ostomachion joined
|
|||
grondilu | oh yu mean M is a parameter? | 23:21 | |
adu_ | yes | ||
grondilu | :output-size then | 23:22 | |
23:22
LonelyGM joined
|
|||
adu_ | grondilu, oh, like a symbolic parameter | 23:22 | |
grondilu | no | ||
hang on | |||
adu_ | shake128:output-size(32)(msg)? | 23:23 | |
grondilu | sub digest-function(Blob $, :$ouput-size = 128) returns Blob {...} | ||
adu_ | ah | ||
ok | |||
grondilu | something like that anyway | ||
adu_ | that makes sense | ||
it's part of sha3 | 23:24 | ||
aren't those semantically equivalent? | 23:25 | ||
23:25
lichtkind left
|
|||
grondilu | one other possibility would be: | 23:28 | |
skids | adu_: in Sum I just export parametric roles so if you need other than common parms you can make your own class. | 23:29 | |
grondilu | ah no I've just realized what I was thinking would not work. forget it. | ||
grondilu was thinking about something like multi hash(Blob $, :$sha256! --> Blob) {...} but was not sure about how to write a proto for that. | 23:31 | ||
skids | At the same time, for common parameter sets I really need to build a catalogue so you can do lookups not only of the class, but by crypto strengths, MAGNET ids etc. | 23:36 | |
23:36
tinyblak left
|
|||
skids | Anyway I'm partway through a native Whirpool myself. Unless you use the LUTs it is a pretty hard algo to code compared to SHA/MD | 23:37 | |
s/native/pure perl/ | 23:43 | ||
23:45
osto joined
|
|||
osto | Hello, I have a question and heard that this would be a good place to ask | 23:46 | |
grondilu | osto: shoot | 23:50 | |
osto | So, I'm teaching myself Perl 6 focusing on grammars right now, I have some experience in Perl 5. I'm trying to write a regex that would match a character with the Open_punctuation property, then anything with out the Open/Close property, then the matching closing character | 23:53 | |
23:53
adu_ left,
mohij left
23:54
adu_ joined
|
|||
osto | I think the only part I'm missing is the matching closing character | 23:54 | |
adu_ | skids, Sum? where can I find that? | ||
skids | adu_: panda install Sum, unless it's been broken lately. | 23:55 | |
adu_ | cool | ||
skids | It runs a lot of tests though so plan for a hot lap. | ||
adu_ | ok, I'll check it out, I would much prefer Roles to specific function names | ||
"hot lap" lol, I'll use that next time I need to refer to a well-tested library | 23:56 | ||
23:56
madmuid left
|
|||
skids | Has FROGGS++ pushed the C++ nativecall stuff yet? I was thinking of rolling in libbotan, whose C API is too new to be in most distros yet. | 23:58 | |
.karma C | 23:59 | ||
23:59
LonelyGM left
|
|||
adu_ | skids, also, earlier, I was working on something related to NativeCall | 23:59 | |
I might have to maintain that |