»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by masak on 28 November 2015.
timotimo computer is back! 00:02
dalek c: 809fde6 | ab5tract++ | doc/Type/Hash.pod:
Make the example work for more than two instants
00:03 kid51 joined 00:06 cpage_ joined
lizmat jdv79: three letters SW7 00:06
it was nice, it was 3D, it had a lot of action, and felt like a re-imagination of SW4 to me 00:07
timotimo i sure hope my blog post text isn't gone now ... 00:09
it's still there \o/ 00:12
lizmat :-)
timotimo hm, i didn't check exactly how far our sized and signedness support for lexicals and such has come 00:15
m: my int8 $foo = 10000; say $foo;
camelia rakudo-moar cfb1f3: OUTPUT«16␤»
timotimo ah, neat.
m: my int8 $foo = -1; my uint8 $bar = -1; say $foo; say $bar;
camelia rakudo-moar cfb1f3: OUTPUT«-1␤255␤»
00:17 davercc` joined 00:18 kid51 left 00:19 kid51 joined 00:20 rurban_ left
timotimo .u two 00:20
yoleaux U+0012 DEVICE CONTROL TWO [Cc] (␒)
U+0032 DIGIT TWO [Nd] (2)
ab6tract m: my $x = 'hitchhikers'; my %answers := :{ $x => 42 }; for %answers.keys -> $k is rw { $k = 'not-' ~ $k } 00:21
camelia rakudo-moar cfb1f3: OUTPUT«Parameter '$k' expected a writable container, but got Str value␤ in block <unit> at /tmp/5kYyd3vXvc:1␤␤»
timotimo .u three
yoleaux U+0013 DEVICE CONTROL THREE [Cc] (␓)
U+0033 DIGIT THREE [Nd] (3)
timotimo oh lord.
how many of those are there ...
m: (128 .. 0x1000).grep( .uniname ~~ / DIGIT / ).map( .chr.say ) 00:22
camelia rakudo-moar cfb1f3: OUTPUT«Method 'uniname' not found for invocant of class 'Any'␤ in block <unit> at /tmp/FbmBulbwSl:1␤␤»
ab6tract so .keys doesn't seem to fully respect object hashes...
timotimo m: (128 .. 0x1000).grep( .&uniname ~~ / DIGIT / ).map( .chr.say )
camelia rakudo-moar cfb1f3: OUTPUT«Cannot call uniname(Any); none of these signatures match:␤ (Str:D $str)␤ (Int:D $code)␤ in block <unit> at /tmp/zsI0FOPjdh:1␤␤»
timotimo huh, what am i doing wrong here?
m: (128 .. 0x100).grep( * < 20)
camelia ( no output )
timotimo m: (128 .. 0x100).grep( * < 20).say
camelia rakudo-moar cfb1f3: OUTPUT«()␤»
timotimo m: (128 .. 0x100).grep( * < 2000).say
camelia rakudo-moar cfb1f3: OUTPUT«(128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191…»
timotimo m: (128 .. 0x100).grep( *.uniname ).say
camelia rakudo-moar cfb1f3: OUTPUT«(130 131 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195…»
flussence m: (128 .. 0x1000).grep({ .uniname ~~ / DIGIT / }).map( .chr.say ) 00:23
timotimo m: (128 .. 0x100).map( *.uniname ).say
camelia rakudo-moar cfb1f3: OUTPUT«Method 'chr' not found for invocant of class 'Any'␤ in block <unit> at /tmp/OpeNS4z5OV:1␤␤»
timotimo oh, duh
thank you, flussence :)
flussence I got it wrong the other day too :)
00:23 protium left
timotimo i was operating on the completely wrong $_ 00:23
i feel really tired and i must finish that blog post :)
m: (128 .. 0x1000).grep( *.&uniname ~~ / DIGIT / ).map( .chr.say )
camelia rakudo-moar cfb1f3: OUTPUT«WhateverCode object coerced to string (please use .gist or .perl to do that) in block <unit> at /tmp/1WW15xDpwT:1␤Method 'chr' not found for invocant of class 'Any'␤ in block <unit> at /tmp/1WW15xDpwT:1␤␤»
timotimo %)
m: (128 .. 0x1000).grep({ .uniname ~~ / DIGIT / }).map( .chr.say )
camelia rakudo-moar cfb1f3: OUTPUT«Method 'chr' not found for invocant of class 'Any'␤ in block <unit> at /tmp/1gwqf29BIJ:1␤␤»
timotimo m: (128 .. 0x1000).grep({ .uniname ~~ / DIGIT / }).map( *.chr.say ) 00:24
camelia rakudo-moar cfb1f3: OUTPUT«٠␤١␤٢␤٣␤٤␤٥␤٦␤٧␤٨␤٩␤۰␤۱␤۲␤۳␤۴␤۵␤۶␤۷␤۸␤۹␤ݳ␤ݴ␤ݵ␤ݶ␤ݷ␤ݸ␤ݹ␤ݺ␤ݻ␤ݼ␤ݽ␤߀␤߁␤߂␤߃␤߄␤߅␤߆␤߇␤߈␤߉␤०␤१␤२␤३␤४␤५␤६␤७␤८…»
timotimo m: (128 .. 0x1000).grep({ .uniname ~~ / DIE / }).map( *.chr.say )
camelia ( no output )
timotimo m: (128 .. 0x1000).grep({ .uniname ~~ / DICE / }).map( *.chr.say )
camelia ( no output )
timotimo where them die at
.u dice
yoleaux No characters found
timotimo .u die
yoleaux U+2680 DIE FACE-1 [So] (⚀)
U+2681 DIE FACE-2 [So] (⚁)
U+2682 DIE FACE-3 [So] (⚂)
timotimo there they are
00:24 raiph left
timotimo m: say +⚂ 00:24
camelia rakudo-moar cfb1f3: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dmFiSBa72B␤Prefix + requires an argument, but no valid term found␤at /tmp/dmFiSBa72B:1␤------> 3say +7⏏5⚂␤ expecting any of:␤ prefix␤»
timotimo m: say +"⚂"
camelia rakudo-moar cfb1f3: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5⚂' (indicated by ⏏)␤ in block <unit> at /tmp/KW6A8aJ2nd:1␤␤Actually thrown at:␤ in block <unit> at /tmp/KW6A8aJ2nd:1␤␤»
timotimo ah, symbol/other doesn't do it
too bad :)
flussence m: say '⚀'.unival 00:25
camelia rakudo-moar cfb1f3: OUTPUT«NaN␤»
timotimo m: say ٦ + ݺ
camelia rakudo-moar cfb1f3: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ABhEg0IOda␤Undeclared routine:␤ ݺ used at line 1␤␤»
timotimo oh, damn!
i forgot the unicode consortium didn't put values to them
m: (128 .. 0x1000).grep({ .uniname ~~ / DICE / }).map( *.uniprop ).Bag.say 00:26
camelia rakudo-moar cfb1f3: OUTPUT«bag()␤»
timotimo m: (128 .. 0x1000).grep({ .uniname ~~ / DICE / }).map( *.uniprop ).say
camelia rakudo-moar cfb1f3: OUTPUT«()␤»
timotimo m: (128 .. 0x1000).grep({ .uniname ~~ / DIGIT / }).map( *.uniprop ).say
camelia rakudo-moar cfb1f3: OUTPUT«(Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Lo Lo Lo Lo Lo Lo Lo Lo Lo Lo Lo Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd Nd …»
timotimo m: (128 .. 0x1000).grep({ .uniname ~~ / DIGIT / }).map( *.uniprop ).Bag.say
camelia rakudo-moar cfb1f3: OUTPUT«bag(Lo(11), Nd(160), No(17))␤»
00:26 lsm left
timotimo which of those do we accept for numbers? probably only Nd? 00:26
m: (128 .. 0x1000).grep({ .uniname ~~ / DIGIT / }).grep( *.uniprop eq 'Nd' ).join.say 00:27
camelia rakudo-moar cfb1f3: OUTPUT«1632163316341635163616371638163916401641177617771778177917801781178217831784178519841985198619871988198919901991199219932406240724082409241024112412241324142415253425352536253725382539254025412542254326622663266426652666266726682669267026712790279127922793…»
timotimo haha
m: (128 .. 0x1000).grep({ .uniname ~~ / DIGIT / }).grep( *.uniprop eq 'Nd' ).map( *.chr ).join.say
camelia rakudo-moar cfb1f3: OUTPUT«٠١٢٣٤٥٦٧٨٩۰۱۲۳۴۵۶۷۸۹߀߁߂߃߄߅߆߇߈߉०१२३४५६७८९০১২৩৪৫৬৭৮৯੦੧੨੩੪੫੬੭੮੯૦૧૨૩૪૫૬૭૮૯୦୧୨୩୪୫୬୭୮୯௦௧௨௩௪௫௬௭௮௯౦౧౨౩౪…»
timotimo m: say ৪ + ૪
camelia rakudo-moar cfb1f3: OUTPUT«8␤»
timotimo good
m: (128 .. 0x1000).grep({ .uniname ~~ / SUPERSCRIPT / }).grep( *.uniprop eq 'Nd' ).map( *.chr ).join.say
camelia rakudo-moar cfb1f3: OUTPUT«␤»
00:27 hankache left
timotimo m: (128 .. 0x1000).grep({ .uniname ~~ / SUPERSCRIPT / }).map( *.uniprop ).Bag.say 00:27
camelia rakudo-moar cfb1f3: OUTPUT«bag(Mn(2), No(3))␤»
timotimo wow, that's really not many, he? 00:28
m: (128 .. 0x1000).grep({ .uniname ~~ / SUPERSCRIPT / }).map( *.chr ).join.say
lucasb tomorrow you will wonder who created this huge backlog :)
camelia rakudo-moar cfb1f3: OUTPUT«²³¹ٰܑ␤»
dalek c: cc397c0 | ab5tract++ | doc/Type/Hash.pod:
Document in-place editing of hash values
timotimo i'm good at skipping my own crap. but do you want me to do this stuff locally?
that'd probably be better
geekosaur there's also /query
lucasb timotimo++, I'm just kidding :)
ab6tract timotimo: i usually cut myself off at 5 consecutive camelias :) 00:29
lizmat ab6tract: keys are always supposed to be ro
timotimo good point, yeah 00:31
oh hey lizmat, you're still awake, too
how's your flu tonight? 00:32
00:32 firstdayonthejob left
lizmat today was the first day we went out of the door... to the cinema, at 22:15 00:33
still not 100%, :-(
TEttinger m: say ٦ + ٧ + ٨
camelia rakudo-moar cfb1f3: OUTPUT«21␤»
00:33 ab6tract left
lizmat TEttinger: isn't there a factor 2 missing? :-) 00:34
TEttinger m: say ٦³ + ٧ + ٨
camelia rakudo-moar cfb1f3: OUTPUT«231␤»
TEttinger so ٦ is 6 00:35
timotimo i can't help but think people are going to use this as a reason to say perl6 is stupid.
TEttinger stupid LIKE A FOX 00:36
ShimmerFairy timotimo: honestly, I think it'd be dumb if we supported unicode variable/function/etc. names, but not unicode numbers (which is why I put in the digit support in the first place) :)
timotimo ShimmerFairy: don't get me wrong. i kind of love it, personally.
00:36 davercc joined
ShimmerFairy Yeah, I just wanted to mention the positive about it :) 00:37
timotimo .u -
yoleaux U+002D HYPHEN-MINUS [Pd] (-)
timotimo is "HYPHEN-MINUS" retconned? %)
00:38 lsm joined
lizmat good night, #perl6! 00:38
timotimo gnite and get well soon, lizmat :)
_nadim night all 00:40
Juerd Welterusten 00:41
00:41 lucasb left 00:42 cpage_ left, ShimmerFairy left 00:48 cpage_ joined 00:51 ShimmerFairy joined
dalek kudo-star-daily: 9721109 | coke++ | log/ (8 files):
today (automated commit)
00:57 koo8 left
grondilu off topic but livetream for spaceX launch in half-hour is starting: www.youtube.com/watch?v=O5bTbVbe4e4 00:58
01:02 yeahnoob joined 01:05 grondilu left, grondilu joined
timotimo cool 01:08
i'll hopefully be in bed sleeping by that time
but ... will not likely make that
01:10 raiph joined
[Coke] just got an error doing a make install. 01:11
01:21 lsm left 01:23 adu joined, lsm joined 01:25 lsm left 01:26 lsm joined 01:27 protium joined 01:30 woodruffw left, lsm left 01:31 woodruffw joined 01:33 Brian__ joined, Brian__ left, ellybelly left, bdmatatu joined
timotimo p6weekly.wordpress.com/2015/12/22/...e-release/ - post publisherized! 01:34
01:36 [Sno] joined 01:38 sno left
grondilu holy crap they did it 01:39
timotimo wow 01:40
it landed
grondilu the Falcon 9 landed
timotimo and it's upright
01:46 molaf_ joined, lsm-desktop joined, molaf left 01:48 psy_ joined 01:49 psy_ left, psy_ joined
timotimo okay, now off to bed 01:51
gfldex .tell timotimo the monkeyness of EVAL was weekly forgotten 02:05
yoleaux gfldex: I'll pass your message to timotimo.
02:08 vendethiel joined 02:09 bdmatatu left 02:10 molaf__ joined 02:12 molaf_ left
diakopter cool, yeah [OT] falcon 9 landing youtu.be/MFN1jcFgJfw 02:16
02:18 zhi joined 02:21 cpage_ left, xpen joined 02:22 cpage_ joined 02:31 vendethiel left 02:36 zengargoyle left 02:37 rhr left 02:38 rhr joined, rurban1 left 02:39 kaare_ joined 02:57 rhr left 02:58 rhr joined 03:01 cpage_ left 03:13 zengargoyle joined 03:22 noganex_ joined 03:23 kid51 left 03:24 noganex left 03:26 asdf-man joined 03:29 asdf-man left 03:36 protium left 03:39 cpage_ joined, kaare_ left 03:57 molaf__ left 04:00 zhi left 04:05 n0tjack joined 04:06 CQ2 joined 04:08 CQ left, CQ2 is now known as CQ 04:10 n0tjack left, yqt left 04:16 AndyDee left 04:18 psy_ left, adu left 04:20 AndyDee joined 04:24 xpen left 04:33 BenGoldberg_ joined 04:37 quester joined 04:38 xpen joined
quester yoleaux .botsnack 04:38
04:50 adu joined, adu left
skids Hrm. This one's going to be hard to golf. Under some certain combination of concurrent constructs, Proc::Async, and Test, a script that uses Test hangs. 05:03
skids thinks he'll leave that one till later.
probably MONKEY-SEE-NO-EVAL related.
05:14 BenGoldberg_ left 05:39 khw left
TimToady et al. in SoCal 05:41
05:53 raiph left 06:00 skids left
uruwi is Template::Mojo not fixed yet...? 06:17
TimToady doesn't look lik eit 06:19
06:22 darutoko joined
uruwi Technically I can start developing now! 06:42
06:46 labster joined 06:48 pierre-vigier left, labster left 06:56 geraud left, pierre-vigier joined 06:58 n0tjack joined 07:00 pierre-vigier left, pierre-vigier joined 07:01 pierre-vigier left 07:03 n0tjack left, uruwi left 07:05 uruwi joined 07:09 pierre-vigier joined 07:13 FROGGS joined 07:19 ellybelly joined 07:20 ellybelly left, ellybelly joined 07:23 pierre-vigier left 07:25 pierre-vigier joined, pierre-vigier left 07:28 xpen left
[Tux] test 50000 23.593 23.481 07:30
test-t 50000 13.948 13.836
csv-parser 50000 51.062 50.950
07:36 xpen joined
raydiak good evening, #perl6 07:40
just rakudobrewed, and panda seems broken due to missing Shell::Command 07:41
07:41 vividsnow left 07:42 mohae left
nine raydiak: can you give me details? 07:43
raydiak sure, what kind of details? 07:44
nine The full error message would be a start 07:46
raydiak any invocation of panda gives gist.github.com/anonymous/24eb0adbc81ce4a0a238 07:47
07:48 [Sno] left
dalek kudo/nom: e19dab5 | usev6++ | t/spectest.data:
Do not run UDP tests on JVM (NYI)
kudo/nom: 73d193b | FROGGS++ | t/spectest.data:
Merge pull request #647 from usev6/spectest_udp_jvm

Do not run UDP tests on JVM (NYI)
nine And perl6 -MShell::Command -e '' # gives you the same? 07:49
raydiak I deleted ~/.rakudobrew/moar-nom and started it recompiling before I thought to mention the problem here, so I can let you know in a couple minutes when it's done if it's still broken :) 07:51
nine It may have sufficed to just run panda's bootstrap.pl ;) 07:52
El_Che I noticed precomp generating false warning when developing a module (when the source is changed): gist.github.com/nxadm/1726865fe240719ae7d7
07:53 silug left
raydiak nine: already tried that, didn't help 07:53
El_Che even when you don't delete .precomp, the first run of the program (when not in a row) gives the warning: Use of uninitialized value %ENV of type Any in string context
nine El_Che: can you get the exact location of that message with --ll-exception? 07:54
El_Che ok
nine: identical output
it doesn't look like an exception, the program runs fine 07:55
07:57 hartenfels left
El_Che it's weird. If I run it in a series, only the first runs has it. If I wait a few minutes, the first time after that gives the warning. 07:57
ow, it's certainly related to 'run'
my $proc = run ~$.bin, ~$.file_left, ~$.file_right, :out; my $diff = $proc.out.slurp-rest; 07:58
commenting the run line out makes the warning disappear 07:59
nine El_Che: do you access %*ENV anywhere before that? 08:01
raydiak nine++ : that seems to have fixed it, I guess it was just something to do with recent changes and trying to rakudobrew over a rather old version...thanks for the help though :) 08:02
nine raydiak: glad it works for you now :) 08:03
08:04 lustlife joined 08:05 CIAvash joined 08:12 rurban joined 08:13 [Sno] joined 08:15 silug joined
nwc10 stmuk: Well, this was an "install party" so it seemed "on topic". And, for some reason (not planned) I have 2 bottles. Well, had. 08:17
08:19 km3 joined 08:24 firstdayonthejob joined 08:28 RabidGravy joined
_nadim Good morning all 08:29
RabidGravy morning!
08:38 luiz_lha joined 08:39 luiz_lha is now known as Guest94351 08:43 Guest94351 left 08:45 luiz_lah joined
dalek ast: ec013cb | usev6++ | S10-packages/precompilation.t:
Fix typo: test newly created array @precompiled2
08:47 stmuk left 08:48 luiz_lah is now known as luiz_lha 08:49 CIAvash left 08:53 rurban_ joined, CIAvash joined 08:54 rurban left, stmuk joined 08:55 mre joined 09:01 dakkar joined 09:10 labster joined
El_Che nine: no. 09:14
09:16 jdrab_ left
RabidGravy I asked thiis a long time ago, but I forgot the answer, how do I find whether a system is 32 or 64 bits (in a program) 09:16
I thought it was $?BITS but no
m: say $?BITS
camelia rakudo-moar 73d193: OUTPUT«5===SORRY!5=== Error while compiling /tmp/AoHnQIqjDE␤Variable '$?BITS' is not declared␤at /tmp/AoHnQIqjDE:1␤------> 3say 7⏏5$?BITS␤»
nine RabidGravy: oh, that's trivial! my constant $?BITS = do { my int $a = 0x1ffffffff; nqp::iseq_i($a,8589934591) ?? 64 !! 32; } 09:19
RabidGravy Oh yeah I'm looking at the code for that right here ;-) But I thought it was exposed somewhere 09:21
El_Che sorry nine, I was doing an intervention. Db is aan indexing now :)
lizmat m: say $*KERNEL.bits
camelia rakudo-moar 73d193: OUTPUT«64␤»
El_Che nine: you get the same behaviour when using run in the repl, btw
lizmat RabidGravy: ^^^ 09:22
RabidGravy :) see I knew someone else would remember ;-) cheers lizmat
lizmat moarn! 09:23
RabidGravy strangely though
m: use nqp; my constant $?BITS = do { my int $a = 0x1ffffffff; nqp::iseq_i($a,8589934591) ?? 64 !! 32; }; say $?BITS
camelia rakudo-moar 73d193: OUTPUT«5===SORRY!5=== Error while compiling /tmp/lEJ5Xjqk38␤Constants with a '?' twigil not yet implemented. Sorry. ␤at /tmp/lEJ5Xjqk38:1␤------> 3qp::iseq_i($a,8589934591) ?? 64 !! 32; }7⏏5; say $?BITS␤»
RabidGravy so how does that code in Int even work?
nine Maybe it's just allowed in the setting 09:24
lizmat only core settings are allowed to do $?FOO
at least until 6.c
RabidGravy ah okay
lizmat fwiw, the implementation of bits is now: $!bits //= $.hardware ~~ m/_64|w|amd64/ ?? 64 !! 32;
perhaps nine's code would be better ? 09:25
nine lizmat: it's not mine :) I found it in Int.pm
lizmat interesting
RabidGravy it's used for calculating the Range of an Int 09:26
nine Also those are answers to different questions: $*KERNEL.bits tells you if the operating system is 64 or 32 bits while $?BITS tells you what your rakudo supports. You could run a 32 Bit rakudo on a 64 Bit OS 09:27
lizmat hmmm... I vaguely remember some discussion about whether or not to expose $?BITS
RabidGravy m: use nqp; my constant MyInt = do { my int $a = 0x1ffffffff; nqp::iseq_i($a,8589934591) ?? int64 !! int32; }; say MyInt 09:28
camelia rakudo-moar 73d193: OUTPUT«(int64)␤»
RabidGravy that's sorta kinda what I want
lizmat RabidGravy: isn't that just "int" ? 09:29
RabidGravy is it? that would be lovely
nine int should be the platform int IIRC 09:30
lizmat afaik, "int" is defined as the platform int
m: say int.Range
camelia rakudo-moar 73d193: OUTPUT«-9223372036854775808..9223372036854775807␤»
lizmat would be different on a 32bit build
RabidGravy I'm sure I had difficulty with it in a native binding before, but I'll try it and see 09:31
(what's a core dump among friends ;) 09:32
lizmat :-)
afk for a few hours&
09:32 cuonglm joined
cuonglm Hi, anyone get error when installing rakudo from source with the latest git? 09:34
I got this error pastebin.com/3DiUSMn5 09:35
It seems that `tools/build/install-core-dist.pl` did not looking up the right destination dir
nine cuonglm: please remove your install/share/perl6 directory and run make install again. It's a one time issue caused by a change of versioning of the CORE dist 09:37
09:39 brrt joined
cuonglm :nine I used stow to manage /usr/local 09:40
09:40 rindolf joined, quester left
nine stow? 09:41
brrt good hi #perl6 09:42
yoleaux 21 Dec 2015 15:02Z <RabidGravy> brrt: fixed LibraryCheck with v0.0.5
brrt RabidGravy++
are LPW2015 videos online yet
cuonglm :nine It's GNU stow
:nine Anyway, it worked now, remove my /usr/local/stow/perl6/share then make install again 09:43
:nine So every time version in CORE dist changed, I must do this action? 09:44
nine cuonglm: no, this one time only. We didn't change just the version but the way the version gets generated. Unfortunatly the new versions are lower than the old ones.
09:45 labster1 joined
cuonglm :nine Yeah, thanks for the information. 09:45
09:45 labster left 09:47 labster joined 09:49 nwc10 left 09:50 labster1 left 09:52 yeahnoob left 09:54 cuonglm left 09:56 xinming left
uruwi Strangely, on 64-bit platforms int is 64-bit on Linux but 32-bit on Windows 10:02
Or maybe it's because I was testing it on 2015.09 for Windows
dalek blets: 2854610 | lichtkind++ | docs/appendix-b-grouped.txt:
fix whitespace
nine uruwi: there are different models for what int should be on a 64 bit system. And I seem to remember that this is indeed a difference between Linux and Windows 10:03
uruwi m: my int $a = 2**63-1; ++$a; say $a;
camelia rakudo-moar 73d193: OUTPUT«-9223372036854775808␤»
brrt yes, windows is evil
nine uruwi: en.wikipedia.org/wiki/64-bit 10:04
uruwi That works on one line, but if I type each line individually on the REPL, the second line chokes the program
moritz uruwi: natives in the REPL are a known problem
RabidGravy uruwi, nine that's fine, what I'm doing is unlikey to work on windows anyway :) 10:07
10:07 xinming joined
masak good antenoon, #perl6 10:08
RabidGravy good 10ish GMT masak 10:09
10:09 bitman joined
brrt good sometime masak 10:10
10:11 thomax joined, bitman left 10:17 rindolf left
dalek blets: 71ca088 | lichtkind++ | docs/appendix-b-grouped.txt:
testing new navigation for index B
blets: e648d95 | lichtkind++ | docs/appendix-b-grouped.txt:
next bunch of set ops
10:21 labster left
_nadim Hmmm! why can't I camm a sub X? X1 is fine 10:26
call a sub X
10:28 M-Illandan1 left, eternaleye left
RabidGravy there's an X operator 10:29
m: sub X { } say X
camelia rakudo-moar 73d193: OUTPUT«5===SORRY!5=== Error while compiling /tmp/OXNjBmbtnu␤Strange text after block (missing semicolon or comma?)␤at /tmp/OXNjBmbtnu:1␤------> 3sub X { }7⏏5 say X␤ expecting any of:␤ infix␤ infix stopper␤ statemen…»
RabidGravy m: sub X { }; say X 10:30
camelia rakudo-moar 73d193: OUTPUT«(X)␤»
RabidGravy or rather
m: say X.perl
camelia rakudo-moar 73d193: OUTPUT«X␤»
RabidGravy m: say X.WHAT
camelia rakudo-moar 73d193: OUTPUT«(X)␤»
RabidGravy m: sub X() { }; say X() 10:31
camelia rakudo-moar 73d193: OUTPUT«Method 'shortname' not found for invocant of class 'Perl6::Metamodel::CoercionHOW'␤ in block <unit> at /tmp/QlUWPk7py1:1␤␤»
nine m: sub X($a) { $a }; say X(1) 10:32
camelia rakudo-moar 73d193: OUTPUT«Cannot invoke this object␤ in block <unit> at /tmp/U2pOFhEt0l:1␤␤»
_nadim I just stumbled on it, not calling things X, I tried to find the operator X, X, and then had to dig in the long (but goody) list of operators 10:33
10:36 espadrine joined, riatre left 10:37 RabidGravy left
gfldex .tell timotimo please ignore me, i'm visually challenged 10:38
yoleaux gfldex: I'll pass your message to timotimo.
timotimo gfldex: sure
yoleaux 02:05Z <gfldex> timotimo: the monkeyness of EVAL was weekly forgotten
10:38Z <gfldex> timotimo: please ignore me, i'm visually challenged
_nadim Can someone please remind me (again) how I can return a reference? sub my_sub { my %h ; .... ; return %h, 42} (%h,$i) = my_sub ; 10:39
timotimo i just woke up for this
nine _nadim: &my_sub
_nadim nine: thanks, and the explanation for this ugliness is?
10:42 M-eternaleye joined
_nadim well that actually makes no difference! 10:43
gfldex _nadim: you can return anything but a reference
there may be reasons to return an explicit capture in some cases tho 10:44
_nadim that's what I thought but I get odd number of elements, 2 secs
llfourn m: sub my_sub { return { a => 'b'}, 42 }; my (%h,$i) := my_sub(); %h.say; $i.say #crosses fingers 10:45
camelia rakudo-moar 73d193: OUTPUT«a => b␤42␤»
llfourn is that what you wanted _nadim?
10:46 cibs left
nine _nadim: oh, sorry, I misunderstood your question 10:47
_nadim m: sub my_sub {my %h = a => 1 ; %h, 42} ; my (%h, $i) = my_sub() ;
camelia rakudo-moar 73d193: OUTPUT«Odd number of elements found where hash initializer expected␤ in block <unit> at /tmp/gtJBEp3mcf:1␤␤»
_nadim nine: :)
FROGGS the %h will gobble the stuff
m: sub my_sub {my %h = a => 1 ; %h, 42} ; my ($h, $i) = my_sub();
camelia ( no output )
FROGGS m: sub my_sub {my %h = a => 1 ; %h, 42} ; my ($h, $i) = my_sub(); say $h
camelia rakudo-moar 73d193: OUTPUT«a => 1␤»
FROGGS _nadim ^^ 10:48
timotimo maybe we should warn when we see something like (%h, $i) = ... ?
_nadim anything that doesn't force me to change sigil?
nine timotimo: and (@a, $i) = ...
llfourn _nadim: the reason it errored in your last example was because you didn't use :=
timotimo yeah
_nadim Argggg! 10:49
and I knew that
gfldex a slurpy has to be at the end of a parameter list
timotimo well, it's not really a slurpy
FROGGS m: sub my_sub {my %h = a => 1 ; %h, 42} ; my (%h, $i) := my_sub(); say %h
camelia rakudo-moar 73d193: OUTPUT«a => 1␤»
timotimo slurpyness only works on signature binding
FROGGS so yeah, we should warn and hint at these two options 10:50
timotimo in this case it's just regular assignment that breaks things
_nadim I was a bit proud that I finally used := for something yesterday and now it bites me back
gfldex binding is hard
10:52 cibs joined, M-Illandan joined
timotimo when trying to wake up i had the excellent idea for a toy language named "SnoozePL" 10:53
you get a barrage of random statements and all you can do is snooze them or execute them
so it's more like a interactive programming experience
gfldex is that the language electronic sheep deam in? 10:54
uruwi Hmm, even having a terminal-like character grid in the browser poses a big problem.]
timotimo i wouldn't recommend dreaming in that language
uruwi: hum? 10:55
uruwi all fun and games until you want to display Japanese
(was going to use unicodetiles.js for frontend)
10:55 crux left
uruwi at least it works in dom mode 10:57
timotimo i have kind of no clue what you're talking about 10:58
uruwi Now I'm considering a still text-based, but having stuff like tables interface
TEttinger uruwi: rot.js ?
uruwi I planned on a text-based RPG
timotimo text-based RPG: easy. text-based JRPG: really difficult! 10:59
uruwi TEttinger: I looked at it, but I just need a way to display things as most of the work will be in Perl 6
10:59 cibs left
TEttinger ah ok 10:59
timotimo: sounds like Tinder: the PL 11:01
swipe left or right
uruwi at least this works imgur.com/x11ALpc, but I'm worried about how much space English text will take then 11:02
11:02 rindolf joined
timotimo hehe 11:02
"what kind of statement do you like?"
uruwi (as I also plan on supporting multiple languages)
timotimo you're using double-width ascii? 11:03
actually, compared between the japanese and english characters it looks like the ascii is quad-width
11:04 cibs joined
uruwi Well, it's not supposed to be double-width; that's just how it looks once you put fullwidth characters in DOM mode 11:05
in WebGL or canvas display, half the character gets cut off.
Plus all the space between the lines; I'm afraid that UT won't work. 11:06
lizmat m: class A { }; sub A { say "foo" }; A # the problem is not limited to X
camelia rakudo-moar 73d193: OUTPUT«WARNINGS for /tmp/qLVdu97Ftf:␤Useless use of constant value A in sink context (line 1)␤»
lizmat we should probably warn on creating a sub with the name of a class in scope 11:07
uruwi At least not for anything outside a map interface, so the HTTP protocol will be more complex.
lizmat m: { class A { } }; sub A { say "foo" }; A # and class being our by default, makes things more complicated
camelia rakudo-moar 73d193: OUTPUT«WARNINGS for /tmp/FpkouGVDea:␤Useless use of constant value A in sink context (line 1)␤» 11:08
uruwi Or resort to extreme methods such as having the server send JS for the client to execute
lizmat m: { my class A { } }; sub A { say "foo" }; A # only if you make the class lexical, are we ok
camelia rakudo-moar 73d193: OUTPUT«foo␤»
timotimo m: my class A { }; sub A { say "urgh" }; A 11:09
camelia rakudo-moar 73d193: OUTPUT«WARNINGS for /tmp/Ub7wPkEmrB:␤Useless use of constant value A in sink context (line 1)␤»
timotimo mhm mhm