»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend! Set by moritz on 22 December 2015. |
|||
00:00
nd3i left
00:01
BenGoldberg joined
00:04
Herby_ left
|
|||
Xliff | "Configuring and building MoarVM ... | 00:06 | |
udobrew/moar-nom/install --make-install" | |||
Well THAT didn't work. | |||
At any rate, if I try and use "--moar-option='--no-optimize'" the outer Configure.pl will still throw in --optimize on the call to MoarVM's Configure.pl | 00:07 | ||
Which then breaks everything. | |||
00:07
geraud left
00:08
BenGoldberg left
|
|||
timotimo | i don't think --no-optimize exists | 00:09 | |
but --optimize=0 definitely does | |||
why are you still using --gen-moar? | |||
i think it'd really be easier to just cd into moar's code and make sure the right --prefix gets set | |||
then you should be golden | |||
00:09
BenGoldberg joined
|
|||
Xliff | timotimo, Well, everytime I've tried doing it from MoarVM, the symbols get erased. | 00:10 | |
00:10
pierre_ joined
|
|||
Xliff | So I'm trying to do a complete top-down build to see what I get. | 00:10 | |
Call me a masochist. I will probably end up doing exactly as you suggest. | 00:11 | ||
But I'm.....stubborn. | |||
timotimo | you can immediately see if your symbols live after "make install" under moar finishes | ||
with "file", that'll tell you if it's been stripped or not | 00:12 | ||
oh, btw | |||
there's a tiny bit of C code in rakudo, too | |||
if you end up in there, you'll only see symbols if you made sure that also gets compiled with --debug=something | |||
it'll likely take its CFLAGS and such from moar's config, though | |||
Xliff | We'll see. | 00:13 | |
And it went fine with "--optimize=0", but right after that the "--optimize" flag gets specified again. | |||
This is using MoarVM's Configure.pl from the top level Configure.pl | 00:14 | ||
I may just try to rebuild moar after this. | |||
dalek | c: ea8c2e4 | (Tom Browder)++ | doc/Language/unicode_texas.pod: tidy table inputs by removing extra white space and aligning column pipes separators |
||
c: ee1fe48 | (Tom Browder)++ | doc/Language/unicode_texas.pod: Merge pull request #466 from tbrowder/master tidy table inputs by removing extra white space and aligning column p… |
|||
00:15
skink joined
|
|||
timotimo | clearly --moar-options doesn't have a clue about --optimize | 00:16 | |
patches welcome | |||
like "we really need moar to be compiled with optimization, so we add it. good idea, eh?" | |||
hah, yeah | 00:17 | ||
check tools/lib/NQP/Configure.pm | |||
line 320 is literally | |||
push @opts, "--optimize"; | |||
also, nqp has that same file, but both have some differences | 00:19 | ||
Xliff | Yeah. | ||
Also: | |||
gcc -L/home/cbwood/.rakudobrew/moar-nom/install/lib -shared -fPIC -O3 -DNDEBUG -g3 --optimize=0 -Wl,-rpath,/home/cbwood/.rakudobrew/moar-nom/install/lib -Wl,-rpath,/home/cbwood/.rakudobrew/moar-nom/install/share/perl6/site/lib -O3 -DNDEBUG -lm -lpthread -lrt -ldl -o dynext/libperl6_ops_moar.so dynext/perl6_ops.o dynext/container.o -lmoar | |||
timotimo | that makes zero sense | ||
Xliff | Note that the "--optimize=0" somehow gets passed to CFLAGS and yet the -O3 remains. | ||
00:19
BenGoldberg left
|
|||
timotimo | is that when you have two optimize flags passed to Configure? | 00:20 | |
00:20
tardisx left
|
|||
skink | Not to interrupt, but are there any docs yet on that new native string type? | 00:20 | |
00:20
branthebuilder joined,
tardisx joined
|
|||
timotimo | i wasn't aware of a new native string type | 00:21 | |
Xliff | timotimo, that resulted from "perl ./Configure.pl --gen-moar --backend=moar --moar-option='--debug=3 --optimize=0'" | ||
00:21
BenGoldberg joined
|
|||
timotimo | oh, i know what's going on | 00:21 | |
Xliff | So I didn't specify two optimize options. | ||
00:21
pierre_ left
|
|||
timotimo | see how it's called "--moar-option" and not "--moar-options"? | 00:21 | |
dalek | ar: 4d70f16 | (Steve Mynott)++ | tools/star/release-guide.pod: doc how-to-get-rakudo |
||
timotimo | you're litterally setting the debug to "3 --optimize=0" | ||
Xliff | O_O | ||
timotimo | and we're not quoting properly | ||
so it should have become -g"3 --optimize=0" in the CFLAGS | |||
Xliff tries again. | |||
00:22
branthebuilder left
|
|||
Xliff | Er. Nope. | 00:22 | |
timotimo | --moar-options doesn't exist. you have to pass --moar-option twice | ||
Xliff | Configure.pl pukes on "--moar-options" | ||
Ooo. OK. | |||
skink | timotimo, Second bullet on the release announcement. 'str' instead of 'Str' | 00:23 | |
I can't find many references to it though | |||
MadcapJake | Xliff: try FILE.path('/dev/stdout') (perhaps on a VM, 1 isn't stdout's file descriptor) | ||
stmuk_ | not sure its worth retrospectively changing announcements | 00:24 | |
timotimo | skink: you mean native string arrays, then? | ||
skink | mhm | ||
Xliff | MadcapJake, SURE | 00:25 | |
timotimo | oh, compiler release, not star release? | ||
00:25
kid511 joined
|
|||
timotimo | no, must have been Star | 00:25 | |
skink: i literally can't find an announcement that has "str" in it | 00:26 | ||
as in: in its second bullet | |||
00:26
kid51 left
|
|||
skink | rakudo.org/2016/04/25/announce-raku...e-2016-04/ | 00:26 | |
Some of the new compiler features since the last Rakudo Star release include: | |||
Much improved REPL with multi-line support. | |||
Native string arrays. | |||
timotimo | yeah, that's not "'str' instead of 'Str'" :) | 00:28 | |
that's also not a "new native string type" | |||
MadcapJake | Xliff: that's just how I have the class named to match how it's written in C code :P | ||
skink | timotimo, Man I just got home and skimmed that :) | 00:29 | |
timotimo | :) | ||
Xliff is just going to have to suffer with the "-O3" and hopes he can still find the problem. | 00:30 | ||
00:33
adu left
00:34
leont_ left
|
|||
timotimo | why? | 00:36 | |
i told you how to get around that problem | |||
why do you do this to us :P | 00:37 | ||
00:37
zacts left
|
|||
stmuk_ | pass the options from rakudobrew ;) (joke) | 00:38 | |
00:38
adu joined
|
|||
timotimo | rakudobrew giving people trouble made me look at a carreer in table-flipping | 00:39 | |
awwaiid | Only the source for rakudo-star-2016.04 is released -- no .msi or .dmg yet eh? | 00:47 | |
timotimo | FROGGS usually makes the .msi but he seems quite busy at the moment | 00:48 | |
awwaiid | well I'm psyced and ready to update the purdy "how to get rakudo perl 6" page on rakudo.org :) | ||
stmuk_ | awwaiid: I will probably build the .dmg in the next hour or so | 00:49 | |
Xliff | _IO_new_fdopen (fd=1, mode=0x0) at iofdopen.c:65 | 00:53 | |
fd_flags = <optimized out> | 00:54 | ||
o_O | |||
MadcapJake | This is nuts: spin.atomicobject.com/2016/04/26/s...pile-time/ | 00:55 | |
timotimo | whoops | 00:59 | |
huh, so it's about type inference? | 01:00 | ||
MadcapJake | yeah i'm guessing that each added field required checking against all other fields' types | 01:01 | |
Xliff | MadcapJake, FILE.path('/dev/stdout') worked. | ||
MadcapJake | Xliff: sweet! | 01:03 | |
01:03
Actualeyes joined
|
|||
timotimo | on windows, you can allegedly open "CON" | 01:10 | |
MadcapJake | timotimo: i read that, no windows machine to try it on though | 01:13 | |
01:16
molaf left
|
|||
timotimo | mhm | 01:19 | |
geekosaur reads back, considers sending apple's devs a copy of ghc >.> | |||
01:26
hotel joined
|
|||
hotel | does anyone know where I can set LDFLAGS for moarVM to compile with? | 01:27 | |
01:28
geraud joined
01:29
molaf joined
|
|||
hotel | I was digging around the stuff I think makes it build, but I can't be sure | 01:30 | |
timotimo | if i have to change LDFLAGS, i usually vi Makefile :\ | 01:32 | |
hotel | so yeah, I saw that the makefile set LDFLAGS=@ldflags@ and I didn't want to change it for fear of screwing stuff up? | 01:33 | |
timotimo | may i ask what you're up to? | ||
hotel | still trying to compile perl6 on WSL | 01:34 | |
the ubuntu on windows | |||
01:34
pierre_ joined
|
|||
timotimo | ah! | 01:34 | |
01:34
tardisx left
|
|||
hotel | it won't compile on the stack | 01:35 | |
so I'm trying the ldflags hack | |||
01:36
tardisx joined
|
|||
Xliff | What is the ldflags hack? | 01:37 | |
hotel | from this site: wiki.gentoo.org/wiki/Hardened/GNU_...quickstart which says to add these: -Wl,-z,noexecstack | 01:38 | |
I found the site on a perl6 listserv talking about building on selinux | 01:39 | ||
Xliff | Try adding to the ldmiscflags key on line 274 of moar/nqp/MoarVM/build/setup.pm | 01:41 | |
This is NOT recommended, but since I've been digging in the build system tonight. I may as well pass on some of the stuff I've learned. | 01:42 | ||
skink | MadcapJake, reddit comments on that said problem can be resolved if you just add a type annotation | ||
MadcapJake | skink: I noticed that in the article comments too :P | 01:43 | |
skink | Oh, right | 01:44 | |
hotel | thanks for the help Xliff :) | ||
skink needs to stop simply skimming | |||
hotel | I wouldn't be doing this if I wasn't balls deep in trying to game the WSL system lol | 01:45 | |
MadcapJake | Here's another interesting article: www.evanmiller.org/elixir-ram-and-t...-doom.html | ||
The author makes it sound like "this is so amazing" but really it sounds completely ridiculous, insert an empty string and performance more than doubles! WUT?! | |||
dalek | c: ecc765f | (Tom Browder)++ | doc/Language/unicode_texas.pod: remove non-functional pod format codes |
||
c: 47fd2ac | (Tom Browder)++ | doc/Language/unicode_texas.pod: Merge pull request #467 from tbrowder/master remove non-functional pod format codes |
|||
01:49
maybekoo2 left,
zacts joined
01:51
ZoffixWin joined
|
|||
hotel | curses, it didn't work | 01:52 | |
ZoffixWin | m: gist.github.com/zoffixznet/cff6ca5...1c32d0d778 | 01:54 | |
camelia | rakudo-moar ce5dc0: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ckVwcQ05gbUnsupported use of . to concatenate strings; in Perl 6 please use ~at /tmp/ckVwcQ05gb:2------> 3 TOP { [<bold> | <italic> | . 7⏏5]+ }» | ||
ZoffixWin | Weird, no? Can't seem to reduce it to a smaller test case :/ | ||
Ahh.. I've missed "token" off TOP ~_~ | 01:55 | ||
m: grammar { TOP { . } } | |||
camelia | rakudo-moar ce5dc0: OUTPUT«5===SORRY!5=== Error while compiling /tmp/jikmv2xskvUnsupported use of . to concatenate strings; in Perl 6 please use ~at /tmp/jikmv2xskv:1------> 3grammar { TOP { . 7⏏5} }» | ||
01:56
hotel_california joined,
hotel_california left
01:57
hotel left
|
|||
ZoffixWin | Reported as LTA error: rt.perl.org/Ticket/Display.html?id=128003 | 01:57 | |
01:57
ZoffixWin left
01:58
kid511 left
01:59
BenGoldberg left
02:00
hotel joined,
BenGoldberg joined
02:05
BenGoldberg left
|
|||
hotel | interesting | 02:10 | |
gcc: error: unrecognized command line option ‘-Wl’ | |||
timotimo | www.drmemory.org/ - this drstrace thing might be interesting to use for figuring out why rakudo can't install with the "invalid file descriptor" error or what that was | 02:12 | |
hotel | I haven't gotten that since then | 02:13 | |
in other words, since I started trying to build from the tarball instead of from github | |||
geekosaur | something is inappropriately splitting on commas? | ||
hotel | oh that could be it | ||
I changed it so LDFLAGS=@ldflags@ -Wl -z noexecstack without knowing how to properly join things in make | 02:14 | ||
hotel is still unsure tbh | 02:18 | ||
02:19
skink left
|
|||
geekosaur | it's not make, just a quirk of the -W syntax that it requires commas | 02:21 | |
hotel | oh | ||
ooh | |||
geekosaur | -Wtool,option[,option...] | ||
hotel generally likes to stay in a higher layer | 02:23 | ||
02:26
noganex joined
|
|||
hotel | omg | 02:27 | |
it's working!!1! | |||
02:29
noganex_ left
02:31
alx741 joined
02:36
kurahaupo left
02:37
zacts left,
BenGoldberg joined
|
|||
Xliff | hotel++ | 02:40 | |
hotel | yo | 02:41 | |
it's running through tests now :D | |||
Xliff | Right on. | 02:46 | |
If you could write up what you did to get things working on the WSL, that would be great. | 02:47 | ||
02:47
zacts joined
|
|||
Xliff | Considering that I may want to do the same if I go to Windows 10. | 02:48 | |
hotel | yeah I will | ||
where should I post it, do you think? | 02:49 | ||
02:50
BenGoldberg left,
Herby_ joined
|
|||
Herby_ | o/ #perl6 | 02:50 | |
hotel | \o | 02:51 | |
02:51
BenGoldberg joined
02:57
cdg left,
tomboy64 left
|
|||
hotel | I guess I'll post on reddit after I confirm what exactly made it work | 02:57 | |
02:58
cdg joined
03:03
cdg left
03:09
BenGoldberg left
03:10
BenGoldberg joined
03:11
tardisx left
03:14
tomboy64 joined
03:15
Herby_ left,
adu left
03:21
tomboy64 left
03:22
Actualeyes left
03:23
tomboy64 joined
03:25
tardisx joined
|
|||
hotel | is there a way to terminate a test and move to the next one? | 03:26 | |
dalek | ar: 3379969 | (Steve Mynott)++ | ports/darwin_dmg/package_darwin_dmg.pl: lowercase final filename to look like the windows etc ones |
03:38 | |
stmuk_ | pl6anet.org/drop/rakudo-star-2016-04.dmg | ||
can a mac user have a quick look at that please? | |||
03:42
hotel left
03:55
BenGoldberg left
03:59
adu joined
04:00
adu left
04:19
alx741 left
04:27
Cabanossi left
04:30
Cabanossi joined
04:45
pierre_ left
04:59
sno left
05:18
khw left
05:32
Actualeyes joined
05:37
rba_ joined
05:49
Util left,
Util joined
05:58
pierre_ joined
06:00
jjido joined
06:10
domidumont joined
06:14
domidumont left
06:15
domidumont joined
06:16
tardisx left
06:22
sno joined
06:23
firstdayonthejob joined
06:24
tardisx joined
06:30
pdcawley joined,
_mg_ joined
06:40
ufobat joined
06:43
rba_ left
|
|||
raydiak | m: my %foo; %foo<bar>[*-0] = 42; say %foo.perl; | 06:43 | |
camelia | rakudo-moar ce5dc0: OUTPUT«{:bar($[Any, 42])}» | ||
raydiak | ^ where did the Any come from? | ||
06:43
firstdayonthejob left
|
|||
raydiak | m: my @foo; @foo[*-0] = 42; say @foo.perl; | 06:43 | |
camelia | rakudo-moar ce5dc0: OUTPUT«[42]» | ||
raydiak | m: my %foo; %foo<bar>.push: 42; say %foo.perl; | 06:45 | |
camelia | rakudo-moar ce5dc0: OUTPUT«{:bar($[42])}» | ||
masak | raydiak: looks bugly to me | ||
raydiak | thanks masak, I'll file a report then | 06:46 | |
ufobat | good morning :) | 06:47 | |
raydiak | good evening :) | ||
06:48
CIAvash joined
06:50
tomboy64 left
06:52
tomboy64 joined,
mrsolo joined
06:56
wamba joined
06:59
SmokeMachine____ joined
07:01
BuildTheRobots joined
07:05
MadcapJake joined
07:07
jjido left
07:09
jjido joined
07:11
ggherdov joined
07:14
jjido left
07:15
JimmyZ_ joined
07:19
rindolf joined
07:22
rba_ joined,
zakharyas joined
07:24
JimmyZ_ is now known as JimmyZ
07:26
Actualeyes left
07:32
jack_rabbit left
07:34
cdg joined
07:37
Actualeyes joined
07:48
jack_rabbit joined
07:50
rba_ left
07:56
rba_ joined
08:02
zakharyas left
08:09
darutoko joined
08:10
jjido joined,
abraxxa joined
08:12
winger__ joined
08:13
dakkar joined
08:15
jjido left
08:16
pierre_ left,
winger_ left
08:19
abraxxa left,
abraxxa joined
08:22
maybekoo2 joined
08:29
pierre_ joined,
tardisx left
08:34
winger_ joined,
rba_ left
08:35
eone joined,
domidumont left
|
|||
BooK | so following some hacking with lizmat I wrote a stress-test for Version.pm | 08:36 | |
what's the procedure to add that to roast? just commit on master? | |||
08:36
domidumont joined,
winger__ left
|
|||
BooK | I wrote it with eq, lt, ge, etc, and then rewrite it with ==, <, >=, etc after lizmat's change from Str to Num semantics (which makes a lot of sense) | 08:37 | |
I wouldn't mind some code review to learn more idiomatic ways to write stuff, as this is my most substantial perl6 program ever :-) | 08:40 | ||
08:42
winger_ left,
winger_ joined
08:50
RabidGravy joined,
rba_ joined
|
|||
RabidGravy | boom | 08:50 | |
masak | m: say "boom".flip | 08:59 | |
camelia | rakudo-moar ce5dc0: OUTPUT«moob» | ||
masak .oO( wooq ) | 09:00 | ||
m: sub flip($s) { "wooq" }; say "boom".&flip | |||
camelia | rakudo-moar ce5dc0: OUTPUT«wooq» | ||
masak is in a silly mood, apparently | 09:01 | ||
DrForr | m: say "TVA".flip | ||
camelia | rakudo-moar ce5dc0: OUTPUT«AVT» | ||
DrForr | And I was hoping for tableflip here :)... Maybe I should write one. | 09:02 | |
masak | please do. | 09:04 | |
BooK | github.com/book/roast/commit/b01dc...de92452386 # I'd be interested in a code review, before submitting a PR for roast | 09:05 | |
or should I push directly on master? | 09:06 | ||
09:06
winger__ joined
|
|||
RabidGravy | BooK, looks good | 09:08 | |
masak | BooK: looks good | ||
09:08
winger__ left
09:09
winger__ joined
|
|||
BooK | there's no better way to write: @same.map({$_²}).sum ? | 09:10 | |
09:10
winger_ left
|
|||
BooK | m: my @a = <1 2>; say @a.map(*²).sum | 09:10 | |
camelia | rakudo-moar ce5dc0: OUTPUT«Cannot call Numeric(Whatever: ); none of these signatures match: (Mu:U \v: *%_) in block <unit> at /tmp/3lZr02RoS1 line 1» | ||
masak | m: my @a = <1 2>; say @a>>².sum | 09:11 | |
camelia | rakudo-moar ce5dc0: OUTPUT«5» | ||
09:11
jjido joined,
pierre_ left
|
|||
masak | m: my @a = <1 2>; say @a»².sum | 09:11 | |
camelia | rakudo-moar ce5dc0: OUTPUT«5» | ||
BooK | ah cool | ||
m: @a=( < 1 2 >, < 3 4 > ); say @a»+»².sum | 09:13 | ||
camelia | rakudo-moar ce5dc0: OUTPUT«5===SORRY!5=== Error while compiling /tmp/XS9czfJXU6Variable '@a' is not declaredat /tmp/XS9czfJXU6:1------> 3<BOL>7⏏5@a=( < 1 2 >, < 3 4 > ); say @a»+»².sum» | ||
BooK | m: my @a=( < 1 2 >, < 3 4 > ); say @a»+»².sum | ||
camelia | rakudo-moar ce5dc0: OUTPUT«5===SORRY!5=== Error while compiling /tmp/lCpe3JeeNZMalformed postfixat /tmp/lCpe3JeeNZ:1------> 3my @a=( < 1 2 >, < 3 4 > ); say @a»7⏏5+»².sum expecting any of: postfix» | ||
BooK | sum of the squares of the number of elements | 09:14 | |
masak | first off, don't need those parens | ||
09:14
eone left
|
|||
DrForr | Hrm, I had code somewhere that extrapolated series using divided differences... yet something else to dig up :) | 09:15 | |
masak | m: my @a = <1 2>, <3 4>; say @a».elems»².sum | ||
camelia | rakudo-moar ce5dc0: OUTPUT«8» | ||
masak | BooK: ^ | ||
09:15
winger__ left,
winger__ joined
|
|||
masak | m: my @a = <1 2>, <3 4>; say (+«@a)»².sum | 09:15 | |
camelia | rakudo-moar ce5dc0: OUTPUT«4» | ||
BooK | masak: yep, came to the same conclusion | 09:16 | |
masak | hurm :) | ||
BooK | ».elem»².sum I mean | ||
09:16
jjido left
|
|||
masak | m: my @a = <1 2>, <3 4>; say +«@a | 09:17 | |
camelia | rakudo-moar ce5dc0: OUTPUT«[(1 2) (3 4)]» | ||
masak | ah. | 09:18 | |
curse you, nodal! | |||
:) | |||
BooK | what's nodal? | ||
masak | my nemesis, clearly | ||
arnsholt | From memory, it's a sub trait that controls whether hypering that sub over a list will recurse down the list or simply apply to the first-level list items | 09:19 | |
IIRC is nodal means that it will recurse | |||
masak | arnsholt++ # what arnsholt said | ||
BooK | so here, it's + that's nodal ? | 09:20 | |
arnsholt | And it seems that what masak wanted was a list of the lengths of the sublists, rather than a numified list of the same topology as the input | ||
Yeah, operators being somewhat special subs | |||
profan | &win 16 | ||
wops | |||
profan scurries away | |||
arnsholt | Hello, fellow irrsi user! =D | 09:21 | |
profan | hello :D | ||
masak | :D | ||
masak points the way to window 16 | |||
it's... over there --> | |||
profan follows the sigils | 09:22 | ||
09:27
Actualeyes left
09:35
zakharyas joined
09:39
winger_ joined,
rba_ left,
pdcawley_ joined
09:43
winger__ left,
pdcawley left
09:45
pierre_ joined
09:47
leont_ joined
09:51
sortiz left
09:59
pecastro joined
10:07
g4 joined,
g4 left,
g4 joined
10:12
jjido joined,
kaare_ joined
10:14
domidumont left
10:16
jjido left
10:31
astj_ left
10:32
leont_ left
10:33
rba_ joined
10:36
cdg left
10:41
_mg_ left
10:48
rba__ joined,
rba_ left
10:56
ufobat left
11:01
leont_ joined
11:03
TEttinger left
11:05
AlexDaniel joined,
brrt joined
11:07
pierre_ left,
AndyDee joined
11:08
kid51 joined
11:10
TimToady left
|
|||
AlexDaniel | twitter.com/stelian/status/720913927639560194 rotary dial is probably my favorite | 11:10 | |
jnthn: in case of 4 ~~ (4,5,6,7), is it possible to give a warning? (instead of doing nothing which is LTA) | 11:11 | ||
jnthn | unlikely | ||
AlexDaniel | crap! | 11:12 | |
jnthn | m: say 1234 ~~ m:g/\d/ | ||
camelia | rakudo-moar f7613f: OUTPUT«(「1」 「2」 「3」 「4」)» | ||
11:13
jjido joined
|
|||
AlexDaniel | jnthn: or should I open a [LTA] ticket anyway just in case somebody figures out how to make it throw a warning? | 11:16 | |
11:16
TimToady joined
|
|||
jnthn | I'd prefer not to have open-ended tickets with no clear resolution. | 11:16 | |
AlexDaniel | the problem is that not only it is very natural for somebody to try that, but it's also how it *kinda* works in Perl 5 | ||
jnthn: ok then, thanks | 11:17 | ||
11:17
jjido left
|
|||
moritz | ... except that smart-matching is deprecated in p5 | 11:17 | |
AlexDaniel | moritz: yeah, that's why “kinda” :) | ||
11:18
AndyDee left
|
|||
AlexDaniel | moritz: although I'm not sure if it is actually deprecated. v5.22 still says that it is “experimental” | 11:18 | |
moritz: and most recent docs say “The smartmatch operator is experimental and its behavior is subject to change” | 11:19 | ||
which does not sound like “deprecated” | 11:20 | ||
11:20
leont_ left
11:21
TimToady left
11:22
perlawhirl joined
|
|||
Xliff | my @a = ^5; say @a» | 11:27 | |
m: my @a = ^5; say @a» | 11:28 | ||
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/XPKMz_LtdLMalformed postfixat /tmp/XPKMz_LtdL:1------> 3my @a = ^5; say @a»7⏏5<EOL> expecting any of: postfix» | ||
Xliff | m: my @a = ^5; say @a»² | ||
camelia | rakudo-moar f7613f: OUTPUT«[0 1 4 9 16]» | ||
Xliff | m: my @a = ^5; say @a»².sum | ||
camelia | rakudo-moar f7613f: OUTPUT«30» | ||
Xliff | Neat | 11:29 | |
DrForr | "We tried for years to attach some kind of cosmic significance to that..." | 11:31 | |
moritz | AlexDaniel: you're right; I just tend to avoid code that throws warnings, so I treat "experimental" and "deprecated" pretty much the same | 11:33 | |
RabidGravy | though there has been an increasing 'experimental' -> 'deprecated' -> removed trajectory over the releases since ~ 5.18.0 | 11:34 | |
11:36
_nadim joined
|
|||
_nadim | Good afternoon! | 11:37 | |
masak | _nadim: hi! | ||
_nadim | is there a nice Perl6ish way to do something like thisnopaste.linux-dev.org/?1093534 | ||
masak .oO( unrecognized protocol thishttp ) | |||
timotimo | that's like categorize or classify | 11:38 | |
masak | was gonna say | ||
_nadim | masak: hello fellow frozen countryman | ||
masak | _nadim: indeed. this weather, huh? want my money back. | 11:39 | |
_nadim | masak: I am going awy to Africa, I didn't sign up for this ;) | ||
jnthn | Aww, I'm missing cool weather? | 11:40 | |
_nadim | search for categorize gave Baggy::categorize-list which is not documented | ||
jast | 4°C here right now | ||
11:40
bazzaar joined
|
|||
_nadim | Brrrr | 11:40 | |
We need to plan aPerl6 conference in Africa | 11:41 | ||
bazzaar | \o | ||
11:41
telex left
|
|||
RabidGravy | Libya is cheap and plenty of free accomodation right now | 11:42 | |
11:42
telex joined,
TimToady joined
|
|||
_nadim | You obviously deserve to be send there! | 11:43 | |
bazzaar | has anyone found Pg connect problem with DBIish in Rakudo Star 2016-04 ? | ||
timotimo | i haven't tried it yet; what's the symptom? error message? | 11:44 | |
bazzaar | getting a 'This type cannot unbox to a native string' error, in script that worked with R* 2016-01 | ||
timotimo | it doesn't give a backtrace, does it? | 11:45 | |
can you try running it with "perl6 --ll-exception blah.p6"? | |||
RabidGravy | DBIish had a high velocity over the last few months | ||
bazzaar | got the backtrace, not sure how to share it | 11:47 | |
11:47
_4d47 joined
11:48
leont_ joined
11:49
dalek left
|
|||
timotimo | there are many nice "no-paste" services on the 'net that you can use for free | 11:49 | |
nopaste.linux-dev.org/ - for example | |||
11:49
dalek joined,
ChanServ sets mode: +v dalek
|
|||
ilmari | fpaste.scsys.co.uk/perl6 | 11:51 | |
11:51
kid51 left
|
|||
ilmari | then shadowpaste will automatically post the link | 11:51 | |
timotimo | cool | ||
_4d47 | is there any differences between returns and --> apart style ? | 11:52 | |
timotimo | _4d47: you can put "-->" into anonymous blocks and such, or signature literals, where "returns" isn't applicable | ||
bazzaar | timotimo: DBIish connect error backtrace - nopaste.linux-dev.org/?1093550 | 11:54 | |
_4d47 | ok thx :) | 11:55 | |
11:56
damnlie left,
rba__ left
|
|||
jdv79 | is p6 faster than p5 yet? | 11:56 | |
bazzaar | ilmari: thanks also for that link | ||
[Coke] | jdv79: nope | ||
jast | faster to write in, once you've gotten a bit of practice in | 11:57 | |
timotimo | jdv79: it can be for very small - engineered - test cases | ||
bazzaar: can you also share a bit of your code? | 11:58 | ||
i'd have to install a postgres server somewhere to test stuff ... | 11:59 | ||
RabidGravy | has anyone got a raspberry pi 3 and in a position to share the contents of the /proc/cpuinfo ? | 12:01 | |
jdv79 | is it normal to sleet and then be sunny in < an hour round brussels? | ||
happened yday 2 times. i dont think ive ever seen that round nyc. | 12:02 | ||
RabidGravy | it was doing that in London yesterday | ||
12:02
rba_ joined
|
|||
RabidGravy | quite pleasant for ten minutes then awful sleety stuff and then pleasant again | 12:02 | |
not quite as bad today | 12:03 | ||
jdv79 | very confusing | ||
RabidGravy | but not sufficiently pleasant to make me want to go outside | ||
12:03
leont_ left
|
|||
bazzaar | timotimo: DBIish connect error backtrace - example code - nopaste.linux-dev.org/?1093551 | 12:06 | |
12:07
domidumont joined
12:09
pierre_ joined,
pierre_ left
12:10
tbrowder joined
|
|||
moritz | DBDish::Pg::Native):145 looks to be the actual source of the error | 12:12 | |
bazzaar: try specifying the port as a string | |||
bazzaar: :port('5432') | 12:13 | ||
12:13
jjido joined,
_mg_ joined
|
|||
timotimo | ah, interesting | 12:16 | |
12:16
astj joined
|
|||
moritz | that's a bug in DBIish | 12:17 | |
12:18
jjido left
|
|||
tbrowder | good morning all: I've noticed the Perl 6 world uses the word 'codepoint' in most places, but many other places on the Net (including Wikipedia and Microsoft) show the word as 'code point'. Any objection to correcting that in Perl 6 (as well as maybe adding it to the doc/STYLEGUIDE.md)? | 12:18 | |
timotimo | oh, interesting | ||
12:19
domidumont left
12:20
domidumont joined
|
|||
bazzaar | moritz: specifying the port as a string, that works :) | 12:20 | |
AlexDaniel | tbrowder: I think that codepoint is fine | ||
moritz | bazzaar: can you please open a bug at github.com/perl6/DBIish/issues/ for that? | 12:21 | |
AlexDaniel | tbrowder: it is commonly used, and somebody even bothered to add it to wiktionary as an alternative spelling for “code point” | ||
DrForr | unicode.org/glossary/ # It's spelled 'code point' in the Unicode glossary. | 12:22 | |
tbrowder | AlexDaniel: but our docs are not consistent, so we should pick one or the other and specify it IMHO | ||
moritz | then we should prefer the Unicode consortium's writing | ||
bazzaar | moritz: yes, I'll give it a go ... also for interest, perl6 reported 'DBDish::Pg::Connection.disconnect is DEPRECATED, please use .dispose' | 12:23 | |
12:24
damnlie joined
|
|||
AlexDaniel looks at www.google.ee/#q=%22codepoint%22+s...nicode.org | 12:24 | ||
masak | I'd say "codepoint" is one of those words (like "email") where something that used to be two parts is being streamlined into being just one part | 12:25 | |
AlexDaniel | DrForr: 25600 results, eh… not all of them are relevant but still | ||
moritz | AlexDaniel: curious, on google.com I only get ~6k results | 12:26 | |
and 3k for "code point" | |||
AlexDaniel | hah! | ||
12:26
maybekoo2 left
|
|||
AlexDaniel | 2870 for "code point" here | 12:27 | |
moritz: it's really interesting that google is giving different results | |||
and also that it automatically redirects me from .com | |||
12:27
pierre_ joined
|
|||
DrForr | Different datacenters have different shards? | 12:28 | |
_nadim | what does a proto like "proto method classify-list(|) { * }" force for type of signature? | ||
AlexDaniel | DrForr: sure, but it makes me want to do that through Tor next time :) | 12:29 | |
tbrowder | the fact that the Unicode group uses 'code point' should be the deciding factor, not popularity--our docs should be technically sound and authoritative as much as possible | ||
12:29
bbkr joined
12:30
perlawhirl left
|
|||
AlexDaniel | tbrowder: I do not agree. Our docs are for people, there's no good enough reason to get it more “technically sound” in this case. Especially when it is such bikeshedding | 12:31 | |
12:31
rurban joined
|
|||
RabidGravy | it should be consistent foremost | 12:32 | |
12:32
perlawhirl joined
12:33
rurban left
|
|||
AlexDaniel | “code point” – 54 on perl6.org vs “codepoint” – 392 results | 12:34 | |
so I'd say that it is easier to change “code point” to “codepoint”… | |||
RabidGravy | :) | ||
DrForr | Maybe we should also have a glossary in order to encourage people to use the Perl 6-authorized spelling? :) | 12:35 | |
AlexDaniel | is it “falsy” or “falsey”? | 12:36 | |
tbrowder | I agree. Perfect uniformity in language is probably impossible, but one mark of good technical documentation is consistent terminology, and a glossary IMHO is a good thing. | 12:37 | |
AlexDaniel | ok | 12:38 | |
there you go: design.perl6.org/S99.html#codepoint | |||
_nadim | DrForr: an excellent idea, in all the bigger project, I've been working in, we had a glosary | 12:39 | |
tbrowder | ...and that's not bikeshedding. | ||
AlexDaniel | _nadim: we have two! | ||
RabidGravy | wouldn't that glossary be better in the docs | ||
AlexDaniel | on is here doc.perl6.org/language/glossary | 12:40 | |
and the other one is S99 | |||
one* | |||
RabidGravy: yes. lizmat++ did a great job in moving all important stuff from S99 to docs | |||
RabidGravy: feel free to continue it | |||
AlexDaniel really hopes that we will get rid of S99 one day | 12:41 | ||
perlpilot | AlexDaniel: why? | 12:44 | |
AlexDaniel | perlpilot: have you ever tried reading S99 from top to bottom? :) | ||
perlpilot | nope. But I haven't tried reading a dictionary or a thesaurus from front to back either. | 12:45 | |
RabidGravy | I'd say that the S99 should be restricted to terms that are actually in the design docs | ||
AlexDaniel | heh, well S99 is not that long | ||
perlpilot | RabidGravy: why? | 12:46 | |
RabidGravy | because it's a design doc | ||
it shouldn't be in the business of glossarizing things that are just colloquialisms of the Perl 6 community | 12:47 | ||
AlexDaniel | perlpilot: we should not have two glossaries. Right now some stuff is duplicated, so we should probably start removing that from S99… | ||
RabidGravy | unless of course it seeks to mandate a particular use of language | ||
_nadim | what's $^a? | 12:48 | |
AlexDaniel | perlpilot: after doing that it will just leave a bunch of words that are not described, so there would be no point to keep it | ||
RabidGravy | (and given the authoritarian streak of some geeks I wouldn't be surprised) | ||
perlpilot | AlexDaniel, RabidGravy: Have both you read the first paragraph of S99? | ||
AlexDaniel | m: sub foo { return $^a * *a }; say foo 42 | ||
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/X5GuWKTygYTwo terms in a rowat /tmp/X5GuWKTygY:1------> 3sub foo { return $^a * *7⏏5a }; say foo 42 expecting any of: infix infix stopper postfix sta…» | ||
AlexDaniel | m: sub foo { return $^a * $a }; say foo 42 | 12:49 | |
camelia | rakudo-moar f7613f: OUTPUT«1764» | ||
grondilu | Ok, so I was trying "my &f = multi () {}" and rakudo tells me that's not possible. So I tried my &f = proto () {*} and it tells me that's not possible either. Why not? | ||
jnthn | grondilu: Because multi candidate lists are associated with the correct proto by name | 12:50 | |
llfourn_ | grondilu: runtime protos are not really a thing | ||
AlexDaniel | perlpilot: no, what's there? | ||
12:50
pierre_ left
|
|||
grondilu | that's slightly LTA | 12:51 | |
perlpilot | AlexDaniel: S99:14 | ||
synopsebot6 | Link: design.perl6.org/S99.html#line_14 | ||
perlpilot | :-) | ||
[Coke] | _nadim: it's a positional so you can use a name for an arg without having to explicitly declare it in the signature. | ||
llfourn_ | grondilu: it's NYI I think, in the design docs it says you should be able to push candidates onto a dispatcher which implies to me that runtime proto creation should work. | 12:52 | |
[Coke] | you'll see $^a and $^b in one-off sort subs, reminiscent of perl5's $a and $b | ||
RabidGravy | perlpilot, but that would suggest that really it wants to be in the docs and not the design | ||
it wouldn't need that explanation then | |||
perlpilot | RabidGravy: perhaps. | ||
AlexDaniel | perlpilot: this was written in 2013 which was before we had proper docs and proper glossary in docs | 12:53 | |
perlpilot: also see this github.com/perl6/specs/commit/43de...bc14d4ca5d | |||
_nadim | [Coke]: I got that from the example above, thnaks | ||
AlexDaniel | which is your commit | ||
_nadim | I am trying to wrap my head around Baggy classify-list | ||
grondilu | I was building three functions from a common template so I had to do something like my (&f, &g, &h) = map -> &x { sub () { do-something-with-&x } }, &afunc, &anotherone, &yetanotherone. But then I realized that I would lost polymorphism for &f, &g and &h | ||
llfourn_ | grondilu: you can do something like my $new_proto = (my proto anon (|) {*}).clone; # But YMV and it might be evil | 12:54 | |
RabidGravy | y'see I would argue that it should actually be reduced in scope to the first two sentences of the original paragraph, and anything else should go in the docs | 12:55 | |
AlexDaniel | _nadim: one gotcha is that the order depends on the… uh… codepoint number I guess? | ||
m: sub foo { say $^a; say $^b }; say foo 42, 69 | |||
camelia | rakudo-moar f7613f: OUTPUT«4269True» | ||
12:55
brrt left
|
|||
AlexDaniel | m: sub foo { say $^b; say $^a }; say foo 42, 69 | 12:55 | |
camelia | rakudo-moar f7613f: OUTPUT«6942True» | ||
AlexDaniel | no?? | ||
perlpilot | AlexDaniel: they are ordered Unicodely | 12:56 | |
_nadim | seems so | ||
AlexDaniel | ah yeah, right | ||
AlexDaniel got confused by his own example | |||
_nadim: in other words, it is probably a bad idea to use readable names | 12:57 | ||
_nadim | lol! | ||
doc.perl6.org/routine/categorize-list would deserve a little work specially explaining the difference with classify and also what a multi level classification/categorization is | 12:58 | ||
BooK | book | 12:59 | |
RabidGravy | well unless $^aardvark and $^barbarian are natural names for your application | ||
AlexDaniel | _nadim: you are right. Please create an issue here: github.com/perl6/doc/issues/new | ||
_nadim | I also promised to help with this, been busy and now have a broken computer but maybe next week when I get a new one. | 13:00 | |
13:01
Actualeyes joined
|
|||
perlpilot | RabidGravy: though, if "aardvark" and "barbarian" are natural names, you might want to use $:aardvark and $:barbarian instead. | 13:01 | |
RabidGravy | yeah, exactly | ||
perlpilot | or, of course, even better would be to actually declare a signature ;) | ||
_nadim | AlexDaniel: done | 13:02 | |
RabidGravy | it's one of those features I could really do without | ||
AlexDaniel | _nadim: 🖒👍 | ||
_nadim | multi method classify-list( %test, *@list ) { self.classify-list( { %test{$^a} }, @list ); } This is the example where $^a made me scratch my head. | 13:03 | |
AlexDaniel | RabidGravy: I thought that it is one of those features I couldn't really do without until I realized that the order is not what I want it to be | 13:04 | |
13:04
pierre_ joined,
tomboy64 left
|
|||
perlpilot | Like all shortcuts in Perl, they are to be used judiciously | 13:05 | |
AlexDaniel | _nadim: You can also use $_ here, I think | ||
tbrowder | I'll leave 'codepoint' vs 'code point' to simmer...bye | ||
13:05
tbrowder left
|
|||
timotimo | bye tbr:) | 13:05 | |
damn | |||
dalek | c: b28194f | (Tom Browder)++ | doc/Language/unicode_texas.pod: define the code point properties in the description |
13:06 | |
c: 8aff7f6 | (Tom Browder)++ | doc/Language/unicode_texas.pod: chg '((' to '('; add hyphen for adjective; add missing property <Lm> and its definition |
|||
c: ed99281 | (Tom Browder)++ | doc/Language/unicode_texas.pod: Merge pull request #468 from tbrowder/master define the code point properties in the description |
|||
13:06
uruwi left
|
|||
bazzaar | moritz: DBIish bug reported, github.com/perl6/DBIish/issues/62 - github mangled my text with silly font sizes though, ... shrug | 13:07 | |
_nadim | AlexDaniel: doesn't make more sense to use $_ vs $^a. I actually wouldn't mind a walk through those two multies. I get 90% of them (or so I believe ;) ) and the rest is "Mhuua WTF?!" | ||
moritz | bazzaar: if you indent the text four spaces, github will leave it alone | 13:08 | |
AlexDaniel | bazzaar: try using ``` ``` around it | ||
which is sometimes a bit easier than indenting the whole text :) | 13:09 | ||
13:09
darutoko left
|
|||
moritz is used to vim's block editing feature | 13:09 | ||
13:10
darutoko joined
|
|||
timotimo | yeah, i love block editing in vim | 13:10 | |
grondilu | I've found a solution: proto f {*}; proto g {*}; my ($f, $g) = map -> &x {...}, &a, &b; multi f { $f() }; multi g { $g() }; | ||
basically storing the result of the map in a hidden storage array. | |||
(or several hidden variables) | 13:11 | ||
AlexDaniel | moritz: do you use something to get vim features in your browser? | 13:12 | |
llfourn_ | grondilu: it works but it would be nice to be able to just push $f and $g onto the proto | ||
grondilu: I actually made a module that should work in your circumstance which hacks the feature in, github.com/LLFourn/p6-CompUnit-Util#push-multi | 13:14 | ||
13:14
tomboy64 joined,
jjido joined
|
|||
llfourn_ | but YMV | 13:14 | |
grondilu | something like proto f { somefunc({*}) } should work theoretically, shouldn't it? | ||
llfourn_ | I think so | ||
moritz | AlexDaniel: yes, I use the It's All Text extension | 13:15 | |
13:15
skids joined
|
|||
moritz | AlexDaniel: which can open arbitrary editors for text areas | 13:15 | |
grondilu | however that's not what I want to do since the other multi I'm planning to make will not use somefunc. | ||
moritz | AlexDaniel: and I use that with gvim | ||
_nadim | Who maintains doc.perl6.org/? | 13:18 | |
takadonet | morning all | ||
13:18
jjido left
|
|||
_nadim | morning! | 13:19 | |
13:19
Sgeo left
|
|||
bazzaar | moritz: that's done the trick | 13:20 | |
13:20
uruwi joined
|
|||
moritz | _nadim: all of us do | 13:20 | |
I hope :-) | |||
_nadim | :) I didn't mean the content but the page itself | 13:21 | |
moritz | that's generated from the content | ||
I maintain the webserver behind it | |||
_nadim | anyway, it would be nice if the focus was on the search field by default so one can type directly when the page is displayed | ||
moritz | _nadim: we had that before, and didn't like it | ||
_nadim | so we avoid what I call the IMDB syndrom | 13:22 | |
bazzaar | AlexDaniel: thanks also for the tip, .. I did try it but somehow I mustn't have done it correctly, next bug I'll try again :) | ||
moritz | people want to use the space bar to scroll through the page, for example | ||
_nadim | then IMDB syndrom it is (trillions of users cursing it) | ||
moritz | or use / to introduce find-as-you-type | ||
AlexDaniel | bazzaar: I've edited it already, by the way | ||
13:24
_4d47 left
|
|||
dalek | osystem: 626f89a | RabidGravy++ | META.list: Rename META for Linux::Cpuinfo |
13:24 | |
_nadim | moritz: I think it would be fine with / to search but people that want to use space to scroll are blocking the people who want to use ALL the other keys. and scrolling works with page-down even idf the search is on. But this is but just a small detail. | ||
moritz | _nadim: as I said, it was like that before, and the feedback was mostly negative | 13:25 | |
bazzaar | AlexDaniel: oops didn't realise, maybe my edits over-wrote, anyway it looks as I'd intended it too :) | ||
_nadim | moritz: as I said, itis not important but I can't help but find that silly and illogical, there is nothing to scroll! its a one page page. | 13:26 | |
moritz | _nadim: depends on your screen size. And the same widget is used all over the site | 13:27 | |
even on big pages | |||
RabidGravy | I might be procrastinating finishing the documentation for a module but in the meantime all the other modules get a spring clean :) | 13:30 | |
13:31
pierre_ left
|
|||
_nadim | Of course but I beg to disagree, I have a small resolution and it is still one page. Of course the people complaining may have 400% zoom due to their old age. I am slowly getting there ;) | 13:31 | |
Mmm, 'file_name'.IO.lines works but 'file_name'.IO::Path.e doesn't, that's not very consistent. Or am I doing something wrong? | 13:34 | ||
moritz | _nadim: yes, you are. | ||
_nadim: you are trying to call a method from a totally different class on a string | |||
_nadim | I am happy that I am. | ||
moritz | _nadim: fwiw on my Galaxy S6, the front page doesn't fit on a single page, and for a smart phone it has a rather big screen | 13:36 | |
_nadim | Arff, I looked in the doc and missed method IO | ||
it's be nice if IO::xxx added method IO::xxx to STr | |||
moritz: Its OK, i'll double tab to get in the search widget | 13:37 | ||
moritz | what's wrong with calling .IO.xxx? | ||
less key strokes, less confusion | |||
13:37
bbkr left
|
|||
_nadim | IO::xxx like if was the constructor for IO:xxx | 13:38 | |
13:38
sufrostico joined
|
|||
_nadim | IO::xxx class | 13:38 | |
13:38
wamba left
13:39
pierre_ joined
|
|||
_nadim | Eg: IO::Path.new("/etc/passwd").e vs "/etc/passwd".IO::Path.e | 13:39 | |
RabidGravy | hahaha | 13:40 | |
13:41
rba_ left
|
|||
moritz | ... and a pony | 13:41 | |
_nadim | '...'.IO.lines was the pony, this would be a unicorn | 13:42 | |
RabidGravy | of course the plan in Linux::Cpuinfo's "this machine" test is totally bogus | 13:43 | |
boo | |||
13:44
tomboy64 left,
jack_rabbit left
13:45
perlawhirl left
13:46
tomboy64 joined
13:47
perlawhirl joined
|
|||
bazzaar | DBIish seems to have slowed considerably for fetchall_arrayref(), 6000 records takes a good deal longer than it did in R* 2016-01 [I think] | 13:48 | |
13:49
adu joined
13:53
zacts left
13:55
CIAvash left
13:56
perlawhirl left
|
|||
grondilu | m: role A { multi method new { class :: does A {}.new } } | 13:57 | |
camelia | rakudo-moar f7613f: OUTPUT«Use of uninitialized value of type Any in string contextAny of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in any try_select at gen/moar/m-Metamodel.nqp line 26065===SORRY!5=== Error while compiling /tmp/7lyf3v6Uah…» | ||
grondilu | m: role A {...}; role A { multi method new { class :: does A {}.new } } | ||
camelia | rakudo-moar f7613f: OUTPUT«Use of uninitialized value of type Any in string contextAny of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in any try_select at gen/moar/m-Metamodel.nqp line 26065===SORRY!5=== Error while compiling /tmp/QM69nrntvU…» | ||
Woodi | hi everyone :) | ||
grondilu | ^looks like a bug to me | ||
or at least an unhelpful error message. | 13:58 | ||
I had a role used as an interface (that is, with a virtual method). And I wanted to provide a default implementation. | 13:59 | ||
role A { method foo {...}; multi method new { class :: does A { has $.foo }.new } | |||
Woodi | stmuk++ # R*2016.04; but installing all 32 module takes ages... It would be nice if rakudo's make install install just rakudo; modules can be done with modules-install | 14:00 | |
arnsholt | grondilu: That code looks very weird. What exactly did you want a default implementation of? | 14:01 | |
masak | Woodi: if you only want the compiler, why are you downloading R* ? | ||
Woodi | timotimo: do System Shock 2 ! it is worth any money :) | ||
masak: hmm :) | |||
grondilu | arnsholt: of the the A role. | ||
masak | Woodi: you're like the people who write travel reviews about the beach, giving it a 2 out of 5, saying "too much sand" | ||
timotimo | Woodi: i more-or-less promised someone to do co-op, but we never got around to it | 14:02 | |
14:02
zacts joined
14:03
zacts left
|
|||
Woodi | masak: I think I want package with modules. but probably, for some reason, I belive in some betternes&magic from R* :) but also I want more flexibility from 'modules-install' target... | 14:03 | |
arnsholt | grondilu: That sounds like a weird way to do it. If you want to provide a default implementation of the role, do that as a separate class I think | ||
14:04
zacts joined
|
|||
grondilu | arnsholt: that's what I did with class :: does A {} :P, but maybe you meant in a different compunit? | 14:04 | |
14:05
g4 left
|
|||
Woodi | timotimo: single player is perfect there. eg. after that you will have small, cute monkeys "voice" burned all over your brain :) | 14:05 | |
timotimo | hah | ||
arnsholt | grondilu: Well, that'll make new return an instance of a *different* class than the class you're composing into (since you're creating a new anonynous one) | ||
So just "role R { ... }; class DefaultR { ... }" | 14:06 | ||
grondilu | that would work but it will make a mess in terms of names and compunits. | 14:07 | |
Woodi | timotimo: 2. any explanation on mechanism why german words are better ? :) I hear it is true from few sources :) | ||
timotimo | nope, just misguided arrogance | ||
Woodi | heh :) I think at least some german experience in some domains work like this | 14:09 | |
14:09
perlawhirl joined
14:10
zakharyas left,
zakharyas joined
|
|||
timotimo | german was lingua franca for something for some time. was it maths? philosophy? | 14:10 | |
Woodi | and psychology probably | ||
geekosaur | and chemistry for a while | 14:11 | |
perlawhirl | nadim: a bit belated, but... | ||
m: (^10).categorize({ ($_ %% 2 ?? 'even' !! 'odd'; $_ < 5 ?? 'small' !! 'big'; 'seven' if $_ == 7) }) | |||
camelia | ( no output ) | ||
perlawhirl | m: say (^10).categorize({ ($_ %% 2 ?? 'even' !! 'odd'; $_ < 5 ?? 'small' !! 'big'; 'seven' if $_ == 7) }) | ||
camelia | rakudo-moar f7613f: OUTPUT«{big => [5 6 7 8 9], even => [0 2 4 6 8], odd => [1 3 5 7 9], seven => [7], small => [0 1 2 3 4]}» | ||
grondilu | arnsholt: on second thought it should be fine. Just need to re-organize things a bit. | ||
14:13
zacts left
14:14
zakharyas left,
tharkun left
14:15
jjido joined
14:16
tharkun joined
|
|||
Xliff | Well, crap. | 14:16 | |
This is NativeCall. If I'm given a pointer to a character aray and a length, how can I convert that to a Blob? | 14:17 | ||
Blob to contain the data in the charater array. | |||
14:18
tbrowder joined,
uruwi left
|
|||
timotimo | copy it over byte-by-byte; there's a module for that purpose in the ecosystem | 14:18 | |
NativeHelpers::something | |||
Xliff | @a := nativecast(CArray[uint8], $p); bytecopy using @a and the length? | 14:19 | |
14:19
jjido left
|
|||
Xliff | timotimo, I will look into NativeHelpers. Thanks. | 14:19 | |
tbrowder | AlexDaniel: doc/Language/unicode_texas.pod pull request is ready for your review | ||
RabidGravy | NativeHelpers::Array | 14:20 | |
14:20
wamba joined
|
|||
timotimo | i think you can do pointer arithmetic, too, but nativecast to CArray also works well | 14:21 | |
Xliff | Yeah. I'd rather not have another dependency if I can help it. | 14:23 | |
So as long as I keep within the buffer, I should be fine. | |||
14:23
cdg joined
14:25
jack_rabbit joined
|
|||
Xliff | @a := nativecast(CArray[uint8], $p); my $b = Buf.new(@a[^$p_len]); <- ??? | 14:25 | |
AlexDaniel | tbrowder: I like that unicode_texas.pod is getting attention to details | ||
14:25
shadowpaste left
|
|||
timotimo | does that work? looks good to me | 14:25 | |
AlexDaniel | tbrowder: but I'm not sure if this commit is right | ||
Xliff | timotimo, Won't know it till I try it. | ||
14:26
shadowpaste joined
|
|||
AlexDaniel | tbrowder: “Any codepoint that has the C<Nd> (Number, decimal digit) property, can be used as a digit in any number.” – OK. But the example is demonstrating 𝑒 | 14:26 | |
tbrowder: which is not related to Nd | |||
tbrowder: it is just a constant | |||
tbrowder: one possible example to demonstrate codepoints with Nd property is | 14:27 | ||
m: say ١٩ | |||
camelia | rakudo-moar f7613f: OUTPUT«19» | ||
AlexDaniel | m: say ‘١٩’.uninames | 14:28 | |
camelia | rakudo-moar f7613f: OUTPUT«(ARABIC-INDIC DIGIT ONE ARABIC-INDIC DIGIT NINE)» | ||
AlexDaniel | m: say ‘١٩’.uniprops | ||
camelia | rakudo-moar f7613f: OUTPUT«Method 'uniprops' not found for invocant of class 'Str' in block <unit> at /tmp/3pt9kxFtFO line 1» | ||
AlexDaniel | m: say ‘١’.uniprop; say ‘٩’.uniprop | ||
camelia | rakudo-moar f7613f: OUTPUT«NdNd» | ||
14:29
zacts joined
14:33
Actualeyes left
|
|||
AlexDaniel | alright: RT #128009 | 14:33 | |
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128009 | ||
AlexDaniel | tbrowder: your second example is ok, altough I'd probably write it in one line (the variable makes no difference in this case) | 14:35 | |
14:35
ufobat joined
|
|||
AlexDaniel | m: say ⅒ + 2 | 14:35 | |
camelia | rakudo-moar f7613f: OUTPUT«2.1» | ||
timotimo | i don't see anything there )% | 14:36 | |
AlexDaniel | tbrowder: what I meant by pointing to this phrase “These aren't decimal digit characters, so can't be combined” was this: | ||
stmuk_ | awwaiid: are you actually editing rakudo.org or can I steal your lock? :) | ||
14:36
jack_rabbit left
|
|||
AlexDaniel | m: say ٩٩ | 14:36 | |
camelia | rakudo-moar f7613f: OUTPUT«99» | ||
AlexDaniel | m: say ⅡⅡ | ||
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/GxVPwvDD4tBogus postfixat /tmp/GxVPwvDD4t:1------> 3say Ⅱ7⏏5Ⅱ expecting any of: infix infix stopper postfix statement end statement mod…» | ||
AlexDaniel | tbrowder: ↑ that is, you **can** use unicode digits, but not all unicode numeric things can be used as digits. And this depends on their property | 14:38 | |
timotimo | that's right | ||
AlexDaniel | and my problem with that phrase is that it does not make it clear enough | ||
timotimo | we may want to give a clearer error message for cases where any N with non-d is put after another of the same group | ||
AlexDaniel afk for a while | 14:39 | ||
tbrowder | AlexDaniel: see change | 14:42 | |
14:43
uruwi joined
14:47
zacts_ joined
|
|||
awwaiid | stmuk_: haha | 14:47 | |
stmuk_: I just updated the .dmg | 14:48 | ||
stmuk_: I'll close the page now | |||
14:49
zacts left
|
|||
stmuk_ | thanks :) | 14:53 | |
awwaiid | it's closed. hopefully that releases any lock. | 14:54 | |
14:55
zacts_ left
|
|||
stmuk_ | it was just locked for the page I was going to edit but you made the change anyway | 14:55 | |
14:55
zacts joined
14:56
zacts is now known as Guest81719
14:58
khw joined
14:59
Guest81719 left,
zacts_ joined
|
|||
masak | Woodi: it still sounds to me that what you want is rakudo the compiler, and then Task::Star | 15:00 | |
15:00
zacts_ is now known as zacts
|
|||
grondilu | in A.pm6: unit class A; our sub f {} | 15:02 | |
in B.pm6: unit role B; use A; my &f = &A::f; | 15:03 | ||
and then 'use B; class :: does B {};' | |||
===SORRY!=== Error while compiling -e | 15:04 | ||
Could not instantiate role 'B': | |||
Cannot find method 'package_at_key': no method cache and no .^find_method | |||
at -e:1 | |||
notice that it works fine without compunits | 15:05 | ||
m: class A { our sub f {} }; role B { use A; my &f = &A::f } | |||
camelia | rakudo-moar f7613f: OUTPUT«===SORRY!===Could not find A at line 1 in: /home/camelia/.perl6 /home/camelia/rakudo-m-inst-2/share/perl6/site /home/camelia/rakudo-m-inst-2/share/perl6/vendor /home/camelia/rakudo-m-inst-2/share/perl6 CompUnit::Repository:…» | 15:06 | |
grondilu | m: class A { our sub f {} }; role B { my &f = &A::f } | ||
camelia | ( no output ) | ||
grondilu | m: class A { our sub f {} }; role B { import A; my &f = &A::f } | ||
camelia | ( no output ) | ||
15:06
_mg_ left
|
|||
zacts | hi perl6 hackers | 15:07 | |
et nerds, etc.. | |||
15:07
colomon left
|
|||
mst | zacts: HEY! I RESEMBLE THAT REMARK! | 15:09 | |
zacts | lol =D | ||
mst: are you getting involved with Perl6 now too along with Perl5? | |||
Xliff | For modules entered into the ecosystem, is it preferred to use .pm6 and .pl6 instead of the Perl5 equivalents? | 15:10 | |
mst | zacts: only vaguely, so far | 15:11 | |
zacts | ah ok, cool | 15:12 | |
perlpilot | Xliff: I use *.pm6 when I think about it, but often I forget | 15:15 | |
(and I've never used .pl or .pl6 because usually my programs don't have some special suffix) | |||
15:15
jjido joined
|
|||
AlexDaniel | tbrowder: I have to go unfortunately, so can't review that right now | 15:18 | |
perlpilot | (actually ... I did use .pl for a while, but it was with Perl 4 when the .pl suffix stood for "Perl Library" and the .pl file occupied a similar space then as the .pm files do now) | ||
AlexDaniel | tbrowder: examples look alright as far as I can see | 15:19 | |
geekosaur | I use .pl still for programs that are not yet complete | ||
mst | Xliff: if you use .pm6, file type guessers (e.g. for synhi) are more likely to get it right | ||
geekosaur | removing the .pl suffix means it's reasonably complete | ||
mst | Xliff: if you don't use .pm6, you really should 'use v6' | ||
so it depends, do you want to indicate you're perl6 code in your file name or a line of code | 15:20 | ||
15:20
jjido left
|
|||
AlexDaniel | timotimo: do you know any character that has more than one property? | 15:20 | |
15:21
perlawhirl left,
perlawhirl joined
15:23
khw left
15:28
wamba left
|
|||
Woodi | masak: no. for sure I wanted ability to install rakudo and modules one after one. and looking into Makefile I found: install: rakudo-install modules-install welcome-message :) someone++ so looks I just assumed other naming/prioritization. all good now | 15:28 | |
15:29
Actualeyes joined
15:30
zacts left
15:33
wamba joined,
khw joined
15:35
domidumont left,
ufobat left
|
|||
Woodi | masak: actually you may be right... I also wanted ability to not installing modules... | 15:36 | |
15:38
El_Che left
|
|||
dalek | osystem: 200a5f7 | RabidGravy++ | META.list: Rename the META for Linux::Fuser |
15:39 | |
15:40
astj left,
TheLaw joined
15:41
TheLaw left
|
|||
timotimo | AlexDaniel there are many different properties defined in Unicode. almost all characters have more than one i am willing to claim | 15:41 | |
TimToady | tbrowder: due to its frequency of use, it is quite intentional that we coined the compound 'codepoint', just as it is intentional that we use 'grapheme' to mean that long consortium phrase that I can't even remember to make fun of it | 15:43 | |
15:43
ufobat joined
|
|||
TimToady | we've coined a number of other terms in the past as well | 15:44 | |
15:44
pierre_ left
|
|||
TimToady | standards bodies rarely have the courage to coin new terms where they are necessary, so they just string random works together | 15:45 | |
stmuk_ | I quite like "rune" | ||
TimToady | funny thing is, the situation doesn't even arise in a language like Chinese, where compounding is automatic by frequency, and no decision needs to be made about spacing | 15:46 | |
15:47
ZoffixW joined
|
|||
ZoffixW | m: role NamedAttribute { has Str $.json-name is rw; }; multi sub trait_mod:<is>(Attribute $a, Str :$json-name!) { $a does NamedAttribute; $a.json-name = $json-name; }; class Bar { has $.meow is json-name('foo') = 42; }; say Bar.new.meow.foo-name; | 15:47 | |
camelia | rakudo-moar f7613f: OUTPUT«Method 'foo-name' not found for invocant of class 'Int' in block <unit> at /tmp/XVt1ebaami line 1» | ||
TimToady | linguistically, in English, I'd argue that we should start thinking about compounding the moment you start using a multi-noun phrase as an adjective | ||
ZoffixW | Why doesn't this make foo-name method available? I think that's the exact copy of JSON::Name's code :/ | ||
15:47
El_Che joined
|
|||
TimToady | "codepoint property" vs "code point property" | 15:47 | |
and I don't really give a rip how the Unicode consortium does it :) | 15:48 | ||
TimToady wonders what the derivation of "give a rip" is... | 15:49 | ||
15:50
wamba left,
wamba joined
|
|||
bazzaar | Hi, just noticed that R* 2016-04 creates a precomp dir in .perl6 dir, whereas R*2016-01 put precomp in .perl6/2016.01.1 ... was that intended? | 15:51 | |
Xliff | mst: Both. | 15:52 | |
mst | Xliff: both is also good :) | ||
15:52
maybekoo2 joined
|
|||
Xliff | but I will start with "use v6" and maybe update extensions when I do code cleanup. | 15:52 | |
15:53
perlawhirl left
|
|||
ZoffixW | Has anyone done talks or written blogs about making custom traits? I really need some good info :/ | 15:53 | |
15:55
ufobat left
|
|||
TimToady also grumbles about disbelief in nested parens, which can be used to great comic effect | 15:56 | ||
15:56
ufobat joined
|
|||
hoelzro | ZoffixW: what kind of info do you need? | 15:56 | |
ufobat | hum! Could not map file '/home/martin/.workspace/p6/VoteImproved/../Bailador/lib/.precomp/D7820A4EF6D97B780F45CAC4B50C4E6E59589690.1461213213.60262/3B/3BC5C3D7FF8F38932639644824058B0EEF588B45' into memory: FIXME | ||
not so awesome ;) | |||
ZoffixW | hoelzro, how to use them? What's possible? Why my code above isn't working? Everything :) | 15:57 | |
hoelzro looks | |||
ZoffixW: that last line should be Bar.new.meow.json-name, right? | 15:59 | ||
ZoffixW | hoelzro, ah, right. But it still fails: | ||
hoelzro | yes | 16:00 | |
ZoffixW | m: role NamedAttribute { has Str $.json-name is rw; }; multi sub trait_mod:<is>(Attribute $a, Str :$json-name!) { $a does NamedAttribute; $a.json-name = $json-name; }; class Bar { has $.meow is json-name('foo') = 42; }; say Bar.new.meow.json-name; | ||
camelia | rakudo-moar f7613f: OUTPUT«Method 'json-name' not found for invocant of class 'Int' in block <unit> at /tmp/Ywgn0IZYUb line 1» | ||
hoelzro | so the reason *that* is | ||
...is because you're applying a role to the Attribute | |||
not to the values it contains | |||
ZoffixW | Isn't it the same that's happening here? github.com/jonathanstowe/JSON-Name...ON/Name.pm | ||
hoelzro | role NamedAttribute { has Str $.json-name is rw; }; multi sub trait_mod:<is>(Attribute $a, Str :$json-name!) { $a does NamedAttribute; $a.json-name = $json-name; }; class Bar { has $.meow is json-name('foo') = | ||
m: role NamedAttribute { has Str $.json-name is rw; }; multi sub trait_mod:<is>(Attribute $a, Str :$json-name!) { $a does NamedAttribute; $a.json-name = $json-name; }; class Bar { has $.meow is json-name('foo') = 42; }; say Bar.^attributes[0].WHAT; | 16:01 | ||
camelia | rakudo-moar f7613f: OUTPUT«(Attribute+{NamedAttribute})» | ||
hoelzro | ZoffixW: yes, that's the same thing | 16:02 | |
but what's probably happening is serializer is looking at an object's attributes | |||
and checking $attr.?json-name | |||
ZoffixW | Ah | ||
hoelzro | falling back to $attr.name.subst(/^ <[$@%]> '!'/, '') | 16:03 | |
16:03
uruwi left
|
|||
ZoffixW | I don't understand what the difference is here: | 16:04 | |
m: role Foo { has $.bar = 'meow'; }; multi sub trait_mod:<is>(Variable $a, :$foo!) { $a does Foo; }; my $x is foo; my $y does Foo; say $x; say $y; | |||
camelia | rakudo-moar f7613f: OUTPUT«(Any)Scalar+{Foo}.new(bar => "meow")» | ||
ZoffixW | What is a `Variable`? I'd think both $x and $y would be the same.... | ||
RabidGravy | it's the meta thingy for that variable | 16:06 | |
ZoffixW | -_- | 16:07 | |
ZoffixW reads src/core/Variable.pm | 16:08 | ||
hoelzro | it's like a container | 16:11 | |
m: my $x; say $x.VAR.WHAT; | |||
camelia | rakudo-moar f7613f: OUTPUT«(Scalar)» | ||
hoelzro | m: my $x; say $x.VAR.WHAT ~~ Variable; | ||
camelia | rakudo-moar f7613f: OUTPUT«False» | ||
hoelzro | apparently not a container in its own right =/ | ||
geekosaur | m: my $x; say $x.VAR ~~ Variable; | ||
camelia | rakudo-moar f7613f: OUTPUT«False» | ||
16:12
bazzaar left
|
|||
RabidGravy | isn't it the HOW of the container | 16:15 | |
hoelzro | ah, maybe that's it | ||
geekosaur | m: my $x; say $x.VAR.HOW ~~ Variable; | ||
camelia | rakudo-moar f7613f: OUTPUT«False» | ||
geekosaur | m: my $x; say $x.HOW ~~ Variable; | ||
camelia | rakudo-moar f7613f: OUTPUT«False» | ||
geekosaur | mrrr | ||
16:15
Lixquid joined
|
|||
ZoffixW | m: role Foo { has $.bar = 'meow'; }; multi sub trait_mod:<is>(Variable $v, :$foo!){ $v.var.VAR does Foo; }; my $x is foo; say $x.bar; | 16:15 | |
camelia | rakudo-moar f7613f: OUTPUT«meow» | ||
ZoffixW | Success \o/ :) | ||
Well, almost... you can't assign anything to $x anymore :/ | 16:16 | ||
16:16
jjido joined
|
|||
geekosaur | m: role Foo { has $.bar = 'meow'; }; multi sub trait_mod:<is>(Variable $v, :$foo!){ $v.var.VAR does Foo; }; my $x is foo; say $x.bar; $x = 0; | 16:17 | |
camelia | rakudo-moar f7613f: OUTPUT«meowCannot assign to an immutable value in block <unit> at /tmp/Z9JMAtX1In line 1» | ||
geekosaur | m: role Foo { has $.bar = 'meow'; }; multi sub trait_mod:<is>(Variable $v, :$foo!){ $v.var.VAR is rw does Foo; }; my $x is foo; say $x.bar; $x = 0; | ||
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/xKZjuzBcdtTwo terms in a rowat /tmp/xKZjuzBcdt:1------> 3od:<is>(Variable $v, :$foo!){ $v.var.VAR7⏏5 is rw does Foo; }; my $x is foo; say $x expecting any of: infix infi…» | ||
16:17
uruwi joined
|
|||
geekosaur | m: role Foo { has $.bar is rw = 'meow'; }; multi sub trait_mod:<is>(Variable $v, :$foo!){ $v.var.VAR does Foo; }; my $x is foo; say $x.bar; $x = 0; | 16:17 | |
camelia | rakudo-moar f7613f: OUTPUT«meowCannot assign to an immutable value in block <unit> at /tmp/666P7yOhLJ line 1» | ||
geekosaur | bleh | 16:18 | |
dalek | osystem: 83c7528 | RabidGravy++ | META.list: OOPS |
||
RabidGravy | :-^ | 16:19 | |
16:20
jjido left
16:23
tharkun left,
tharkun joined
16:25
rurban joined,
domidumont joined,
zakharyas joined
16:28
ChoHag joined
16:43
ZoffixW left
|
|||
Xliff | Is there a while-loop equivalent in P6? | 16:45 | |
timotimo | yes, it's called "loop" | 16:46 | |
er | |||
it's called "while" | |||
Xliff | LOL! | ||
timotimo | m: while my $i < 10 { say $i; $i++ } | ||
camelia | rakudo-moar f7613f: OUTPUT«Use of uninitialized value of type Any in numeric context in block <unit> at /tmp/OrkhRpRIwt line 1(Any)123456789» | ||
Xliff | That's test first then loop, correct. | ||
timotimo | pff, whatevs. | ||
Xliff | Excellent. | ||
DD'oh! | 16:47 | ||
while wasn't mentioned here en.wikibooks.org/wiki/Perl_6_Progr...ures#Loops | |||
timotimo | perl6advent.wordpress.com/2015/12/...repeating/ | ||
that wikibook ought to be deleted | |||
Xliff | But is, here: doc.perl6.org/language/control#while%2C_until | ||
awwaiid | in theory it can be edited :) | 16:48 | |
(assuming the "wiki" in it's name means the normal thing) | |||
timotimo | yeah, but that's a whole lot of work | ||
awwaiid | well we could add a link to each section or something. hmmm | ||
timotimo | we don't seem to have enough people/time to get such a thing working | ||
16:48
khw left
|
|||
timotimo puts an entry into "ye olde" about the wikibook | 16:49 | ||
dalek | osystem: 01703d5 | RabidGravy++ | META.list: rename META for Log::Syslog::Native |
||
awwaiid | "ye olde"? | ||
Xliff | "It goes without saying that this is a situation up with which Perl 6 will not put. Let’s see what Perl 6 provides us with." | 16:50 | |
Might want to be rewritten as: | |||
"It goes without saying that this is a situation that Perl6 will not put up with. …" | |||
geekosaur | don't like implicit Churchill ref? | ||
timotimo | github.com/perl6/ye-olde/issues/5 | ||
arnsholt | Xliff: It's intentional =) | 16:51 | |
Xliff | Is that what it was? | ||
timotimo | no, it does not want to be rewritten | ||
geekosaur | yes | ||
arnsholt | What geekosaur++ said, basically | ||
timotimo | awwaiid: see my link there | ||
Xliff | OK. | ||
As long as its deliberate. | |||
16:51
zakharyas left
|
|||
Xliff | On first read I get more "clumsy" than "Churchill". However, I am not well read about him. | 16:52 | |
geekosaur | it's a famous quote | 16:53 | |
roughly "This is the sort of nonsense up with which I shall not put" | |||
timotimo | churchill is someone whom you are not well read about? | ||
stmuk_ | I was wondering if everything preXmas on rakudo.org/downloads/ should be put in an archive directory under each directory? | 16:54 | |
timotimo | might be a good idea | 16:55 | |
"attic/"? :) | |||
16:56
ZoffixW joined
|
|||
ZoffixW | It's not possible to get the name of the variable, is it? something like my $foo; my $var-name = $foo.^name; and $var-name would have "foo" in it. | 16:56 | |
skids | I generally tend to error on the side of "don;t break urls" | ||
timotimo | m: my $foo; my $var-name = $foo.VAR.name; say $var-name | 16:57 | |
camelia | rakudo-moar f7613f: OUTPUT«$foo» | ||
stmuk_ | "attic" is very CVS :P | ||
timotimo | yeah, that'd be appropriately ye-olde to refer to pre-christmas rakudo releases | ||
geekosaur | ..."advent"? | 16:58 | |
timotimo | well, then nobody at all would know what it's about :D | ||
stmuk_ | that's consistant with the rest of perl 6 then ;) | ||
timotimo needs a nap | |||
geekosaur | I can;t say "ye-olde" leads me in that direction either | ||
ZoffixW | :o timotimo++ | 16:59 | |
16:59
sno left
|
|||
ZoffixW | Ah, I see what I did wrong... I dumped ^methods and saw name, but called it as ^name instead of name :) | 16:59 | |
17:02
dakkar left
|
|||
ZoffixW | m: gist.github.com/zoffixznet/f95da02...9539c6be24 | 17:08 | |
camelia | rakudo-moar f7613f: OUTPUT«Benderbeer» | ||
ZoffixW | Neat, eh? :) | ||
RabidGravy | yeah cool :) | 17:10 | |
17:17
bazzaar joined,
jjido joined
|
|||
bazzaar | \o | 17:17 | |
ZoffixW | o/ | ||
17:22
jjido left
17:24
uruwi left,
rurban left
|
|||
bazzaar | Hi perl6, I posted earlier that I thought DBIish was much slower in R* 2016-04, than it was in R* 2016-01 ... my simple data retrieval is 70 times slower ( see timings : nopaste.linux-dev.org/?1094000 ) | 17:25 | |
AlexDaniel | ouch | 17:26 | |
ZoffixW | :o | ||
bazzaar, it's worth reporting as a bug, with a sample code that could be used to reproduce the issue. | 17:27 | ||
bug for Rakudo that is github.com/rakudo/rakudo/#reporting-bugs | 17:28 | ||
17:28
firstdayonthejob joined
|
|||
mst | yeah, that's not supposed to happen | 17:28 | |
RabidGravy | I'd say it was the way that fetchall_* was reimplemented in DBIish | 17:29 | |
ZoffixW | bazzaar, are both of your Perl 6 installation using the same DBIish version? | 17:30 | |
Xliff | Is there a difference between ~< and +< (and their siblings) | ||
ZoffixW | Xliff, one is for strings the other is for numbers, if I recall. | 17:31 | |
RabidGravy | massive changes in DBIish since January, | ||
Xliff | Thanks, ZoffixW | ||
bazzaar | ZoffixW: I reinstated my R* 2016-01 installation, so I think the DBIish versions were different in the two tests | 17:32 | |
ZoffixW | bazzaar, then it might be the issue coming from DBIish, since it looks like there was a lot changed in it. | ||
RabidGravy | they will be | ||
ZoffixW | You could clone the repo, checkout an older, working commit and install that (panda --force install .) | 17:33 | |
bazzaar | ZoffixW: So I should repot as a bug in DBIish instead of Rakudo? | ||
report | |||
RabidGravy | I'd say so | 17:34 | |
ZoffixW | bazzaar, if possible, test it with the same versions of DBIish on both perls. Just update the one on 2016-01 install | ||
That will tell you where the problem lies, even though it's likely with DBIish :) | |||
Lixquid | What does the error "Merging GLOBAL symbols failed: duplicate definition of symbol X" mean? I'm getting it when I'm attempting to use a package | 17:35 | |
From what I can see, the package doesn't have the symbol defined anywhere | |||
RabidGravy | m: say X.WHAT | ||
camelia | rakudo-moar f7613f: OUTPUT«(X)» | ||
RabidGravy | m: say X.HOW.WHAT | 17:36 | |
camelia | rakudo-moar f7613f: OUTPUT«(PackageHOW)» | ||
RabidGravy | there | ||
ZoffixW | :/ | ||
17:36
cdg left
|
|||
RabidGravy | it exists because X::AdHoc does for example | 17:36 | |
bazzaar | ZoffixW: ok, I'll try that before I create the ticket | 17:37 | |
ZoffixW | Lixquid, do you have anything like Foo::X? I see this ticket: rt.perl.org/Ticket/Display.html?id=127484 | 17:38 | |
Lixquid | Not as far as I'm aware, I'm just attempting to use the module from the REPL | 17:39 | |
(The symbol X was generic, it's actually erroring for me on the symbol "Fast") | 17:40 | ||
ZoffixW | Not sure. I had the same error pre-Christmas, but I forget what was causing it. | 17:41 | |
Do you have any BEGIN{} blocks that print anything to STDOUT/STERR? | |||
RabidGravy | Lixquid, what is the actual module? | 17:42 | |
Lixquid | The Discord module, in this case | ||
RabidGravy | which uses JSON::Fast via some dependencies | ||
it's a weird problem | 17:43 | ||
Lixquid | panda --installed --verbose shows JSON::Fast as installed on version 0.4 | 17:44 | |
Is something trying to load multiple versions of JSON::Fast or something? | 17:45 | ||
RabidGravy | say you have some module that uses JSON::Fast and that gets precompiled, then another module uses an explicit and later version of JSON::Fast | ||
Lixquid, I know this because it is actually JSON::Marshal (my module) that creates the problem | 17:46 | ||
Lixquid | Oh, okay, I can see why this is a problem | ||
RabidGravy | It has to use v0.4 or better, but JSON::Unmarshal doesn't care which version | ||
and Discord uses both | 17:47 | ||
it's better now that Panda has the v0.4 JSON::Fast | 17:48 | ||
Lixquid | So, there's two versions of JSON::Fast, JSON::Marshal uses the newer version, Unmarshal uses the older version, and when Discord uses both they collide? | ||
RabidGravy | yep | ||
Lixquid | Right, ok | 17:49 | |
RabidGravy | it's probably a bug in the way that precompilation works | ||
Lixquid | That kinda sucks :( | ||
is there a way to somehow remove the old version, or force Unmarshal to use the newer version | |||
RabidGravy | I just deleted everything | 17:51 | |
in theory you could use zef uninstall | |||
17:52
Guest55535 left
|
|||
RabidGravy | but I had a bad experience with that and ended up deleting everything anyway | 17:52 | |
Lixquid | When you say delete everything, are you referring to the modules | 17:53 | |
..speaking of, where are hte modules installed anyway, on windows? | |||
17:53
hankache joined,
aries_liuxueyang left
|
|||
RabidGravy | no "rakudobrew nuke moar; rakudobrew build moar" | 17:53 | |
17:53
aries_liuxueyang joined
|
|||
RabidGravy | haven't the faintest, don't use windows | 17:54 | |
Lixquid | I'd love to not use Windows, but unfortunately, VS is windows only | 17:55 | |
RabidGravy | all this reminds me I was going to make a thing that does similar to "cpan autobundle" | 17:56 | |
17:56
_rubio_ joined
|
|||
MadcapJake | Lixquid: look for a .precomp directory | 17:56 | |
Lixquid | I've tried renaming the precomp folder in ~/.perl6, but from what I see that only removed the precompiled stuff | ||
MadcapJake | yeah, what did you want it to do? | 17:57 | |
tbrowder | AlexDaniel: doc: any problem with merging the changes as they are at the moment? | ||
AlexDaniel | tbrowder: I'll take a look in like 30 minutes | ||
Lixquid | It then just redownloads / recompiled all the installed packages next time panda runs | ||
MadcapJake | not redownloads but it does recompile | ||
AlexDaniel | tbrowder: but last time I looked it was more like an improvement, so it's probably good :) | ||
MadcapJake | any time you use a module it checks if it's been precompiled and if it hasn't it precompiles it | 17:58 | |
Lixquid | yeah, ideally I can nuke all modules I've told it to download | ||
reset the modules, as it were | |||
MadcapJake | Lixquid: try changing the order of your JSON::Fast, JSON::Marshal use statements | 17:59 | |
RabidGravy | it doesn't help | ||
17:59
colomon joined,
colomon left
|
|||
RabidGravy | I spent a whole day trying to find a workaround | 18:00 | |
18:00
zacts joined
|
|||
MadcapJake | Lixquid: `zef uninstall` works | 18:00 | |
Lixquid | Yeah, there's a collision independant of the order | ||
ZoffixW | Just make both modules require the same version of JSON::Fast? | ||
HTTP::UserAgent's tests still seem to hang on 32-bit boxes :/ | 18:01 | ||
MadcapJake | CURs are supposed to be able to solve this though. What was the error message? | 18:02 | |
RabidGravy | MadcapJake, supposed to sure | 18:03 | |
there appears to be abug | |||
ZoffixW, github issue with exact test that is doing that please | 18:04 | ||
MadcapJake | yeah, I'm working on CURs right now so maybe I can help. Is there some minimum code somewhere that triggers this? | ||
RabidGravy | no | 18:05 | |
MadcapJake | ok :\ | ||
RabidGravy | I can't think of a way of reproducing in a single piece of code | 18:06 | |
MadcapJake | not even just `use Discord` in a script? | ||
dalek | c: 3a40207 | (Jan-Olof Hendig)++ | doc/Type/Code.pod: Fixed errors in the usage sections for methods file and line. Also added code example for line. |
18:07 | |
RabidGravy | no that won't help either because it may not happen to you | ||
18:08
xfix joined,
sno joined
|
|||
MadcapJake | so it's a caused by a specific history of installs/uses | 18:08 | |
RabidGravy | If you have a module B that depends on module A installed and precomped and a module C that is changed to require a specific version of A or greater and you install the newer version of A | 18:09 | |
18:09
tomboy64 left
|
|||
RabidGravy | then using both C and B will give rise to the error | 18:09 | |
i.e. B loads the old version and C tries to load the new version | |||
MadcapJake | well it *shouldn't* because both versions of A should still be around | ||
RabidGravy | or vice versa | ||
exactly | 18:10 | ||
but *something* doesn't like the two versions being loaded | |||
MadcapJake | e.g., A:ver<0.1.0> and A:ver<0.1.1> | ||
RabidGravy | well A | ||
18:10
winger_ left
|
|||
RabidGravy | it fails in GLOBAL merge | 18:11 | |
18:11
winger_ joined
|
|||
RabidGravy | because that's not versioned | 18:11 | |
it's all a bit sucky really | 18:13 | ||
MadcapJake | well if you do ever get that error again (and you too Lixquid) please paste the output somewhere (and use --ll-exception) | ||
ZoffixW | RabidGravy, done: github.com/sergot/http-useragent/issues/145 | 18:14 | |
RabidGravy | cheers matey | ||
no way I can test but it probably give me a clue where the problem lies | 18:15 | ||
MadcapJake | and even RAKUDO_MODULE_DEBUG=1 if you could | ||
18:15
_rubio_ left,
rba_ joined
|
|||
RabidGravy | or y'know I could just delete all the modules | 18:15 | |
18:16
tomboy64 joined
|
|||
MadcapJake | maybe zef/panda should have a clean/nuke command too | 18:16 | |
18:17
rba_ left
|
|||
stmuk_ | zef can uninstall modules | 18:17 | |
18:18
jjido joined
|
|||
RabidGravy | I think it's too early for MODULE_DEBUG BTW | 18:18 | |
MadcapJake | stmuk_: right I mean `zef --all uninstall` :) | ||
too early? | 18:19 | ||
Lixquid | This is the output on my system (Win8, rakudo 2016.01) hastebin.com/ixokajobap.hs | 18:21 | |
It's identical with and without --ll-exception | |||
RabidGravy | yeah | ||
18:23
jjido left
|
|||
RabidGravy | fwiw I think load_module got changed after 2016.01 | 18:24 | |
MadcapJake | ahh so it appears the module process is fine it's *after* when it's collecting all globally available symbols | 18:26 | |
18:26
rurban joined,
rurban left
|
|||
grondilu | m: role A { proto method f {*} }; class :: does A {}; # I kind of was expecting this to fail with a message that the method f must be implemented. | 18:27 | |
camelia | ( no output ) | ||
grondilu | m: role A { proto method f {*}; multi method f {...} }; class :: does A {}; | 18:28 | |
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4PYqL6A6qnMulti method 'f' with signature :(<anon|74541168> $: *%_) must be implemented by <anon|74541168> because it is required by a roleat /tmp/4PYqL6A6qn:1» | ||
18:28
Ven joined
|
|||
RabidGravy | MadcapJake, yeah, it can't handle the different versions | 18:28 | |
grondilu | having to declare a stub multi to force the error is a bit redundant imho | 18:29 | |
RabidGravy | though strangely "perl6 -e 'use JSON::Fast:ver(v0.3); use JSON::Fast:ver(v0.4)'" works fine here | 18:30 | |
so my new working hypothesis is that it's associated with the dependencies of the module being precomped | 18:33 | ||
18:35
ZoffixW left
18:37
uruwi joined
|
|||
Xliff | Can someone help, pls? | 18:37 | |
gist.github.com/Xliff/608addc037f0...9a75b9a05e | |||
masak | Xliff: you're expecting .WHAT to be stringifiable | 18:38 | |
Xliff: try .^name | |||
grondilu | m: role A { method add($x) { self + $x } }; say reduce { $^a.add($^b) } | ||
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ZzpHdCGSUPMissing comma after block argument to reduceat /tmp/ZzpHdCGSUP:1------> 3lf + $x } }; say reduce { $^a.add($^b) }7⏏5<EOL> expecting any of: postfix» | ||
grondilu | m: role A { method add($x) { self + $x } }; say reduce { $^a.add($^b) }, map { $_ but A }, ^10; | 18:39 | |
camelia | rakudo-moar f7613f: OUTPUT«Method 'add' not found for invocant of class 'Int' in block <unit> at /tmp/_z9qJqSLl0 line 1» | ||
18:39
Ven left
|
|||
grondilu | m: say (10 but role { method add($x) { self + $x } }).add(2) | 18:39 | |
camelia | rakudo-moar f7613f: OUTPUT«12» | ||
Xliff | D'oh! masak++ | 18:40 | |
OK. But that was just debugging weirdness. What I really need is help with the next line that throws an error: | |||
grondilu | m: role A { method add($x) { self + $x } }; say reduce { $^a.add($^b) but A }, map { $_ but A }, ^10; | ||
camelia | rakudo-moar f7613f: OUTPUT«45» | ||
Xliff | @pre_buffer[0][$i] = 0; # This type cannot unbox to a native number | 18:41 | |
Output from fixed script shows that @pre_buffer[0][$i] == 'Num' | |||
Er... | |||
Output from fixed script shows that @pre_buffer[0][$i].^name == 'Num' | |||
RabidGravy | yes | ||
0.0 | 18:42 | ||
or Num(0) | |||
Xliff | \o/ | 18:43 | |
RabidGravy++ | 18:44 | ||
So when dealing with LHS nativecall expressions, force type. | |||
RabidGravy | yeah, I've got some code that does that somewhere - just trying to locate | 18:45 | |
18:46
Actualeyes left
|
|||
Xliff | Well, that makes the write test work, but the output is broken. | 18:46 | |
RabidGravy | github.com/jonathanstowe/Audio-Snd...le.pm#L373 | ||
Xliff | More work to do... | ||
timotimo | we might want to output "native floating point number" instead of "native number" | ||
Xliff | Thanks, RabidGravy | ||
timotimo | because that could cause people to go "wtf, since when is 5 not a number?" | ||
RabidGravy | yeah | ||
18:47
hankache left
18:49
MadcapJake is now known as MadcapJakeLunch
18:50
sufrostico left
18:51
sufrostico joined,
ZoffixW joined
|
|||
ZoffixW | m: sub trait_mod:<from> (Variable $, :$config!) { }; my $x from config; | 18:52 | |
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/x28DCEcjz8Two terms in a rowat /tmp/x28DCEcjz8:1------> 3from> (Variable $, :$config!) { }; my $x7⏏5 from config; expecting any of: infix infix stopper stateme…» | ||
ZoffixW | Am I correct in assuming only `is` verb can be used for traits? | ||
timotimo | we could output "native num" instead of "number", because "num" doesn't seem like it's obviously refering to the concept of numbers. at least not as much as "number" does | ||
you would be mostly correct | |||
i'm not sure how exactly "will" is handled | |||
ZoffixW | m: sub trait_mod:<will> (Variable $, :$config!) { }; my $x will config; | 18:53 | |
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/okYX1VFESPMissing blockat /tmp/okYX1VFESP:1------> 3ble $, :$config!) { }; my $x will config7⏏5; expecting any of: block or pointy block» | ||
ZoffixW | k... | ||
timotimo | ah, yes, you can also trait_mod:<will> | ||
ZoffixW | Really? | ||
timotimo | there's also "trusts" and "hides" | ||
check src/core/traits.pm | |||
even "handles" and "returns" are in there | |||
ZoffixW | Yeah, but how do you use them? It seems they aren't user redefinable. And if you look in the grammar, the <is> has a whole bunch of logic, while the rest have just a simple check | 18:54 | |
Like here: github.com/rakudo/rakudo/blob/6d21....nqp#L3113 | 18:55 | ||
Xliff | My gists are turning into a journal of NativeCall GOTCHA!s | 18:56 | |
ZoffixW | $*BORG 0.o | ||
Xliff | $*RESISTANCE is futile; | ||
timotimo shrugs | 18:57 | ||
18:59
Actualeyes joined
|
|||
RabidGravy | ZoffixW, I did have a comprehensive list of the trait words somewhere, but the calling conventions differ slightly | 19:00 | |
so e.g. | 19:01 | ||
m: multi sub trait_mod:<will> (Variable $v, &foo, :$bar) { say "bar"; foo()}; my $b will bar { say "glarg" }; | 19:02 | ||
camelia | rakudo-moar f7613f: OUTPUT«barglarg» | ||
RabidGravy | "will" always gets the block there | 19:03 | |
timotimo | yes, that's what "will" is for | ||
to add a block to a thing | |||
usually we'd install a phaser there | |||
RabidGravy | yes | ||
timotimo | that's probably why it's different in the grammar | ||
AlexDaniel | tbrowder: it is ok! | 19:04 | |
ZoffixW | Aha. Cool. RabidGravy++ | ||
timotimo | ah, also: we explain mistery and cry sorrows there because the thing with "is" will immediately be executed | ||
AlexDaniel | tbrowder: I still don't understand “where case distinctions do not matter” part though | ||
timotimo | but we don't want to execute anything at all if we've stumbled over some problems in the code so far | ||
AlexDaniel | tbrowder: it has been there before your changes, but I'd still like to know what it means | ||
ZoffixW | where .lc eq .uc ? | 19:05 | |
19:05
domidumont left
|
|||
AlexDaniel | ZoffixW: which means? | 19:05 | |
ZoffixW | AlexDaniel, where is that from? | ||
19:06
prammer joined
|
|||
AlexDaniel | ZoffixW: doc.perl6.org/language/unicode_texas | 19:06 | |
RabidGravy | I still think that some mechanism to add new trait introducing words would be cool | 19:07 | |
ZoffixW | m: sub ƻa { say 'two' }; ƻa | ||
camelia | rakudo-moar f7613f: OUTPUT«two» | ||
grondilu | m: role A { proto method f returns Real {*} }; say class :: does A { multi method f { "not a number at all" } }.f() | 19:08 | |
camelia | rakudo-moar f7613f: OUTPUT«not a number at all» | ||
RabidGravy | sometimes it's a real struggle coming up with things that make sense | ||
ZoffixW | AlexDaniel, ¯\_(ツ)_/¯ I think it's just poor wording attempting to say that unlike Lc/Lu, Lo chars don't have a "case" | ||
AlexDaniel | ZoffixW: why would that matter on unicode_texas page? | 19:09 | |
tbrowder: so perhaps you can even get rid of that part | |||
unless somebody has a better explanation | 19:10 | ||
19:10
pmurias joined
19:11
bazzaar left
|
|||
pmurias | what does the name nqp::p6bindattrinvres expand to? | 19:11 | |
ZoffixW | toss it | ||
I'd also move the Numeric Values section right after Numeric Characters, or even combine them. Right now it's odd how Whitespace section is inbetween | 19:13 | ||
Watch a magic trick: | |||
m: say 'Life, the Universe, and Everything'.WHY == ፵ + ፪ | |||
camelia | rakudo-moar f7613f: OUTPUT«True» | ||
ZoffixW | :D | ||
19:16
pmurias left
19:18
pmurias joined,
jjido joined
19:19
ZoffixW left
|
|||
AlexDaniel | m: say ‘Life, the Universe, and Everything’.WHY | 19:23 | |
camelia | rakudo-moar f7613f: OUTPUT«42» | ||
19:23
jjido left
|
|||
AlexDaniel | who did that | 19:23 | |
timotimo | Deep Thought | ||
masak | or the mice, depending how you see it | 19:24 | |
geekosaur | both (Pinky asked the wrong question :p) | 19:25 | |
AlexDaniel | m: say ‘Life, the Universe, and Everything’.WHO | 19:27 | |
camelia | rakudo-moar f7613f: OUTPUT«Str» | ||
AlexDaniel | m: say ‘Life, the Universe, and Everything’.WHERE | 19:28 | |
camelia | rakudo-moar f7613f: OUTPUT«140702311043192» | ||
19:32
tbrowder left
19:33
MadcapJakeLunch is now known as MadcapJake
19:35
yqt joined,
kaare_ left
19:36
ufobat left
|
|||
timotimo | Error while reading from file: Invalid UTF-8 encountered on line 3, character 15 | 19:37 | |
# oh no, a commxE9t | |||
^ here maybe? | |||
RabidGravy | bing bang bong | 19:38 | |
timotimo | github.com/perl6/nqp/commit/403bf33cd4 - nqp/helpful_utf8_read_failure - please put it through its paces for me | 19:39 | |
19:40
tbrowder joined
|
|||
timotimo | Unhandled exception: java.lang.NoClassDefFoundError: Could not initialize class java.lang.Shutdown | 19:40 | |
^- seems like i can't build nqp? o_O | |||
aha | 19:42 | ||
here's the first wrong already | |||
when i feed it a utf16 string, it'll apparently succeed in reading the whole thing, but it then goes on to output the caret 2x as far to the right as it ought to | 19:43 | ||
tbrowder | AlexDaniel: check doc changes and see if that's a bit better | ||
AlexDaniel | tbrowder: this looks right | 19:44 | |
tbrowder | okay to merge what we have now? | 19:45 | |
AlexDaniel | sure | ||
tbrowder | I'll wait for the build check... | ||
AlexDaniel | some people complained about “Portability” thing but I haven't found it | ||
am I blind or was it removed? | 19:46 | ||
19:46
colomon joined
|
|||
tbrowder | It was a suggestion, but not in a change. | 19:46 | |
AlexDaniel | ah | ||
timotimo | um ... how come we seem to decode utf16 just fine when utf8 is selected as encoding? | 19:47 | |
19:50
firstdayonthejob left
19:51
bazzaar joined
19:52
firstdayonthejob joined
|
|||
bartolin | timotimo: maybe not what you are looking at, but utf8-c8 is not supported with nqp-j (you have that in your commit) | 19:53 | |
timotimo | oh! | ||
yes, good point | |||
bartolin | nqp::setencoding($new-handle, "utf8-c8") # dies with 'Unsupported encoding utf8-c8' | 19:54 | |
tbrowder | unicode: Can anyone explain the extra white space associated with 0x1d452 in some renderings? | 19:55 | |
timotimo | i will catch that and give the original error instead. | ||
m: say uniname(0x1d452) | |||
camelia | rakudo-moar f7613f: OUTPUT«MATHEMATICAL ITALIC SMALL E» | ||
19:55
darutoko left
|
|||
timotimo | huh | 19:55 | |
no clue | |||
perhaps some library wrongly states that it's a wide character? | 19:56 | ||
twitter.com/loltimo/status/725413721921753089 | 19:58 | ||
[Coke] | .seen leont | 20:00 | |
yoleaux | I saw leont 24 Apr 2016 14:45Z in #perl6: * leont has lived with --std=c++11 for a while now, and wouldn't ever want to look back | ||
tbrowder | m: say uniname(0xff19) | 20:01 | |
camelia | rakudo-moar f7613f: OUTPUT«FULLWIDTH DIGIT NINE» | ||
dalek | c: 85b3f2b | (Tom Browder)++ | doc/Language/unicode_texas.pod: add some examples; format some text for ease of maintenance |
20:02 | |
c: 78c100c | (Tom Browder)++ | doc/Language/unicode_texas.pod: use Nd chars per AlexDaniel |
|||
c: d3d074d | (Tom Browder)++ | doc/Language/unicode_texas.pod: add reference to properties |
|||
c: b807a73 | (Tom Browder)++ | doc/Language/unicode_texas.pod: make changes per AlexDaniel and Zoffix |
|||
c: 097b496 | (Tom Browder)++ | doc/Language/unicode_texas.pod: Merge pull request #470 from tbrowder/master add some examples; format some text for ease of maintenance |
|||
grondilu | 455+ | ||
^ignore that, that was me trying to input a unicode character | 20:03 | ||
AlexDaniel | grondilu: does not look like a strong password | ||
grondilu still does not quite get the Alt+'+' method on windows | |||
timotimo | tbrowder: can you try the branch with my newest commits? | ||
MadcapJake | AlexDaniel: xD | 20:04 | |
tbrowder | timotimo: um, can you point me to it? this git collab with LOTS of players and action is a little new to me | 20:06 | |
timotimo | wait | 20:07 | |
sorry, it was bartolin who notified me, not ou | |||
sorry for the noise! | |||
bartolin: ^ please test my latest commit if it properly catches that exception | |||
RabidGravy | :-\ | ||
bartolin | timotimo: will do, though it will take a while :-) | 20:09 | |
timotimo | thank you!! | ||
tbrowder | AlexDaniel: the pull has built and the fresh page awaits: doc.perl6.org/language/unicode_texas | 20:14 | |
20:17
colomon left
|
|||
RabidGravy | tbrowder, looks good (leaving aside the default font in chrome means I can't actually see the unicode characters properly) | 20:18 | |
MadcapJake | Why is there a since column if it's got nothing in it? | ||
geekosaur | presumably for stuff added in e.g. 6.d? | 20:19 | |
AlexDaniel | let's fill it with 6.c then? | ||
MadcapJake | yeah agreed, seems bizarre that the whole column is empty | 20:20 | |
AlexDaniel | also, here are some weird things | ||
“as part of «» or .»” | 20:21 | ||
what is .» ? | |||
timotimo | hyper method calls | ||
AlexDaniel | ». then? | ||
timotimo | you can even type it .». | ||
but it really should be »., yeah | |||
AlexDaniel | but why would you | ||
and here's another one | |||
.« | |||
MadcapJake | also should it mention that those can also be wrapped around operators? | ||
timotimo | there's only ++«, not sure if you can put a . in between there | 20:22 | |
m: my Int @foo = <4 5 6>; ++.<<@foo; say @foo | |||
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/M2PDPyYqe8Unable to parse quote-words subscript; couldn't find right double-angle quoteat /tmp/M2PDPyYqe8:1------> 3 Int @foo = <4 5 6>; ++.<<@foo; say @foo7⏏5<EOL> expecting any of: …» | ||
timotimo | m: my Int @foo = <4 5 6>; ++<<@foo; say @foo | ||
camelia | rakudo-moar f7613f: OUTPUT«[5 6 7]» | ||
MadcapJake | maybe remove the since column and add `(added in 6.d)` in the remarks column if the need arises | ||
timotimo | m: my Int @foo = <4 5 6>; ++<<.@foo; say @foo | ||
camelia | rakudo-moar f7613f: OUTPUT«Invocant requires a type object of type Array[Int], but an object instance was passed. Did you forget a 'multi'? in block <unit> at /tmp/Gb6La8NWqf line 1» | ||
timotimo | turns out you can not. | ||
AlexDaniel | obviously notb | ||
not* | |||
tbrowder: are you taking notes? :) | 20:23 | ||
20:24
wu_ joined
|
|||
tbrowder | unicode_texas: I believe the remarks column needs real examples--any takers? | 20:24 | |
AlexDaniel | I don't think that examples are going to fit horizontally | ||
timotimo | don't put me in there! | 20:25 | |
wu_ | I wanted to run EVAL as: my $cmd="say 'hello'"; EVAL($cmd); But the EVAL gives error, though calling with string literally EVAL("say 'hello'") can success. How can the EVAL be used? | 20:27 | |
tbrowder | could we use the remarks column to reference an example following the list, or on a separate page? | 20:28 | |
RabidGravy | do what it tells you to do in the message | ||
AlexDaniel | tbrowder: it is also important to note that you can nest ‘’ “” and others | ||
m: say ‘hello ‘world’’ | |||
camelia | rakudo-moar f7613f: OUTPUT«hello ‘world’» | ||
bazzaar | \o | ||
github.com/perl6/DBIish/issues/63 | 20:29 | ||
timotimo | wu_: that's our "if you're really, really sure you want to use eval, you have to specify it at the beginning of your file" thing | ||
m: use MONKEY-SEE-NO-EVAL; my $text = "say 'hello'"; EVAL($text) | |||
camelia | rakudo-moar f7613f: OUTPUT«hello» | ||
timotimo | m: my $text = "say 'hello'"; EVAL($text) | 20:30 | |
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/LzVFsyGYVwEVAL is a very dangerous function!!! (use MONKEY-SEE-NO-EVAL to override,but only if you're VERY sure your data contains no injection attacks)at /tmp/LzVFsyGYVw:1------> 3my $text = "say …» | ||
timotimo | ^- wu_ see the difference? | ||
tbrowder | AlexDaniel: I just started this exercise to make a better-looking table; I don't know enough about the fancy operators and unicodes to detect many errors | ||
wu_ | timotimo thanks, I will try. | ||
AlexDaniel | tbrowder: well, you can always ask something here and people will jump in trying to help | 20:31 | |
20:31
dolmen joined
|
|||
tbrowder | AlexDaniel: ...and in my case, I don't intend to use much of unicode (if any) for math or operators | 20:31 | |
20:32
cdg joined
|
|||
AlexDaniel | tbrowder: the problem is that these answers are usually not suitable for docs :) | 20:32 | |
tbrowder: sure, but you're doing a great job there ;) | |||
tbrowder | but what do you think about making examples following the lists? or on another page? I'm happy to start either and get help from you all | ||
AlexDaniel | tbrowder: set operators have separate pages | 20:33 | |
e.g. doc.perl6.org/routine/%E2%8A%86 | |||
tbrowder | from my Perl journey so far, I think there are many places that need real examples | ||
AlexDaniel | some constants are documented here: doc.perl6.org/language/terms#Identifier_terms | 20:34 | |
tbrowder | AlexDaniel: then a reference to those pages might be the answer | ||
AlexDaniel | tbrowder: yes | 20:35 | |
tbrowder | I'll see what I can do | ||
AlexDaniel | but note that doc.perl6.org/routine/%CF%84 has nothing… which has to be fixed | ||
perhaps you should just duplicate this: doc.perl6.org/routine/tau | 20:36 | ||
∘ is not documented! | 20:37 | ||
wu_ | can require rename imported symbols? Suppose I have two scripts files, both export a same class name, I want to use as: require "abs_file_one_path.p6" <MyClass> and require "abs_file_two_path.p6<MyClass>; of cause, the second MyClass should be alias to another name? | ||
20:38
colomon joined
|
|||
AlexDaniel | tbrowder: yeah, after looking at it again I think that every thing has to have it's own page | 20:40 | |
well, maybe not every, but most of them | |||
tbrowder: superscripts should probably be mentioned here: doc.perl6.org/routine/** | 20:41 | ||
tbrowder: × and ÷ must probably have their own pages to be searchable | 20:42 | ||
oh, actually it looks like there is a way to make stuff searchable without creating a separate page | 20:43 | ||
20:43
fhorck joined
20:44
colomon left
|
|||
AlexDaniel | tbrowder: it may be a significant amount of work but it will be highly appreciated, I'm sure | 20:44 | |
RabidGravy | wu_, in short no | 20:45 | |
20:45
bitmap left
20:46
bitmap joined
|
|||
AlexDaniel | tbrowder: perhaps you can start by linking to stuff that already exists | 20:46 | |
timotimo | wu_, RabidGravy: though you can use constant FooClass = do { require ... }, i think | 20:47 | |
tbrowder | AlexDaniel: it sounds like a good project, and I'll put it on my TODO list, but I really would like to fix the pod parsing so pod codes are usable inside table cells. | ||
fhorck | \1 | ||
timotimo | fhorck: in perl6, you'd always use "$0" for that | ||
RabidGravy | timotimo, yeah that's why I said "in short" ;-p | ||
wu_ | after calling "use MONKEY-SEE-NO-EVAL;" I can call EVAL on embedded code. How can I later disable the pragma to restore the safety? | 20:48 | |
bartolin | timotimo: I was able to build nqp-j (and rakudo-j) from your branch. should I test something else? | ||
AlexDaniel | no MONKEY-SEE-NO-EVAL ? | ||
RabidGravy | yeah | ||
AlexDaniel | m: no MONKEY-SEE-NO-EVAL | ||
camelia | ( no output ) | ||
wu_ | RabidGravy: thanks, I will have a test on using FooClass = do {require ...} | ||
RabidGravy | it's also lexical in effect so keeping it within a small scope is good | 20:49 | |
timotimo | wu_: don't forget the "constant" in front, or alternatively "my \FooClass = ", note the \ | ||
AlexDaniel: clearly we have to add MONKEY-SEE-EVAL | |||
:P | |||
RabidGravy | obPixiesReference | 20:50 | |
timotimo | and the devil is six? | 20:53 | |
RabidGravy | well MONKEY-GONE-TO-HEAVEN | ||
grondilu | a travis build for one of my module with this message: | 20:54 | |
/home/travis/build.sh: line 45: perl6: command not found | |||
wu_ | RabidGravy: can you please give an full example on constant FooClass = do { require ... }, | ||
thanks. | |||
20:54
bazzaar left
20:55
colomon joined
|
|||
wu_ | RabidGravy: what I have tested is to show the FooClass is actually the filename str. | 20:55 | |
RabidGravy | yeah, I think that is possibly correct | 20:56 | |
'ang on | 20:57 | ||
20:57
sortiz joined
|
|||
timotimo | oh, in that case it'd have to be | 20:57 | |
do { require "blah blah" <FooClass>; FooClass } | 20:58 | ||
sortiz | \o #perl6 | ||
timotimo | yo sortiz, how are you doing? | ||
sortiz | timotimo, Fine, thanks, fixing DBIish #62 :-) | ||
timotimo | wait, what? | 20:59 | |
you must have me confused with someone else | |||
21:00
firstdayonthejob left,
uruwi left
|
|||
wu_ | timotimo: thanks | 21:01 | |
sortiz | "timotimo> yo sortiz, how are you doing?" just answering. | 21:02 | |
timotimo | oh! | ||
grondilu | chmod -- 755 /home/travis/.rakudobrew/moar-nom/install/bin/perl6-m | ||
tools/build/create-moar-runner.pl "/home/travis/.rakudobrew/moar-nom/install/bin/moar" perl6.moarvm /home/travis/.rakudobrew/moar-nom/install/bin/perl6-gdb-m "/home/travis/.rakudobrew/moar-nom/install/share/perl6/runtime" "gdb" "/home/travis/.rakudobrew/moar-nom/install/share/nqp/lib" "/home/travis/.rakudobrew/moar-nom/install/share/perl6/lib" "/home/travis/.rakudobrew/moar-nom/install/share/perl6/runtime" | |||
timotimo | i read "thanks for fixing DBIish #62" | ||
grondilu | sh: 1: tools/build/create-moar-runner.pl: Permission denied | ||
make: *** [m-install] Error 126 | |||
is there something wrong with travis? | |||
timotimo | grondilu: create-moar-runner flip-flopped between a perl6 version and a perl5 version today | ||
grondilu | ok | 21:03 | |
dalek | Iish/data-sets: 120c3d1 | (Salvador Ortiz)++ | / (3 files): Pg: Make sure all connection params are Str Closes #62, bazzaar++ for the report |
||
21:04
skids left
|
|||
timotimo | hmm, shouldn't it read the port from the environment, too? | 21:04 | |
21:05
pmurias left,
wu_ left
|
|||
[Coke] | our "make" doesn't do a good job of detecting when you have to regen config | 21:06 | |
timotimo | that, too | ||
but that shouldn't cause trouble with travis, should it? | |||
because it always does it from scratch? | |||
21:07
jjido joined
21:08
sufrostico left,
adu left
|
|||
sortiz | I'm seeing an issue whit travis-ci: "rakudobrew: No vesion set. The command "rakudobrew build-panda" failed and exited with 1 during ." | 21:11 | |
s/whit/with/ | 21:13 | ||
21:14
colomon left
|
|||
RabidGravy | eugh | 21:14 | |
21:14
jjido left
21:15
jjido joined
|
|||
sortiz | The error with travis-ci in only with "latest", '2016-01' works without problems. | 21:16 | |
21:16
firstdayonthejob joined
|
|||
RabidGravy | that may be what grondilu was alluding to above | 21:16 | |
as it has been working fine most of the day | 21:17 | ||
21:19
jjido left,
sufrostico joined
21:24
_28_ria left
21:26
firstdayonthejob left
21:29
TEttinger joined
21:35
rindolf left
|
|||
RabidGravy | ah yes "sh: tools/build/create-moar-runner.pl: Permission denied" | 21:35 | |
sortiz | Yep, seems to be same problem: At the end of the MoarVM build, the install fails, so no perl6 installed. | 21:36 | |
timotimo | so we ought to revert the revert? | 21:38 | |
21:38
_28_ria joined
|
|||
RabidGravy | it might be the reversion failed to reset the permissions on the file or something | 21:41 | |
timotimo | huh | 21:43 | |
could be; wanna try? | |||
RabidGravy | ah, got it | ||
21:43
leont_ joined
|
|||
RabidGravy | the first time it calls it, it does so with the path to the perl5 the second time it doesn't | 21:44 | |
timotimo | aaah! | ||
21:44
colomon joined
|
|||
RabidGravy | specifically for the perl6-gdb-m target | 21:45 | |
so actually the third time | |||
but on the bright side you are actually left with a working rakudo, just not a perl6-gdb-m (or anything else that might come after that) | 21:49 | ||
dalek | c/hash-block: 496ec07 | (Dabrien 'Dabe' Murphy)++ | doc/ (2 files): Incorporate feedback re: idiomaticity zoffixznet++ ab5tract++ |
21:51 | |
Xliff | m: say 1e-1 == 0.1e0 | ||
camelia | rakudo-moar f7613f: OUTPUT«True» | ||
RabidGravy | is idiomaticity even a thing? | ||
timotimo | it is now | 21:52 | |
21:52
colomon left
21:53
colomon joined
21:56
nd3i joined
|
|||
RabidGravy | actually regarding the make install not working, it's rather odd as it appears to be correct in the Makefile | 21:56 | |
$(PERL5) tools/build/create-moar-runner.pl "$(MOAR)" perl6.moarvm perl6-gdb-m . "gdb" "$(M_LIBPATH)" . | |||
timotimo | does any of that get unset/reset over the course of make going its course? | 21:57 | |
21:57
travis-ci joined
|
|||
travis-ci | Doc build errored. Dabrien 'Dabe' Murphy 'Incorporate feedback re: idiomaticity | 21:57 | |
travis-ci.org/perl6/doc/builds/126231204 github.com/perl6/doc/compare/0712b...6ec0768d62 | |||
21:57
travis-ci left
|
|||
RabidGravy | or PERL5 isn't actually set at all | 21:57 | |
ah no | 21:58 | ||
it actually does "$(PERL) tools/build/create-moar-runner.pl "$(MOAR)" perl6.moarvm $(DESTDIR)$(PREFIX)/bin/perl6-gdb-m "$(PERL6_LANG_DIR)/runtime" "gdb" "$(M_LIBPATH)" "$(PERL6_LANG_DIR)/lib" "$(PERL6_LANG_DIR)/runtime"" | 21:59 | ||
in another place which is the actual target that is causing the problem | |||
yeah in the m-install target | 22:00 | ||
So if someone has commit in rakudo is lines 274 and 275 of Configure.pl need s/PERL/PERL5/ | 22:02 | ||
sortiz | $(PERL) vs $(PERL5) | ||
Xliff | Right... now generated .ogg file contains vorbis data but data is still borked from equivalent C code. *sigh* | 22:05 | |
timotimo | Xliff: you could try to run it under valgrind to see if you're overflowing some buffers or something | 22:06 | |
Xliff | timotimo++, thanks! I'll keep that in mind. | ||
However the header data was broken by a badly transliterated "last if $ret != 0" when it should have been "last if $ret == 0" | 22:07 | ||
timotimo | if you're on a system that doesn't have valgrind, there's also this "drmemory" thing that also works on windows for example | ||
Xliff | So I'm not ruling out logic errors at this point. | ||
timotimo | and is allegedly a whole lot faster than valgrind is | ||
Xliff | No. I have my VM. \) | ||
=) too | |||
timotimo | 'k | ||
22:07
sufrostico left
|
|||
Xliff | BUT -- I might be able to release a v0.0.1 version of Audio::OggVorbis to the ecosystem. over the weekend. | 22:08 | |
I just need to solve this one, last, pesky problem. | |||
22:09
Lixquid left
|
|||
timotimo | cool :) | 22:09 | |
RabidGravy | cool | 22:11 | |
Xliff | The "ogg_packet" is interpreted as NULL right --> "vorbis_analysis($vb, ogg_packet);" | 22:19 | |
RabidGravy | if that's a type object yeah | ||
Xliff | ogg_packet is "class ogg_packet repr('CStruct') {…}" | ||
RabidGravy | yeah that should be fine (if the omission of the 'is' above is just an artefact of copying) | 22:20 | |
Xliff | Well. Taking a break then. I don't know why I get more data rounds out of the P6 code than I do out of the C code. It must be something I'm doing. | ||
Yes. Is omitted coz... FAT FINGERS! | 22:21 | ||
22:21
khw joined
|
|||
Xliff | When dealing with bugs like this, I find it is better to take frequent breaks and get mind off subject and then come back to tackle it. | 22:21 | |
22:21
ZoffixLappy joined
|
|||
Xliff | Solved header issues, that way. | 22:21 | |
timotimo | mhm | 22:22 | |
dalek | Iish: f07d94e | (Salvador Ortiz)++ | / (3 files): Pg: Make sure all connection params are Str Closes #62, bazzaar++ for the report |
22:23 | |
Iish: 03a6b22 | (Salvador Ortiz)++ | .travis.yml: travis-ci: Test env vars |
|||
Xliff | Although P6 header writes out 3574 bytes instead of C's 3573. | 22:24 | |
Wonder how that happened. | |||
RabidGravy | off by one copying a buff or array to the CArray> | 22:25 | |
Xliff | No. Those values come from libvorbis. | ||
That data doesn't hit a CArray until right before the...write. | |||
22:26
dolmen left
|
|||
Xliff | I've checked all of the reprs used and their nativesizeof matches C's sizeof, so we are good there. | 22:26 | |
22:29
Sgeo joined
|
|||
Xliff | HAH! Mystery solved. My vorbis comment was one character larger than the original. | 22:30 | |
Well, at least for the header size difference. | 22:31 | ||
22:32
leont_ left
|
|||
ZoffixLappy | m: class BetterInt is Int { method even { self %% 2 } }; my BetterInt $x = 42; | 22:33 | |
camelia | rakudo-moar f7613f: OUTPUT«Type check failed in assignment to $x; expected BetterInt but got Int (42) in block <unit> at /tmp/mTbvCFQjSm line 1» | ||
22:33
leont_ joined
|
|||
ZoffixLappy | Is there any possible way to make it work? But which I mean for it to somehow recognize that given value is an Int that it can operate on? I tried redefining method new() but that didn't do anything | 22:34 | |
sortiz | Setting a proper PERL environment variable let the travis-ci build pass. RabidGravy++ for diagnose. | ||
timotimo | ZoffixLappy: you just have to box a native int into the BetterInt | 22:36 | |
Xliff | Wow! perl version of encoder throws out COMPLETELY random data. | ||
*Sigh* | |||
timotimo | m: use nqp; class BetterInt is Int { method even { self %% 2 } }; my BetterInt $x = nqp::box_I(42, BetterInt); | ||
camelia | rakudo-moar f7613f: OUTPUT«===SORRY!===No registered operation handler for 'box_I'» | ||
timotimo | m: use nqp; class BetterInt is Int { method even { self %% 2 } }; my BetterInt $x = nqp::box_i(42, BetterInt); | ||
camelia | ( no output ) | ||
timotimo | m: use nqp; class BetterInt is Int { method even { self %% 2 } }; my BetterInt $x = nqp::box_i(42, BetterInt); say $x; say $x.WHAT | ||
camelia | rakudo-moar f7613f: OUTPUT«42(BetterInt)» | ||
RabidGravy | yeah I couldn't work out where the PERL stopped being defined, it wasn't in the commit that was reverted | ||
ZoffixLappy | eh... that's not user-friendly | ||
timotimo | yah | ||
ZoffixLappy | I kinda came up with: my BetterInt $x .= new: 42; $x .= new: 71; seems passable | 22:37 | |
RabidGravy | ZoffixLappy, wouldn't it be easier to either make it a role or an augment | 22:40 | |
timotimo | probably would be easier with a role, but noooo don't augment :) | 22:41 | |
ZoffixLappy | A role? the $x = 42 but role {... } ? | ||
timotimo | yeah | 22:42 | |
RabidGravy | yeah | ||
timotimo | yeah | ||
ZoffixLappy | yeah! | ||
:D | |||
RabidGravy | who do we think we are? the beatles or something? | ||
22:43
leont_ left
|
|||
ZoffixLappy | :) | 22:43 | |
timotimo | well, i'm certainly not beatless at the moment | ||
wamba | m: -> Numeric @a { say @a }([1,2]) | 22:52 | |
camelia | rakudo-moar f7613f: OUTPUT«Type check failed in binding @a; expected Positional[Numeric] but got Array ($[1, 2]) in block <unit> at /tmp/CPTIJInq8t line 1» | ||
22:55
skids joined
|
|||
RabidGravy | yes it is literal about the type constraints if poistionals | 22:56 | |
ZoffixLappy | wamba, "Numeric @a" does not mean "array that contains only Numerics" | ||
grondilu | m: sub (@a where .all ~~ Numeric) { say @a }([1, 2]) | 22:58 | |
camelia | rakudo-moar f7613f: OUTPUT«[1 2]» | ||
grondilu | m: sub (Numeric @a) { say @a }(my Numeric @ = [1, 2]) | ||
camelia | rakudo-moar f7613f: OUTPUT«[1 2]» | ||
RabidGravy | yeah | 22:59 | |
it uses the .of of the container | |||
ZoffixLappy | Well, I'm not exactly right... *in signature* it doesn't EXACTLY mean that... | 23:01 | |
m: my Numeric @x = 1, 2; -> Numeric @a { say @a }( @x ) | |||
camelia | rakudo-moar f7613f: OUTPUT«[1 2]» | ||
ZoffixLappy | In declaration it does, and that's what it'd expect in signature | ||
timotimo | m: my Numeric @a; say @a.VAR.WHAT | ||
camelia | rakudo-moar f7613f: OUTPUT«(Array[Numeric])» | ||
grondilu did not know we can type parameters in a pointy block | 23:02 | ||
timotimo | ah, yes, that'll give you Array, not Positional. but since Array does Positional, that's fine | ||
grondilu: you can even give a return type annotation for a pointy block | |||
grondilu: on top of that, sub-signatures also work, but you probably already knew about those | |||
hmm | |||
grondilu: did i talk to you about the particle system? or only about the white noise thing? | |||
grondilu | I vaguely remember about the white noise. | 23:03 | |
23:03
nd3i left
|
|||
timotimo | ah, ok | 23:03 | |
well, i also made a little particle system based on SDL2::Raw's function that takes an int array of positions and draws points there | 23:04 | ||
and by replacing pretty much every single thing ever with an nqp op, i got a very decent framerate out of it; at least compared to what rakudo with "naive" code can do | |||
it's in the SDL2::Raw repo in a branch, if you're interested | |||
i'll be AFK now | |||
23:05
xenowoolfy joined
23:06
liztormato joined,
geekosaur left,
geekosaur joined
|
|||
grondilu | Do I need XWindow to run SD2::Raw? | 23:07 | |
wamba | ok thanks, Thus, i can use "where .all ~~ Numeric". | ||
grondilu | I currently have two machines: a windows 10 one and a Pi with no X | ||
ZoffixLappy | m: class Int is Int { method even { self %% 2 } } | ||
camelia | rakudo-moar f7613f: OUTPUT«===SORRY!===P6opaque: must compose before allocating» | ||
grondilu | Not sure I can use SDL2 then | ||
ZoffixLappy | m: class Int is CORE::Int { method even { self %% 2 } } | ||
camelia | rakudo-moar f7613f: OUTPUT«===SORRY!===Could not locate compile-time value for symbol CORE::Int» | ||
grondilu | I certainly would love to try graphics stuff in Perl 6 | 23:08 | |
ZoffixLappy | Is there anyway to make that work? Re-define an Int lexically instead of messing with ^augment? | ||
23:08
sufrostico joined
|
|||
grondilu | wamba: consider making a subset. subset Vector of Array where .all ~~ Numeric. | 23:08 | |
xenowoolfy | I hope all is well. | 23:09 | |
grondilu | ZoffixLappy: use MONKEY-TYPING | ||
oh wait | |||
yeah, MONKEY-TYPING will do | 23:10 | ||
just use augment, it's not that dirty. | |||
23:10
xenowoolfy left
23:11
liztormato left,
kid51 joined
|
|||
grondilu | m: { my class Int is Int {} } | 23:11 | |
camelia | ( no output ) | ||
grondilu | m: { my class Int is Int { method even { self %% 2 } }; say 4.even } | ||
camelia | rakudo-moar f7613f: OUTPUT«===SORRY!===P6opaque: must compose before allocating» | ||
grondilu | wow never seen this one | ||
ZoffixLappy | grondilu, but it affects ALL Ints,, doesn't it? | 23:12 | |
grondilu | it does | ||
ZoffixLappy | Well, that's why it's evil :) And I'm exploring something other than augment | ||
grondilu | m: { use MONKEY-TYPING; augment class Int { method talk { say "hi" } }; 4.talk; } 5.talk | ||
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Q0W6_oH3rYStrange text after block (missing semicolon or comma?)at /tmp/Q0W6_oH3rY:1------> 3 { method talk { say "hi" } }; 4.talk; }7⏏5 5.talk expecting any of: infix i…» | ||
grondilu | m: { use MONKEY-TYPING; augment class Int { method talk { say "hi" } }; 4.talk; }; 5.talk | 23:13 | |
camelia | rakudo-moar f7613f: OUTPUT«hihi» | ||
23:13
adu joined
|
|||
grondilu | indeed it affects everything | 23:13 | |
ZoffixLappy | Yeah... JavaScript folks would love it :P | ||
grondilu | I've never successfully inherited anything from a core class. It usually doesn't work well. | 23:14 | |
ZoffixLappy | I wonder if it'd be possible to use `temp` to localize CORE:: and swap the Int in it with your custom Int.... | 23:18 | |
m: CORE::<Int> = class :: is Int { method even { self %% 2 } }; | 23:19 | ||
camelia | rakudo-moar f7613f: OUTPUT«Cannot modify an immutable Int in block <unit> at /tmp/hUckoj4kHq line 1» | ||
ZoffixLappy | Oh well | ||
grondilu | you can define even as a sub and use the .& notation. | 23:20 | |
wamba | graodilu: ye, its good idea, but i try this and it do not work same. Directly write works, but make Vector fails with expected Positional[Array] but got Array ($[1]) | ||
ZoffixLappy | grondilu++ thanks. That's a good idea to include in my article! | ||
grondilu | wamba: it should work fine | 23:21 | |
23:21
hotel joined
|
|||
grondilu | wamba: what do you mean by "make Vector"? | 23:25 | |
m: subset Vector of Array where .all ~~ Numeric; my Vector @a = rand xx 4; | |||
camelia | rakudo-moar f7613f: OUTPUT«Type check failed in assignment to @a; expected Vector but got Num (0.237613331200051e0) in block <unit> at /tmp/TjWySHY08M line 1» | ||
hotel | I'm getting this error when running make install for rakudo, any ideas why? gist.github.com/HotelCalifornia/5a...d21bf24420 | ||
grondilu | oh I see | ||
23:25
tardisx joined
|
|||
grondilu | m: subset Vector of Array where .all ~~ Numeric; my Vector $a = rand xx 4; | 23:25 | |
camelia | rakudo-moar f7613f: OUTPUT«Type check failed in assignment to $a; expected Vector but got List ($(0.853054247658877e0...) in block <unit> at /tmp/ffRnDr3WP1 line 1» | ||
grondilu | m: subset Vector of Array where .all ~~ Numeric; my Vector $a = [rand xx 4]; | ||
camelia | ( no output ) | ||
wamba | m: subset Vector of Array where .all ~~ Numeric; sub rotate_sum ( Vector @a is copy, NaturalNumber $n ) { @a.prepend: 0 xx $n; [Z+] @a, { .rotate } ... { .[0] != 0 } ;} say (1,2).&rotate_sum(2); | ||
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/g6rFflotQfInvalid typename 'NaturalNumber' in parameter declaration.at /tmp/g6rFflotQf:1------> 3e_sum ( Vector @a is copy, NaturalNumber7⏏5 $n ) { @a.prepend: 0 xx $n; [Z+] @» | ||
grondilu | you just have to be careful, but it works fine | ||
wamba | m: subset Vector of Array where .all ~~ Numeric; sub rotate_sum ( Vector @a is copy, $n ) { @a.prepend: 0 xx $n; [Z+] @a, { .rotate } ... { .[0] != 0 } ;} say (1,2).&rotate_sum(2); | ||
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/af0sa2tUNgStrange text after block (missing semicolon or comma?)at /tmp/af0sa2tUNg:1------> 3+] @a, { .rotate } ... { .[0] != 0 } ;}7⏏5 say (1,2).&rotate_sum(2); expecting any of: …» | ||
grondilu | 'Vector @a' means for instance an array of vectors | ||
it's not a vector named @a | |||
you must write 'Vector $a' if you meant a single vector | |||
and you must affect an array to it, not a list | |||
so you need the [] | |||
hotel | funny that a single vector should be considered a $calar | ||
grondilu | makes total sense imho | ||
hotel | not mathematically, lol | 23:26 | |
grondilu | even mathematically. | ||
RabidGravy | tum ti tum | ||
grondilu | don't assimilate a vector to its coordinates. | ||
hotel | iirc, a vector is composed of a scalar magnitude and a direction, no? | ||
grondilu | that's one way to sumarize it. But truly a vector is something that can be added to an other vector or multiplied by a scalar. | 23:27 | |
RabidGravy | toodles | 23:28 | |
23:28
fhorck left
|
|||
ZoffixLappy | bye | 23:28 | |
hotel | hm | ||
I sit corrected | |||
hotel is but young | |||
grondilu | but frankly I think Perl 6's keyword "Scalar" to designate variables with a $ sigil is unfortunate. | 23:30 | |
hotel | so, does anyone know why running make install for rakudo should give this error? gist.github.com/HotelCalifornia/5a...d21bf24420 | ||
grondilu | hotel: current issues with rakudo. Being studied I think. | 23:31 | |
see backlog | |||
hotel | interesting | ||
23:32
RabidGravy left
|
|||
hotel | think it's fixed in 2016.04? | 23:33 | |
grondilu | dunno | ||
everything worked fine this moring so. | |||
*morning | |||
hotel | hm, guess I'll try it with that then | 23:35 | |
arnsholt | grondilu: What is it you don't like with the name Scalar? | 23:36 | |
grondilu | it collides with the mathematical meaning imho | 23:38 | |
though tbh I remember it used to bother me but now it does not anymore. | |||
23:39
leont_ joined
|
|||
ZoffixLappy | grondilu, not really, if you realize its contents IS an object :P | 23:39 | |
...even if that object has multiple things | |||
grondilu | well I'm not the one who pointed out the irony of having to store a Vector into a Scalar variable. | ||
ZoffixLappy | :D | 23:40 | |
23:44
BenGoldberg joined
23:46
zwu joined
|
|||
ZoffixLappy | m: use MONKEY-TYPING; augment class Numeric { method even { self.Int %% 2 } } | 23:46 | |
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/kLdy3TEDFZCannot augment Numeric because it is closedat /tmp/kLdy3TEDFZ:1------> 3use MONKEY-TYPING; augment class Numeric7⏏5 { method even { self.Int %% 2 } } expecting any of: g…» | ||
ZoffixLappy | Closed? Is there a way to re-open it? | 23:47 | |
Hm, it's a role... nm... I should choose something else for my current purposes (though, if there's an answer, I'll gladly learn) | |||
grondilu | m: use MONKEY-TYPING; augment role Numeric { method even { self.Int %% 2 } } | ||
camelia | rakudo-moar f7613f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/DEL9KqvlJfCannot augment Numeric because it is closedat /tmp/DEL9KqvlJf:1------> 3use MONKEY-TYPING; augment role Numeric7⏏5 { method even { self.Int %% 2 } } expecting any of: ge…» | ||
grondilu | can you summarize what you want to do? | 23:48 | |
tbrowder | doc: Travis is failing, and I don't think it's my pull request... | ||
grondilu | and why defining an Even subset or an is-even sub would do? | 23:49 | |
ZoffixLappy | grondilu, make method .even available for all types that are Numeric | ||
grondilu, "would do"? If you meant "won't do", it's because I'm writing an article and want to explore all options (and learn myself) | |||
sortiz | tbrowder, Yep, is a rakudo problem. | ||
grondilu | m: use MONKEY-TYPING; augment class Any { method even(Numeric:) { self.Int %% 2 } } | 23:50 | |
camelia | ( no output ) | ||
grondilu | m: use MONKEY-TYPING; augment class Any { method even(Numeric:) { self.Int %% 2 } }; say pi.even | ||
camelia | rakudo-moar f7613f: OUTPUT«Method 'even' not found for invocant of class 'Num' in block <unit> at /tmp/EygckIDT7S line 1» | ||
ZoffixLappy | m: say pi.WHAT | ||
camelia | rakudo-moar f7613f: OUTPUT«(Num)» | ||
grondilu | isn't a Num and Any? | ||
ZoffixLappy | m: use MONKEY-TYPING; augment class Any { method even(Numeric:) { self.Int %% 2 } }; Num.^compose; say pi.even | ||
camelia | rakudo-moar f7613f: OUTPUT«False» | ||
ZoffixLappy | You have to re-compose all the children. | 23:51 | |
grondilu | oh, I did not know about that. | ||
23:51
esh joined
|
|||
ZoffixLappy | s/children/descendants/; | 23:51 | |
BenGoldberg | One would think that MONKEY-TYPING, besides providing an 'augment' keyword, would also provide a means to re-compose all of a class's children, perhaps automatically. | 23:54 | |
ZoffixLappy | Impossibru. You can have anonymous classes that inherit from the augmented type | 23:55 | |
Hm | |||
Unless they're listed somewhere in namespaces... At least when I wanted to write Evil.pm6 that would do just that, I was told it was impossible | 23:56 | ||
m: say xBD %% 2 | |||
camelia | rakudo-moar f7613f: OUTPUT«False» | ||
23:56
synopsebot6 left,
synopsebot6 joined
|
|||
zwu | If two scripts defined classes with same name and export them, for example MyClass in T1.pm6 and MyClass in T2.pm6. I cannot using require "file_T1.pm6" <MyClass> and require "file_T2.pm6 " <MyClass> | 23:57 | |
even when I tried constant T1MyClass = do { require ... <MyClass> } and constant T2MyClass = do {require ... <MyClass>} | 23:58 | ||
ZoffixLappy | zwu, what do you expect the result to be, when there's an obvious name clash? | ||
zwu | the error returns is P6M Merging Global symbols failed: duplicate definitioin of symbol MyClass | ||
ZoffixLappy | Aye... I recall someone else today had the same error. | ||
zwu | that | ||
that's me, was wu_ | 23:59 | ||
ZoffixLappy | Ah | ||
ZoffixLappy has no solution :( | |||
sortiz | zwu, if the classes are our, you can use both by the full name: T1::MyClass and T2::MyClass. | ||
BenGoldberg | Write a custom exporter, so that classes are lexically exported, just like subs. |