»ö« 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:01
spider-mario left,
kanishka joined
|
|||
cygx | 'night o/ | 00:02 | |
ZoffixWin | m: my \b = 3; my $a = 3; my $a-b = 3; say $a-b | 00:03 | |
camelia | rakudo-moar 1bdb78: OUTPUT«3» | ||
ZoffixWin | night | ||
00:03
cygx left
00:04
kjs_ left,
telex left
00:08
llfourn joined
|
|||
BenGoldberg | m: my \b = 3; my $a = 3; my $a-b = 3; say $a; | 00:08 | |
camelia | rakudo-moar 1bdb78: OUTPUT«3» | ||
BenGoldberg | m: my \b = 3; my $a = 3; my $a-b = 42; say $a-b; | ||
camelia | rakudo-moar 1bdb78: OUTPUT«42» | ||
BenGoldberg | m: my \b = 3; my $a = 3; my $a-b = 42; say b; | ||
camelia | rakudo-moar 1bdb78: OUTPUT«3» | ||
00:08
Some-body_ joined
|
|||
BenGoldberg wonders how that works. | 00:08 | ||
ZoffixWin | BenGoldberg, $a-b is a var name | ||
BenGoldberg | D'oh, I see. | ||
ZoffixWin | That's pretty much it :) | ||
00:09
telex joined
|
|||
BenGoldberg feels silly now. | 00:09 | ||
dlynes | Is it normal to see rakudobrew build moar take aeons with zero updates to the screen? | ||
ZoffixWin | dlynes, nope | ||
dlynes | i.e. it's takeing forever to clone into 'moar-nom' | 00:10 | |
s/takeing/taking/ | |||
timotimo | geekosaur: oh, sorry! | ||
ZoffixWin | Maybe try restarting it. | ||
timotimo | i'm only eye-ing the channel with ... parts of a single eye i suppose | ||
dlynes | ZoffixWin: yeah...tried that, and then it throws up all over itself | ||
ZoffixWin | the whole build takes ~2-3 minutes on my box | ||
dlynes, I'd try removing ~/.rakudobrew and ~/.perl6 and starting from scratch. | |||
00:11
zhmylove_ joined,
Jonis_ joined
|
|||
dlynes | And it always seems to hang on something git related | 00:11 | |
ZoffixWin | weird | ||
00:11
ChoHag_ joined
|
|||
dlynes | git works fine...I use it daily at the office | 00:11 | |
ZoffixWin | Maybe Chaina is DoSing github again XD | ||
*China | |||
00:11
AWei joined
00:12
sjohnson` joined,
noganex joined
00:13
llfourn left
|
|||
dlynes | ZoffixWin: ic | 00:13 | |
ZoffixWin: didn't realize China had an interest in bullying opensource software | |||
00:13
Ari__ joined
|
|||
ZoffixWin | they did it a few months ago. There's an OSS that allows bypassing their Great Firewall | 00:14 | |
00:14
Ari__ left
|
|||
ZoffixWin | Why is this vodka flavour named "cherrys" and not "cherry", "cherries", or "cherry's" -_- | 00:14 | |
gfldex | if they misspell it, they get a TM | 00:15 | |
dlynes | Nice...have multiple instances of git running inside of perl | 00:16 | |
perl 5.18.2 is fine for the bootstrap, right? | 00:17 | ||
flussence | 5.10.0 or higher is fine | ||
00:18
ChoHag left,
noganex_ left,
crux left
00:19
DarthGandalf left,
sjohnson left,
zhmylove left,
wtw left,
Some-body_ is now known as DarthGandalf,
bakedb joined,
jervo joined
00:23
crux joined,
wtw joined
|
|||
grondilu | seems like the amount of hate on /. is high | 00:29 | |
timotimo | twitter.com/FakeUnicode/status/680...4017700864 - time for a new slang | ||
flussence | grondilu: must be a day of the week ending in "y" again... | ||
timotimo | grondilu: i'm a bit shocked the amount of hate on "hater news" is so small. i guess i must be wrong in my impression of those people | 00:30 | |
vendethiel | grondilu: on /. ? | ||
timotimo | slashdot, however ... | ||
that never surprises, i guess | |||
vendethiel | oh. | 00:31 | |
[Coke] | "people still read /." ? | ||
timotimo | [Coke]: thanks again for doing the honors of the release :) | ||
and the releases before that | |||
[Coke] | ... so the haters have a visible target? you're welcome. :) | ||
timotimo | hah | 00:32 | |
if any haters hate on you personally, bet on me to give them a punch to the face | |||
[Coke] | You're welcome. Many hands made the release light work. | ||
timotimo | <3 | ||
00:35
rurban1 joined
00:36
rurban left
00:37
lichtkind left
00:38
rurban joined
|
|||
dalek | c/category: aad0a2f | coke++ | / (3 files): Add categorized search results. |
00:38 | |
[Coke] | ^^ anyone playing with the doc site, please check that out, see if it renders to your liking. | ||
00:39
rurban1 left
|
|||
timotimo | man, i'd love it if we had builds of branches of the doc and spec repositories ... and why not also the perl6.org repository | 00:40 | |
i wonder how hard that is to do | |||
a little VHost here, a little DocumentRoot there, a bit of a for loop around git while building ... | |||
github.com/perl6/ye-olde/issues/3 - i opened an issue about handling the perl foundation perl6 wiki | 00:43 | ||
00:44
aigan_ is now known as aigan,
regreg left
|
|||
[Coke] | ISTR I have an email open about that. | 00:45 | |
timotimo | oh, neat! | ||
[Coke] | ... can't find it. | 00:46 | |
timotimo | Drafts/ ? :) | ||
[Coke] | ... found it. | 00:47 | |
sent Nov 20, no reply from the webmaster at the perl foundation. | |||
timotimo | maybe we should be contacting someone in a more political position about this? | ||
the only person i know at TPF is karen; no clue if she'd be a good address? | |||
00:52
Ox0dea joined
00:53
virtualsue left
|
|||
[Coke] | I repinged the webmaster, cc'd timo, we can reach out karen in a few days if needed. I'm happy to do it if someone reminds me. | 00:53 | |
timotimo | i added an event to my calendar to remind me to remind you | 00:55 | |
00:56
Sgeo left
|
|||
Ox0dea | Why are types falsy? | 00:56 | |
00:56
dududuedu joined
|
|||
timotimo | because they are not defined | 00:56 | |
00:56
Sgeo joined
|
|||
timotimo | that meshes more or less well with "empty list is falsy", "0 is falsy" and "empty string is falsy" | 00:56 | |
00:57
secwang joined
|
|||
timotimo | well, it doesn't mesh "less well" | 00:57 | |
00:57
bpmedley_ joined
|
|||
BenGoldberg | m: my $foo; say $foo | 00:58 | |
camelia | rakudo-moar 1bdb78: OUTPUT«(Any)» | ||
BenGoldberg | m: my $foo; say so $foo | ||
camelia | rakudo-moar 1bdb78: OUTPUT«False» | ||
BenGoldberg | m: my $foo; say $foo.^attributes | ||
camelia | rakudo-moar 1bdb78: OUTPUT«()» | ||
00:58
rurban left
|
|||
timotimo | m: my $foo = Any.new; say so $foo | 00:59 | |
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
00:59
bpmedley left
|
|||
timotimo | a new instance of Any. super useful! | 00:59 | |
00:59
ellybelly left
01:00
herby_ joined
|
|||
herby_ | Good evening, everyone! | 01:00 | |
Ox0dea | Hi, herby_! | ||
BenGoldberg | Ox0dea, Think of it this way, the default value of any scalar variable, before you've assigned anything to it, is not some value resembling perl5's 'undef', but rather whatever class that variable has been defined to be. | ||
herby_ | o/ | ||
AlexDaniel | timotimo: yeah, look! | 01:01 | |
m: my Any:D $x = Any | |||
camelia | rakudo-moar 1bdb78: OUTPUT«Type check failed in assignment to $x; expected Any:D but got Any in block <unit> at /tmp/avlnxDYPx4 line 1» | ||
AlexDaniel | m: my Any:D $x = Any.new | ||
camelia | ( no output ) | ||
timotimo | that could be called ... a use ... yeah :) | 01:02 | |
anyway, i ought to head to bed | |||
head and body | |||
AlexDaniel | so let's say you want it to accept anything as long as it is defined | 01:03 | |
m: my Any:D $x = Int | |||
camelia | rakudo-moar 1bdb78: OUTPUT«Type check failed in assignment to $x; expected Any:D but got Int in block <unit> at /tmp/iaQWzn4oJr line 1» | ||
AlexDaniel | m: my Any:D $x = 25 | ||
camelia | ( no output ) | ||
AlexDaniel | I'm not sure that you'd expect Any.new :D | 01:04 | |
timotimo | nobody expects the spanish Any.new! | 01:05 | |
AlexDaniel | m: say Any.^methods | ||
camelia | rakudo-moar 1bdb78: OUTPUT«(Method+{<anon|58612832>}.new Method+{<anon|58612832>}.new Method+{<anon|58612832>}.new cache Method+{<anon|58612832>}.new Method+{<anon|58612832>}.new Method+{<anon|58612832>}.new Method+{<anon|58612832>}.new Method+{<anon|58612832>}.new Method+{<anon|586…» | ||
timotimo | m: say Any.^methods>>.name | ||
camelia | rakudo-moar 1bdb78: OUTPUT«(EXISTS-KEY DELETE-KEY DELETE-POS cache list flat eager List Slip Array hash Hash elems end keys kv values pairs antipairs invert pick roll iterator classify categorize rotor reverse combinations permutations join nodemap duckmap deepmap tree push append u…» | ||
timotimo | (don't ask me why it looks like that, though ...) | 01:06 | |
good night! | |||
AlexDaniel | m: | ||
m: say ~Any.new | |||
camelia | rakudo-moar 1bdb78: OUTPUT«Any<139711291550128>» | ||
AlexDaniel | m: say ~Any.new | ||
camelia | rakudo-moar 1bdb78: OUTPUT«Any<140648963639728>» | ||
AlexDaniel | m: say ~Any.new | ||
camelia | rakudo-moar 1bdb78: OUTPUT«Any<139805361641904>» | ||
uruwi | Has anyone discussed floating point shenanigans on Blob.pack / unpack yet? | ||
timotimo | that's actually the memory location right there | ||
herby_ | shenanigans? | 01:07 | |
Ox0dea | timotimo: Why decimal? | ||
timotimo | uruwi: gist.github.com/Juerd/ae574b87d40a66649692 - this is juerd's proposition for what to replace current pack/unpack with | ||
Ox0dea: i suppose because it's not really meant to be seen/read by humans? | |||
uruwi | oh, nice! | ||
01:08
llfourn joined
|
|||
uruwi | It does mean I have to rewrite what little code depends on the current method, but I'll read. | 01:08 | |
timotimo | don't have to rewrite it yet; you will however have to put "use experimental :pack" | 01:09 | |
AlexDaniel | m: say (Any.new .. Any.new).WHAT | ||
camelia | rakudo-moar 1bdb78: OUTPUT«(Range)» | ||
AlexDaniel | m: say (Any.new .. Any.new) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«Any.new..Any.new» | ||
AlexDaniel | m: say Any .. Any | ||
camelia | rakudo-moar 1bdb78: OUTPUT«Any..Any» | ||
herby_ | any recommended reads on how to OO-program with Perl6? | 01:10 | |
figured I could learn both at the same time | |||
AlexDaniel | retupmoca: what about this? doc.perl6.org/language/classtut | ||
oops | |||
wrong nick | |||
herby_ | :) | ||
AlexDaniel | herby_: ↑ | ||
herby_ | I'll give it a read, thanks! | 01:11 | |
01:12
llfourn left
01:18
BloodShura_ left
|
|||
AlexDaniel | m: say min(Any.new, 5); say max(Any.new, 5) | 01:18 | |
camelia | rakudo-moar 1bdb78: OUTPUT«5Any.new» | ||
AlexDaniel | m: say Any.new ~ 42 | 01:19 | |
camelia | rakudo-moar 1bdb78: OUTPUT«Any<140611433156480>42» | ||
ZoffixWin | :/ | 01:20 | |
01:21
Ox0dea left
|
|||
ZoffixWin | m: say 0+Any.new | 01:21 | |
camelia | rakudo-moar 1bdb78: OUTPUT«Cannot call Numeric(Any: ); none of these signatures match: (Mu:U \v: *%_) in block <unit> at /tmp/zP0Gq1ffAA line 1» | ||
uruwi | Of course that doesn't work | ||
After all, there's an Any<> wrapped around it | |||
AlexDaniel | m: say Any.new.kv | 01:23 | |
camelia | rakudo-moar 1bdb78: OUTPUT«(0 Any.new)» | ||
01:23
herby_ left
|
|||
uruwi | Let me guess: converting to a one-element array and getting the index as the key? | 01:24 | |
01:24
bpmedley joined
01:25
bpmedley_ left
|
|||
zacts | so is the christmas release of rakudo the first official stable release? | 01:26 | |
or is it still alpha / beta / unstable? | |||
AlexDaniel | zacts: Maybe this will help: 6guts.wordpress.com/2015/12/26/ref...g-forward/ | 01:27 | |
zacts: section starting with “So, about the release…” | |||
zacts: maybe we can give a more detailed answer if you narrow down your question to something simpler | 01:31 | ||
flussence | hm, I think github's having a bad day... | ||
AlexDaniel | flussence: yes | ||
01:35
thomax_ joined
|
|||
zacts | AlexDaniel: oh thanks, /me reads | 01:35 | |
AlexDaniel | zacts: the problem is that there is no way to say if something is “stable” or “unstable”, because there are various states in between | 01:36 | |
01:37
thomax left,
thomax_ is now known as thomax
|
|||
AlexDaniel | zacts: some find that Perl 6 is just right for their tasks (that is, some people are already using it in production), others find it extremely unstable. Well, it depends on the task | 01:37 | |
zacts | oh cool | 01:38 | |
so really there are two points to consider | |||
#1 where the language specification is at | |||
01:38
xfq joined
|
|||
zacts | and #2 where the implementations of this specification are at | 01:38 | |
flussence | doc.perl6.org/language/faq :) | ||
AlexDaniel | zacts: this release is supposed to mean that what you write today is going to work 3 months from now, unlike what we had previously | ||
zacts | oh I see, cool | 01:39 | |
so kind of analagous to a stable API/ABI? | |||
the language specification is stable, and rakudo implements this, and any diversion from this is a bug in rakudo christmas? | |||
flussence | "Perl 6" is analogous to "HTML 5", where Rakudo 2015.12 is equivalent to Chromium 47 | 01:40 | |
zacts | ah I see ok | ||
cool! | |||
=) | |||
bpmedley | bitbucket.org/snippets/bpmedley/rKoda <-- This doesn't print the desired results for me. I don't get anything from "@leaving". Any ideas for what I'm doing wrong? | ||
flussence | note that nothing actually implements all of HTML5 or C++14 for that matter | ||
zacts | well congrats on Perl6 christmas and Rakudo cchristmas | ||
flussence: my brain does | |||
(kidding kidding) | |||
\o/ | 01:41 | ||
ZoffixWin | \o/ | 01:42 | |
AlexDaniel | bpmedley: your perl 6 is probably old, let's see | 01:43 | |
m: say ['camel', 'vicuna', 'llama'].splice(1) | |||
camelia | rakudo-moar 1bdb78: OUTPUT«[vicuna llama]» | ||
bpmedley | I got it from brew. | ||
AlexDaniel | m: my @animals = ['camel', 'vicuna', 'llama']; my @leaving = splice(@animals, 1); say @leaving; | ||
camelia | rakudo-moar 1bdb78: OUTPUT«[vicuna llama]» | ||
bpmedley | Has brew been updated? | ||
AlexDaniel | bpmedley: try perl6 --version | ||
bpmedley | This is perl6 version 2015.03 built on MoarVM version 2015.03 | 01:44 | |
AlexDaniel | ewwwwww | ||
flussence went a bit overboard there but sends that rakudo PR anyway | |||
bpmedley | Doh. My bad. | ||
Even the ewwww version is impressive.. :-0 | |||
AlexDaniel | bpmedley: though there is a high chance that you will have to nuke your installation | 01:45 | |
01:45
disturbingly_rea joined
|
|||
disturbingly_rea | *tips hat to the gentlemen responsible for yesterday's release* | 01:45 | |
als | |||
*also ladies | |||
ZoffixWin | camelia, gist.github.com/zoffixznet/ad160008e76b5ac1f2bf | 01:46 | |
m: gist.github.com/zoffixznet/ad160008e76b5ac1f2bf | |||
camelia | rakudo-moar 1bdb78: OUTPUT«[vicuna llama][vicuna llama]» | ||
ZoffixWin | disturbingly_rea, what about robots? :D | ||
AlexDaniel | camelia should support bitbucket as well | ||
disturbingly_rea | *considers robots* | ||
bpmedley | m: bitbucket.org/snippets/bpmedley/rKoda | ||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/qCnGLIcFTxConfusedat /tmp/qCnGLIcFTx:1------> 3https:7⏏5//bitbucket.org/snippets/bpmedley/rKoda expecting any of: colon pair» | ||
disturbingly_rea | *finds the whole concept overwhelming* | ||
bpmedley | m: bitbucket.org/!api/2.0/snippets/bp...ddness.txt | 01:47 | |
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/JAFEsUCywKConfusedat /tmp/JAFEsUCywK:1------> 3https:7⏏5//bitbucket.org/!api/2.0/snippets/bpmedl expecting any of: colon pair» | ||
AlexDaniel | I mean, someone should add support for bitbucket | ||
ZoffixWin | bpmedley, only gist is supported | ||
bpmedley | Gotcha | ||
ZoffixWin | AlexDaniel, well volunteered! | ||
:D | |||
AlexDaniel | ZoffixWin: where's the source code? | ||
ZoffixWin | AlexDaniel, /evalbot | ||
AlexDaniel | ah right | ||
ZoffixWin | github.com/perl6/evalbot | ||
01:48
herby_ joined
|
|||
flussence | who likes docs? I got ya some right here! github.com/flussence/rakudo/commit...fd5fdb9a01 | 01:48 | |
AlexDaniel | let's see if I can do it in 20 minutes… | ||
ZoffixWin | flussence++ | ||
disturbingly_rea | How would one round a number to n decimal places? If I wanted the following to be -1, for example | ||
say e**(i*π) | 01:49 | ||
flussence | (this was prompted by the realisation that I have no idea what the hell those precomp vars actually did) | ||
AlexDaniel | m: say round(25.555, 2) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«26» | ||
AlexDaniel | m: say round(25.555, -2) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«26» | ||
disturbingly_rea | m: say e**(I*π) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dUR8eFo2XLUndeclared name: I used at line 1» | ||
AlexDaniel | m: say round(25.555, 0.02) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«25.56» | ||
ZoffixWin | AlexDaniel, likely just another condition here: github.com/perl6/evalbot/blob/196a...ter.pm#L85 | ||
disturbingly_rea | awesome | ||
ta | |||
AlexDaniel | ZoffixWin: yeah | ||
ZoffixWin | Ah, and I was wrong. It's not just gist, but github.com URLs as well | 01:50 | |
01:50
prevost joined
|
|||
grondilu | m: say e**(I*π) | 01:50 | |
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MJR5tR5ButUndeclared name: I used at line 1» | ||
grondilu | m: say e**(i*π) | ||
disturbingly_rea | m: say round(e**(i*π), 0.0001) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«-1+0i» | ||
rakudo-moar 1bdb78: OUTPUT«-1+1.22464679914735e-16i» | |||
grondilu | m: say e**(πi) | ||
01:50
xpen joined
|
|||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/untnCwFs92Undeclared routine: πi used at line 1» | 01:50 | |
ZoffixWin | m: say e**(i\π) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/fmc2x_ppV4Confusedat /tmp/fmc2x_ppV4:1------> 3say e**(i\7⏏5π)» | ||
ZoffixWin | :/ | ||
m: say e**(i/π) | |||
camelia | rakudo-moar 1bdb78: OUTPUT«0.949765715381639+0.312961796207787i» | 01:51 | |
ZoffixWin | .oO( I seem to recall there being a special case for i\ ) |
||
BenGoldberg | m: say e**(π i) | 01:52 | |
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/nFbQ6PQqQtTwo terms in a rowat /tmp/nFbQ6PQqQt:1------> 3say e**(π7⏏5 i) expecting any of: infix infix stopper statement end statement modifier …» | ||
BenGoldberg | m: sub postfix<i> (Num $x) { i*$x }; say e**(π i) | 01:53 | |
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Zf5GwaSOy5Missing blockat /tmp/Zf5GwaSOy5:1------> 3sub postfix7⏏5<i> (Num $x) { i*$x }; say e**(π i) expecting any of: new name to be defined» | ||
BenGoldberg | m: sub postfix:<i> (Num $x) { i*$x }; say e**(π i) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/XPp834IsQsTwo terms in a rowat /tmp/XPp834IsQs:1------> 3postfix:<i> (Num $x) { i*$x }; say e**(π7⏏5 i) expecting any of: infix infix stopper statement end…» | ||
disturbingly_rea | Welp, that was apparently a can of worms ;) | 01:54 | |
BenGoldberg | m: sub postfix:<i> { i*$^x }; say e**(π i) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wqhzv3rQzYTwo terms in a rowat /tmp/wqhzv3rQzY:1------> 3sub postfix:<i> { i*$^x }; say e**(π7⏏5 i) expecting any of: infix infix stopper statement end …» | ||
BenGoldberg | m: sub postfix:<i> { i*$^x }; | ||
camelia | ( no output ) | ||
disturbingly_rea | Can you avoid the * sometimes then? | ||
01:54
xpen left
|
|||
disturbingly_rea | m: say e**(iπ) | 01:57 | |
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Et_0MOYzKEUndeclared routine: iπ used at line 1» | ||
01:57
secwang left
|
|||
BenGoldberg | m: multi postfix:<i> {...}; multi postfix:<i> (Complex $x) { i*$x }; multi postfix:<i> (Numeric $x) { Complex.new(0,$x) }; | 01:57 | |
camelia | ( no output ) | ||
BenGoldberg | m: multi postfix:<i> {...}; multi postfix:<i> (Complex $x) { i*$x }; multi postfix:<i> (Numeric $x) { Complex.new(0,$x) }; say 3 i; | ||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/VKlluz_J_gTwo terms in a rowat /tmp/VKlluz_J_g:1------> 3Numeric $x) { Complex.new(0,$x) }; say 37⏏5 i; expecting any of: infix infix stopper postfix …» | ||
disturbingly_rea | say e**(i*τ ) | ||
m: say e**(i*τ ) | 01:58 | ||
camelia | rakudo-moar 1bdb78: OUTPUT«1-2.44929359829471e-16i» | ||
disturbingly_rea | tau FTW | ||
BenGoldberg | m: say τ; | ||
camelia | rakudo-moar 1bdb78: OUTPUT«6.28318530717959» | ||
ZoffixWin | \o/ | 01:59 | |
AlexDaniel | disturbingly_rea: I don't think that you can avoid it but you can also use × | ||
ZoffixWin | m: say τ == ½*π | ||
camelia | rakudo-moar 1bdb78: OUTPUT«False» | ||
disturbingly_rea | oooh..... *tries it out* | ||
ZoffixWin | :( | ||
disturbingly_rea | m: 1 x 2 x 3 x 4 | 02:00 | |
camelia | rakudo-moar 1bdb78: OUTPUT«WARNINGS for /tmp/nobl6KW70c:Useless use of "x" in expression "x 3 x 4" in sink context (line 1)» | ||
02:00
llfourn joined
|
|||
ZoffixWin | disturbingly_rea, that's not the right char | 02:00 | |
.u multiplication | |||
yoleaux | U+00D7 MULTIPLICATION SIGN [Sm] (×) | ||
disturbingly_rea | m: say 1 x 2 x 3 x 4 | ||
yoleaux | U+228D MULTISET MULTIPLICATION [Sm] (⊍) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«111111111111111111111111» | ||
yoleaux | U+2715 MULTIPLICATION X [So] (✕) | ||
disturbingly_rea | ahh... | ||
ZoffixWin | m: say 1 × 2 × 3 × 4 | ||
camelia | rakudo-moar 1bdb78: OUTPUT«24» | ||
AlexDaniel | what was that? | ||
disturbingly_rea | gotcha | ||
AlexDaniel | aaa | ||
ZoffixWin | AlexDaniel, where? :) | ||
disturbingly_rea | m: 4 × 6 | ||
camelia | rakudo-moar 1bdb78: OUTPUT«WARNINGS for /tmp/CeCm6gpvyt:Useless use of "×" in expression "4 × 6" in sink context (line 1)» | ||
AlexDaniel | x hidden there :D | ||
disturbingly_rea | etc | ||
m: say 5 × 7 | 02:01 | ||
camelia | rakudo-moar 1bdb78: OUTPUT«35» | ||
02:01
Su-Shee_ joined
|
|||
ZoffixWin | m: my $input = '٣'; say $input + 42; | 02:01 | |
camelia | rakudo-moar 1bdb78: OUTPUT«45» | ||
AlexDaniel | m: say ½ × τ == π | ||
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
ZoffixWin | m: say ٦1٥٠3 + ٤६੬៩ - ৭۹੧ | ||
camelia | rakudo-moar 1bdb78: OUTPUT«65381» | ||
disturbingly_rea | m: say π == ½*τ | ||
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
ZoffixWin | AlexDaniel, ah, right >_< | 02:02 | |
disturbingly_rea | \o/ | ||
so cool | |||
ZoffixWin | Yeah, nifty :P | ||
AlexDaniel | disturbingly_rea: and surely you can also use ÷ and ∞ :) | ||
ZoffixWin | This works too: | ||
m: say 42² | |||
camelia | rakudo-moar 1bdb78: OUTPUT«1764» | ||
AlexDaniel | and superscripts, yeah | ||
ZoffixWin | m: say 42²² | ||
camelia | rakudo-moar 1bdb78: OUTPUT«514617308132852400700537649353457664» | ||
disturbingly_rea | m: say 1 / ∞ | ||
camelia | rakudo-moar 1bdb78: OUTPUT«0» | ||
disturbingly_rea | bloody hell | ||
ZoffixWin | :) | ||
BenGoldberg | No special underflow? | ||
BenGoldberg would expect a Failure object there. | 02:03 | ||
ZoffixWin too | |||
disturbingly_rea | * is just super impressed | ||
ZoffixWin | But I think that was discussed before and it was decided returning a limit is more acceptable :) | ||
disturbingly_rea, :D spread the word! :D | 02:04 | ||
02:04
Su-Shee left
|
|||
disturbingly_rea | say (2 × ∞) / (3 × ∞) | 02:04 | |
m: say (2 × ∞) / (3 × ∞) | |||
camelia | rakudo-moar 1bdb78: OUTPUT«NaN» | ||
disturbingly_rea | ah well, can'[t have everything | ||
will nonetheless be spreading all the words | 02:05 | ||
ZoffixWin | \o/ | ||
02:05
lizmat left
|
|||
AlexDaniel | disturbingly_rea: it's true though, isn't it? ∞/∞ = NaN, what else did you expect? | 02:05 | |
disturbingly_rea | 2/3 | ||
AlexDaniel after all, one expression | |||
llfourn | m: say Perl, so Cool with Uni,Code | 02:06 | |
camelia | rakudo-moar 1bdb78: OUTPUT«(Perl)False» | ||
disturbingly_rea | lol | ||
llfourn | m: say Perl, not so Cool without Uni,Code | ||
camelia | ( no output ) | ||
AlexDaniel | llfourn: this is amazing | ||
ZoffixWin | disturbingly_rea, that expectation assumes ∞ can be treated as a number :P | ||
grondilu | it would be wrong if (2 × ∞) / (3 × ∞) was returning 2/3 | 02:07 | |
because Inf/Inf is not 1 | |||
disturbingly_rea | yeah but limits tho | ||
grondilu | since Inf is not Inf | ||
ZoffixWin | ∞ is not a number, so I'd think returning a NaN makes perfect sense | ||
m: say ∞ === Inf | |||
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
grondilu | m: say Inf == Inf | ||
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
disturbingly_rea | you are correct,, because yeah | ||
grondilu | m: say Inf === Inf | ||
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
grondilu | ?? | ||
disturbingly_rea | could come from anywhere | ||
ZoffixWin | wat? | ||
grondilu | I thought that was false | 02:08 | |
llfourn | m: say Inf ~~ Real | ||
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
ZoffixWin doesn't see why it would be, but doesn't know much about the subject | |||
disturbingly_rea | ∞ ~~ Num | ||
m: say ∞ ~~ Num | |||
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
ZoffixWin | m: say (.1, .2 ... *) > (1, 2 ... *) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«Cannot .elems a lazy list in block <unit> at /tmp/Qc0njdw7Ox line 1Actually thrown at: in block <unit> at /tmp/Qc0njdw7Ox line 1» | ||
ZoffixWin is disappointed that doesn't return a True :P | 02:09 | ||
grondilu | wasn't Inf !== Inf according to IEEE or something? | ||
BenGoldberg | You might be thinking of NaN. | ||
grondilu | oh, possible | ||
BenGoldberg | Is perl6's Inf supposed to be Aleph-0 or Aleph-1? ;) | 02:10 | |
grondilu | seems wrong to me that Inf == Inf | ||
disturbingly_rea | m: say grep $_ %% 365, 1..∞ | ||
camelia | rakudo-moar 1bdb78: OUTPUT«Use of uninitialized value of type Any in numeric context in block <unit> at /tmp/K2ExdRd5jD line 1Cannot use Bool as Matcher with 'grep'. Did you mean to use $_ inside a block? in block <unit> at /tmp/K2ExdRd5jD line 1Actually thrown at:…» | ||
geekosaur | answer the question of whether the cardinality of the reals is aleph-1 and then maybe someone can answer that :p | ||
disturbingly_rea | m: say grep {$_ %% 365}, 1..∞ | ||
camelia | rakudo-moar 1bdb78: OUTPUT«(...)» | ||
ZoffixWin | m: say ℵ₀ == ∞ | ||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ltowus89DvBogus postfixat /tmp/ltowus89Dv:1------> 3say ℵ7⏏5₀ == ∞ expecting any of: infix infix stopper postfix statement end statem…» | ||
ZoffixWin | hm | ||
m: say ℵ == ∞ | 02:11 | ||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/96BQh5NXGjPreceding context expects a term, but found infix == insteadat /tmp/96BQh5NXGj:1------> 3say ℵ ==7⏏5 ∞» | ||
llfourn | m: say Inf.defined | ||
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
ZoffixWin could've swore there were alephs in the roast somewhere | |||
bpmedley | This is Rakudo version 2015.12-9-g1bdb784 built on MoarVM version 2015.12 <-- Woohoo | ||
llfourn | m: say Inf > Inf | ||
camelia | rakudo-moar 1bdb78: OUTPUT«False» | ||
llfourn | m: say Inf >= Inf | ||
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
flussence | there's ℵ₀ in there, but the test file also defines that | ||
disturbingly_rea | alephs is ambitious | 02:12 | |
geekosaur | perl 6 is nothing if not ambitious :p | ||
ZoffixWin | Ah: github.com/perl6/roast/commit/1e61...68f64ddd8c | ||
It's def'd | |||
jdv79 | hello. goodbye. | ||
yoleaux | 26 Dec 2015 20:36Z <lizmat> jdv79: not sure what ticket you mea | ||
Hotkeys | m: say ℵ₀ == ∞ | ||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/NanKPhsZywBogus postfixat /tmp/NanKPhsZyw:1------> 3say ℵ7⏏5₀ == ∞ expecting any of: infix infix stopper postfix statement end statem…» | ||
disturbingly_rea | m: say ℵ₀ > ℵ₁ | 02:13 | |
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/lFHKR5TiCLBogus postfixat /tmp/lFHKR5TiCL:1------> 3say ℵ7⏏5₀ > ℵ₁ expecting any of: infix infix stopper postfix statement end stat…» | ||
mst | nine: that should be doable, except in the case where you can't it re-runs it once and writes it into the current repo, rather than redoing the entire precomp phase | ||
jdv79 | .tell lizmat the one on specs about s22 | ||
yoleaux | jdv79: I'll pass your message to lizmat. | ||
Hotkeys | m: say א₀ == ∞ | ||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wM9fYJLdV6Bogus postfixat /tmp/wM9fYJLdV6:1------> 3say א7⏏5₀ == ∞ expecting any of: infix infix stopper postfix statement end stateme…» | ||
02:13
xfq left
|
|||
Hotkeys | m: say א₀ | 02:14 | |
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/eyxiIIxuTXBogus postfixat /tmp/eyxiIIxuTX:1------> 3say א7⏏5₀ expecting any of: infix infix stopper postfix statement end statement modi…» | ||
Hotkeys | hm | ||
I thought that one was there | |||
the right to left one | |||
flussence pushed both approaches as separate branches | |||
ZoffixWin | m: sub postfix:<(¬‿¬)> ($) { say 'I see what you did there' }; '(¬‿¬)'(¬‿¬)(¬‿¬)(¬‿¬) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«I see what you did thereI see what you did thereI see what you did there» | ||
Hotkeys | m: say א | 02:15 | |
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/EnMdFr9Dl4Undeclared routine: א used at line 1» | ||
02:16
lustlife left,
secwang joined,
lustlife joined
|
|||
disturbingly_rea | m: my א = Inf; say א | 02:16 | |
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/JOkc1aoMBNMalformed my (did you mean to declare a sigilless \א or $א?)at /tmp/JOkc1aoMBN:1------> 3my א7⏏5 = Inf; say א» | ||
ZoffixWin | m: sub term:<א> { ∞ }; say א == ∞ | ||
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
02:17
leont left
|
|||
disturbingly_rea | m: my \א= Inf; א.say | 02:17 | |
camelia | rakudo-moar 1bdb78: OUTPUT«Inf» | ||
Hotkeys | m: sub term:<ℵ₀> { ∞ }; say ℵ₀ == ∞ | 02:18 | |
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
02:18
skyl4rk left
|
|||
disturbingly_rea | m: my \ℵ₀= Inf; my \ℵ₁ = 2**ℵ₀; say (ℵ₀ < ℵ₁) | 02:19 | |
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/77IYWqhnKmTerm definition requires an initializerat /tmp/77IYWqhnKm:1------> 3my \ℵ7⏏5₀= Inf; my \ℵ₁ = 2**ℵ₀; say (ℵ₀ < ℵ₁)» | ||
ZoffixWin | m: sub term:<(✿◠‿◠)> { ∞ }; say (✿◠‿◠) == ∞ | ||
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
AlexDaniel | .u א | ||
yoleaux | U+05D0 HEBREW LETTER ALEF [Lo] (א) | ||
Hotkeys | disturbingly_rea: bad | ||
ZoffixWin | disturbingly_rea, I don't think you can use subscript numbers like that | ||
letters work though IIRC | 02:20 | ||
autarch | is there any way to figure out why a piece of p6 code is using a lot of memory? | ||
ZoffixWin | Does --profile reports mem usage? | ||
disturbingly_rea | m: my \a1 = Inf; my \a2 = 2**a1; say (a1 < a2) | 02:21 | |
autarch looks | |||
camelia | rakudo-moar 1bdb78: OUTPUT«False» | ||
02:21
Sm4rkey joined
|
|||
disturbingly_rea | so,,, no Cantorian heirarchy, then? | 02:22 | |
ZoffixWin | m: m: my \ℵₐ= Inf; my \ℵₓ = 2**ℵₐ; say (ℵₐ < ℵₓ) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«False» | ||
disturbingly_rea | dunno what I was expecting here :P | ||
Hotkeys | well for one | ||
isn't that dependent on whether the CH is true? | |||
:p | |||
disturbingly_rea | nah, 2**n > n | ||
every time | |||
Hotkeys | okay but | ||
Inf isn't a regular number | |||
disturbingly_rea | yeh, but it's just, yknow, true. x**n > n if x > 1 | 02:23 | |
Hotkeys | let n = 0 | ||
ZoffixWin | m: say ∞ > 1 | ||
camelia | rakudo-moar 1bdb78: OUTPUT«True» | ||
Hotkeys | wait | ||
still true | |||
I'm dumb | |||
AlexDaniel | disturbingly_rea: infinity is a concept | 02:24 | |
Hotkeys | ++ | ||
disturbingly_rea | AlexDaniel: Infinities are a lot of concepts | ||
transfinite induction, my man | |||
anyway, IDK what I'm complaining about. Its handling of Infs is still better than all dem other langs | 02:25 | ||
02:26
FROGGS__ joined
|
|||
autarch | my new version of Pod::To::HTML seems to eat a lot of memory for some reaosn | 02:26 | |
and burn a lot of CPU | 02:27 | ||
disturbingly_rea | Hotkeys: good point, then... let n>1 too ;) | ||
02:27
pierre-vigier joined
|
|||
herby_ | I'm reading a perl6 intro tutorial and the section is talking about classes. in the example, a method called ranking() is defined: %!player-points.pairs.sort({ -.value }); | 02:28 | |
how does .pairs.sort({ -.value }) work? | |||
disturbingly_rea | Hoykeys: also typod anyway, coz should be x**n > x if x > 1 && n > 1 | 02:29 | |
Hotkeys | I assume it takes each key-value pair and then sorts by value | ||
herby_ | the -.value throws me off | ||
haven't seen "-." used yet | |||
Hotkeys | I haven't either | ||
llfourn | autarch: I made relatively small changes to it a week ago -- I didn't notice a difference compiling the docs | ||
Hotkeys | but seems like that's what it does | ||
autarch | I think that's -1 * .value, maybe | ||
Hotkeys | oh true | ||
maybe | |||
herby_ | yeah, it works like that in the example, just didnt really understand how it worked | ||
disturbingly_rea | I give up I can't reember. Too much christmas | ||
autarch | llfourn: I've totally rewritten Pod::To::HTML | ||
02:30
FROGGS_ left
|
|||
Hotkeys | herby_: link? | 02:30 | |
autarch | github.com/perl6/Pod-To-HTML/tree/...treewalker | ||
llfourn | autarch: ah ok | ||
disturbingly_rea | Merry seasonally-specific salutations to y'all. May your calendars reflect that this was a time of year for giving and, yea, also for receiving | 02:31 | |
farewell | |||
flussence | gee thanks github, timed out when I tried to submit a PR and ate my cover letter too :( | ||
02:31
pierre-vigier left,
disturbingly_rea left
|
|||
herby_ | Hotkeys: www.jnthn.net/papers/2015-spw-perl6-course.pdf | 02:31 | |
flussence | oh wait, browser saved it. phew | ||
autarch | heh, and now my browser is not loving the 84mb profile file | 02:33 | |
AlexDaniel | yeah, although it took like 5 minutes to write it now I'm wating for the whole thing to set up | ||
llfourn | ;_; the profiler | ||
02:33
mrPoopyButthole_ joined
02:34
cognominal joined
|
|||
llfourn | autarch: on the topic of pod have you seen github.com/ShimmerFairy/SUPERNOVA | 02:34 | |
flussence | if anyone's got more time than sense, a static webpage generator for profile json would be a nice project :) | ||
llfourn | (I only found out about ShimmerFairy++'s work yesterday) | ||
ZoffixWin | herby_, it's -($_.value) | ||
m: say ^10 .pairs.map: {-.value} | 02:35 | ||
camelia | rakudo-moar 1bdb78: OUTPUT«(0 -1 -2 -3 -4 -5 -6 -7 -8 -9)» | ||
Hotkeys | I'm not a fan of condensing that to -.value | 02:36 | |
might just be me | |||
mrPoopyButthole_ | should I have to nuke moar every time I want to bump it in rakudobrew, or is there a smarter way? | ||
rakudobrew build moar doesn't bump | |||
02:36
vendethiel left
|
|||
ZoffixWin | But it's not a special case tho. .foo is a method call on $_... and in this case, that value has a - for it | 02:36 | |
herby_ | Zoffix, thanks! | ||
llfourn | mrPoopyButthole_: it does for me :) | ||
Hotkeys | mrPoopyButthole_: llfourn; me too | 02:37 | |
mrPoopyButthole_ | :( | ||
flussence | probably because github ain't working today | ||
mrPoopyButthole_ | welp gremlins then | ||
doesn't for me. I'll try in a VM | |||
ZoffixWin | mrPoopyButthole_, you probably should nuke starting today, because there were a lot of precomp stuff changes (depending on how old your rakudobrew is). Going into the future, I don't think you need to nuke anything | ||
autarch | chrome keeps timing out on the profile - even for a very small one | ||
ZoffixWin | Use lynx! :D | ||
jk | |||
Yeah, the generated profile is kinda meh | 02:38 | ||
I'd think a PDF or something would be more usable | |||
mrPoopyButthole_ | thanks y'all for speedy replies | ||
autarch | firefix seems slightly better | ||
yeah, this doesn't seem very usable as is - I like what nytprof does for p5 - it generates lots of HTML pages instead of relying on the browser to parse many megs of data | |||
ZoffixWin | yeah | 02:39 | |
mst | nytprof killing my browser is pretty common actually | ||
autarch | huh, never had that happen | 02:41 | |
02:41
prevost left
|
|||
flussence | eh, I've used it on some pretty crusty catalyst code and haven't had half the problems perl6 --profile gives me... | 02:42 | |
02:43
kid51 left,
ellybelly joined,
mue joined
02:44
mempko joined,
cognominal left
02:45
bucketmelia joined,
ilbot3 left
|
|||
AlexDaniel | m: bitbucket.org/snippets/bpmedley/rKoda | 02:45 | |
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/YDGbdkhM3vConfusedat /tmp/YDGbdkhM3v:1------> 3https:7⏏5//bitbucket.org/snippets/bpmedley/rKoda expecting any of: colon pair» | ||
bucketmelia | rakudo-moar 1bdb78: OUTPUT«[vicuna llama][vicuna llama]» | ||
02:45
bucketmelia left
|
|||
AlexDaniel | yeah | 02:45 | |
ZoffixWin | \o/ | ||
autarch | llfourn: the SUPERNOVA stuff looks good - it would've made my Pod::To::HTML changes much easier | ||
AlexDaniel | So I'll commit that in a few minutes, do I have to notify somebody to update camelia? | 02:46 | |
was it TimToady? | |||
autarch | anyway, so the profiler isn't really useful for this problem - anyone have any suggestions on debugging memory usage and perf in general? | ||
ZoffixWin | AlexDaniel, there are secrut commands you can issue to camelia to pull and restart | ||
Top secret! And they aren't listed in the source or anything... | 02:47 | ||
XD | |||
02:47
ilbot3 joined
|
|||
AlexDaniel | right | 02:47 | |
I see | |||
great then | |||
02:48
herby_ left
|
|||
mst | ./w 260 | 02:49 | |
02:49
billN1VUX left
|
|||
llfourn | autarch: I think it will be the best way to fix all those pod bugs as well :) | 02:50 | |
ZoffixWin | m: await IO::Socket::Async.connect( 'irc.freenode.net', 6667 ).then({given .result { | ||
.say("NICK NotCamelia\nUSER NotCamelia localhost irc.freenode.net :notCamelia\nJOIN #perl6\nPRIVMSG #perl6 :Good job, AlexDaniel\n");}); | |||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/GP46iuKMfNMissing blockat /tmp/GP46iuKMfN:1------> 3enode.net', 6667 ).then({given .result {7⏏5<EOL>» | ||
ZoffixWin | crap | ||
autarch | llfourn: yes, seems like it | ||
ZoffixWin | m: await IO::Socket::Async.connect( 'irc.freenode.net', 6667 ).then({given .result { | ||
.say("NICK NotCamelia\nUSER NotCamelia localhost irc.freenode.net :notCamelia\nJOIN #perl6\nPRIVMSG #perl6 :Good job, AlexDaniel\n");}); | |||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/CFc26TpahVMissing blockat /tmp/CFc26TpahV:1------> 3enode.net', 6667 ).then({given .result {7⏏5<EOL>» | ||
ZoffixWin | wtf :/ my client is glitched | ||
02:50
ZoffixWin left,
atweiden joined
02:51
Sm4rkey left,
ZoffixWin joined,
ZoffixWin left,
ZoffixWin joined
|
|||
ZoffixWin | m: await IO::Socket::Async.connect('irc.freenode.net', 6667 ).then({given .result {.print("NICK NotCamelia\nUSER NotCamelia localhost irc.freenode.net :notCamelia\nJOIN #perl6\nPRIVMSG #perl6 :Good job, AlexDaniel\n");}}) | 02:52 | |
camelia | ( no output ) | ||
ZoffixWin | :( | ||
m: await IO::Socket::Async.connect('irc.freenode.net', 6667 ).then({given .result {.print("NICK NotCamelia\nUSER NotCamelia localhost irc.freenode.net :notCamelia\nJOIN #perl6\nPRIVMSG #perl6 :Good job, AlexDaniel\n"); react {whenever $!sock.Supply {}}}}) | 02:53 | ||
camelia | rakudo-moar 1bdb78: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MEnWOZUfuCVariable $!sock used where no 'self' is availableat /tmp/MEnWOZUfuC:1------> 3, AlexDaniel\n"); react {whenever $!sock7⏏5.Supply {}}}})» | ||
02:53
woodruffw left
|
|||
jdv79 | ZoffixWin: wut r u doin bruh? | 02:53 | |
ZoffixWin | m: await IO::Socket::Async.connect('irc.freenode.net', 6667 ).then({given .result {.print("NICK NotCamelia\nUSER NotCamelia localhost irc.freenode.net :notCamelia\nJOIN #perl6\nPRIVMSG #perl6 :Good job, AlexDaniel\n"); react {whenever .Supply {}}}}) | ||
02:53
NotCamelia joined
|
|||
NotCamelia | Good job, AlexDaniel | 02:53 | |
ZoffixWin | That ^ :) | ||
\o/ | |||
jdv79 | ha | ||
02:53
NotCamelia left
|
|||
camelia | rakudo-moar 1bdb78: OUTPUT«(timeout)» | 02:53 | |
AlexDaniel | dammit. The worst thing is when you want to contribute something but you can't understand if the indentation is 2 spaces, 4 spaces or some other weirdness with tabs | 02:55 | |
which is exactly what happens in github.com/perl6/evalbot/blob/mast...xecuter.pm | |||
that should be 4 spaces according to other lines… | 02:56 | ||
02:56
molaf_ joined
|
|||
flussence apologises to anyone on the rakudo repo who receives an email per github pull request | 02:57 | ||
02:57
woodruffw joined,
billN1VUX joined
|
|||
AlexDaniel | o/ | 02:57 | |
03:00
molaf left,
Su-Shee joined
|
|||
dlynes | Is it normal to see the odd error and/or warning about missing or non-existent paths when building moar? | 03:02 | |
flussence | complaining about not finding moar at the start of the process is normal, afaik | 03:03 | |
dlynes | flussence: and nqp? | ||
03:03
Su-Shee_ left
|
|||
flussence | as long as it doesn't die with an error, it's probably not important :) | 03:04 | |
probably rough edges in handling with/without --gen-nqp and --gen-moar | |||
dlynes | flussence: ok, thanks | ||
03:04
billN1VUX left
|
|||
atweiden | flussence: how would you use RAKUDO_PRECOMP_PREFIX to install regular modules? | 03:09 | |
(thx again for github.com/rakudo/rakudo/pull/654) | |||
03:10
billN1VUX joined
|
|||
flussence | mktemp -d, call CUR::*.install like install-core-dist.pl does, the modules should end up there. But I dunno, it might not be needed in practice with the first patch | 03:10 | |
atweiden | e.g. tried setting RAKUDO_PRECOMP_PREFIX="$pkgdir/usr/share/perl6/precomp" to install JSON::Tiny | 03:11 | |
but this makes rakudo look for Test and everything in that dir instead of in system /usr/share/perl6 | |||
flussence | yeah, it's kind of a nuclear footgun now that I'm a bit clearer on what it's doing... hm | 03:12 | |
03:14
Zero_Dogg left,
Zero_Dogg joined,
Zero_Dogg left,
Zero_Dogg joined
|
|||
atweiden | rakudo make DESTDIR install, and panda for modules seems to work well enough for now | 03:14 | |
dalek | albot: b6ecb65 | (Aleks-Daniel Jakimenko-Aleksejev)++ | lib/EvalbotExecuter.pm: Allow Bitbucket snippets The regex is not very restrictive, but it's just like other regexes in the code. |
03:15 | |
albot: 7fbc72c | (Aleks-Daniel Jakimenko-Aleksejev)++ | / (3 files): Fix indentation Just a quick attempt to get everything to use one indentation style. It seems like most of the code is using 4 spaces without tabs, so that's what I did. |
|||
03:16
camelia left,
noganex_ joined,
camelia joined
|
|||
AlexDaniel | m: bitbucket.org/snippets/bpmedley/rKoda | 03:16 | |
hmmm | 03:17 | ||
m: say 'hello' | |||
03:18
ChanServ sets mode: +v camelia
|
|||
camelia | rakudo-moar 1bdb78: OUTPUT«[vicuna llama][vicuna llama]» | 03:18 | |
rakudo-moar 1bdb78: OUTPUT«hello» | |||
AlexDaniel | oh | ||
m: bitbucket.org/snippets/bpmedley/rKoda | |||
camelia | rakudo-moar 1bdb78: OUTPUT«[vicuna llama][vicuna llama]» | ||
AlexDaniel | okay | ||
camelia: good butterfly | |||
03:18
xpen joined
|
|||
AlexDaniel | It seems like there are other possible link patterns, but I think that this one is probably enough for now | 03:19 | |
03:19
noganex left
03:22
mempko left
|
|||
BenGoldberg | Isn't that supposed to be spelled vicuña? | 03:22 | |
AlexDaniel | I don't know. In fact, I don't see any way to fork it on bitbucket :D | 03:23 | |
BenGoldberg | And this is why people use gists ;) | ||
flussence is currently watching a package-manager-managed `make test` *actually working*... nearly there... | 03:27 | ||
AlexDaniel | oh well, I think that we have to be a bit more inclusive… | 03:28 | |
flussence | I thought about swapping some of my ecosystem modules to gitlab URLs just to be unreasonable, but I'll put it off until things quieten down :) | 03:30 | |
AlexDaniel | flussence: that's what I am doing right now – gitlab snippets | ||
03:39
kanishka left
|
|||
flussence | ==> Installing Linenoise | 03:41 | |
==> Successfully installed Linenoise | |||
~ $ | |||
...system-installed rakudo, user-installed panda. everything works. | 03:42 | ||
03:42
AndyDee left
|
|||
flussence | only took 11 hours :D | 03:42 | |
dalek | albot: 1d97cd8 | (Aleks-Daniel Jakimenko-Aleksejev)++ | lib/EvalbotExecuter.pm: Allow GitLab snippets Let's be more inclusive! |
03:43 | |
03:43
camelia left,
camelia joined
|
|||
AlexDaniel | m: say ‘wake up!’ | 03:43 | |
03:44
ChanServ sets mode: +v camelia
|
|||
camelia | rakudo-moar 1bdb78: OUTPUT«wake up!» | 03:44 | |
03:44
vendethiel joined
03:45
joy joined
|
|||
AlexDaniel | m: gitlab.com/snippets/12097 | 03:45 | |
camelia | rakudo-moar 1bdb78: OUTPUT«hello world» | ||
AlexDaniel | m: gitlab.com/snippets/1209700 | ||
camelia | rakudo-moar 1bdb78: OUTPUT«snippet not found» | ||
03:46
blub joined
03:54
yqt left,
Milijus left
03:55
Milijus joined
04:00
vendethiel left
|
|||
flussence clears throat | 04:07 | ||
Rakudo 2015.12 is now available on Gentoo Linux: gitlab.com/flussence/perl6-overlay | |||
AlexDaniel | great! | 04:09 | |
04:10
xpen left
|
|||
ZoffixWin | \o/ | 04:10 | |
04:11
itaipu left,
grondilu left
04:13
grondilu joined
04:16
pierrot_ is now known as pierrot
|
|||
flussence pings bonsaikitten: one fully functional and mostly polished rakudo-2015.12.ebuild above if you're interested. Has a src_test and everything. :) | 04:17 | ||
'night, all | |||
04:24
dududuedu left
04:32
araujo left,
araujo joined,
billN1VUX left
04:33
billN1VUX joined
04:35
araujo left,
araujo joined
04:37
billN1VUX left
04:48
xinming joined
04:49
upscent joined,
upscent left
04:51
xinming_ left
04:53
talexb joined
|
|||
talexb | Just trying .. git clone github.com/tadzik/rakudobrew ~/.rakudobrew .. and getting 'RPC failed' and later, 'gnutls_handshake() failed: A TLS packet with unexpected length was received.' .. | 04:54 | |
llfourn | talexb: I think github is goofing around atm | 04:55 | |
talexb | That's from the page at perl6.org/downloads/ .. maybe I'll try again tomorrow. | ||
llfourn, Ah .. OK, thanks. :) | |||
04:55
kaare_ joined
|
|||
mst | talexb: that's a wtf to me | 04:55 | |
talexb: gnutls is interesting, means not an openssl lib | 04:56 | ||
llfourn | It actually works for me :\ | ||
mst | talexb: run it again, if it fails a third time, it's probably not #perl6's bug but I'd love to see an strace -f just for personal curiosity | ||
talexb | mst, Sure, trying now .. | ||
mst | talexb: note: this is probably github being weird, I'm just curious anyway | 04:57 | |
talexb | Well, that was anti-climactic .. it finished without errors. | ||
mst | tada | ||
"github being weird" then :D | |||
talexb | "Crap, mst's watching .. no more foolin' around!!" | 04:58 | |
llfourn | there are a bunch of ppl complaining about gh today on #perl6 irclog.perlgeek.de/perl6/2015-12-27 | 04:59 | |
04:59
rubes joined
|
|||
AlexDaniel | llfourn: gh? | 05:00 | |
llfourn | AlexDaniel: the hub of git! | ||
AlexDaniel | ah, github | ||
talexb loves maxing out his Interwebs connection by pulling down all of github .. | 05:01 | ||
05:01
LambdaCat joined
|
|||
AlexDaniel | nothing wrong here though: status.github.com/ | 05:01 | |
mst | AlexDaniel: restartable SSL errors aren't really a status issue | 05:02 | |
05:06
rubes left
05:08
joy left
05:11
lnx left,
smash left
05:12
Jonis_ left,
jnthn left,
Rotwang left,
BenGoldberg left,
stmuk left
05:14
labster left,
AndyDee joined
|
|||
AlexDaniel | I wonder how relevant this is glyphic.s3.amazonaws.com/ozone/mark...300dpi.jpg | 05:15 | |
05:15
secwang left
05:17
secwang joined
05:22
khw left,
haircode joined
|
|||
[Coke] | AlexDaniel: it's based on an older version. | 05:22 | |
05:23
_nadim left
05:25
pseydtonne joined
05:32
rubes joined,
Milijus left
05:34
integral left,
rubes left,
integral joined,
integral left,
integral joined
|
|||
grondilu | m: say combinations(10000, 10).elems | 05:34 | |
camelia | rakudo-moar 1bdb78: OUTPUT«2743355077591282538231819720749000» | ||
grondilu | m: say +combinations(10000, 10) | ||
camelia | rakudo-moar 1bdb78: OUTPUT«(timeout)» | ||
grondilu | slightly LTA that &prefix:<+> does not fallback to .count-only here | 05:35 | |
05:35
nige1 joined
05:36
secwang left
05:38
labster joined
05:43
mempko joined
05:44
rubes joined
05:45
cognominal joined
|
|||
pseydtonne | Hello? | 05:46 | |
gfldex | m: say "ohai pseydtonne!"; | ||
camelia | rakudo-moar 1bdb78: OUTPUT«ohai pseydtonne!» | ||
pseydtonne | Ooh, that's fun! | 05:47 | |
Maybe I should spend some time rewriting my test Perl5 script in Perl6. | |||
Has anyone compiled the Xmas Perl6 for a Win64 box yet? | 05:49 | ||
gfldex | not yet, that will happen next year | 05:50 | |
pseydtonne | Grrrr. Oh well. Guess I'll have it on my Linux VM guests and my Raspberries before I see it on my Win7 box. | 05:51 | |
I've been using the Sept Raduko build because it has an MSI. | |||
m: my @animals = ['camel', 'vicuxF1a', 'llama']; say "The zoo contains " ~ @animals.elems ~ " animals."; | |||
camelia | rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals.» | ||
05:51
skids joined
|
|||
gfldex | m: my @animals = ['camel', 'vicuña', 'llama']; say "The zoo contains " ~ +@animals ~ " animals."; | 05:52 | |
camelia | rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals.» | ||
05:52
atweiden left
|
|||
pseydtonne | Why didn't that return a 2? | 05:52 | |
labster | m: my @animals = ['camel', 'vicuña', 'llama']; say "The zoo contains { +@animals } animals."; | 05:53 | |
camelia | rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals.» | ||
gfldex | +@animals is @animals.Num, what in turn is @animals.elems | ||
a3r0 | m: my @animals = ['camel', 'vicuña', 'llama']; say @animals.end; | 05:56 | |
camelia | rakudo-moar 1bdb78: OUTPUT«2» | ||
pseydtonne | Neat! Thanks. | ||
I haven't had a lot of time to play yet. I was busy learning a certain other scripting language for work when I saw a link to perl6intro.com on Reddit. | 05:57 | ||
05:58
mrPoopyButthole_ left
|
|||
pseydtonne | I went to a Boston.pm mtg about Perl6 back in... I think it was 2001. | 05:58 | |
Poor mrPoopyButthole | 05:59 | ||
I'm a completely different person than I was when this began, but that's for the better. | 06:00 | ||
MilkmanDan | pseydtonne: Do you have Cygwin on your box? | 06:02 | |
pseydtonne | Not this one, but I have cmder. | 06:03 | |
MilkmanDan | Ah. Not heard of that before. | ||
pseydtonne | I got it for the tabbed cmd shells. | ||
It has a lot more. | |||
cmder.net | 06:04 | ||
06:04
secwang joined
|
|||
pseydtonne | Is that numberwang? | 06:04 | |
06:07
xpen joined
|
|||
grondilu | m: my @animals = <camel vicuña llama>; say "The zoo contains @animals.elems animals" | 06:08 | |
camelia | rakudo-moar 1bdb78: OUTPUT«The zoo contains @animals.elems animals» | ||
grondilu thought that would interpolate | |||
though with hindsight I see why it doesn't | 06:09 | ||
06:09
espadrine left
06:12
xpen left
|
|||
AlexDaniel | m: my @animals = <camel vicuña llama>; say "The zoo contains {@animals.elems} animals" | 06:12 | |
camelia | rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals» | ||
AlexDaniel | hmm | 06:13 | |
m: my $animals = <camel vicuña llama>; say "The zoo contains {$animals.elems} animals" | |||
camelia | rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals» | ||
AlexDaniel | hehe | ||
06:16
secwang left
|
|||
b2gills | m: my @animals = <camel vicuña llama>; say "The zoo contains @animals.elems() animals" | 06:25 | |
camelia | rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals» | ||
06:28
pierre-vigier joined
06:30
secwang joined
|
|||
gfldex | m: my @animals := ['camel', 'vicuña', 'llama'] but role { method Str () {+self} }; say "The zoo contains " ~ @animals ~ " animals."; | 06:31 | |
camelia | rakudo-moar 1bdb78: OUTPUT«The zoo contains 3 animals.» | ||
gfldex | m: my @animals = ['camel', 'vicuña', 'llama'] but role { method Str () {+self} }; say "The zoo contains " ~ @animals ~ " animals."; | 06:32 | |
camelia | rakudo-moar 1bdb78: OUTPUT«The zoo contains camel vicuña llama animals.» | ||
gfldex | should anon roles mixins into @-sigiled containers require binding? | ||
06:33
pierre-vigier left
06:40
CIAvash joined
|
|||
TimToady safely home | 06:47 | ||
06:48
FROGGS__ left
|
|||
gfldex | TimToady: if you want to you can give me some of your winter. We had +15°C today. | 06:50 | |
TimToady | here it's about 3℃ | 06:52 | |
06:54
secwang left
06:55
xfix joined
|
|||
AlexDaniel | eh, it will be below 0°C for the next few days. Exactly 0°C right now | 06:55 | |
.oO( “Be careful when cycling!” ) |
06:56 | ||
pseydtonne | ice freezes on the bridges and overpasses before it does on land roads. | 06:57 | |
06:57
secwang joined
07:03
AndyDee left
07:04
haircode left
07:05
secwang left
07:12
pseydtonne left
07:13
myu left
07:18
rcy joined,
hiinn joined
07:19
haircode joined,
hiinn left
07:20
uiil joined
07:21
uiil left
07:22
yuipo joined,
yuipo left,
Zero_Dogg left
|
|||
LambdaCat | hi, i am from china , hangzhou ! | 07:22 | |
07:23
Zero_Dogg joined
07:27
cognominal left
|
|||
ZoffixWin | Hello \o | 07:27 | |
Ni how ma | |||
07:28
LambdaCat_ joined
|
|||
ZoffixWin | m: sub 您好 { say "您好" }; 您好 | 07:28 | |
camelia | rakudo-moar 1bdb78: OUTPUT«您好» | ||
TimToady | I'm fine; I finally broke out the port I was saving from the Braga conference 10 years ago, which makes it 21-year-old port...old enough to drink. :) | 07:29 | |
07:29
xfix_ joined
|
|||
ZoffixWin | :P | 07:29 | |
07:31
xfix left,
LambdaCat_ left
07:33
integral left
|
|||
AlexDaniel | m: { say ‘one’; CATCH { “exception: $_” }; die ‘hello world’ } | 07:34 | |
camelia | rakudo-moar 1bdb78: OUTPUT«onehello world in block <unit> at /tmp/dUikkaxwgr line 1» | ||
AlexDaniel | m: { say ‘one’; die ‘hello world’; CATCH { “exception: $_” }; } | ||
camelia | rakudo-moar 1bdb78: OUTPUT«onehello world in block <unit> at /tmp/qLrd6bdx4_ line 1» | ||
07:34
integral joined
07:35
nsh_ joined
|
|||
AlexDaniel | m: { say ‘one’; die ‘hello world’; CATCH { say “exception: $_” }; } | 07:35 | |
camelia | rakudo-moar 1bdb78: OUTPUT«oneexception: hello worldhello world in block <unit> at /tmp/ClNyYWQAya line 1» | ||
AlexDaniel | m: { say ‘one’; CATCH { say “exception: $_” }; die ‘hello world’ } | ||
camelia | rakudo-moar 1bdb78: OUTPUT«oneexception: hello worldhello world in block <unit> at /tmp/w2R32i1SGt line 1» | ||
07:37
pierre-vigier joined
07:40
nsh_ left
07:48
xinming_ joined
07:51
aindilis left,
xinming left
07:53
xinming_ left
07:54
xinming joined,
integral left,
integral joined,
integral left,
integral joined
07:56
rubes left
07:57
nige1 left
07:58
pierre-vigier left
07:59
pierre-vigier joined,
xpen joined
08:01
dlynes left
08:04
skids left
08:05
xpen left,
xpen joined
08:07
domidumont joined
08:08
xpen_ joined
08:10
Tonik joined
08:11
xinming_ joined,
RabidGravy joined,
lnx joined,
smash joined
08:12
xpen left,
jnthn joined,
Jonis joined,
Rotwang joined,
stmuk joined,
domidumont left
08:14
domidumont joined,
nige1 joined,
xinming left
08:16
Rotwang left
|
|||
RabidGravy | morning | 08:16 | |
08:16
darutoko joined,
smash left,
stmuk left
08:17
Jonis left,
jnthn left,
lnx left
|
|||
ZoffixWin | is it already?\ | 08:19 | |
08:19
xinming joined
08:20
integral left
|
|||
RabidGravy | well it is here, much to my surprise | 08:21 | |
08:22
xinming_ left
08:24
ultrmaozg joined
08:25
pierre-vigier left,
ultrmaozg left,
pierre-vigier joined
|
|||
AlexDaniel | ZoffixWin: well, timezones are from -12 to +14. Which basically means that for some people who have 20:00 locally there are other people who see 08:00 morning of this day and other people who have 08:00 of the next day all at the same time… | 08:25 | |
what is this country that has +14 by the way | 08:26 | ||
“Kiribati” | 08:27 | ||
08:27
tef left
|
|||
RabidGravy | yeah, I guess there aren't that many people there into Perl 6 | 08:28 | |
AlexDaniel | again, what was the reason to have timezones? Besides pretending that the clock is somehow associated with the sun. | ||
08:30
_nadim joined
|
|||
ZoffixWin | we should have just one time.... people for whom 12 noon is the middle of the night should just deal with it :P | 08:30 | |
RabidGravy | it was so that they could have timetables for things that aren't complicated by "sub-dial time" | 08:31 | |
sun dial | |||
ZoffixWin | Sun dial? What is it, the middle ages? | 08:32 | |
RabidGravy | definitely in the UK it was the railway companies that led the call for "all one timezone" | ||
ZoffixWin, no but it was used as an approximation for setting clocks | 08:33 | ||
(in fact there were reasonably accurate clocks in the middle ages) | |||
08:34
CoconutCrab joined
|
|||
bonsaikitten | flussence: sounds good. Once I'm back to a proper internet connection I'll take care of it | 08:35 | |
bonsaikitten does some obscene gestures at O2 | |||
AlexDaniel | and while we are at it, perhaps we should also get rid of sexagesimal system and switch to decimal time… | ||
RabidGravy | didn't Napoleon try that? | 08:36 | |
which didn't go so well in the long term | |||
AlexDaniel | was it Napoleon? | 08:37 | |
08:38
mempko left
|
|||
AlexDaniel | oh, and while we are at it… perhaps we should also fix the calendar… | 08:40 | |
08:40
pierre-vigier left
|
|||
thomax | netanel rubin will held another perl jam speak tomorrow at the 32c3. i guess he will not mention p6 but will rant against perl in general and "detail" | 08:43 | |
RabidGravy | oh well | 08:46 | |
I think I could rant about every language I have used in the last thrirty years | 08:47 | ||
thomax | here is his talk from last year: www.youtube.com/watch?v=gweDBQ-9LuQ | 08:48 | |
RabidGravy | you can't fool me like that ;-) | ||
08:49
karl_ joined
|
|||
thomax | :-) | 08:49 | |
08:49
karl_ left
08:50
matematikaadit joined
08:54
LambdaCat left
|
|||
El_Che | thomax: not that guy again | 09:07 | |
09:08
smash joined,
Jonis joined,
jnthn joined,
stmuk joined,
xfix_ is now known as xfix
09:09
Rotwang joined
09:10
integral joined,
integral left,
integral joined,
lnx joined
|
|||
thomax | yes, he again. tomorrow 20:30 in a live stream at 32c3 | 09:11 | |
09:13
dotness joined,
raiph joined
09:17
vividsnow left
09:18
rindolf joined,
pierre-vigier joined
|
|||
masak | good antenoon, #perl6 | 09:19 | |
yoleaux | 26 Dec 2015 18:31Z <andreoss> masak: I've made some PRs for 007. You might want to consider them. | ||
masak | andreoss++ | ||
09:25
rurban joined
09:30
deniska joined,
pdcawley left
|
|||
AlexDaniel | .tell tadzik well, if you are not going to fix the issue with POST params then consider giving me push access so that I can do it. Same nickname on github. Basically I will just merge the pull request and apply my 1-character patch, that should make the tests green as well (if not, then I'll try to look into it, but anyway it will fix the issue with POST params…) | 09:32 | |
yoleaux | AlexDaniel: I'll pass your message to tadzik. | ||
09:33
lizmat joined
|
|||
dalek | kudo/nom: c6d759c | (Anthony Parsons)++ | docs/running.pod: Rewrite and complete the manpage's env var list This includes everything I could find with an `ack 'ENV<' src/` command. Descriptions have been expanded on, expected datatypes are shown, and items are now broken up into categories. |
09:34 | |
kudo/nom: 600f58b | lizmat++ | docs/running.pod: Merge pull request #653 from flussence/doc-env-update Rewrite and complete the manpage's env var list |
|||
09:36
pierre-vigier left
09:38
X-Scale left
|
|||
thomax | is there a way to assign the stdout of a program to a var like $bla=`ps`; or do i need to open a pipe? | 09:39 | |
masak | thomax: qx[ps] | ||
AlexDaniel | ehhhh, not really unless you really need shell | 09:40 | |
thomax: my $output = run(‘cmd’, ‘arg1’, ‘arg2’, :out).out.slurp-rest | |||
masak | oh, this discussion again... | ||
AlexDaniel | masak: yeah, too bad it was not improved. Whatever | 09:41 | |
masak | yeah, the people who favor pragmatic solutions and getting things done with actual code won out. bummer. | 09:42 | |
AlexDaniel | thomax: you can still use shell though, if you understand the consequences | ||
thomax | i thought one of the paradigms was, perl X is a glue language :-( | 09:43 | |
dalek | kudo/nom: fb00ed3 | (Anthony Parsons)++ | tools/build/ (3 files): Fix `make install` when nqp is distro-installed During the installation process, tools/build/install-core-dist.pl is called to precompile the bundled non-CORE.setting libraries such as Test.pm. The way this 4fe18ce | (Anthony Parsons)++ | / (2 files): Add RAKUDO_PRECOMP_PREFIX env var As suggested by nine++, with some name tweaking |
||
09:43
dalek left
|
|||
masak | thomax: it *is*. go ahead and use qx[ps] | 09:43 | |
09:43
dalek joined,
ChanServ sets mode: +v dalek
|
|||
thomax | masak: let me try | 09:43 | |
kudo/nom: f71f962 | lizmat++ | / (2 files): Merge pull request #655 from flussence/install-fix-v2 Add an env var to override precompilation paths wholesale |
|||
thomax | masak: right, thats nice! but the backquote thing was a bit more intuitive. like most of p6 seems to be more indirect. why use square brackets with qx (qx may mean quote x (x = shell)??) | 09:46 | |
AlexDaniel | thomax: you can use any brackets | 09:47 | |
thomax: try xE2x8CxA9xE2x8CxAA :) | 09:48 | ||
thomax | well, AlexDaniel, i can even use qx`ps` as i tried now. | ||
thats easier for me. | |||
09:48
_nadim left
|
|||
AlexDaniel | thomax: qx existed in Perl 5 too | 09:49 | |
thomax | never needed it. | ||
ty | 09:52 | ||
09:53
Begi joined
09:55
pmurias joined
|
|||
RabidGravy | really, really, really don't know why this gdbm binding is segfaulting, I can see *where* (in the hash function) but just don't know why it is getting in the state it is | 09:56 | |
09:57
pierre-vigier joined
09:58
brrt joined
|
|||
masak | thomax: the backquotes are a bit too valuable to mean just qx in Perl 6. they've been stolen away to serve any user-defined quoting purpose instead. | 10:01 | |
thomax: also, I don't know about "intuitive". as a counterargument to that, in Python, the backticks mean repr() | 10:02 | ||
thomax | masak: but they work well with qx | ||
masak | yes, because *any* delimiters work well with qx :) | 10:04 | |
anyway, if you feel they look nice with qx, go ahead and use them | |||
thomax | yepp, best use for qx is backticks :-) | 10:05 | |
masak | might be good to know though that qx`...` doesn't give you variable interpolation (like `` does in Perl 5) | ||
for that, you'd need qqx`...` | |||
lizmat | computer: messages | ||
yoleaux | 02:13Z <jdv79> lizmat: the one on specs about s22 | ||
lizmat | .tell jdv79 nothing happened in that area afaik | ||
yoleaux | lizmat: I'll pass your message to jdv79. | ||
AlexDaniel | thomax: yeah, but in that case you might wonder how could you pass the data so that it does not blow up | 10:06 | |
10:08
DrForr left,
molaf_ left
|
|||
AlexDaniel | right now there is no way to do that with qqx, by the way. But you can come up with strict rules for your data (e.g. only numbers allowed). Or think about better options… | 10:09 | |
[Tux] | csv-ip5xs 50000 19.112 18.993 | 10:13 | |
csv-ip5xsio 50000 18.235 18.117 | |||
csv-ip5pp 50000 21.305 21.187 | |||
test 50000 25.142 25.024 | |||
test-t 50000 14.289 14.171 | |||
csv-parser 50000 51.503 51.385 | |||
lizmat | Don't think anybody posted this here yet: blogs.perl.org/users/damian_conway/...lives.html | 10:14 | |
[Tux] | with the three Inline::Perl5 times this time: note that pure-perl6 is faster than Text::CSV_XS with Inline::Perl5 | ||
10:14
raiph left
|
|||
RabidGravy | I'm not entirely surprised, but good job :) | 10:15 | |
10:15
spider-mario joined
|
|||
timotimo | the ip5 times are going to change quite a bit once the guts behind NativeCall get rewritten :) | 10:17 | |
also, hi #perl6 | |||
[Tux] | Damian++ | ||
10:18
dotness left
|
|||
[Tux] | I wholeheartedly agree | 10:18 | |
10:19
DrForr joined
10:21
pierre-vigier left
|
|||
dalek | kudo/nom: 98966bf | (Stefan Seifert)++ | / (2 files): Fix confusion about what $prefix does Renamed RAKUDO_PRECOMP_PREFIX to the originally suggested RAKUDO_PREFIX, because it does _not_ affect only precompilation, but more importantly module loading itself. |
10:21 | |
10:21
pierre-vigier joined
10:22
adhoc left
|
|||
nine | .tell flussence github.com/rakudo/rakudo/commit/98966bf157 | 10:22 | |
yoleaux | nine: I'll pass your message to flussence. | ||
10:22
vendethiel joined
10:23
Rinnve joined
|
|||
brrt | hi #perl6 | 10:23 | |
oh, cool | |||
masak | hi, brrt | ||
timotimo | oh hey brrt | ||
timotimo BBIAB | |||
brrt | yes, we're going to JIT the JIT out of nativecall... one of them days | 10:24 | |
hi masak, timotiom | |||
timotimo | |||
10:24
Rinnve left
|
|||
nine | masak: we now have to use MONKEY-SEE-NO-EVAL just to use EVAL, but still propagate the much more dangerous because easier to get wrong qx[]. I'm firmly with AlexDaniel on that one. | 10:24 | |
dalek | kudo/nom: 7e106c5 | lizmat++ | src/core/Date (2 files): Make sure we only allow Int amounts (for now) |
||
10:24
adhoc joined
|
|||
AlexDaniel | nine: exactly | 10:25 | |
m: EVAL 'test' | |||
camelia | rakudo-moar f71f96: OUTPUT«5===SORRY!5=== Error while compiling /home/camelia/EVAL_0Undeclared routine: test used at line 1» | ||
AlexDaniel | hmmm wanted to look at that awesome error message | 10:27 | |
m: EVAL(5) | |||
camelia | rakudo-moar f71f96: OUTPUT«5===SORRY!5=== Error while compiling /tmp/SrzcvadaRiEVAL 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/SrzcvadaRi:1------> 3EVAL(5)7⏏5<E…» | ||
AlexDaniel | there it is | ||
masak | nine: I can see the reasons behind the objects, sure. what I haven't seen is a better (but still attractive/usable/simple) alternative. | 10:36 | |
10:36
xpen_ left
|
|||
masak | & | 10:36 | |
nine | masak: yes. My feeling says that we were actually quite close to a good suggestion, but time constraints interfered :/ | ||
10:38
DrForr left
10:42
pierre-vigier left
|
|||
llfourn | m: sub is looser { } | 10:43 | |
camelia | rakudo-moar 7e106c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MJ1SjWZRkdMissing blockat /tmp/MJ1SjWZRkd:1------> 3sub is7⏏5 looser { } expecting any of: new name to be defined» | ||
llfourn | m: sub () is looser { } | 10:44 | |
camelia | rakudo-moar 7e106c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/mS_fHuvWPnCan't use unknown trait 'is looser' in a sub declaration.at /tmp/mS_fHuvWPn:1 expecting any of: rw raw hidden-from-backtrace hidden-from-USAGE pure default DEPRECATED i…» | ||
llfourn | so is looser is broken? | ||
dalek | kudo/nom: 9441bb2 | lizmat++ | src/core/Date.pm: Remove var we don't need anymore |
10:45 | |
lizmat | m: sub a is looser {} | 10:46 | |
camelia | rakudo-moar 7e106c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dyKjMCb7xACan't use unknown trait 'is looser' in a sub declaration.at /tmp/dyKjMCb7xA:1 expecting any of: rw raw hidden-from-backtrace hidden-from-USAGE pure default DEPRECATED i…» | ||
llfourn | 'is looser' is actually in that error message which is a bit LTA :\ | 10:47 | |
lizmat | m: sub a is looser(infix:<+>) {} | ||
camelia | rakudo-moar 7e106c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4MtREU_vCvCan't use unknown trait 'is looser' in a sub declaration.at /tmp/4MtREU_vCv:1 expecting any of: rw raw hidden-from-backtrace hidden-from-USAGE pure default DEPRECATED i…» | ||
lizmat | llfourn: that just means it's not finding the correct MMD candidate | 10:48 | |
llfourn: I suggest you rakudobug it | |||
llfourn | lizmat: okie dokes | ||
lizmat | m: sub a is looser(&infix:<+>) {} | ||
camelia | ( no output ) | ||
llfourn | lizmat: so I'll rakudobug it as an LTA error? | 10:49 | |
lizmat | well, yes, because apparently if you give it a Callable operator, it does work | ||
m: sub is looser(&infix:<+>) {} | 10:50 | ||
camelia | rakudo-moar 7e106c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/LBYKKaljtLMissing blockat /tmp/LBYKKaljtL:1------> 3sub is7⏏5 looser(&infix:<+>) {} expecting any of: new name to be defined» | ||
lizmat | m: sub () is looser(&infix:<+>) {} | ||
camelia | ( no output ) | ||
lizmat | afk until much later today& | ||
10:50
lizmat left,
domidumont left
10:52
lucasb joined
|
|||
[Tux] | I know utf8-c8 is WIP, but I got a new message, maybe it helps: | 10:54 | |
*** Error in `/pro/3gl/CPAN/rakudobrew/moar-nom/install/bin/moar': corrupted double-linked list: 0x000000000561a000 *** | |||
10:55
labster left
|
|||
lucasb | hai! anyone here is using irssi on xterm? (maybe others client/terminal work too); I tried to golf the camelia escape code thing and want to know what you see | 10:56 | |
10:56
_nadim joined
|
|||
lucasb | m: my \x = (0,2);m: 1 2 | 10:57 | |
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4Eva7aSupHTwo terms in a rowat /tmp/4Eva7aSupH:1------> 3,2);m: 17⏏5 2 expecting any of: infix infix stopper statement end …» | ||
lucasb | m: my \x = (0,3);m: 1 2 | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ACbzPtkibtTwo terms in a rowat /tmp/ACbzPtkibt:1------> 3,3);m: 17⏏5 2 expecting any of: infix infix stopper statement end …» | ||
lucasb | m: my \x = (0,4);m: 1 2 | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/g0dgDuWbkBTwo terms in a rowat /tmp/g0dgDuWbkB:1------> 3,4);m: 17⏏5 2 expecting any of: infix infix stopper statement end …» | ||
llfourn | I get nice colors on irssi mac :) | ||
lucasb | cool, and sorry for the spam :D | 10:58 | |
anyway, just I just found it interesting... maybe something is not escaping what it should escape | |||
10:58
pierre-vigier joined
10:59
TEttinger left
|
|||
llfourn | lucasb: you should totally see if it's exploitable! | 11:00 | |
maybe you can leak backspaces or something? | 11:01 | ||
11:02
nige1 left
|
|||
lucasb | I all know is print some colors :) but, yes, maybe there's some security concerns involved too | 11:02 | |
*All I know | |||
brrt | hackernews discussion on perl6 is pretty positive this time arround :-) | 11:05 | |
nine | indeed! | ||
11:06
kjs_ joined
|
|||
RabidGravy | that is weird | 11:07 | |
first one blue, the second green and the third red | |||
deniska is a lurking newcomer :) | 11:08 | ||
hahainternet | brrt: surprisingly positive | 11:10 | |
it really frustrates me how much trolling goes on | |||
brrt | hi deniska | ||
hahainternet | i never thought i'd see so many people screaming "I'm IGNORANT, WHY SHOULD I LEARN!!!" | ||
brrt | oh, i've stopped taking hn serious for 99% of the time | ||
hahainternet | well it's rather a right wing american paradise, but reddit etc too, slashdot is probably the worst but that's cynical burnouts :p | 11:11 | |
brrt | the relation between a 'hacker' on hacker news is like a 'financial engineer' to an engineer | ||
timotimo | wow, that's harsh | ||
hahainternet | HN is unfortunately a bit of a self parody a lot of the time | ||
it's been nice to read the views of neutral people though | |||
who took the time to read what p6 can offer | 11:12 | ||
RabidGravy | and don't get me started on slashdot | ||
hahainternet | i really should start blogging about python | ||
because i use it almost every day | |||
and i hate it | |||
i mean it's ok, i'd prefer it to ruby | |||
deniska | I personally like python | ||
hahainternet | deniska: the problem with python isn't so much the language, but the opinions imho | 11:13 | |
decorators are a terrible, terrible solution | |||
brrt | i like python too! | ||
llfourn | I dislike python too! | ||
hahainternet | but because they are superficially easy and newbie friendly, they're adopted heavily | ||
deniska | decorators have their place but they are often misused | ||
hahainternet | mixins also | ||
timotimo | i like python as well | ||
RabidGravy | yeah, I've done a fair bit of python over the last few years, and mostly I don't mind but every once in a while I have a WHY THE FUCK DO I HAVE TO DO THAT moment | ||
timotimo | but i haven't used it much after getting on perl6 :) | 11:14 | |
hahainternet | i don't want to make it seem like python is terrible, by 'i hate it' i mean 'i hate being limited by it' | ||
it's certainly no PHP, which i do genuinely despise | |||
llfourn | certainly not. | ||
timotimo | you can't claim you're good at a language unless you know exactly why you hate it :) | ||
hahainternet | indeed | ||
i haven't found much i hate about perl6 yet | |||
the repl is my big bugbear | |||
timotimo | oh god don't get me started on the repl | ||
deniska | The thing with python is that you can do quite interesting hacks with it but other people will look at you quite funny | 11:15 | |
hahainternet | if i knew of a better library than linenoise i'd do something about it | ||
RabidGravy | I actually prefer VB6 to PHP | ||
brrt | (well, timotimo, it's kind of true, isn't it? hn is probably more populated by growth hackers than any other form) | ||
hahainternet | RabidGravy: on error continue | ||
brrt | i prefer commodore basic to php | ||
timotimo | brrt: as opposed to academically trained hackers? | ||
brrt | actually computers-are-fun hackers | ||
deniska | In python if you really want you can make `import` statement pull modules from a mongodb database for example :) | 11:16 | |
job security → ∞ | |||
timotimo | i don't think i understand, brrt | ||
which is which now? %) | |||
llfourn | deniska: you can do that in perl too :) | 11:17 | |
RabidGravy | the only language I've actually been taught was COBOL in 1980 | ||
brrt | i think most 'hackers' on hn are not hackers as hackers would've understood the term some 10 years ago before hackers were cool | ||
deniska | llfourn: but in perl this sort of thing if not expected but at least is not too surprising :) | ||
brrt | as in, before we had 'growth hackers', 'life hackers', 'customer serivce hackers', etc | ||
peteretep | HN is an odd place | ||
11:18
pierre-vigier left
|
|||
brrt | before hacker was equivocated with 'startup guy in general' | 11:18 | |
deniska | (perl6 is my first perl btw >_> I guess I was too young for old perl) | ||
peteretep | I say this as someone with ~8k karma there | ||
deniska: I've bee doing old Perl since I was 14 ;-) | |||
hahainternet | deniska: how old are you, if you don't mind me asking | ||
timotimo | deniska: perl6 is my first perl, too | ||
deniska | brrt: nowadays hacker for general public is a criminal with a weird name like "4chan" | ||
hahainternet | and i only have like ~1k karma, but i verge on trolling on HN by accident a lot :( | ||
deniska | hahainternet: 22 | 11:19 | |
timotimo | brrt: i have no clue what "growth hacker" is supposed to mean ... maybe plant-related biohacker? :r | ||
brrt | yeah, but that was true 10 years ago too, deniska | ||
peteretep | timotimo: marketing person who has a hard in for startups | ||
brrt | no, a growth hacker is a salesman timotimo | ||
timotimo | oh | ||
peteretep | cf: hustler | ||
deniska | my first major language was VB6, second major was python | ||
peteretep | BRO FINDS A WAY | 11:20 | |
11:20
domidumont joined
|
|||
timotimo | i started with QBasic and then went on to VB5 | 11:20 | |
deniska | (not counting ones I used just here and there or didn't learn properly) | ||
brrt | lol peteretep | ||
11:20
rurban left
|
|||
peteretep | Qbasic to JS to Perl | 11:21 | |
11:21
kjs_ left
|
|||
peteretep | XSLT for a while too | 11:21 | |
11:21
mue left
|
|||
hahainternet | deniska: interesting, i'm about a decade older than you | 11:21 | |
RabidGravy | peteretep, I remember you being quite the JS hacker about 15 years ago | ||
hahainternet | and Perl 5 for life <3 | ||
peteretep | I'm only 32 for a few more months | 11:22 | |
then a long wait until I'm 64 | |||
deniska | hahainternet: when I was old enough to make my own PL decisions in life, python was getting onto prime stage :) | ||
RabidGravy | anyway off to get in the traditional traffic jam on the M25 | ||
hahainternet | RabidGravy: gross | ||
RabidGravy | have fun and play nicely | ||
hahainternet | RabidGravy: up north | 11:23 | |
deniska | perl was already perceived as "this old thing people used to put in cgi-bin directory" | ||
hahainternet | RabidGravy: we sink our motorways :D | ||
RabidGravy | well East - going to Essex | ||
peteretep | My hope in this life is that this channel becomes like #rust, not like #go | ||
hahainternet | oh? is #go that bad? i write it, i don't chat in it | ||
peteretep | or gonuts or whatever they call it | ||
It's a cesspit | |||
I think the presence of the designers and implementers here - like in #rust - will help | 11:24 | ||
deniska | I have gonuts in my autojoin and I am considering removing it from there | ||
I hardly used any go | |||
hahainternet | that's a real shame (about the channel) | ||
peteretep | #gonuts has a nasty aspect of "how dare you question design decisions!!!" | ||
hahainternet | peteretep: oh well that's probably because of the endless trolling, i wouldn't entirely blame them for that | 11:25 | |
peteretep | Which I think comes from not having anyone making those decisions there | ||
deniska | yeah, generics are actually useful :) | ||
hahainternet | Go itself is actually quite a lovely language | ||
11:25
kjs_ joined
|
|||
hahainternet | and deniska don't dismiss it before you've written a lot in it | 11:25 | |
to me, Go is a perfect counterpart to Perl 6 | |||
peteretep | hahainternet: I have been completely unable to love it | ||
hahainternet | it'll be some time before Perl6 is fast, and it will always be crazy expressive and flexible | ||
deniska | hahainternet: Maybe I just had no usecases in which go would shine | ||
hahainternet | but Go is the opposite, fast, easy, straightforward | ||
so together they cover the bases quite marvellously imho | 11:26 | ||
and deniska yeah understandable, and peteretep there's many cases where it shines unbelievably | |||
bpmedley | The Feed Operators are sweet | ||
peteretep | fair enough | ||
hahainternet | bpmedley: yeah i discovered those through |> in f# (or c#, i forget) | ||
peteretep: think of it as a very specialised tool, like a rebate plane or something | 11:27 | ||
deniska | I rewrote my websocket hello world from go to python3.5 and it became twice shorter :) | ||
hahainternet | deniska: and 10x slower | ||
(and single threaded) | |||
deniska | hahainternet: not a problem for IO bound program | ||
peteretep | hahainternet: It's being used as a generalized tool tho, and promoted as such | ||
11:27
RabidGravy left
|
|||
peteretep & | 11:27 | ||
hahainternet | peteretep: that's hard for me to argue against, but the point is simply that, it covers its realm of functionality very well | 11:28 | |
and you shouldn't dismiss owning a rebate plane because you have a multi-function workstation :p | |||
(woodworking analogies are superior to car analogies :D) | |||
anyway sorry to shift the topic of the channel | |||
brrt | languages are the topic of this channel, there's just a particular focus on perl6 | 11:29 | |
:-) | |||
hahainternet | :D | ||
well imho, they're lovely counterparts, i need to learn Rust too | |||
11:31
kjs_ left
|
|||
deniska | currently writing a multiplayer websocket snake clone :) | 11:32 | |
11:33
rurban joined
|
|||
deniska | (well, lazily writing, only put 2 evenings of coding in it even though started it a week ago) | 11:33 | |
hahainternet | deniska: websockets is excellent, but here's the rub | ||
the only way to prevent cheating | |||
is to carry out the same simulation on the backend | |||
so for each game you have ongoing, your backend must either mimic each step correctly, or become an abstracted form of the simulation | 11:34 | ||
there's a lot of ways to do this, but good luck writing them with Python | |||
timotimo | that's why you run the server on node.js, so you can have the same code on back- and front-end! | ||
hahainternet | timotimo: i hate you :p | ||
timotimo | (or, you know, use scala and scala.js) | ||
11:34
brrt left
|
|||
deniska | hahainternet: and that's the greatness of Snake | 11:34 | |
hahainternet | or you could, 'go simulate_game(clients)' | ||
deniska | hahainternet: step function is like a screen of code | ||
11:35
wamba joined,
wenderen joined
|
|||
hahainternet | deniska: ok, but do you simulate every step on the backend? | 11:35 | |
deniska | yes | ||
timotimo | also, if you have a snake game in your browser, you're screwed anyway WRT cheating. the user can just "ispect element" and throw in a snake AI that plays perfectly | ||
hahainternet | so you are aware that your backend will never run more than one of these at once right deniska | ||
(unless you're writing in Perl6 ofc) | |||
timotimo: that's true, but i'm talking about 'impossible' cheating, ie teleporting your snake | 11:36 | ||
deniska | hahainternet: actually clients will implement quite little state | ||
hahainternet: only enough to allow simple compression because sending the whole world every step is too much | |||
11:36
xpen joined
|
|||
wenderen | p6: say 3; | 11:36 | |
camelia | rakudo-moar 9441bb: OUTPUT«3» | ||
hahainternet | deniska: there's lots of options for how to do it, but the problem with 'netcode' in games is endemic, unless you run the full simulation on the backend, clients can cut corners, which is what 'cheating' is | 11:37 | |
anyway i don't want to imply you're doing it wrong | |||
deniska | hahainternet: I know that quite well | ||
hahainternet | ok smashing, i don't want to be patronising or offensive :D | ||
deniska | cheating is just a small (although important) problem which arises with multiplayer games | 11:38 | |
hahainternet | well imho it's the netcode portion that's the biggest pain | ||
deniska | the bigger problem is that speed of light is freaking slow and the latency of networks is even slower :) | ||
hahainternet | ultimately it's a question of ordering | ||
right, you're spot on | |||
no matter how fast your players internet | 11:39 | ||
it will be > 1 frame latency, and as a result, > character width movements usually | |||
i'm personally of the opinion this should be exposed to the user, and the backend server should report is current time constraints, ie how late it will accept a message from another client out of order | |||
so, if you play on a server with people with ping times under 20ms, the server can be roughly '1 frame safe' | |||
deniska | older games used extrapolation and tried to predict what will happen on a server until next message arrives | 11:40 | |
timotimo | that's possible, but not "across countries" | ||
certainly not "across continents", eh? | |||
11:40
st_iron joined
|
|||
st_iron | good afternoon | 11:40 | |
deniska | newer games use interpolation | ||
hahainternet | deniska: all games still do that | ||
timotimo: not at 20ms, but the point is that you'd set the allowable max on the server | |||
and so if you wanted to play across continents your server would be more like ~150ms safe | 11:41 | ||
deniska | hahainternet: source engine games do not do that iirc | ||
hahainternet | deniska: they certainly do, in fact it's configurable through the terminal | ||
11:41
kjs_ joined
|
|||
hahainternet used to play TFC semi competitively as a kid | 11:41 | ||
s/terminal/console | |||
colomon | ===SORRY!=== | 11:42 | |
P6M Merging GLOBAL symbols failed: duplicate definition of symbol Find | |||
:\ | |||
deniska | hahainternet: aren't you confusing interpolation with extrapolation? IIRC hl and source clients only lerp the state between two frames thet got from a server | ||
hahainternet | deniska: developer.valvesoftware.com/wiki/F...sation.jpg | ||
11:42
xpen left
|
|||
hahainternet | client vs server positions | 11:42 | |
deniska | hahainternet: extrapolation is happening on a server | ||
Woodi | hi today :) | 11:43 | |
11:43
skyl4rk joined
|
|||
deniska | hahainternet: well, actually it's even a bit more complex than that | 11:43 | |
Woodi votes for full server simulation eg. when gammers connects via telnet to your MUD ;) | |||
deniska | hahainternet: player sees the scene in a past and himself in a future :) | ||
11:44
rindolf left
|
|||
deniska | hahainternet: and a server tries to find a middle ground between other's people futures and player's past :) | 11:44 | |
hahainternet | deniska: indeed it is an 'unlimited' complexity problem | ||
deniska | a game with 10 player is actually 11 distinct game states… | ||
hahainternet | because there is no correct solution | ||
you can't 'fix' the problem in any way | |||
servers will always issue packets after a player has acted, but before the server has seen the action | 11:45 | ||
deniska | unless scientists discover wormholes or something | ||
hahainternet | haha indeed | ||
so it's just a question of 'how can we best compensate' | |||
i prefer the idea of very specifically listing the length of the packet window to all clients, and configuring a maximum | |||
so super competitive players can ensure they're playing on a server with say a ~10ms window | |||
deniska | displaying ping is a basic functionality of any multiplayer game :) | 11:46 | |
11:47
whj2819_ joined
|
|||
hahainternet | not ping, the server should set hard limits on the window packets are accepted in | 11:47 | |
11:47
whj2819_ left
|
|||
deniska | Snake is quite simple one because game tick happens once in 150ms | 11:47 | |
hahainternet | so if you have 9 players with 10ms pings and one player with a 100ms ping | ||
the server can only limit to ~150-200ms | |||
11:47
whj2819_ joined
|
|||
deniska | hahainternet: server just shouldn't overcompensate too much | 11:48 | |
for players with a slow ping | |||
hahainternet | deniska: the problem is that statement isn't translateable into anything objective | ||
there /is/ no proper solution for these scenarios | |||
that latency is unavoidable, and you have no idea if a player's packet will arrive ~180ms after another players | |||
deniska | hahainternet: make a game more enjoyable for 9 people with good ping rather than for 1 guy with a slow ping is a proper enough solution | 11:49 | |
hahainternet | deniska: indeed, but what i'm saying is, i prefer an even harder solution | ||
restrict the server side calculations to a time limit | |||
so that 180ms player cannot play on this 'low lag' server | |||
11:49
jstypo joined,
Begi left
|
|||
deniska | and competitive games nowadays have this functionality | 11:50 | |
hahainternet | do they? i've never seen a single one | ||
the closest you get is auto ping kick stuff | |||
deniska | isn't autokick what you talk about? | 11:51 | |
hahainternet | i must admit i'm pretty ignorant of MOBAs or MMOs or similar | ||
11:51
Milijus joined
|
|||
deniska | or are you saying about putting a cap on amount of lag compensation? | 11:51 | |
hahainternet | deniska: no, i'm talking about the server's simulation loop having a very strict simulation period | ||
right | |||
if you know all of your players have a ~10ms ping | |||
you can enforce that the server has a maximum 'time skew' of ~20ms | 11:52 | ||
just over a frame | |||
11:52
domidumont left,
Psyche^_ joined
|
|||
hahainternet | anyway i'm spamming the channel again, so i'm going to continue my morning ritual, brb :) | 11:52 | |
deniska | I feel like it is configurable, at least in quake-ish engines | ||
You can totally disable a server side lag compensation for sure | 11:53 | ||
so that all computations happen only from a current frame of a server | 11:54 | ||
11:56
Psyche^ left
11:58
rindolf joined
|
|||
nine | colomon: do you have any "use lib" in your code? | 11:58 | |
11:59
itaipu joined
|
|||
nine | colomon: good rules of thumb: put your "use lib" _before_ loading any modules. Never do a "use lib" in a module. | 11:59 | |
lucasb | nine: the 'use lib' after other 'use's will always be an issue? or will it get handled more gently in the future? | 12:00 | |
deniska | Actually websockets are not too suitable for real time games because they use tcp :) | 12:01 | |
nine | lucasb: I cannot see how we could make it work better. But maybe someone will have an idea | ||
lucasb | nine: ok, thanks | 12:02 | |
hahainternet | deniska: yeah it would be nice to see udp socket options | 12:03 | |
12:03
vendethiel left
12:04
snarkyboojum left
|
|||
deniska | hahainternet: as I recall you can send arbitrary data over webrtc | 12:05 | |
but that requires more elaborate server setup | |||
hahainternet | deniska: an interesting idea | ||
12:08
AlexDaniel left
|
|||
deniska | web sockets are supposed to be compatible with http, so udp websockets is something we won't see :) | 12:09 | |
12:10
zhi joined
|
|||
timotimo | for that you can use WebRTC, i thought? | 12:10 | |
12:11
DrForr joined
|
|||
whj2819_ | I use Konversation | 12:11 | |
deniska | yes, but webrtc is also designed to be peer to peer | ||
so a server in this picture becomes one of the clients | |||
12:12
Arrowhead joined,
rurban left
|
|||
timotimo | right. easy-peasy. | 12:13 | |
deniska | and are there webrtc client libraries for server-side stuff? | ||
timotimo | good question | 12:14 | |
UDP support in rakudo is super fresh, so you're not going to find perl6 libraries for that yet :) | |||
(though we do have websockets) | |||
12:16
st_iron left
12:17
hankache joined
|
|||
hankache | Good * #perl6 | 12:18 | |
12:19
zengargoylew left,
zengargoylew joined
|
|||
deniska | it seems like (good) webrtc client infrastructure is lacking even from the environment one could expect it to have it: node | 12:19 | |
12:19
wenderen left
|
|||
timotimo | about to head out for a long-ish car drive | 12:20 | |
have fun everyone! | |||
12:20
znpy joined
|
|||
timotimo | (don't have any fun i wouldn't have!) | 12:20 | |
:P | |||
12:21
pederindi joined
|
|||
hankache | timotimo drive safely ;) | 12:22 | |
whj2819_ | :) | ||
12:24
matematikaadit left
12:26
zakharyas joined,
labbe joined,
domidumont joined
12:29
espadrine joined
|
|||
labbe | p6: 1..5 | 12:32 | |
camelia | rakudo-moar 9441bb: OUTPUT«WARNINGS for /tmp/tmpfile:Useless use of ".." in expression "1..5" in sink context (line 1)» | ||
hankache | m: say 1..5 | 12:33 | |
camelia | rakudo-moar 9441bb: OUTPUT«1..5» | ||
hankache | m: say |(1..5) | ||
camelia | rakudo-moar 9441bb: OUTPUT«12345» | ||
hankache | labbe is this what you were looking for ? ^^ | 12:34 | |
deniska | m: say ½+⅓ | ||
camelia | rakudo-moar 9441bb: OUTPUT«0.833333» | ||
deniska | why is it a thing? :) | ||
blub | thats adorable | 12:35 | |
hahainternet | deniska: because they're numbers | ||
m: say 2² | |||
camelia | rakudo-moar 9441bb: OUTPUT«4» | ||
blub | aaaa | ||
deniska | m: say 2¹⁰ | ||
camelia | rakudo-moar 9441bb: OUTPUT«1024» | ||
12:35
rurban joined
|
|||
deniska | woah | 12:35 | |
hahainternet | m: say 2² ÷ ½ | 12:36 | |
camelia | rakudo-moar 9441bb: OUTPUT«8» | ||
hahainternet | if you really want to fancy it up a bit | ||
deniska | √2 doesn't work :P | 12:37 | |
12:38
rurban left
|
|||
ilmari | m: sub prefix:<√>($v) { $v.sqrt }; √4 | 12:39 | |
camelia | ( no output ) | ||
ilmari | m: sub prefix:<√>($v) { $v.sqrt }; say √4 | ||
camelia | rakudo-moar 9441bb: OUTPUT«2» | ||
hahainternet | deniska: yeah and you can't do sub variables by default | ||
but ^^ | |||
ilmari | m: sub prefix:<√>($v) { $v.sqrt }; say √2 | ||
camelia | rakudo-moar 9441bb: OUTPUT«1.4142135623731» | ||
12:40
kjs_ left
|
|||
deniska | yay for unicode, yay for custom operators and yay for the insanity :) | 12:40 | |
colomon | nine: that’s really quite impossible in emmentaler, as the output of the File::Temp module is what is being sent to use lib. | 12:41 | |
lucasb | there are itemized and non itemized lists. a slip is a list. the concept of itemization also applies to slips? for example: 'for $slip {...}' iterates as if it wasn't itemized | ||
12:42
hankache left
|
|||
lucasb | ok, maybe it makes sense that '$slip' is not itemized. I just wanted to make sure | 12:43 | |
12:43
colomon left
12:44
colomon joined,
Actualeyes joined
12:46
xinming_ joined
12:47
znpy left,
Ven joined
|
|||
dalek | p: ae6c8ad | (Pawel Murias)++ | t/nqp/59-nqpop.t: Fix test descriptions. |
12:47 | |
p: 6129cec | (Pawel Murias)++ | t/nqp/87-parametric-6model.t: Strengthen nqp::typeparameters test. |
|||
p: a845a92 | (Pawel Murias)++ | src/vm/js/ (2 files): [js] Implement nqp::nan, nqp::inf, nqp::neginf, nqp::isnanorinf. |
|||
p: 5246f77 | (Pawel Murias)++ | t/nqp/59-nqpop.t: Test nqp::nan, nqp::inf, nqp::neginf, nqp::isnanorinf. |
|||
p: c0b4406 | (Pawel Murias)++ | src/vm/js/ (3 files): [js] Implement nqp::srand, nqp::rand. |
|||
p: 0a390ce | (Pawel Murias)++ | t/nqp/59-nqpop.t: Test nqp::srand_n, nqp::rand. |
|||
p: 215eafd | (Pawel Murias)++ | t/nqp/59-nqpop.t: Test nqp::isgt_s, nqp::islt_s. |
|||
12:50
xinming left
|
|||
pmurias | Rakudo JavaScript backend grant proposal draft: github.com/pmurias/grant_proposal/.../draft.pod | 12:51 | |
any feedback would be welcome | |||
12:51
xinming joined
12:53
xinming_ left,
mue joined
12:54
rurban joined
|
|||
whj2819_ | good night everybody :) | 12:55 | |
12:56
xinming_ joined,
BenGoldberg joined
12:58
pmurias left
12:59
rindolf left
|
|||
llfourn is super excited to see what pmurias++ can do rakudo on js | 12:59 | ||
12:59
xinming left
13:01
kjs_ joined
|
|||
Arrowhead | Is nqp supposed to be a subset of perl6? | 13:02 | |
github.com/perl6/nqp/blob/master/e.../loops.nqp works with nqp, but rightly fails with perl6. | 13:03 | ||
llfourn | Arrowhead: not a strict subset | ||
it is a limited perl6 like language :) | 13:04 | ||
Arrowhead | to be specific: what does "my $i := 0;" mean in nqp? | ||
13:04
rindolf joined
|
|||
llfourn | Arrowhead: technically the same thing as in perl 6 I think. It binds the LHS to the right. | 13:04 | |
Juerd | Arrowhead: It's "not quite perl" :) | 13:05 | |
Arrowhead | rrright | ||
I assu | |||
13:05
hobbs left
|
|||
Arrowhead | me that there was a reason it wasn't written as my $i = 0; | 13:05 | |
13:05
Gardner left
13:06
hoelzro left
|
|||
Arrowhead | ah. "assignment not supported" | 13:06 | |
13:06
labbe left
|
|||
llfourn | ^^ :) | 13:06 | |
13:06
dylanwh left
|
|||
Arrowhead | except it is, but using the wrong operator, it seams. | 13:06 | |
13:06
luis left,
lucs left
|
|||
llfourn | := is not assignment it's binding | 13:06 | |
Arrowhead | or does it change the current value of 0? | ||
deniska | (so, rakudo is like pypy, nqp is like rpython?) | 13:07 | |
13:07
retupmoca left
13:08
aenaxi left
|
|||
llfourn | Arrowhead: do you mean does $i++ change the current value of 0? | 13:08 | |
$i++ in nqp is short for $i := $i + 1; | |||
Arrowhead | it doesn't seem to when I test it, but I'm still wondering what $i gets bound to. | 13:09 | |
13:09
whj2819_ left,
mue left
13:11
lucasb left,
zhi left
|
|||
Woodi | pmurias: "...to full Perl 6" in 3 months ? | 13:11 | |
llfourn | Arrowhead: I'm not exactly sure what you mean, $i is bound to 0, then 1 then 2.. | 13:12 | |
there is a breif explanation here: docs.perl6.org/language/operators#infix_%3A%3D | |||
brief* | |||
Arrowhead | ok, I see, perl6 runs it when I replace $i++ with $i := $i + 1; | 13:13 | |
llfourn | Arrowhead: ahhh now I know what you mean :) | 13:14 | |
sorry wasn't thinking :P | |||
yeah I guess := is a little different in NQP vs rakudo | |||
llfourn learns something new | |||
deniska | := seems to be the same, ++ seems to be different | 13:15 | |
llfourn | deniska: right. I confused myself :D | 13:16 | |
llfourn unlearns the incorrect thing he just learnt | |||
13:16
domidumont left
13:17
xpen joined,
vividsnow joined
|
|||
llfourn | deniska: is pypy written in rpythnon? | 13:19 | |
13:21
xpen left
|
|||
deniska | llfourn: it is written in both rpython and python iirc | 13:22 | |
it's complicated :) | |||
uruwi | Can I assume that a num (lowercase n) is always a 64-bit float? | 13:23 | |
llfourn | deniska: interesting :) | ||
uruwi: I guess unless it's on a 32bit machine? | |||
uruwi | I'll use num64 to be safe. | 13:25 | |
llfourn | uruwi: mmm I think that's what it's for | ||
13:25
pmurias joined
13:27
Ven left
13:28
Ven joined
|
|||
nine | colomon: ik, then I'll need some more information about that use case. Sounds rather strange to me | 13:30 | |
13:32
rurban left
13:33
disturbingly_rea joined,
xpen joined
|
|||
disturbingly_rea | m: sub postfix:<!>(i) { if i < 2 {1} else {(i-1)! * i}} ; say 3! | 13:34 | |
camelia | rakudo-moar 9441bb: OUTPUT«Type check failed in binding <anon>; expected Complex but got Int in sub postfix:<!> at /tmp/jEYVknPZ0l line 1 in block <unit> at /tmp/jEYVknPZ0l line 1» | ||
ilmari | m: say i | ||
camelia | rakudo-moar 9441bb: OUTPUT«0+1i» | ||
disturbingly_rea | m: sub postfix:<!>(Int i) { if i < 2 {1} else {(i-1)! * i}} ; say 3! | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/cdSi9Qp_IfA parameter may only have one prefix type constraintat /tmp/cdSi9Qp_If:1------> 3sub postfix:<!>(Int i7⏏5) { if i < 2 {1} else {(i-1)! * i}} ; sa» | ||
13:34
xinming joined
|
|||
llfourn | m: sub postfix:<!>(\i) { if i < 2 {1} else {(i-1)! * i}} ; say 3! | 13:34 | |
camelia | rakudo-moar 9441bb: OUTPUT«6» | ||
disturbingly_rea | Iam so dumb | 13:35 | |
13:35
Arrowhead left
|
|||
nine | pmurias: you should mention in the benefits section that you write lots of tests for nqp. And I guess you will do the same for rakudo :) | 13:36 | |
llfourn | disturbingly_rea: I am not convinved yet :). That's actually a tricky situation. Your first one tries to make a sub with a literal imaginary number as the only accepted argument. | ||
m: sub postfix:<!>(a) { if i < 2 {1} else {(i-1)! * i}} ; say 3! | |||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Wt6eD6ivv7Invalid typename 'a' in parameter declaration.at /tmp/Wt6eD6ivv7:1------> 3sub postfix:<!>(a7⏏5) { if i < 2 {1} else {(i-1)! * i}} ; sa» | ||
llfourn | if you didn't choose i you would have a nicer error message | 13:37 | |
13:37
xinming_ left
|
|||
llfourn | m: sub fun(i) { i ** 2 }; say fun i; | 13:38 | |
camelia | rakudo-moar 9441bb: OUTPUT«-1+1.22464679914735e-16i» | ||
llfourn | pitty p6 couldn't figure that shoul be -1 | ||
13:39
kid51 joined
|
|||
ilmari | m: say sin pi | 13:41 | |
camelia | rakudo-moar 9441bb: OUTPUT«1.22464679914735e-16» | ||
disturbingly_rea | m: my \γ = 0.577215665; sub Γ(\z) { (e**(-γ*z) / z) * ([*] map { ($_ / ($_ + z)) * e**(z/$_) }, (1..30_000)) } ; say Γ(i) | ||
camelia | rakudo-moar 9441bb: OUTPUT«-0.154952410918664-0.49802396826629i» | ||
13:43
mue joined
|
|||
disturbingly_rea | m: my \γ = 0.577215665; sub Γ(\z) { (e**(-γ*z) / z) * ([*] map { ($_ / ($_ + z)) * e**(z/$_) }, (1..30_000)) } ; say Γ(7).round | 13:45 | |
13:45
autogen joined
|
|||
camelia | rakudo-moar 9441bb: OUTPUT«719» | 13:45 | |
13:46
disturbingly_rea left
13:47
leont joined
13:50
rhr left
13:51
rhr joined
13:52
pmurias left
13:53
xinming_ joined
13:56
xinming left
13:59
Rotwang left,
Rotwang joined
|
|||
colomon | nine: the use case is that emmentaler sets up a temp directory scratch pad to “install” modules to for smoking. | 14:01 | |
nine: github.com/tadzik/emmentaler/blob/.../one-smoke | |||
14:02
hobbs joined,
hobbs left,
hobbs joined
14:03
luis joined
14:04
brrt joined,
dylanwh joined,
zoosha joined,
Gardner joined
14:06
xpen left
14:07
xpen joined,
hobbs left,
mue left,
xpen left
14:08
luis left,
xpen joined,
dylanwh left
14:09
Gardner left,
Skarsnik joined
14:11
zoosha left
14:14
ellybelly left,
ellybelly joined
14:16
Ara joined
14:17
Ara is now known as Guest18394
14:18
mue joined
14:21
shibly joined,
shibly left
|
|||
Skarsnik | Hello | 14:22 | |
blub | hi skarsnik | ||
hahainternet | hola | ||
14:23
hankache joined
14:24
aenaxi joined
14:28
mue left
|
|||
rindolf | Skarsnik: hi, sup? | 14:31 | |
flussence | ah, sorry about that nine. I was blindly trying to shoehorn some naming consistency in there but you're right | 14:35 | |
yoleaux | 10:22Z <nine> flussence: github.com/rakudo/rakudo/commit/98966bf157 | ||
14:37
brrt left
14:39
vividsnow1 joined,
vividsnow left,
vividsnow1 is now known as vividsnow
14:40
pmurias joined
14:41
rjbs left,
rjbs joined
|
|||
nine | flussence: no worry :) | 14:42 | |
pmurias | Woodi, nine: thanks for feedback | ||
14:43
hankache left
|
|||
pmurias | nine: I'm not sure how much rakudo tests I will need to write, roast seems much more exhaustive then the nqp test suit | 14:43 | |
nine | colomon: that's an unusual use case. I wonder if we could handle the situation a bit smarter. | ||
pmurias: it probably is. But there's also a lot more to test | 14:44 | ||
pmurias: in any case you do have a much better track record than me in that regard :) | 14:45 | ||
14:45
domidumont joined
|
|||
nine loves having tests, not as much writing tests | 14:45 | ||
14:45
xpen left,
xpen_ joined
14:46
xpen_ left,
jstypo left
14:47
retupmoca joined,
xpen joined,
luis` joined,
lucs joined,
hobbs joined
14:48
zoosha joined
14:50
darutoko left,
leont left,
hoelzro joined
14:55
dylanwh joined,
Ox0dea joined
|
|||
Ox0dea | m: say sum grep {$_%3 * $_%5 < 1}, ^1000 | 14:55 | |
camelia | rakudo-moar 9441bb: OUTPUT«233168» | ||
Ox0dea | Is there a niftier way to say that? | ||
14:55
peteretep left
|
|||
timotimo | my drive has been going rather well | 14:56 | |
taking a break now | |||
14:56
mst left
|
|||
Ox0dea | m: say grep * %% [3,5], ^10 | 14:57 | |
camelia | rakudo-moar 9441bb: OUTPUT«(0 2 4 6 8)» | ||
14:57
mst joined
|
|||
Ox0dea | It'd be nice if that did "the right thing". | 14:57 | |
14:58
bitmap left
|
|||
a3r0 | Is there perl6 equivalent to perl5 "perl -pie 's/from/to/' file.txt" one-liner? | 14:59 | |
jast | Ox0dea: this seems cute: sum grep so not * % (3&5), ^1000 | ||
14:59
ugexe left
|
|||
jast | I only just started out with Perl 6, though. there may be something nicer. | 14:59 | |
timotimo | use the any junction for that | 15:00 | |
colomon | m say grep * %% 3 | 5, ^10 | ||
m: say grep * %% 3 | 5, ^10 | |||
camelia | rakudo-moar 9441bb: OUTPUT«(0 1 2 3 4 5 6 7 8 9)» | ||
15:00
xpen_ joined
|
|||
colomon | m: say grep * %% (3 | 5), ^10 | 15:00 | |
camelia | rakudo-moar 9441bb: OUTPUT«(0 3 5 6 9)» | ||
jast | oh, right, I didn't know about %%... | ||
timotimo | easy | ||
no need for the so | |||
and there is a none junction as well | |||
^ is the operator for that | |||
llfourn | a3r0: I don't think so. text processing one liners aint Perl 6's thing atm | 15:01 | |
Ox0dea | m: sum grep * %% (3|5), ^1000 | 15:03 | |
camelia | ( no output ) | ||
15:03
peteretep joined
|
|||
Ox0dea | It's beautiful. | 15:03 | |
15:03
xpen left
|
|||
Ox0dea | Why not have camelia report the value of the last expression? | 15:03 | |
15:04
xpen_ left
|
|||
Ox0dea | `say` and the rakudo diagnostics are just noise. :< | 15:04 | |
15:09
LambdaCat joined
|
|||
pmurias | Woodi: re 3 months, most of Perl 6 is built of building blocks | 15:09 | |
Woodi: when I implement those correctly I hope things will just fall into place and start working correctly | 15:10 | ||
Woodi: I have a lot of the building block done from having implemented NQP | |||
llfourn | m: grep { $_ %% 3 or $_ %% 5 }, ^100_000 # seems to be much faster than %% (3|5) disappointingly | 15:12 | |
camelia | ( no output ) | ||
llfourn | m: grep { $_ %% (3|5) }, ^100_000 | 15:13 | |
camelia | ( no output ) | ||
15:13
havenwood joined
|
|||
a3r0 | I just found a document for perl6 oneliner github.com/dnmfarrell/Perl6-One-Liners | 15:13 | |
Ox0dea | llfourn: What do you use to benchmark? | ||
llfourn | Ox0dea: in this case my eyes :) | 15:14 | |
a3r0: I stand happily corrected :) | 15:15 | ||
15:17
ingve joined
|
|||
jast | seems like the only thing missing for the original P5 example is -i for in place operation | 15:17 | |
llfourn sleep & | 15:18 | ||
15:23
xpen joined,
telex left
15:24
telex joined
15:27
xpen left,
llfourn left
|
|||
BenGoldberg | And the ability to change the record separators. So, find . -blahblahblah -print0 | perl6 -how-do-i-split-on-nul -ne '...' | 15:28 | |
15:30
JulesFM joined
|
|||
JulesFM | Is it possible to write a regexp in p6 that will match on lines that contain all of a set of substrings, but in any order along the line? | 15:32 | |
I can't do it in PCREs, wondering if p6 can do it now, as its regexp support is better. | |||
BenGoldberg | Even perl5 can do that. | 15:34 | |
JulesFM | How? Say I've got the strings abc, def and ghij and the line of characters "azazghijmnmnabcopopdef", what does the PCRE that will match that look like? | 15:35 | |
15:35
khw joined
|
|||
Ulti | JulesFM you can even use your PCRE regex in Perl 6 since it supports Perl 5 style regex | 15:35 | |
BenGoldberg | my $regex = "(?:" . join('', map "(?>.*$_)", @thesubstrings ) . ")"; | ||
15:36
sammers left
|
|||
JulesFM | Must go and read up on my PCREs in that case, can't remember what ?: does | 15:37 | |
15:37
ellybelly left
|
|||
Ox0dea | Non-capturing group. | 15:38 | |
15:40
Zero_Dogg left
15:41
Zero_Dogg joined
15:42
tef joined
|
|||
JulesFM | BenGoldberg : Is the "(?>.*$_)" specific to perl 6? Trying that map in Perl 5 produces an empty list. | 15:43 | |
If so, what does it do? | 15:44 | ||
Ulti | m: BEGIN my $then = now; say now - $then; | ||
camelia | rakudo-moar 9441bb: OUTPUT«0.01199575» | ||
15:44
xxpor_lap joined
|
|||
Ulti | Ox0dea ^ benchmarking | 15:44 | |
ZoffixWin | m: say now - INIT now; | 15:45 | |
camelia | rakudo-moar 9441bb: OUTPUT«0.0021937» | ||
Ox0dea | Ulti: I've been spoiled by Ruby's benchmark-ips. | ||
BenGoldberg | Err, that's a typo, it should be "(?=.*$_)" | ||
Ox0dea | JulesFM: ^ Which is called "positive lookahead". | 15:46 | |
Ulti | Ox0dea I have a little prime benchmark gist.github.com/MattOates/c5879a07b1ef2c013097 | ||
BenGoldberg | Anything inside of (?=) is a zero-width lookahead | ||
15:46
billN1VUX joined
|
|||
BenGoldberg | JulesFM, read perldoc.perl.org/perlre.html | 15:47 | |
Ox0dea | JulesFM: Read www.regular-expressions.info/lookaround.html | ||
Ulti | Ox0dea also have you tried `perl6 --profile myscript.p6` yet? | ||
Ox0dea | Ooh! | ||
Ulti | because that will make you happy :3 | 15:48 | |
Ox0dea | Ulti: This is glorious. | ||
15:48
sammers joined
|
|||
Ulti | thank jnthn++ | 15:48 | |
ZoffixWin | .u Σ | 15:49 | |
yoleaux | U+03A3 GREEK CAPITAL LETTER SIGMA [Lu] (Σ) | ||
ZoffixWin | m: say Σ ^10 | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/BTk_pBj7iwUndeclared routine: Σ used at line 1» | ||
15:50
derpydev joined
15:51
Arrowhead joined
|
|||
rindolf | ZoffixWin: you win! | 15:52 | |
ZoffixWin: sup? | |||
colomon | continuing saga of trying to get ABC running again on bleeding edge rakudo: | ||
abc2ly | |||
Cannot unbox a type object | |||
in sub MAIN at /home/colomon/.rakudobrew/bin/../moar-nom/install/share/perl6/site/bin/abc2ly line 10 | |||
in block <unit> at /home/colomon/.rakudobrew/bin/../moar-nom/install/share/perl6/site/bin/abc2ly line 2 | |||
Ox0dea | Python has `foo.__doc__`, Ruby has `$ ri foo`. How do we access "online" documentation? | ||
colomon | m: say Int.HOW | 15:53 | |
camelia | rakudo-moar 9441bb: OUTPUT«Perl6::Metamodel::ClassHOW.new» | ||
colomon | m: say Int.WHY | ||
Ox0dea | Or is there as yet none? | ||
camelia | rakudo-moar 9441bb: OUTPUT«(Any)» | ||
ZoffixWin | Ox0dea, there's p6doc, but I've never used it | ||
colomon | m: say Int.WHAT | ||
camelia | rakudo-moar 9441bb: OUTPUT«(Int)» | ||
colomon | m: say Int.WHO | ||
camelia | rakudo-moar 9441bb: OUTPUT«Int» | ||
ZoffixWin | m: say Int.WHERE | ||
camelia | rakudo-moar 9441bb: OUTPUT«17605472» | ||
Ox0dea | Like, for quickly determining what exactly the `one` top-level routine does. | ||
hahainternet | i think the .WHY method should produce that | 15:54 | |
but as you can see above, it doesn't | |||
ZoffixWin | m: say one.WHY | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MF16ZplSZMFunction "one" may not be called without arguments (please use () or whitespace to denote arguments, or &one to refer to the function as a noun)at /tmp/MF16ZplSZM:1------> 3say one7⏏5.WH…» | ||
ZoffixWin | .oO( one top-level routine? ) |
||
m: say is-prime.WHY | |||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/5wPn3fsfPWCalling is-prime() will never work with proto signature ($)at /tmp/5wPn3fsfPW:1------> 3say 7⏏5is-prime.WHY» | ||
ZoffixWin | m: say &is-prime.WHY | ||
camelia | rakudo-moar 9441bb: OUTPUT«Nil» | ||
Ulti | I think this is because the POD isnt inline with the source? | 15:55 | |
Ox0dea | ZoffixWin: Is `is-prime` not a "top-level routine", then? | ||
15:55
bitmap joined
|
|||
ZoffixWin | Ox0dea, I've no idea what a "top-level routine" is to you | 15:55 | |
Ox0dea | ZoffixWin: It's a routine available at the top level. | 15:56 | |
hahainternet | interesting HN link: en.wikipedia.org/wiki/Music_Macro_Language | ||
might be a fun grammar | |||
bit too late for advent lol | |||
ZoffixWin | Ox0dea, is-prime is provided Int class | ||
Ox0dea | ZoffixWin: But it's "available" from anywhere. | 15:57 | |
Ulti | its also exported yes | 15:58 | |
15:58
domidumont left
15:59
domidumont joined
|
|||
ZoffixWin | Ox0dea, my point was that to find documentation for is-prime method/sub you'd read documentation for Int class that provides it and not look for a "top-level routine" documentation | 15:59 | |
Ox0dea | ZoffixWin: Gotcha. So every "top-level routine" has actually been exported from elsewhere? | ||
Ulti | Ox0dea all of the built in stuff is like that its not like python or ruby where you have to explicitly say you want to import all this stuff its all available all of the time | ||
ZoffixWin | You can perform search on docs.perl6.org. p6doc command might allow lookup too | 16:00 | |
Ox0dea, yup | |||
16:00
derpydev left
|
|||
Ox0dea | Ulti: Hm? Python is a lot like Perl in this regard. | 16:00 | |
Ulti | Perl 5 sure | ||
16:01
CoconutC1ab joined
|
|||
Ulti | though Perl 5 had a tonne of keywords which were essentially the same thing | 16:01 | |
16:01
derpydev joined
|
|||
Ox0dea | Ruby's "top-level methods" live in Kernel and become available on every object through inheritance. I think that's a better model. :< | 16:01 | |
Ulti | they arent top level methods | ||
Ox0dea | I understand that now. | ||
16:02
derpydev left
|
|||
ZoffixWin | Ox0dea, is-prime wouldn't make sense on every object :P | 16:02 | |
Ulti | the more specific types will end up calling their more specific exported function due to multi dispatch though | ||
ZoffixWin | Ox0dea, and Perl 6 has Mu class from which all other classes inherit: docs.perl6.org/type/Mu | ||
16:03
derpydev joined,
daxim joined
|
|||
Ox0dea | ZoffixWin: Precisely! That's why it's a little odd for it to be "accessible" from anywhere. | 16:03 | |
16:03
CoconutCrab left
|
|||
ZoffixWin | Ox0dea, it's just convinience: you can use them as subroutines or use them as methods | 16:03 | |
16:04
athos joined
|
|||
ZoffixWin | m: say 42; 42.say | 16:04 | |
Ulti | Ox0dea multi dispatch and types! it *just works* multi sub is-prime(Int $n) { inty version } multi sub is-prime(Num $n) { numy version } | ||
camelia | rakudo-moar 9441bb: OUTPUT«4242» | ||
16:04
derpydev left,
ugexe joined
|
|||
Ulti | not that its done that way I dont think | 16:04 | |
16:04
derpydev joined
|
|||
ZoffixWin | m: 2.Num.is-prime | 16:04 | |
camelia | rakudo-moar 9441bb: OUTPUT«Method 'is-prime' not found for invocant of class 'Num' in block <unit> at /tmp/ifdLmwvFyE line 1» | ||
Ulti | since Numeric exists | ||
Ox0dea | ZoffixWin: What was that? | 16:05 | |
ZoffixWin | Ox0dea, where? | ||
Ulti | m: say 2.Numeric.is-prime | ||
camelia | rakudo-moar 9441bb: OUTPUT«True» | ||
ZoffixWin | m: say '2'.Int.is-prime | ||
camelia | rakudo-moar 9441bb: OUTPUT«True» | ||
Ox0dea | So why not `2.Num`? | ||
ZoffixWin | Ox0dea, 'cause it's a floating point number, which is never a prime? :P | 16:06 | |
Ulti | you could but the first step would be does it have any decimal places its not prime :P which is a bit silly | ||
ZoffixWin | I dunno, I'm not the one who designed this stuff :P | ||
Probably should rakudobug that | 16:07 | ||
Ulti | why? | ||
m: is-prime 2.0 | |||
camelia | rakudo-moar 9441bb: OUTPUT«WARNINGS for /tmp/GzJtLRno6D:Useless use of "is-prime 2.0" in expression "is-prime 2.0" in sink context (line 1)» | ||
Ulti | m: say is-prime 2.0 | ||
camelia | rakudo-moar 9441bb: OUTPUT«True» | ||
Ulti | m: say is-prime 2.1 | ||
camelia | rakudo-moar 9441bb: OUTPUT«True» | ||
ZoffixWin | m: say 2.0.WHAT | ||
camelia | rakudo-moar 9441bb: OUTPUT«(Rat)» | ||
Ulti | heh | ||
nice | |||
such lies | |||
ZoffixWin | Ulti, why: DWIM | ||
Ulti | wait a second | 16:08 | |
ZoffixWin | I have a thing and I wanna know if it's prime. Coerce it into Int if ya havta | ||
m: say 2.5.is-prime | |||
camelia | rakudo-moar 9441bb: OUTPUT«Method 'is-prime' not found for invocant of class 'Rat' in block <unit> at /tmp/tV5skEcMpl line 1» | ||
Ulti | m: say is-prime ? | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wyDx7K4JG9Prefix ? requires an argument, but no valid term foundat /tmp/wyDx7K4JG9:1------> 3say is-prime ?7⏏5<EOL> expecting any of: prefix» | ||
ZoffixWin | m: say is-prime (2.5) | ||
camelia | rakudo-moar 9441bb: OUTPUT«True» | ||
Ox0dea | Yikes. | ||
ZoffixWin | m: say (2.5).is-prime | ||
camelia | rakudo-moar 9441bb: OUTPUT«Method 'is-prime' not found for invocant of class 'Rat' in block <unit> at /tmp/1v5nk7Rwp_ line 1» | ||
Ox0dea | This is obviously bad? | 16:09 | |
ZoffixWin | Ox0dea, it's a bug, yes | ||
hm | 16:10 | ||
m: say is-prime 2.Num | |||
camelia | rakudo-moar 9441bb: OUTPUT«True» | ||
ZoffixWin | m: say is-prime '2' | ||
camelia | rakudo-moar 9441bb: OUTPUT«True» | ||
ZoffixWin | m: say is-prime '2.4242' | ||
camelia | rakudo-moar 9441bb: OUTPUT«True» | ||
ZoffixWin | Well, I got my wish, it coerces it into Int :P | 16:11 | |
Ulti | yeah | ||
ZoffixWin | m: say is-prime '-2.4242' | ||
camelia | rakudo-moar 9441bb: OUTPUT«False» | ||
ZoffixWin | Not a bug then, I guess. | ||
Ulti | dunno its maybe not the greatest | ||
ZoffixWin | The alternative is it'll throw | 16:12 | |
Ox0dea | Should do. | ||
Ulti | like you'd sort of either expect that or two other things, testing the actual value and if it has decimal places just False, or throw a method not found | ||
16:13
daxim left
|
|||
Ulti | I'd expect if it does anything other than throw no found for it to actually test the number I have rather than just truncate | 16:13 | |
does it round? or truncate? | |||
m: say is-prime 3.5 | 16:14 | ||
camelia | rakudo-moar 9441bb: OUTPUT«True» | ||
Ulti | m: say is-prime 3.6 | ||
camelia | rakudo-moar 9441bb: OUTPUT«True» | ||
Ulti | m: say is-prime 3.9 | ||
camelia | rakudo-moar 9441bb: OUTPUT«True» | ||
ZoffixWin | Rakudobugged: rt.perl.org/Ticket/Display.html?id=127044 | ||
Ulti | this raises the question whats more prime 3.9 or 3.99 >:3 | ||
flussence | technically it's not wrong, I mean you can't divide these by any integer and get an integer result... | ||
m: say is-prime 4.1 | 16:15 | ||
camelia | rakudo-moar 9441bb: OUTPUT«False» | ||
ZoffixWin | Except it's not a natural number :P | ||
colomon ’s ABC “Cannot unbox a type object” issue is coming in the boilerplate @binaries = flat @installations.map: { .files('bin/abc2ly') }; when CompUnit::Repository::Installation.files is called | |||
flussence | that one's wrong though | ||
Ulti | flussence: you beat me to it | ||
colomon | afk # packing presents into van | ||
Ulti | yeah the bug is its wrong 50% of the time :D | ||
flussence | :D | ||
Ulti | well slightly less than 50% thanks to 2 | 16:16 | |
Ox0dea | Thanks, 2. | ||
Ulti | with big nums its infinitely wrong infinitely many times o___O | ||
16:16
pierre-vigier joined
|
|||
dalek | kudo-star-daily: 891398c | coke++ | log/ (8 files): today (automated commit) |
16:17 | |
rl6-roast-data: bdc6776 | coke++ | / (7 files): today (automated commit) |
|||
16:18
Begi joined
16:19
X-Scale joined
16:20
znpy joined
16:22
rhr left,
llfourn joined
|
|||
timotimo | and %%, yeah | 16:22 | |
timotimo has arrived! | 16:23 | ||
ZoffixWin | heh | ||
16:23
xpen joined
|
|||
ZoffixWin | m: "{<buy not-buy>.pick} moar booze".say | 16:24 | |
camelia | rakudo-moar 9441bb: OUTPUT«buy moar booze» | ||
16:24
rhr joined
|
|||
ZoffixWin | Hard to believe this was enough only for half the holidays pbs.twimg.com/media/CW9BMGqUoAAppm4.jpg:large | 16:24 | |
Ox0dea | Is not. | ||
ZoffixWin | For one human :P | 16:25 | |
16:27
skyl4rk left,
llfourn left
16:28
xpen left
16:29
LambdaCat left
|
|||
JulesFM | BenGoldberg r u still here? I've worked out what your RE does now, thanks very much for that. If I wanted to wrap each match of a substring with some characters to, for example, turn bold on and off (so when I print the matching line it highlights the matches, like the GNU "grep --color=always" does) is that possible with an s///g, or not? | 16:32 | |
[Coke] | "perl 6 is my first perl" I saw someone say in the backlog. My first perl and my first doctor were both #4. | 16:33 | |
grondilu | many $int = $int + 1 in the core. Shouldn't they be changed to $int++? (sed -i 's/\$\(.\+\) = \$\1 + 1/$\1++/g' *.pm) | 16:34 | |
autarch | [Coke]: so my new Pod::To::HTML worked fine in terms of the HTML it produced - unfortunately it took many hours and about 3.5GB of memory to build the doc site - I could really use some help figuring out why | 16:35 | |
16:36
Arrowhead left
16:37
pierre-vigier left
|
|||
grondilu | (though maybe sed -i 's/\$\(.\+\) = \$\1 + 1/++$\1/g' *.pm is better, since the equivalent of $int = $int + 1 is ++$int, not $int++) | 16:37 | |
flussence | grondilu: postfix:<++> used to break the optimizer, possibly still does | 16:38 | |
grondilu | ok | ||
16:39
CIAvash left
16:40
skyl4rk joined
16:41
pierre-vigier joined
|
|||
skyl4rk | hello, is it possible to force the newline character/separator for sockets? I thought that is what e.g. calling ...:INET.new(:nl<\x0d\x0a>) would do, but I seem to be mistaken | 16:42 | |
flussence | try :nl-in<\r\n> | ||
skyl4rk | flussence: that seems to do the trick (for input) | 16:44 | |
16:44
CIAvash joined
16:46
JulesFM left
|
|||
timotimo | [Coke]: was #4 the one with the scarf? | 16:48 | |
Ox0dea | How come `foo .= bar` doesn't have to be `foo .= &bar`? | ||
skyl4rk | if I understand correctly socket.put() puts the line terminator specifed for standard out | ||
16:49
Peter_R left
|
|||
grondilu | Ox0dea: .&bar is the syntax when bar is a function, not a method of foo. So foo .= bar only works if bar is a method of foo. | 16:49 | |
m: my $x = pi; $x .= cos; say $x | |||
camelia | rakudo-moar 9441bb: OUTPUT«-1» | ||
flussence | skyl4rk: socket.put is hardcoded to \n right now, that's a bug | ||
grondilu | (bad example, sorry) | ||
skyl4rk | flussence: ah, I see, thanks | 16:50 | |
grondilu | m: my $x = pi; sub f { cos $_ }; $x .= f; say $x | ||
camelia | rakudo-moar 9441bb: OUTPUT«Method 'f' not found for invocant of class 'Num' in block <unit> at /tmp/eFFQMgEYf1 line 1» | ||
Ox0dea | grondilu: I thought `.=` was an operator. Is it snyax, then? | 16:51 | |
*syntax | |||
grondilu | Ox0dea: $x .= function means $x = $x.function | ||
geekosaur | all the <op>= things are kinda magic | ||
16:51
Peter_R joined
|
|||
Ox0dea | grondilu: You're patronizing. | 16:51 | |
16:51
molaf joined
|
|||
grondilu | am I? sorry. | 16:51 | |
Ox0dea | It's okay if you don't know the answer to the actual question I'm asking. | ||
geekosaur | you can think of them as being macros | ||
16:52
Ven left
|
|||
grondilu | m: my $x = pi; sub f { cos $_ }; $x .= &f; say $x | 16:52 | |
Ox0dea | geekosaur: Yes, they're clearly "magical", but are we allowed to define custom magicks like those? | ||
camelia | rakudo-moar 9441bb: OUTPUT«Too many positionals passed; expected 0 arguments but got 1 in sub f at /tmp/qfWvTesGdU line 1 in block <unit> at /tmp/qfWvTesGdU line 1» | ||
grondilu | m: my $x = pi; sub f($_) { cos $_ }; $x .= &f; say $x | ||
camelia | rakudo-moar 9441bb: OUTPUT«-1» | ||
geekosaur | I don't think so currently | ||
Ox0dea | Then it's syntax. :< | 16:53 | |
geekosaur | this is "syntax" insofar as it's hardcoded into the parser; while there's a general macro facility in there, it's marked experimental because nobody quite likes it as it currently is | ||
Ox0dea | I see. Thank you, geekosaur. | ||
geekosaur | and assignment is itself somewhat special, so it's not clear that a general facility *of that kind* could be meaningful | 16:54 | |
(basically assignment is optimized all over the place so gets special handling everywhere. it'd be way to slow otherwise) | |||
*too | |||
Ox0dea | Ruby lets you have your cake and eat it too on that front. | 16:55 | |
geekosaur | well, if the compiler spots a STORE method or a proxy in play, it takes the general slow route --- you *can* do this, it just slows things down massively | ||
16:56
Arrowhead joined
16:57
skids joined,
rjbs left
|
|||
pochi | m: class Foo { has $!bar is required }; my $a = Foo.new( :bar(42) ); | 16:58 | |
camelia | rakudo-moar 9441bb: OUTPUT«The attribute '$!bar' is required, but you did not provide a value for it. in block <unit> at /tmp/26TX_ZYQT8 line 1» | ||
16:58
mue joined
|
|||
pochi | lies! | 16:58 | |
:-) | |||
BenGoldberg | m: class Foo { has $!bar = 43 is required }; my $a = Foo.new( :bar(42) ); | 16:59 | |
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MJ6pXoJNvbTwo terms in a rowat /tmp/MJ6pXoJNvb:1------> 3class Foo { has $!bar = 437⏏5 is required }; my $a = Foo.new( :bar(42 expecting any of: infix infix stopper …» | ||
16:59
rjbs joined
|
|||
BenGoldberg | m: class Foo { has $!bar is required = 43 }; my $a = Foo.new( :bar(42) ); | 16:59 | |
camelia | rakudo-moar 9441bb: OUTPUT«The attribute '$!bar' is required, but you did not provide a value for it. in block <unit> at /tmp/2o9uVrhgHN line 1» | ||
BenGoldberg shrugs | |||
16:59
pierre-vigier left
|
|||
Ox0dea | Should Perl 6 not have been released just yet? | 17:01 | |
[Coke] | ff | ||
17:01
dotness joined
|
|||
BenGoldberg | Why do you think it shouldn't have been released? | 17:02 | |
Or, why do you think it wasn't released? | |||
BenGoldberg is having trouble parsing that question of yours. | 17:03 | ||
17:03
dotness left,
dotness joined
17:04
mue left
17:06
TEttinger joined
|
|||
timotimo | BenGoldberg: you can't supply a private attribute via the default .new, btw | 17:08 | |
i think "is required" just can't handle private attributes | |||
it should give an error in that case, IMO. | |||
geekosaur | yes, I think that's a well known wart | 17:09 | |
17:09
TimToady left
|
|||
pochi | but surley one should be able to initialize private variables from the constructor? | 17:10 | |
17:11
halto joined
|
|||
pochi | I give you some data, and promise to not touch it after | 17:11 | |
ChoHag_ | How do you put new items in a SetHash? | ||
17:11
TimToady joined
|
|||
timotimo | pochi: not from the default constructor | 17:12 | |
17:12
domidumont left
|
|||
timotimo | pochi: private attributes are not part of the interface | 17:12 | |
ChoHag_ | SetHash.pm suggests $sh<foo> = True, but that doesn't work. | ||
timotimo | you're allowed to change any private attributes around whenver you want | ||
pochi | ok, so I can make my own constructor? | ||
timotimo | of course :) | ||
ChoHag_ | Specifically: Type check failed in assignment to $s; expected SetHash but got Hash | ||
17:13
domidumont joined
|
|||
timotimo | actually, in this case you'll want a custom submethod BUILD | 17:13 | |
ChoHag_ | Oh no. wait. There's a difference between my SetHash $s; and my $s = SetHash.new; | 17:14 | |
I thought 'my Foo $x' would autovivify $x to a Foo.new when necessary? | 17:15 | ||
[Coke] | autarch: where is your copy of P2H? | ||
timotimo | no, it won't | ||
for a $x you always have to .new | |||
autarch | [Coke]: github.com/perl6/Pod-To-HTML/tree/...treewalker | ||
ZoffixWin | Ox0dea, the primary deliverable was the Perl6 *language*. As a cherry on top, we also go the Rakudo compiler implementing it, which does have some kinks to iron out still (as was stated in the release notes). You can think of Perl 6 language being the HTML5 spec and Rakudo being Chrome 47 | 17:17 | |
skids | m: sub increment ($b is rw) { my $fetched = False; Proxy.new( FETCH => -> $ { "fetched".say; $fetched = True; $b + 1 }, STORE => -> $, $ { } ) but role { method sink { "sunk".say; $b++ unless $fetched } } }; my $a = 1; increment($a); $a.say; | ||
camelia | rakudo-moar 9441bb: OUTPUT«fetchedfetchedfetchedfetchedfetchedfetchedsunk1» | ||
ChoHag_ | Grr. Again. There's *got* to be a sane way to do this. | 17:18 | |
autarch | Rakudo is more like Chrome 8 or 10, I think ;) | ||
ChoHag_ | How can I define Foo and Bar clases in separate files when Foo has methods which take a Bar and Bar has methods which take a Foo? | ||
skids trying to provide workable examples to people trying to emulate old "wantarray" behaviors, for context. | |||
ZoffixWin | ChoHag_, you can try stubbing: class Foo { ... } | 17:19 | |
(literally ... ) | |||
ChoHag_ | Then compiling the file with the stub complains that the stub isn't completed. | ||
ZoffixWin | Ah, then I dunno :( | ||
ChoHag_ | Or at least it did a while back. | ||
ZoffixWin | skids, wasn't it decided wantarray was a horrible thing? :P | 17:20 | |
pochi | what if you declare class Foo and Bar as wmpty, then in the Foo/Bar.pm write augment class Foo/Bar? | ||
*empty | |||
ChoHag_ | Hmm that seems to no longer be the case... | ||
skids | ZoffixWin: yes, but we need a more polite way to show them how to acheive things if they really want to. | ||
17:20
derpydev left
|
|||
[Coke] | autarch: I cannot check that out and "panda install ." because I already have a version of p2h installed. any suggestions? | 17:20 | |
skids | (and try grepping for it in your P5 ase modules :-) | ||
*base | 17:21 | ||
ZoffixWin | [Coke], use --force ? | ||
autarch | [Coke]: I've just been using PERL6LIB to make use of it | ||
or use --force or use lib | |||
[Coke] | force dies with "Could not find Pod::To::HTML::Renderer" | ||
skids | We tell people instead of wantarray, return a lazy object, then don't show them how, so I'm working on that. | 17:22 | |
ChoHag_ | skids: That's just how documentation works isn't it? | ||
17:22
zengargoyle left
|
|||
ChoHag_ | If I had a penny for every time I've seen documentation which effectively amounted to "This is deprecated, now fuck off"... | 17:22 | |
skids | Well, considering this will be a point of frustration in that we are saying "no you can't" it is one of those places where examples help a lot. | 17:23 | |
ChoHag_ | /s? | ||
Ox0dea | autarch: Is your nick meant to be interpreted as "governance by oneself"? | ||
17:23
llfourn joined
17:24
mue joined
|
|||
autarch | Ox0dea: more like "I was a bit obsessed with this series of books when I picked it - en.wikipedia.org/wiki/The_Book_of_the_New_Sun" | 17:24 | |
kaare_ | skids++ examples ftw | 17:25 | |
skids | Note we can kind of get the "void context" working without the Proxy, except for some corner cases where we end up with spooky action at a distance. | ||
Ox0dea | autarch: Ah, it's a real word, then. I had the etymology right, at any rate. | ||
autarch | yes, it's a real word | ||
17:26
wamba left
|
|||
skids | m: sub increment ($b is rw) { ( $b + 1 ) but role { method sink { $b++ } } }; my $a = 1; increment($a); $a.say; my $b = increment($a); "$a $b".say; | 17:26 | |
camelia | rakudo-moar 9441bb: OUTPUT«22 3» | ||
skids | But if you ever manage to sink what's in $b it's trouble. | 17:27 | |
17:27
zengargoyle joined,
Actualeyes left
|
|||
[Coke] | What command line are you using to get PERL6LIB to work? | 17:28 | |
skids wonders if there's a complementary method called when something is "not sunk" | 17:29 | ||
17:29
llfourn left
17:32
BenGoldberg left,
yqt joined
17:35
halto left
|
|||
[Coke] | will panda ever get an uninstall? | 17:35 | |
autarch | [Coke]: PERL6LIB=../Pod-To-HTML/lib/ perl6 ./htmlify.p6 --typegraph | ||
flussence | install is just a thin wrapper around CompUnit code, so I'd guess that would need a method for it first | 17:36 | |
autarch | is there any easy way to deep clone an object? | ||
[Coke] | I get undeclared routine "pod2html" | ||
autarch | [Coke]: oh, you also need my branch of the doc site | 17:37 | |
dalek | c/autarch/use-new-pod-to-html: bb2165a | (Dave Rolsky)++ | / (6 files): Work in progress on using my new version of Pod::To::HTML |
||
autarch | github.com/perl6/doc/tree/autarch/...od-to-html | ||
I hadn't pushed it yet | |||
17:38
pierre-vigier joined
|
|||
awwaiid | autarch: do you've moved the converter to be embedded in doc repo, eh? | 17:38 | |
17:39
Begi left
|
|||
autarch | awwaiid: I can't that sentence ;) | 17:39 | |
awwaiid | oh maybe not | ||
17:39
Begi joined
|
|||
awwaiid | I thought you embedded Pod::To::HTML into the main doc repo somewhere | 17:39 | |
autarch | no, definitely not | ||
17:39
lustlife` joined
|
|||
autarch | but the doc site will have its own custom subclass of PTH - that way we only need to do one pass per document, rather than two as it does now | 17:40 | |
awwaiid | ah, so lib/DocSite/Pod/To/HTML.pm | ||
is a renderer | |||
skids | autarch: lol I'm stealing "I can't that sentence" someday | ||
awwaiid | I see | ||
autarch | yeah, maybe should be renamed to add "/Renderer.pm" | ||
17:40
xinming joined
|
|||
ShimmerFairy | could also call it something like Pod::To::DocHTML :P | 17:40 | |
autarch | ShimmerFairy: no - I really think all the modules in the doc repo need their own prefix. Calling them Perl6::This and Pod::That is _very_ confusing | 17:41 | |
17:41
mue left
|
|||
autarch | if they're for general use, they need their own distro - if they're custom to this app they should not be using generic namespaces | 17:41 | |
awwaiid | or maybe localize the name, DocSite::Renderer::HTML | ||
17:42
ZoffixWin left,
lustlife left
17:43
xinming_ left
|
|||
[Coke] | ok, I was able to run it with --sparse=1000 and get a result. | 17:44 | |
awwaiid | autarch: you have a branch for a modified Pod::To::HTML too then, eh? | ||
autarch | awwaiid: github.com/perl6/Pod-To-HTML/tree/...treewalker | ||
awwaiid | oh I found it | ||
sweet | 17:45 | ||
ah cool. Another thing we talked about a few days ago is having a separate POD extractor outside of rakudo, and maybe adding an explicit notation for the (few) cases where POD needs a runtime | 17:46 | ||
[Coke] | now I can dig. Danke. | ||
17:46
Zoffix joined,
Zoffix left,
Zoffix joined
17:47
mue joined,
Arrowhead left
|
|||
autarch | awwaiid: yeah, someone pointed me at SUPERNOVA - which looked like a big improvement | 17:48 | |
awwaiid | oh right. I need to check that out too | ||
autarch | that combined with the Pod::TreeWalker module I wrote would work well | ||
awwaiid clones all the things | 17:49 | ||
and it even comes with a lovely blog post | |||
ChoHag_ | I think perl 6's tagline could be There Are Even More Ways To Do it. | 17:50 | |
Or perhaps s/Even More/Too Many/. | |||
17:50
xinming_ joined
|
|||
jast | there's no such thing as too many ways to do it | 17:52 | |
17:52
woolfy joined
|
|||
Ox0dea | Perl: Over 9000 ways to do it. | 17:52 | |
17:52
zengargoyle left
|
|||
Ulti | one fewer ways than the number it takes for you to remember one of them | 17:53 | |
17:53
vendethiel joined
17:54
xinming left
|
|||
autarch | Hmm, I just fixed a bug where Pod::To::HTML altered the underlying $=pod structure. I wonder if that caused the perf issue somehow? | 17:54 | |
autarch grasps at straws | |||
ChoHag_ | Make Up Your Own Bloody Way. | 17:55 | |
17:55
ChoHag_ is now known as ChoHag,
znpy left,
kjs_ left
17:57
nexysno_ joined
18:00
pierre-vigier left,
Begi left,
xinming joined
18:03
xinming_ left
18:05
xinming_ joined,
xinming left,
lizmat joined
18:06
mue left
|
|||
Zoffix | m: say 42432.Rat.denominator == 1 | 18:08 | |
camelia | rakudo-moar 9441bb: OUTPUT«True» | ||
Zoffix | m: say 42432.34243.Rat.denominator == 1 | ||
camelia | rakudo-moar 9441bb: OUTPUT«False» | ||
nexysno_ | p6: say [+] 100_000 | ||
camelia | rakudo-moar 9441bb: OUTPUT«100000» | ||
Zoffix | p6: say [+] ^100_000 | ||
camelia | rakudo-moar 9441bb: OUTPUT«4999950000» | ||
Zoffix | m: say [^] ^100_000 | 18:09 | |
camelia | rakudo-moar 9441bb: OUTPUT«Too many arguments in flattening array. in block <unit> at /tmp/b0KQGelvhS line 1» | ||
18:10
xinming_ left,
cpage left,
xinming joined,
znpy joined
|
|||
lsm-desktop | ChoHag_ Or perhaps Every Way to Do It | 18:12 | |
18:12
lsm-desktop is now known as lsm
18:13
cpage joined
|
|||
nexysno_ | p6: say [+] 1..100_000 | 18:13 | |
camelia | rakudo-moar 9441bb: OUTPUT«5000050000» | ||
autarch | no, I don't think that was the memory use issue :( | 18:14 | |
Zoffix | m: say ((-1)**0.5).Complex.Rat.denominator == 1 | 18:15 | |
camelia | rakudo-moar 9441bb: OUTPUT«Method 'denominator' not found for invocant of class 'Num' in block <unit> at /tmp/Jy6Ra01MY9 line 1» | ||
18:15
dududuedu joined
|
|||
Zoffix | m: my $n = ((-1)**0.5).Complex; say $n | 18:15 | |
camelia | rakudo-moar 9441bb: OUTPUT«NaN+0i» | ||
Zoffix | orly | ||
m: my $n = ((-1+0i)**0.5); say $n | |||
camelia | rakudo-moar 9441bb: OUTPUT«6.12323399573677e-17+1i» | ||
Ox0dea | m: [^] 1..5 | ||
camelia | ( no output ) | ||
Zoffix | m: my $n = ((-1+0i)**0.5); say $n.Rat,denominator | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/i021e1gBB5Undeclared routine: denominator used at line 1» | ||
Zoffix | m: my $n = ((-1+0i)**0.5); say $n.Rat.denominator | ||
camelia | rakudo-moar 9441bb: OUTPUT«Can not convert 6.12323399573677e-17+1i to Rat: imaginary part not zero in block <unit> at /tmp/pdP2ztaxZx line 1Actually thrown at: in block <unit> at /tmp/pdP2ztaxZx line 1» | ||
Ox0dea | m: [**] 1..5 | ||
camelia | rakudo-moar 9441bb: OUTPUT«Numeric overflow in block <unit> at /tmp/Arxiohmdzm line 1Actually thrown at: in block <unit> at /tmp/Arxiohmdzm line 1» | ||
Ox0dea | What's going on there? | 18:16 | |
`[**] 1..4` doesn't cause it. | |||
Zoffix | Ox0dea, you're getting a massive number | ||
Ox0dea | Zoffix: Why? | ||
Oh, it's right-associative. | |||
Zoffix | hm | 18:17 | |
Ox0dea | Erm... no, 1**2**3**4**5 == 1 no matter how you cut it. | ||
Zoffix | m: say m: [**] 1..4 | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Pkh_iidaoSColons may not be used to delimit quoting constructsat /tmp/Pkh_iidaoS:1------> 3say m:7⏏5 [**] 1..4 expecting any of: colon pair (restricted)» | ||
Zoffix | m: [**] 1..4 | ||
camelia | ( no output ) | ||
ShimmerFairy | what's 2**3**4**5 though? :P | ||
Zoffix | m: say [**] 1..4 | ||
camelia | rakudo-moar 9441bb: OUTPUT«1» | ||
Ox0dea | Zoffix: Why would I lie to you? | ||
Zoffix | ShimmerFairy, somethign entirely different? | ||
Ox0dea, I wanted to see the final answer | |||
Ox0dea | m: [**] 2..5 # ShimmerFairy | 18:18 | |
camelia | rakudo-moar 9441bb: OUTPUT«Numeric overflow in block <unit> at /tmp/WfgPKtxm2U line 1Actually thrown at: in block <unit> at /tmp/WfgPKtxm2U line 1» | ||
Ox0dea | That'd do it. | ||
18:18
pierre-vigier joined
|
|||
TimToady | m: say [**] 3,4,5 | 18:18 | |
camelia | rakudo-moar 9441bb: OUTPUT«3733918487410200435329597541848665882254097767837340077506369317220790406172652512299936889388039772204687650654314751581087270545921608585813513369828091873141917485942625809388070199519564042855718180410466812887974029255176680123406172983965747316191523…» | ||
ShimmerFairy | Ox0dea: the problem is that you're calculating 2 to the power of a number that's 489 digits long; it just doesn't get to the "obvious" 1**... part :) | ||
Ox0dea | ShimmerFairy: It'd be nice if it could. | 18:19 | |
TimToady | m: say [**](3,4,5).chars | ||
camelia | rakudo-moar 9441bb: OUTPUT«489» | ||
Ox0dea | How to bignum literals? | ||
TimToady | m: say 2**489 | ||
camelia | rakudo-moar 9441bb: OUTPUT«1598335257761788022467377781654101148543282249044465229239888363328190330275719997501596724768507889233831388734160190922469363547795602076820570112» | ||
18:19
llfourn joined
|
|||
TimToady | oh wait | 18:19 | |
flussence | I think that gives you the bytes needed to store the answer at any rate | ||
TimToady | 2 ** <489 digit number> | 18:20 | |
Ox0dea | What needs to be different in `[**] 1..5` to have it evaluate to 1? | ||
ShimmerFairy | Ox0dea: the huge number caused by [**] 3,4,5 is how many bits you'd need for the exponent to 1**x there, it's quite a bit :P | ||
flussence: bits, not bytes :) | |||
flussence | oh, derp | ||
ShimmerFairy | m: say ([**] 3,4,5) / 8 / 1024 / 1024 / 1024 | ||
camelia | rakudo-moar 9441bb: OUTPUT«4346853223874001339228820919348702163265666188482823871898429139075789607796646319678911112002143371157217364122991859425193712285162891011933695256975586378413622134764010330415412550232796979667290789553042050553455517225871654371039677625482142106852871…» | ||
TimToady | that's still more bits than are in the universe | ||
Zoffix | m: say 2.0.WHAT | 18:21 | |
camelia | rakudo-moar 9441bb: OUTPUT«(Rat)» | ||
TimToady | in theory we could violate the right associativity to see that there's a 1 on the left, but the use case is rather minimal | ||
Zoffix | m: say '2.0'.WHAT | 18:22 | |
camelia | rakudo-moar 9441bb: OUTPUT«(Str)» | ||
Ox0dea | $ ruby -e 'p (1..5).reduce :**' | ||
1 | |||
TimToady | ruby gets the associativity wrong | ||
ShimmerFairy | TimToady: the number of YiB needed is a number 464 digits long, we definitely need more room O_o | ||
TimToady | well, "wrong" | ||
18:22
mue joined
|
|||
TimToady | left folding everything is a different kind of consistency | 18:23 | |
18:23
znpy left
|
|||
Ox0dea | The best kind? | 18:23 | |
TimToady | it's not consistent with saying "it's just like writing out the operator between each term" | ||
Ox0dea | You're right. | 18:24 | |
18:24
llfourn left
|
|||
uruwi | m: say ([**] 3, 4, 5).chars | 18:24 | |
camelia | rakudo-moar 9441bb: OUTPUT«489» | ||
Ox0dea | That said: eval.in/493794 | ||
18:24
zakharyas left
|
|||
uruwi | m: say ([**] 3, 4, 5).base(2).chars | 18:25 | |
camelia | rakudo-moar 9441bb: OUTPUT«1624» | ||
uruwi | 1624 bits. | ||
Zoffix | m: say (1..5).reduce: * ** * | ||
camelia | rakudo-moar 9441bb: OUTPUT«1» | ||
Zoffix | Ox0dea, ^ | ||
I'm kinda bummed about this: | |||
m: say (1..5).reduce: **** | |||
ShimmerFairy | m: say 1 ** 2 ** 3 ** 4 ** 5 | ||
camelia | rakudo-moar 9441bb: OUTPUT«Numeric overflow in block <unit> at /tmp/JiSy7ScOIt line 1Actually thrown at: in block <unit> at /tmp/JiSy7ScOIt line 1» | ||
rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/7MVakT8P1cMissing required term after infixat /tmp/7MVakT8P1c:1------> 3say (1..5).reduce: ****7⏏5<EOL> expecting any of: prefix term» | |||
18:25
athos left,
RabidGravy joined
|
|||
ShimmerFairy | Zoffix: same as trying to use the list repetition op like $foox5, to me :) | 18:26 | |
TimToady | Zoffix: that's parsed as ** ** | ||
Ox0dea | Should it be? | ||
mst | see ALL the stars | ||
Zoffix recalls a conversation proposing a unicode char for Whatever Star :) | 18:27 | ||
18:27
zengargoyle joined
|
|||
Ox0dea | Zoffix: '* is a Unicode character. | 18:27 | |
*'*' | |||
mst | Zoffix: that totally has to be a release codename for r* at some point | ||
Zoffix | Ox0dea, and everyone else knows what I meant | ||
18:27
mue left
|
|||
Ox0dea | Precision matters. | 18:27 | |
18:28
virtualsue joined
|
|||
TimToady | m: say (1..5).reduce: *[**]* | 18:28 | |
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Fx5uTC0HVJMissing required term after infixat /tmp/Fx5uTC0HVJ:1------> 3say (1..5).reduce: *[**]*7⏏5<EOL> expecting any of: prefix term» | ||
Zoffix | Being overly pedantic can be annoying. | ||
TimToady | I guess that turns into a subscript postfix | ||
mst | Zoffix: or mauke | ||
18:29
Guest18394 left
|
|||
Ox0dea | m: 1.^methods.sort | 18:31 | |
camelia | rakudo-moar 9441bb: OUTPUT«Method object coerced to string (please use .gist or .perl to do that) in block <unit> at /tmp/U3lnI3nD7Q line 1Method object coerced to string (please use .gist or .perl to do that) in block <unit> at /tmp/U3lnI3nD7Q line 1Method object coerced to…» | ||
Zoffix | m: say (1..5).reduce: ★**★ | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/kvjj8ZfRsnBogus termat /tmp/kvjj8ZfRsn:1------> 3say (1..5).reduce:7⏏5 ★**★ expecting any of: argument list infix infix stopper postfix …» | ||
Zoffix | purty | 18:32 | |
RabidGravy | well at least we're not getting the disco partay colour effects anymore | ||
Ox0dea | m: 1.ACCEPTS(2) # Can't we all just get along? | ||
camelia | ( no output ) | ||
Zoffix | m: say 1.^methods.WHAT | ||
camelia | rakudo-moar 9441bb: OUTPUT«(List)» | ||
18:33
virtualsue left
|
|||
Zoffix | m: say 1.^methods.reverse | 18:33 | |
camelia | rakudo-moar 9441bb: OUTPUT«(Numeric DUMP ACCEPTS gist Str Bool perl new WHICH atan asinh cotanh Complex roots asech cosech cis cos asin rand succ isNaN sec Real acotanh tanh sinh truncate acosh exp log atanh log10 unpolar sech acosec acos cosh acotan asec pred cosec atan2 conj acose…» | ||
Ox0dea | Having to say `say` is really annoying. | ||
Zoffix | m: say 1.^methods.sort | ||
camelia | rakudo-moar 9441bb: OUTPUT«Method object coerced to string (please use .gist or .perl to do that) in block <unit> at /tmp/oLfnSaHcpH line 1Method object coerced to string (please use .gist or .perl to do that) in block <unit> at /tmp/oLfnSaHcpH line 1Method object coerced to…» | ||
Zoffix | That's probably that same old .sort bug | ||
Ox0dea | It's just warning about Methods being implicitly coerced to strings. | ||
Zoffix | Ox0dea, that's been discussed before and since making it auto-say would cover up some of the possible sink bugs, we left it as mandatory | 18:34 | |
ShimmerFairy | m: say 1.^methods».name.sort | ||
camelia | rakudo-moar 9441bb: OUTPUT«(ACCEPTS Bool Bridge Complex DUMP FatRat Int Num Numeric Range Rat Real Str WHICH abs acos acosec acosech acosh acotan acotanh asec asech asin asinh atan atan2 atanh base ceiling chr cis conj cos cosec cosech cosh cotan cotanh exp expmod floor gist is-prim…» | ||
Zoffix | Ox0dea, ah, k | ||
m: 1.^methods.first.WHAT.say | |||
camelia | rakudo-moar 9441bb: OUTPUT«(Method)» | ||
Ox0dea | m: Method.new | 18:35 | |
camelia | rakudo-moar 9441bb: OUTPUT«Cannot make a Method object using .new in block <unit> at /tmp/ay0tBiL2At line 1» | ||
Ox0dea | Why not? | ||
Zoffix | m: say DateTime.new | ||
camelia | rakudo-moar 9441bb: OUTPUT«Cannot make a DateTime object using .new in block <unit> at /tmp/Zo64x6bJph line 1Actually thrown at: in block <unit> at /tmp/Zo64x6bJph line 1» | ||
Zoffix | m: say DateTime.new: :2015year :12month :31day :23h :23m :23s | 18:36 | |
camelia | rakudo-moar 9441bb: OUTPUT«2015-12-31T00:00:00Z» | ||
Zoffix | \o/ | ||
18:36
patrickz joined,
uvtc joined
|
|||
Zoffix | Roast is failing for me: gist.github.com/zoffixznet/5924f37551d9125ec606 two in t/spec/S32-io/socket-recv-vs-read.t | 18:37 | |
m: -2.is-prime.say | 18:38 | ||
camelia | rakudo-moar 9441bb: OUTPUT«WARNINGS for /tmp/9PADq7zWua:Useless use of "-" in expression "-2.is-prime.say" in sink context (line 1)True» | ||
Zoffix | m: -2 .is-prime.say | ||
camelia | rakudo-moar 9441bb: OUTPUT«False» | ||
18:38
znpy joined
|
|||
uvtc | Was looking for a Perl 6 mode for Emacs. Is the suggestion at perl6.org/whatever/ out of date? Instead, I did `M-x package-refresh-contents` and `M-x package-install RET perl6-mode` and I now have github.com/hinrik/perl6-mode which appears so far to work with .pl6 files. | 18:39 | |
Ox0dea | Why "twigil", etymologically? | 18:40 | |
mst | I would imagine that, if it wasn't on the critical path for the 6.c release on the 25th, it's entire possible nobody even remembers what that page -is- let alone has checked if it's up to date recently | 18:41 | |
Zoffix | k, sent a PR for the is-prime stuff github.com/rakudo/rakudo/pull/656 and added extra tests for this in roast: github.com/perl6/roast/pull/92 | ||
That's for RT#127044 rt.perl.org/Ticket/Display.html?id=127044 | |||
TimToady | well, it's a secondary sigil, and 's' was already taken :) | 18:42 | |
18:42
yqt left
|
|||
TimToady | so we went with 'two' instead | 18:42 | |
mst | uvtc: hmm, jhrockway's thing got a commit as late as Mar 2014 | ||
so I'd expect most of it to work | |||
it's probably worth adding the hinrik one though | |||
perl6.org/about/ tells you how to put a patch together | |||
uvtc++ # well volunteered | |||
Ox0dea | Will there be a Perl 7? | 18:44 | |
Zoffix | Ox0dea, no | ||
Ox0dea | Should we call Perl 6 Perl? | ||
Zoffix | Ox0dea, considering there's Perl 5, calling it "Perl" is inherently ambiguous | 18:45 | |
mst | that would just confuse people, since perl5 and perl6 are noticeably different languages | ||
Zoffix | Ox0dea, kinda like saying "I'm going go play Far Cry" is ambiguous, since there are several different—albeit similar—games with that name | ||
Ox0dea | Zoffix: But X unambiguously refers to X11, for instance. | 18:46 | |
mst | "time to write some lisp" # that's nice, dear, did you mean CLISP, scheme, clojure, or scripts for Igor's part in the christmas play? | ||
Zoffix | I've not heard of anyone using X9 or X5 for anything | ||
Ox0dea | Zoffix: Precisely? | 18:47 | |
Zoffix | Ox0dea, what? | ||
mst | if you just say 'perl', people will assume perl5 | ||
blub | mst: clisp is an implementation not a language | ||
mst | if you want to be precise, say 'perl5' or 'perl6' explicitly | ||
Ox0dea | mst: Will it always be this way? | ||
hi blub | |||
18:47
Grrrr left
|
|||
blub | hi ox0dea | 18:48 | |
mst | Ox0dea: dunno. build a time machine and go find out. | ||
Zoffix | Ox0dea, yes, both languages are actively developed. | ||
mst | on a long enough timeline, everybody who remembers either language will be dead, after all | ||
uruwi | I too wish Perl 6 was called something else | ||
mst | blub: common lisp isn't a programming language? you could've fooled me. | ||
Ox0dea | I wish it were called Perl. :< | ||
Zoffix | uruwi, it's too late now | ||
TOO lATE! :D | |||
mst | uruwi: when things seem ambiguous I call the spec Camelia and the compiler Rakudo | ||
Ox0dea | mst: Then what do you call the mascot? | 18:49 | |
Zoffix | Now that we released, at least we have an easy way to dismiss all the name bikesheds -_- | ||
mst | Ox0dea: that -ing stupid butterfly | ||
Zoffix | rofl | ||
flussence | the only language I've seen using version numbers in a similar way with enough forward and backward compatiblity to omit the number is HTML | ||
Ox0dea | flussence: And Python. | ||
dalek | href="https://perl6.org:">perl6.org: e0e1060 | (John Gabriele)++ | source/whatever/index.html: Added link to hinrik's perl6-mode for Emacs |
||
mst | and look how well that worked out for them | ||
grondilu | omg the name thing again. jeez | ||
uruwi | The time will come when people will invent names for Perl 6. | ||
Zoffix | HTML is a fucking mess | ||
mst | Ox0dea: except as of 3 python no longer has nearly enough forward/backward compatibility to count | ||
you have to specify python2 or python3 | 18:50 | ||
anyway | |||
there is a perl family of languages | |||
flussence | .oO( and python 2 with/without broken SSL, as of a few weeks ago ) |
||
uruwi | I think most people moved to py3. | ||
mst | it has two current main members, perl5 and perl6 | ||
uruwi: hahahahahahahahahahaha you're so cute | |||
say that on hacker news. bring your asbestos suit, the flamewar will be epic | |||
uruwi | ..? | 18:51 | |
Zoffix | :D | ||
grondilu | it's made by the creator of Perl, who wanted to call it Perl as well. It's the sixth version of it. So it's "Perl 6". That's all I need to know. | ||
mst | there's a huge number of python2 deployments | ||
grondilu: well, more importantly | |||
"perl5 and perl6 are sister languages in the same family" | |||
is what perl6.org and perl.org -both- say | |||
so there's absolutely consensus about that | |||
Ox0dea | I thought Ruby had cribbed "\C-a" literals from Perl. That seems to not be so. | 18:52 | |
mst | I'm pretty sure we did double check Larry didn't object before we did that | ||
but it was part of a community groundswell because we were *all* sick of having this conversation | |||
blub | mst: no one abbreviates common lisp to clisp, because that generally refers to a specific, shoddy implementation of it | ||
mst | Ox0dea: so ,please use the terms given on the websites. if you don't like those terms, please hate them quietly. | ||
CIAvash | TimToady: Can you please take a look at the question I asked before? irclog.perlgeek.de/perl6/2015-12-23#i_11762824 | ||
grondilu | now that Perl 6 is out, if the Perl 5 community wants a new major version of "their perl", they can just call it "Perl 7", and that's it. | 18:53 | |
mst | grondilu: please don't | ||
Ox0dea | mst: You don't seem to hate having this conversation. | ||
mst | grondilu: please don't make things up that will cause huge drama, that larry and I spent an entire summer killing :) | ||
Zoffix | Ox0dea, mst wrote this: shadow.cat/blog/matt-s-trout/f_ck-perl-6/ | ||
18:53
sjohnson` is now known as sjohnson
|
|||
mst | Ox0dea: that's because #perl6 values niceness. inside I'm trying to set you on fire with my mind for bringing it up. | 18:53 | |
Zoffix | lol | 18:54 | |
18:54
gugod joined
18:55
ilbelkyr left
18:57
pierre-vigier left
18:59
ilbelkyr joined
|
|||
grondilu | are you Matthew S. Trout? If so, I love your "state of the velociraptor" talks :) | 18:59 | |
RabidGravy | *fuck he isn't is he* ? ;-) | 19:00 | |
grondilu | mst: ^ | ||
mst | I am, yes, though I was getting stale so in a Doctor Who like spirits, those are now given by Sawyer X | ||
19:00
znpy left
|
|||
RabidGravy | does that mean we get to kill you and you come back as someone else? | 19:01 | |
19:01
pierre-vigier joined
|
|||
flussence | and will Sawyer X turn into Sawyer Wayland in the near future? | 19:01 | |
ChoHag | *looking like* someone else. | ||
grondilu | mst: completely not related to perl, but has anyone ever told you you look like astrophysicist Alex Filippenko? | 19:02 | |
mst | normally people think I look like death metallers of various stripes ;) | 19:03 | |
grondilu | well, that too. But that's less peculiar :) | 19:04 | |
flussence | they're probably basing it off pictures then and haven't seen you on stage :D | ||
mst | oh, Filippenko is also bouncy? | 19:07 | |
19:07
atweiden joined,
mort96 joined
|
|||
mort96 | hey | 19:07 | |
anyone here? | 19:08 | ||
deniska | no, totally not | ||
havenwood | mort96: Yes. | ||
mst | lots of people | ||
vendethiel | dozens of people :P | ||
flussence | only 300 or so | ||
mst | but IRC channels often pause until somebody says something | ||
havenwood | The we all talk at once. | ||
mort96 | well | 19:09 | |
19:09
espadrine left
|
|||
jast | not all, I successfully resisted the temptat... dangit | 19:09 | |
mst | we were just taking a breather after the latest round of "let's get really pedantic about the naming of perl5 and perl6", which the people who've been here for a while obviously LOVE as a conversation because we've had so much practice :D | ||
mort96 | I just tried to install perl 6 via rakudobrew | ||
it... nuked every directory in $PATH, including /bin and /sbin | |||
timotimo | um, wat | ||
19:09
Ox0dea left
|
|||
timotimo | wtf :< | 19:10 | |
RabidGravy | cOOooOOoool | ||
timotimo | tadzik: fix this immediately | ||
mst | timotimo: let's try figuring out what actually happened first | ||
timotimo | ... yeah | ||
flussence | I guess... nobody's ever run it as root before? | ||
ChoHag | Is there a perl6-compatible major mode for emacs? | ||
Or a vim-equivalent for vim? | 19:11 | ||
mst | ladies, gentlemen, and mongers, let's try diagnosing rather than guessing | ||
flussence | there's a vim one | ||
19:11
skyl4rk left
|
|||
mort96 | I cloned the git repo to ~/.rakudobrew, ln -s'd /home/<myname>/.rakudobrew/bin/rakudobrew to /usr/bin/rakudobrew, tried `rakudobrew build moar`, it said I needed root, so I ran `sudo rakudobrew build moar` | 19:11 | |
mst | ChoHag: somebody a bit further up mentioned hinrik having an emacs perl6 mode | ||
flussence | github.com/vim-perl/vim-perl | ||
timotimo | flussence: why would you ever run rakudobrew as root? | ||
19:11
Arrowhead joined
|
|||
mst | mort96: oh yay | 19:11 | |
uvtc | ChoHag, yes, see perl6.org/whatever/ . | ||
mort96 | symlinking it like that may have been a bad idea, but maybe should make sure it doesn't break your system | ||
ChoHag | Who or what is hinrik? | ||
mst | right, so, you're running one of the stupid-arse 'modern' linuxes that don't have a real /bin | ||
timotimo | mort96: what said you need root? | ||
mst | ChoHag: github user | ||
timotimo: dude. | 19:12 | ||
mort96 | rakudobrew did | ||
RabidGravy | ChoHag, I think the vim one got rolled into the main per thing | ||
19:12
dududuedu left
|
|||
mst | I already know what happened. | 19:12 | |
mort96 | I have a real /bin.. | ||
mst | that's ... pants on head hilarious | ||
timotimo | why would rakudobrew claim you need root? :\ | ||
RabidGravy | I'm with you | ||
mort96 | idk | ||
mst | timotimo: it didn't | ||
RabidGravy | it needs a readlinkin there | ||
ChoHag | mst: I remember seeing one of those bin-less things. I though it was an elaborate joke. | ||
mort96 | it tried to git clone something, which said it needed root | ||
mst | mort96: it could've killed /usr/bin/* | ||
unlink()ing | |||
jast | I can find an unlink call and a remove_tree call in rakudobrew. both don't iterate over PATH. | ||
ChoHag | Atually I didn't, but I tell myself that because the alternative is believing people did it seriously. | 19:13 | |
mst | right, if your /bin is now empty | ||
that means your /bin was either a symlink or something similar to /usr/bin | |||
19:13
pierre-vigier left
|
|||
mort96 | no | 19:13 | |
mst | but, yes, this code will totally wipe out /usr/bin if you symlink it into there | ||
mort96: well, it only unlinks the content of a single directory | |||
I'm looking at the code | |||
timotimo | of course rakudobrew thinks it's allowed to wipe out all the contents of its bin folder | ||
mort96 | it cleared /bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin, and ~/.bin | ||
19:13
smls joined
|
|||
mst | you're welcome to present a different theory | 19:13 | |
but there physically isn't code that would do that | |||
timotimo | it has to, in order to do stuff cleanly | ||
mst | no, actually, it doesn't have to | 19:14 | |
mort96 | at least according to zsh's autocomplete with cd... can't ls >.< | ||
smls | o/ | ||
gfldex | can i have adverbs on prefix-operators? | ||
mst | rewriting that part is on my list | ||
smls | Coming home from Christmas-related family visits, to see Perl 6 released! | ||
timotimo | mort96: oh, hehe | ||
jast | rakudobrew doesn't even use PATH anywhere... | ||
flussence | mort96: got busybox on your system at all? | ||
smls | Nice present | ||
timotimo | mort96: zsh will not complete files if you cd + tab complete | ||
mort96 | I probably have some kind of rescue thing | ||
timotimo | so you wouldn't ever see files with that method | ||
smls | Even some positive reactions to Perl 6 on hackernews... ;)( | ||
ChoHag | If your PATH's directories have gone and you don't know how to build unix from scratch, it pretty much means it's time to reinstall. | ||
smls | TL;DR: Congrats, everyone. | 19:15 | |
jast | shouldn't be too hard to recover with a boot CD | ||
mort96 | timotimo: yes, it does; I see core_perl, site_perl, and vendor_perl | ||
ChoHag | If you do know how to build unix from scratch, it also pretty much means it's time to reinstall because who has time for that? | ||
timotimo | aren't those folders, too? | ||
jast | yeah, those are all directories | ||
mort96 | oh right | ||
I'm stupid. | |||
timotimo | no, you are not | ||
jast | try tab completing with 'cat /bin/<TAB>' | ||
timotimo | this is stuff you wouldn't have to know | ||
jast | that will complete files, too | ||
mst | timotimo: of course he is | 19:16 | |
learning to program is fundamentally (a) become less stupid (b) discover how much more stupid you are than you originally thought (c) goto a | |||
mort96 | well, cat is in /bin, so.. lol | ||
timotimo | as long as zsh thinks it could autocomplete that, it'd be fine | ||
jast | you don't have to run it, just put something other than 'cd' in first place so zsh chooses a different tab completion strategy | ||
ChoHag | mst: d) Realising that human =, ==, := and === stupid. | ||
I wish more developers reached d... | |||
mort96 | just doing /usr/bin/<tab>, I can see files | ||
mst | ChoHag: I realised that a long time ago. then it took me several more years for (e) realising I'm human too | ||
mort96 | so mst: you're probably right that it only deleted /bin and /usr/bin | ||
timotimo | mort96: that'll probably only show you files with +x | 19:17 | |
ChoHag | Well now, e really is wishful thinking. | ||
mort96 | wait, only deleted /bin* | ||
mst | mort96: it'll have unlink()ed anything in the directory it was running in | ||
so if you symlinked into /usr/bin you killed /usr/bin/* | |||
jast | that means you can probably ask your package manager to reinstall coreutils etc. | ||
mort96 | timotimo: ya, but files in my $PATH are generally +x'd | ||
timotimo | right :) | ||
mst | the question then becomes what the best fix is | ||
flussence | oh well, at least stuff in bin directories is easily replacable... | ||
ChoHag | Has anyone berated mort96 yet for running this as root? | ||
timotimo | mst: ideally, rakudobrew would flat-out refuse to run as root, or run with its bin/ folder symlinked | 19:18 | |
flussence | enough people have | ||
mst | to we think the list of executables shipped with rakudo is basically static? | ||
ChoHag | And questioned the location of the backups and viability of the restore process? | ||
timotimo | mst: don't modules that nistall binaries put them there, too? | ||
RabidGravy | just going back a but the fix to rakudobrew is to readlink the executable to find the location it is installed, not use $0 blindly | ||
timotimo | ChoHag: i'm not so +1 on berating | ||
mst | ChoHag: something threw a "can't make install, did you mean sudo make install" type error at him and then he did what it suggested | ||
ChoHag | Well that's why I'm asking first... | ||
jast | okay, what system/distribution are you using? in debian and friends you can probably fix the most important stuff by doing, say, aptitude reinstall coreutils | 19:19 | |
mort96 | ChoHag: it's not exactly uncommon to have to run package managers as root, so running `sudo !!` when a package manager complains about not being root kinda makes sense | ||
mst | right | ||
mort96 | arch linux | ||
mst | I mean, I wouldn't've done it when it said that | ||
but it's totally reasonable that you did | |||
timotimo | mort96: rakudobrew isn't a package manager, though ... it's just like perlbrew: a way to have a perl(6) version in your home directory | ||
emphasis on the "home directory" | |||
jast | the package is called coreutils in arch, too. but arch is a source-based distro, right? that might cause trouble during reinstall | 19:20 | |
mort96 | lol, I've never touched perl before, so comparing it to perlbrew doesn't help much | ||
19:20
skids left,
llfourn joined
|
|||
mort96 | if by source-based you mean that it compiles things whenever you install things like gentoo does, then no, pacman uses binaries | 19:20 | |
jast | could work, then | 19:21 | |
anyone already working on a pull request? | |||
uvtc | I like very much that rakukdobrew installs into my very own ~/.rakudobrew, and not anywhere else (like, say, /usr/local). Hm. Looks like it does something with ~/.perl6 as well. | ||
mst | for which part? | ||
kaare_ | mort96++ for testing the install process. | ||
mort96 | anyways, using pacman to reinstall things isn't going to work, considering pacman was in /bin | ||
mst | I'm currently staring at the rakudobrew source code and trying to figure out how to re-engineer it, yes | ||
jast | well, the immediate fix would be resolving links on the prefix | ||
ChoHag | mort96: Install and boot into new system, mount broken system, rsync the missing directories from the new installation to the broken system. | 19:22 | |
19:22
mue joined
|
|||
ChoHag | Be grateful that /boot and /etc are likely untouched and boot your now-fixed old system. | 19:22 | |
mort96 | that would probably work ChoHag | ||
atweiden | mort96: github.com/atweiden/pkgbuilds/tree...rakudo-git | ||
jast | since the standard way to use rakudobrew is to clone the git repo, at least the symlinking case would be fixed... but copying rakudobrew to /usr/bin is still problematic | ||
ChoHag | Alternatively just reinstall without losing /home. | ||
mst | jast: how much do you know about the implementation of FindBin.pm ? | ||
atweiden | rakudobrew is unnecessary | ||
really unfortunate for your system to go like that | 19:23 | ||
jast | uhh... I know what's in the pod | ||
timotimo | does rakudobrew really clean out the bin it's run from? | ||
ChoHag | I long ago gave up trying to preserve linux systems. The installers are so damn easy these days. | ||
mst | timotimo: yes! | ||
jast | if the pod ain't lying, $RealBin should do the trick | ||
mst | it unlinks()s everything except itself from the entire directory | ||
timotimo | that's super, super, super, super weird. | ||
mst | jast: yes, but also, FindBin is basically terrible | ||
so I'm pondering replacing it while I'm there | |||
mort96 | how about having rakudobrew use ~/.rakudobrew regardless of where the executable is? | ||
timotimo | ah, everything but itself | ||
right | |||
mort96 | that way, using sudo would just make it install things in /root instead of nuking /bin lol | ||
jast | there might be valid reasons to not want to use ~/.rakudobrew | 19:24 | |
timotimo | mort96: because we want people to be able to git clone it to different places | ||
ChoHag | Quick question, since I install the various components seperately and by hand, what exactly is rakudobrew? | ||
timotimo | also, so you can have .rakudobrew and .rakudobrew-dev if you want to hack .rakudobrew | ||
or something | |||
mort96 | that kinda makes sense | ||
timotimo | ChoHag: it does the perl configure.pl --gen-moar --gen-nqp and make install step for you | ||
mst | ChoHag: tadzik wrote a very small perl script to build the components for him, then it accidentally escaped | ||
timotimo | and it allows you to switch between different versions and revisions | ||
and then it builds panda or zef for you, too | |||
jast | and several of these steps clean up its bin dir :) | 19:25 | |
mort96 | anyways, I'll go find a USB stick and start rescuing my system | ||
ChoHag | Ah. A permanent temporary quick mission critical hack. | ||
mort96 | will be on a tablet | ||
ChoHag | I _love_ those. | ||
19:25
llfourn left
|
|||
timotimo | mort96: sorry about this :\ | 19:25 | |
mort96 | It's k | 19:26 | |
flussence | half the fun of arch is in breaking it and putting it back together :D | ||
ChoHag | mst: FWIW I've been meaning to get around to fixing up the install process ever since I found out that building everything seperately was easier. | 19:27 | |
Perhaps this is my impetus to actually do it. | |||
mst | I must admit I'm now wondering if writing a new installer from scratch would be safer | ||
ChoHag | I have considered it - not much code will be lost. | 19:28 | |
CIAvash | mort96: If you have a live cd you may be able to fix it with chroot wiki.archlinux.org/index.php/Change_root | ||
ChoHag | Though I do so despise the CADT development model. | ||
jast | a new installer that provides the same "just add this to $PATH" workflow? | ||
timotimo | Can Ask, Don't Tell? | ||
flussence | that's kinda why I wanted distro packages... I already have a script to build everything but I feel a bit safer when it's done with seatbelts and a straitjacket | ||
mst | timotimo: www.jwz.org/doc/cadt.html | 19:29 | |
ChoHag | flussence: That's my plan. | ||
mst | proposed patch: sherlock.scsys.co.uk/~matthewt/rakudoboo | ||
ChoHag | At least get something the major distros don't need to patch much (which can then also be backported) to get it to work in their ecosystem. | ||
mst: Is this the one? unlink catfile($prefix, 'bin', $entry); | 19:30 | ||
mst | I was talking about a perl-build style tarball installer yesterday | ||
ChoHag: yes. notice I've added some guard clause-age above it. | |||
jast | mst: not sure what that is supposed to accomplish? by the point your check runs, the loop has already skipped over rakudobrew itself due to the previous nexts | 19:31 | |
RabidGravy | in the meantime can someone who hasn't drunk quite as much beer as I have today put a readlink in the bit that gets $prefix from $0 | ||
timotimo | i think i'm a bit afflicted with CADT syndrome | ||
mst | jast: the shims are all hardlinks-to-self | ||
jast | oh, that is evil | 19:32 | |
mst | RabidGravy: did you actually look at the patch I've just posted for discussion? because it totally does that :P | ||
RabidGravy | oh, I was probably in the kitchen | ||
ChoHag | timotimo: We all are. | ||
Knowing is half the battle. And the easy half. | |||
mst | oh gods DAMNIT | 19:33 | |
that's ... only going to work for existing stuff | |||
timotimo | well, that's what we get for recommending a piece of software that the original author never meant to get used like that ... | ||
mst | hrmf | ||
ChoHag | It's hard enough to restrain my own CADT tendencies at work that I hardly have the energy left to restrain the devs'. | ||
mst | rakudobrew works fine if you follow the instructions to the letter | ||
if you try and do something other than what the instructions say, it tends to fail hard | |||
because it was never designed as a mass consumption tool | 19:34 | ||
jast | so, documentation patch? ;) | ||
timotimo | yeah | ||
19:34
Tonik left
|
|||
flussence | "please aim footgun at smallest toe" | 19:34 | |
ChoHag | Simpler patch: sed '1{p;s/.*/exit 1/}' | ||
mst | ok, those comments were in a here doc. awesome. | 19:35 | |
19:35
pierre-vigier joined
19:36
pierre-vigier left
19:37
Andrew_Scone joined
|
|||
mst | right, kicking off a moar build | 19:40 | |
let's see if this does what I wanted | |||
ChoHag | So what *are* the components of a complete Rakudo perl 6 installation? VM, NQP, Rakudo, Panda/Zef and modules? | ||
19:40
lnrdo left
|
|||
mst | yeah, pretty much | 19:40 | |
uvtc | I've been running perl6 via `rlwrap perl6`. | ||
mst | thereby repl-icating your usual environment | 19:41 | |
uvtc | Otherwise no command-line editing in the stock repl. | ||
19:41
dsp- joined
|
|||
Rotwang | Hi, where does perl keep core modules installed with rakudo? I'm trying to debug a problem in the LWP::Simple module, but my debug prints aren't showing up | 19:42 | |
geekosaur | >>> Simpler patch: sed '1{p;s/.*/exit 1/}' <<< portability police: '1{;p;s/.*/exit 1/;}' | ||
19:42
kjs_ joined
|
|||
geekosaur | (old commercial-unix sed) | 19:42 | |
ChoHag | Sorry geekosaur. I usually test on bsd which is more fussy about these things but this box is linux. | 19:43 | |
Zoffix | m: say $*REPO | ||
camelia | rakudo-moar 9441bb: OUTPUT«inst#/home/camelia/.perl6/2015.12-18-g9441bb2» | ||
Zoffix | Rotwang, ^ | ||
geekosaur | I think bsd will take it. solaris < 10 won't | 19:44 | |
mst | well, that completely didn't work. awesome/ | ||
geekosaur | er, solaris < 11 | ||
Rotwang | I see that modules get compiled to moarvm format, and they are not recompiled automaticaly if the source file is modified | ||
Zoffix | Maybe you're editing the wrong source file? | ||
mst | oh doh I'm an idiot | ||
Rotwang | Zoffix: no, I edited the correct one, when I removed Simple.pm.moarvm my debug prints showed up | 19:45 | |
Zoffix | Weird. Could be a bug | 19:46 | |
Rotwang | Zoffix: btw. Dynamic variable $*REPO not found | ||
Zoffix | Rotwang, how old is your install? | ||
RabidGravy | Rotwang, I'd suggest cloning the module from github and working in the directory of the clone with perl6 -Ilib ... | ||
atweiden | in Config::TOML, I've been getting 'WARNING: unhandled Failure detected in DESTROY:' for months | ||
in a 2015.12 release perl6 repl, this warning doesn't affect a Match variable | |||
in a 2015.12 release `prove` test, this causes Test to think the variable is (Any) instead of (Match) | |||
Rotwang | Zoffix: it is the rakudo 2015.11 | ||
on linux | |||
atweiden | IOW i can walk through the tests by hand, and they all pass, but when driven by `prove`, they fail | 19:47 | |
Zoffix | Rotwang, time to upgrade :) | ||
Rotwang, we released the stable release on Christmas. Your version likely has a ton of bugs and/or features that were changed (including $*REPO) | |||
Rotwang | Zoffix: but latest rakudo * is 2015.11 | ||
Zoffix | Rotwang, come to think of it, the LWP::Simple bug you're debugging is already fixed on newest perl | 19:48 | |
Rotwang, hmh, right, we didn't release an R* yet | |||
mst | GOTCHA | ||
Rotwang | looking at master it isn't | ||
Zoffix | s/is already/is probably/; | 19:49 | |
mort96 | Btw, mst, how are you fixing it? What will be the new behavior? | ||
mst | mort96: (1) follow symlinks so it'll create shims in rakudobrew's bin dir | ||
mort96: (2) only unlink things that look like a rakudobrew shim | |||
sherlock.scsys.co.uk/~matthewt/rakudoboo updated | |||
19:49
Zero_Dogg left
|
|||
mst | ChoHag: ^^ thoughts? | 19:49 | |
mort96 | That sounds good | ||
mst | I mean, obviously I want to rewrite, like, everything | 19:50 | |
because programmer | |||
but I figure those two changes will make it stay working for anybody it's currently working for while becoming rather safer | |||
mort96 | Obviously | ||
19:50
Zero_Dogg joined,
Zero_Dogg left,
Zero_Dogg joined
|
|||
mort96 | Fixing this bug is probably slightly more urgent than rewriting | 19:51 | |
ChoHag | Considering that I don't know how rakudobrew actually works, that sounds good in principle. | ||
The devil's in the details though. "that look like" is easier for a human to interpret than a computer. | 19:52 | ||
19:52
AndyDee joined
19:53
znpy joined
|
|||
mst | github.com/tadzik/rakudobrew/issues/56 # found the issue for it, added the patch URL | 19:54 | |
19:55
pierre-vigier joined
|
|||
mst | none of the other extant bugs look quite as hairy | 19:55 | |
atweiden | anyone wanting Config::TOML should install from panda with --notests | ||
19:55
ilbelkyr left
19:56
ilbelkyr joined
|
|||
atweiden goes to file multiple RTs | 19:56 | ||
Rotwang | RabidGravy: thanks for the hing | 19:57 | |
where is the list of supported character encodidngs by perl6? | |||
19:57
BenGoldberg joined
19:58
Ox0dea joined
|
|||
flussence | t/spec/S15-nfg/crlf-encoding.t has "<utf-8 ascii latin-1 windows-1252>" | 19:58 | |
19:58
billN1VUX left
|
|||
mst | timotimo: hey, are you going to check the patch, or is your willingness to help limited to yelling at tadzik? | 19:59 | |
flussence | src/core/Rakudo/Internals.pm also has "utf16" and "utf32" (with no endianness, wheee) | ||
Zoffix | .tell tadzik can you please merge this, as we have some extreme destruction for some users: github.com/tadzik/rakudobrew/pull/72 | ||
yoleaux | Zoffix: I'll pass your message to tadzik. | ||
mst | Zoffix: I already linked the patch in the issue and /msg-ed tadzik the link | 20:00 | |
unsure how having github and yoleaux spam him as well helps :) | |||
diakopter | I'll merge it. bogotown for you if it's bad | ||
mst | what -would- help would be you testing I didn't brerak anything and reporting that on the issue :) | ||
diakopter: ah, you have commit? | 20:01 | ||
Zoffix | Fuck that, I'm not deleing MY /bin :P | ||
diakopter | well hopefully it still works in the non symlink case | ||
marged | |||
mst | alright, don't wait for me to test it then | ||
diakopter | lulz | 20:02 | |
chansen_ | This is crazy | ||
diakopter | I mean, how bad can it hurt if you're only adding lines | ||
20:02
znpy left
20:03
yqt joined
|
|||
mst sets diakopter on fire, lovingly | 20:03 | ||
diakopter | I mean | ||
Zoffix | chansen_, what is? | ||
mst | honestly I'm pretty convinced it'll be fine | ||
diakopter: can you link the issue to the PR and close the issue please? | |||
diakopter feels fiery | |||
RabidGravy | mmmm toasty | ||
mst breaks out the marshmallows | 20:04 | ||
diakopter | Zoffix did that | ||
Zoffix | It's still open tho | ||
mst | nobody ever listens to zathrus | ||
Zoffix notes GitHub doesn't magic with "Fix for #d+" | |||
diakopter | if I just click random button in github UI that should do it, right | 20:05 | |
flussence | needs to be in "$verb $hashtag" format without the for in the middle, GH ain't that smart :) | ||
Zoffix | If by random button in github UI you mean "Close this issue" then sure :P | ||
diakopter | I think it's "Fixes #56 | 20:06 | |
Zoffix | Closes works too | ||
diakopter | #56 | 20:07 | |
darn our bugtraq bot isn't the thing anymore | |||
dalek | c: ce12262 | (Neil Shadrach)++ | doc/Language/ (2 files): Fix minor typos |
||
c: a852eb4 | (Zoffix Znet)++ | doc/Language/ (2 files): Merge pull request #275 from NeilShadrach/master Fix minor typos |
|||
diakopter | er what is it, not bugtraq | ||
flussence just fumbled around blindly wondering why this nqp ebuild wasn't doing anything java-related when I want it to... forgot to actually tell it to first. | |||
diakopter | RT | ||
Zoffix | #453532 | ||
flussence | RT #123456 ? | 20:08 | |
yep, dead | |||
Zoffix | It's symbot... or something and it doesn't appear to be in here | ||
chansen_ | Zoffix: merging before proper testing. That rakudobrew can wipe a directory it doesn't own. ... | ||
diakopter | chansen_: well obviously they were running as root | ||
flussence | they were running something *clearly labelled as rough and broken* as root, for that matter | 20:09 | |
mst | chansen_: rakudobrew was tadzik's *personal* rakudo installer. it escaped. | ||
diakopter | I merge any commit that mentions SPARTACUS | ||
chansen_ | diakopter: obviously! Thats not an excuse! | ||
Zoffix | .oO( SPARTACUS? ) |
||
mst | chansen_: I still remember the day I realised people had DBIx::Class 0.02-ish svn trunk in production | ||
Rotwang | looking at github.com/cosimo/perl6-lwp-simple...lwp-get.pl it occured to me that you can call a method of a class | ||
chansen_ | mst: hehe | ||
Rotwang | and the class is automatically instantiated? | 20:10 | |
flussence | Rotwang: no, the class is still :U | ||
mst | chansen_: also you're doing the "I have no puncutation excvecpt for exclamation marks" thing again, which, like I told you the last four times, makes you come across as drunk and aggressive. please don't. | ||
20:10
lnrdo joined
|
|||
Rotwang | flussence: but in the LWP::Simple code there is a lots of self. | 20:10 | |
20:11
ChanServ sets mode: +o mst
|
|||
flussence | self.* refers to the type object there | 20:11 | |
Rotwang | flussence: so If I had it instantiated then how would I reffer to object things? | 20:12 | |
mst | I'm an array! | ||
20:12
mst sets mode: -o mst
|
|||
chansen_ | mst: I don't like when people states the obvious, who would you nuke anything in /usr without running as root? | 20:12 | |
20:12
regreg joined
|
|||
chansen_ s/who/how/ | 20:13 | ||
mst | chansen_: presumably you'd need to run chmod 777 first | ||
flussence | Rotwang: I don't quite follow what you're asking... | ||
chansen_ | mst: true | ||
diakopter | m: (my ::mst @){"foo"} | 20:14 | |
camelia | rakudo-moar 9441bb: OUTPUT«Method 'instantiate_generic' not found for invocant of class 'Array[mst]' in block <unit> at /tmp/AGQMMwbluB line 1» | ||
Rotwang | flussence: in python if I create an instance of a class, I can refer to this objects variables using self (or whatever I choose to call it) | 20:15 | |
20:15
sam-lap joined
|
|||
Rotwang | as I understand in perl6 self refers to class no object | 20:15 | |
not* | |||
flussence | self refers to whatever the method was invoked from, which can be defined or undefined | ||
mort96 | Just tried moving things over from a live USB to the disk, now it boots but things are broken because lots of things aren't installed. I think I'll just reinstall everything. | ||
Zoffix | Rotwang, "object things" would be twiggiled stuff | ||
mort96 | Can't even log in in tty lol | 20:16 | |
Zoffix | Rotwang, so you;'d access them with $!foo @!bar etc | ||
mst | Rotwang: I think that in a class method, self refers to the class, and in an object method, it refers to the object? | ||
Zoffix | mort96, damn -_- | ||
blub | hi camelia | ||
diakopter | I need a rakudobrewbrew to run: git clone github.com/tadzik/rakudobrew.git && cd rakudobrew/bin && ./rakudobrew build moar && ./rakudobrew build-panda && panda install Task::Star | ||
20:17
sam-lap left
|
|||
mort96 | It's k, I have all my files on various servers and all configs in a git repo | 20:17 | |
pmurias | flussence: re clearly marked as rough and broken, I'm pretty sure nobody expected rakudobrew to go around rampaging in /bin | ||
Zoffix | m: await IO::Socket::Async.connect('irc.freenode.net', 6667 ).then({given .result {.print("NICK Camelia_\nUSER NotCamelia localhost irc.freenode.net :notCamelia\nJOIN #perl6\nPRIVMSG #perl6 :Hi, blub\n"); react {whenever .Supply {}}}}) | ||
mst | diakopter: curl -L goatse.my.system | sh | ||
20:17
Camelia_ joined
|
|||
Camelia_ | Hi, blub | 20:17 | |
Zoffix giggles | 20:18 | ||
This never gets old :P | |||
camelia | rakudo-moar 9441bb: OUTPUT«(timeout)» | ||
20:18
Camelia_ left
|
|||
mst | pmurias: oh, absolutely | 20:18 | |
I think the point here is that while we totally needed to fix that | |||
chansen_ | mst: what if rakudobrew kept a manifest of installed files similar to how the port command/system work on BSD? | ||
mst | nobody should blame the original authors for it being broken | ||
chansen_: what if you read my patch first and told me why that would be better | |||
diakopter | mst: I think I should sudo su - before that, right? | ||
Rotwang | Zoffix: from what I see you can reffer to twigiled stuff in both cases (when you have a class instance and when you call method directly (static-kish) | ||
flussence | chansen_: at that point, you're just reinventing a system package manager poorly | ||
mst | diakopter: or chmod -R 777 /usr as root first | 20:19 | |
Rotwang | in LWP::Simple there is this piece of code: self ?? $.default_encoding !! $.class_default_encoding | ||
jdv79 | m: class A {method a {self.say}};A.new.a;A.a; # Rotwang | ||
yoleaux | 10:05Z <lizmat> jdv79: nothing happened in that area afaik | ||
camelia | rakudo-moar 9441bb: OUTPUT«A.new(A)» | ||
diakopter | who's using "code" as a diminutive? or pejorative? | ||
Rotwang | so it means I have to distinguish myself if the method is run from the instance or standalone? | ||
jdv79 | lizmat: ok, i'll look into it then | ||
maybe | |||
diakopter | it filled my disk with SPARTACUS | 20:20 | |
jdv79 | Rotwang: you can do that with the sig | ||
Zoffix | lol | ||
jdv79 | :U and :D | ||
diakopter | I wonder if I can buy the last 31 years of CCC bracelets on ebay | ||
20:21
llfourn joined
|
|||
chansen_ | mst: I did read your patch but I have not read the whole rakudobrew script, I guess it works relaying on a magic cookie. I'll read the whole script and get back to you | 20:22 | |
flussence: why poorly? | |||
mst | chansen_: yeah, and I picked a random line of the older code to fall back to | ||
diakopter | a magic 329MB cookie, yes | ||
mst | chansen_: 'sub rehash' is the culprit | ||
note that I'm 99.9% sure I broke win32 shim -removal- | 20:23 | ||
but that almost certainly doesn't matter currently | |||
diakopter | well if Perl 6 is wiping hard disks then at least it's not a surreptitious trojan virus | 20:24 | |
flussence | «t/nativecall/01-basic.t ............... java.lang.NullPointerException» aaaargh | ||
mst | diakopter: we had a perl5 module written on win32 that managed to 'rm -rf /' during its tests on *n?x | 20:25 | |
that was really funny for the people running cpan as root | |||
diakopter is a bit fearful of checking modulecounts.com today | 20:26 | ||
mst | chansen_: basically, if it had always used an explicit list of 'these are my shims', it'd be fine. but there's already installs that don't | ||
diakopter does it anyway | |||
mst | chansen_: so I figured regexp-as-heuristic was a reasonable compromise | ||
20:26
llfourn left
|
|||
Ox0dea | $ sudo rm -rf / | 20:26 | |
[sudo] password for dea: | |||
rm: it is dangerous to operate recursively on ‘/’ | |||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/_Xo8xyidjIUndeclared routines: dangerous used at line 1 is used at line 1 it used at line 1 on used at line 1 operate used at line 1 recursively used at line 1 to us…» | ||
Ox0dea | rm: use --no-preserve-root to override this failsafe | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/LgYrLySQ2VUndeclared routines: failsafe used at line 1. Did you mean 'callsame'? no-preserve-root used at line 1 override used at line 1 this used at line 1 to used at line 1. D…» | ||
Ox0dea | mst: ^ | ||
It's gonna be okay. | |||
diakopter | hrm, still bottom of the barrel at modulecounts | ||
mst | Ox0dea: no, I mean, it actually recursively removed / | 20:27 | |
flussence | diakopter: I wouldn't pay too much mind to it. Some cultures care more about counting their lines of code than making the lines count :) | ||
diakopter | how is npm still growing 300 new modules per day during Christmas | ||
Ox0dea | mst: How did the `--no-preserve-root` flag get supplied accidentally? | 20:28 | |
Zoffix | diakopter, don't they have community recommendation that new versions of modules get released in new repos? | ||
So those aren't new modules, just new uploads. | |||
Ox0dea | diakopter: JavaScript is eating the world. | ||
mst | diakopter: it's easy when you don't write docs or tests | ||
Zoffix | And reinvent the wheel for the gazillionth time | ||
20:28
deniska_ joined
|
|||
flussence | .oO( maybe node has its own version of Net::FullAuto... ) |
20:28 | |
mst | Ox0dea: it didn't. one, that flag is non standard anyway, so none of your comments make any sense at all | ||
Zoffix | :P | 20:29 | |
diakopter | Zoffix: they're new modules, really | ||
mst | Ox0dea: two, it's called a metaphor. | ||
atweiden | mort96: did you try `pacstrap /mnt base base-devel ...` | ||
Zoffix | diakopter, that's pretty crazy :o | ||
mst | Ox0dea: I -suspect- it was File::Path's remove_tree that got called with a bad path | ||
but this was a lot of years ago | |||
jdv79 | m: class A {multi method a (A:D:){say "i am an object:",self};multi method a (A:U:){say "i am a class/type object:",self}};A.new.a;A.a; # Rotwang | ||
camelia | rakudo-moar 9441bb: OUTPUT«i am an object:A.newi am a class/type object:(A)» | ||
mort96 | No, because pacman is in bin | ||
atweiden | from a livecd | ||
mort96 | Pacstrap* | ||
Didn't try that no | 20:30 | ||
atweiden | mount your fs in /mnt | ||
mst | mort96: on the upside, we did get the fix merged already | ||
mort96: so you should hopefully only have to do this once :D | |||
diakopter | m: class mst does Hash {} | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/yvwuKHtXXRHash is not composable, so mst cannot compose itat /tmp/yvwuKHtXXR:1» | ||
atweiden | requires knowing how you installed your system though | ||
diakopter | mst: you cannot compose Hash | ||
Zoffix | m: class mst is Hash {} | ||
camelia | ( no output ) | ||
20:30
deniska left
|
|||
mort96 | Yay | 20:30 | |
flussence keeps two copies of the OS installed on separate filesystems just in case | |||
20:31
brrt joined
|
|||
mst | diakopter: no half-ops on this network, it'll work on irc.perl.org | 20:31 | |
20:32
lnrdo left,
lnrdo joined
20:33
mue left
|
|||
flussence | it's a bit odd that modulecounts lists PEAR but doesn't have PECL, or combine both into one number. that's like omitting all XS stuff from the CPAN stats | 20:35 | |
Zoffix | Submit a PR :P | 20:36 | |
What I don't get is why it lists CPAN and CPAN (search) | |||
20:37
lnrdo left
|
|||
pmurias | Zoffix: so weird past different count issue | 20:37 | |
flussence | does that differentiate them based on that weird 5-letter tag thing CPAN has? | 20:38 | |
mst | 5-letter tag? do you mean the PAUSE id, which is 3 to 8 letters long | ||
and is basically the precursor of $AUTHOR and $AUTHORITY | |||
20:39
lnrdo joined
|
|||
pmurias | diakopter: is there a list of newly released npm modules somewhere? | 20:40 | |
Zoffix | There's a list of recently *updated* packages www.npmjs.com/browse/updated | 20:41 | |
flussence | mst: no, the other thing that listed a module's state in abbreviated form. I can't even find it any more so maybe it's gone | ||
mst | flussence: oh, that, yeah, that was part of the now-deprecated modulelist system | 20:42 | |
Zoffix | DSLIP | ||
mst | it had been largely made of unmaintainium for a while | ||
20:43
geraud joined
|
|||
uvtc | mst: hehehe | 20:43 | |
diakopter | pmurias: well there are new package revisions uploaded more than once per minute, so I don't think 300/day is just new revisions | 20:46 | |
Zoffix | Well, this is what these "packages" look like, so I'm not surprised: github.com/apizzimenti/weather-cli | 20:47 | |
pmurias | Zoffix: I have just looked through them and most of the new ones seems to be crap | ||
diakopter | there's no crap on CPAN | ||
20:47
kjs_ left
|
|||
Zoffix | No, not at all :P | 20:47 | |
flussence | helps that I've never uploaded anything to it :D | 20:48 | |
diakopter | how many of the Perl 6 modules are Acne | ||
I mean Acme | |||
Zoffix | I'm not too keen on having Perl 6 on the top charts, TBH.... It both makes P6 programmers ridiculously cheap and invites the really stupid programmers to produce a ton of crap code (just look at PHP) | 20:49 | |
diakopter | I don't think it does those two things | ||
Zoffix | I've seen some rather scary answers on StackOverflow | 20:51 | |
uvtc | After using rakudobrew, I see I now have a ~/.perl6 directory as well. What's the purpose of the ~/.perl6 directory? | ||
Zoffix | uvtc, contains modules | ||
flussence | runtime precomp flotsam | ||
Zoffix | m: say $*REPO | ||
camelia | rakudo-moar 9441bb: OUTPUT«inst#/home/camelia/.perl6/2015.12-18-g9441bb2» | ||
Zoffix | flotsam? | ||
diakopter | jetsam | ||
flussence | "stuff" | 20:52 | |
autarch | [Coke]: I realized that I may have had an outdated Rakudo & Moar installed - so I nuked and reinstalled - we'll see how the perf is now | ||
diakopter | is there a rakudobrew nuke command I haven't seen | ||
autarch | diakopter: rakudobrew nuke moar | ||
diakopter | ohhhh I was totally kidding | ||
autarch | diakopter: yeah, now I realize who you are, duh | 20:53 | |
Zoffix | plot-twist: it actually nukes your /bin ^_^ | ||
autarch | I thought doing "rakudobrew build moar" always got me the latest version, but maybe not - I was on 2015.11 until I nuked and did the build again | ||
chansen_ | mst: I have just scanned the rakudobrew script and I think your patch is fine for short term solution. For a longer term solution I think rakudobrew should keep track on whats is installed and only remove those files. | ||
flussence | “This is nqp version 2015.12 built on JVM” -- wooo, slight progress | 20:54 | |
20:54
meabreu joined
|
|||
mst | chansen_: I'm thinking have a shims dir, create them in there, symlink from the bin/ dir | 20:54 | |
chansen_: so you basically use "the contents of the shims dir" as the index | |||
chansen_: hrm, though, win32 | |||
I'll have to think about it | |||
20:55
meabreu left,
skyl4rk joined,
deniska_ left,
deniska_ joined,
deniska_ is now known as deniska
|
|||
ChoHag | What's the correct idiom for "return $foo if <it> <expression>"? | 20:55 | |
uvtc | Zoffix, thanks, but after `panda install Acme::Meow` completes successfully, I still only see files under ~/.perl6 with (apparently) hashes for filenames... | ||
ChoHag | I remember reading somewhere that perl 6 could say that. | 20:56 | |
return * if $foo ~~ Object? | |||
chansen_ | mst: yeah, or keep a manifest with installed filenames and SHA digests and only remove where those matches | ||
Ox0dea | Hey, yeah, how come post-conditionals don't implicitly smart-match? | 20:57 | |
ChoHag | chansen_: That sounds suspiciously like a package manager, which anywhere other than a package manager would constitute wheel-reinvention. | ||
atweiden | flussence: any idea why using panda with --prefix="$sandbox..." doesn't install the module? ix.io/n0B | ||
chansen_ | ChoHag: I'm perfectly away of how source and binary package systems work ;) | 20:58 | |
Zoffix | uvtc, because installation precompiles the modules | ||
chansen_ s/away/aware/ | |||
uvtc | Zoffix, ah, thanks. | 20:59 | |
flussence | atweiden: does that produce the usual "can't write to path" errors? I haven't tried system-installing panda yet | ||
ChoHag | Then you are perfectly aware of why we don't need Yet Another One. | ||
atweiden | it seems to work perfectly, it is only a problem when you go to `use JSON::Tiny` | ||
pmurias | Zoffix: second plot-twist, it actually nukes your /home if not run as root ;) | 21:00 | |
Zoffix | :P | ||
Ox0dea | pmurias: /home or $HOME? | ||
Zoffix | Both! | ||
atweiden | flussence: my panda isn't installed system wide | ||
ChoHag | pmurias: I've been busy eating. Tell me that's hyperbole. | ||
Please tell me there isn't something which nukes /home. | |||
flussence | oh, I dunno then. I've just been letting panda install to ~/.perl6 | ||
ChoHag | Or $HOME. | ||
atweiden | the panda/bootstrap script doesn't seem to acknowledge `--prefix` being passed to it | ||
mst | ChoHag: joke | ||
Zoffix | ChoHag, we're just joking | 21:01 | |
chansen_ | ChoHag: We are talking about a convenient and safe way for developers to use rakudobrew, not a replacement for a port or packing system! | ||
flussence | atweiden: I wouldn't be surprised if it's just NYI, lemme read the code first | ||
ChoHag | chansen_: Having glanced (and at this point only glanced) through rakudobrew, my tentative conclusion is that safe does not and will not apply. | 21:02 | |
Conveniently, developers can get away with safe-ish, so all is not lost. | |||
pmurias | ChoHag: it's just a lame joke ;) | 21:03 | |
deniska | put a thing in a docker container and call it safe | 21:04 | |
flussence | atweiden: yeah, Panda.pm line 219 respects --prefix, but 214 installs any deps ignoring it. that might be why | ||
ChoHag | As a sysadmin, it hits too close to home to be funny. | ||
BenGoldberg | m: sub foo { return * if 42; fail 'ouch' }; say foo; | 21:05 | |
camelia | rakudo-moar 9441bb: OUTPUT«*» | ||
chansen_ | ChoHag: As a sysadmin you should be qualified to judge whats safe and not! | ||
BenGoldberg | m: sub foo { if 42 -> { return $^it }; fail 'ouch' }; say foo; | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/fnO7RuBLcHPlaceholder variable '$^it' cannot override existing signatureat /tmp/fnO7RuBLcH:1------> 3sub foo { if 42 7⏏5-> { return $^it }; fail 'ouch' }; say f» | ||
Ox0dea | $ echo landline | tr denial '-~ fmr' | ||
(Don't breathe this.) | |||
BenGoldberg | m: sub foo { if 42 -> $it { return $it }; fail 'ouch' }; say foo; | 21:06 | |
camelia | rakudo-moar 9441bb: OUTPUT«42» | ||
Zoffix | m: sub foo { return * if 42; fail 'ouch' }; say (foo)(42); | ||
camelia | rakudo-moar 9441bb: OUTPUT«Cannot find method 'CALL-ME' in block <unit> at /tmp/25W_BdqQMf line 1» | ||
Zoffix | :( | ||
BenGoldberg | m: say (*)(42); | 21:07 | |
camelia | rakudo-moar 9441bb: OUTPUT«Cannot find method 'CALL-ME' in block <unit> at /tmp/_iETVOdYXv line 1» | ||
Zoffix | m: (* + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *)(|^20).say | ||
camelia | rakudo-moar 9441bb: OUTPUT«121645100408832000» | ||
atweiden | flussence: panda --prefix="$sandbox..." seems to hardcode the absolute path to the sandbox into the precomp files | ||
ChoHag | chansen_: Oh that's easy. Nothing's safe. | 21:08 | |
atweiden | could be why it isn't finding JSON::Tiny | ||
21:08
xfix left
|
|||
Zoffix | m: (+*)(42).say; | 21:08 | |
camelia | rakudo-moar 9441bb: OUTPUT«42» | ||
flussence | :( seems like something to fix in CUR... | ||
Zoffix | m: (*+*************************************)(|^20).say | 21:10 | |
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Ug8OwpVxZEMultiple HyperWhatevers and Whatevers may not be used togetherat /tmp/Ug8OwpVxZE:1------> 3(*+*************************************7⏏5)(|^20).say» | ||
Zoffix | HyperWhatevers hmm... what are they | ||
21:10
brrt left,
rindolf left
|
|||
diakopter | it's where your whatever has attention problems | 21:11 | |
flussence | atweiden: I don't think it's that; the *.deps files I have here have a bunch of /var/tmp/portage cruft in them but things work fine | ||
RabidGravy | ... HUH! WHAT ARE THEY GOOD FOR? ... | ||
deniska | hm, objects in perl6 has FALLBACK… Can I have FALLBACK for a global scope? :) | 21:14 | |
autarch | so performance for my new Pod::To::HTML still kind of stinks - it's CPU and memory hungry - are there any known performance gotchas with Perl 6 that I should be looking for? the built-in profiler doesn't seem very useful yet - it generates _massive_ JSON dumps that my browser can't handle | ||
I could probably write a Go program that could parse the JSON and generate a report, but I doubt I could write one in Perl 6 (and maybe not even Perl 5) | 21:15 | ||
21:15
mue joined
|
|||
Rotwang | Most of the exceptions from core modules I see are X::AdHoc, I hope it is a subject to change in the near(ish) future | 21:15 | |
21:16
espadrine joined
|
|||
RabidGravy | autarch, I think there is/was/may be a html output option | 21:16 | |
flussence | autarch: one thing that helps is if you're dealing with a lot of match objects, get rid of them ASAP by stringifying or whatever | ||
RabidGravy | Rotwang, yes | ||
21:16
nexysno_ left
|
|||
Rotwang | RabidGravy: ok, thanks | 21:16 | |
autarch | RabidGravy: yeah, it spits an HTML file which is a SPA with many MB of JSON in it - it just crashes my browser | ||
flussence: I don't think I have any matches that stick around for a long time, AFAIK | |||
RabidGravy | eugh | ||
21:17
CIAvash left,
Arrowhead left
|
|||
flussence | you're dealing with Pod nodes right? Those might be holding onto match objects too... (in which case, it's not your fault) | 21:17 | |
autarch | flussence: no, I don't think they have any internally - i've done a lot of "dd"ing of Pod stuff and it's all objects and strings - no matches | 21:19 | |
diakopter | autarch: maybe add a timeout to your script so the profile output is lessened | ||
autarch | diakopter: I profiled a 40 line test file and got a 2.5MB SPA that crashed Chrome and that Firefox could just barely display | ||
and that 40 line test file is nowhere near what the htmlify.p6 code does, so it's not very useful to profile anyway | |||
21:21
AlexDaniel joined
|
|||
AlexDaniel | .u ★ | 21:21 | |
yoleaux | U+2605 BLACK STAR [So] (★) | ||
Zoffix | m: my 無 $x; | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5===Type '無' is not declaredat /tmp/FWCsjcPsfi:1------> 3my 無7⏏5 $x;Malformed myat /tmp/FWCsjcPsfi:1------> 3my7⏏5 無 $x;» | ||
AlexDaniel | .u STAR | ||
Zoffix | .u 無 | ||
yoleaux | U+0001 START OF HEADING [Cc] (␁) | ||
U+0002 START OF TEXT [Cc] (␂) | |||
U+0086 START OF SELECTED AREA [Cc] (<control>) | |||
No characters found | |||
AlexDaniel | not start… | ||
Zoffix | m: say '無'.uniname | 21:22 | |
camelia | rakudo-moar 9441bb: OUTPUT«<CJK Ideograph>» | ||
21:22
JulesFM joined
|
|||
AlexDaniel | .u WHITE STAR | 21:22 | |
yoleaux | U+2606 WHITE STAR [So] (☆) | ||
flussence | .u 'STAR ' | ||
yoleaux | U+0020 SPACE [Zs] ( ) | ||
U+0027 APOSTROPHE [Po] (') | |||
U+0041 LATIN CAPITAL LETTER A [Lu] (A) | |||
AlexDaniel | .u WHITE SMALL STAR | ||
yoleaux | U+2B52 WHITE SMALL STAR [So] (⭒) | ||
Zoffix | m: class 無 is Mu {}; my 無 $x = 42; say $x.WHAT | ||
camelia | rakudo-moar 9441bb: OUTPUT«Type check failed in assignment to $x; expected 無 but got Int in block <unit> at /tmp/vtzCvs5X5m line 1» | ||
21:22
dududuedu joined
|
|||
AlexDaniel | and not to be confused with… | 21:22 | |
flussence | .u STAR\b | ||
yoleaux | U+0041 LATIN CAPITAL LETTER A [Lu] (A) | ||
U+0052 LATIN CAPITAL LETTER R [Lu] (R) | |||
U+0053 LATIN CAPITAL LETTER S [Lu] (S) | |||
AlexDaniel | .u ⋆ | ||
yoleaux | U+22C6 STAR OPERATOR [Sm] (⋆) | ||
diakopter | autarch: it probably didn't crash chrome, it just takes a while to laod | 21:23 | |
autarch | diakopter: you're right - it didn't actually crash it, just kept prompting me about long running scripts | ||
Zoffix | ⋆for whatever star would be nice | ||
21:23
llfourn joined
|
|||
Zoffix | Or ★ | 21:23 | |
AlexDaniel | .u ⋆ | ||
yoleaux | U+22C6 STAR OPERATOR [Sm] (⋆) | ||
diakopter | sometimes it takes up to a minute | ||
AlexDaniel | Zoffix: that's an operator | ||
Zoffix: leave it to custom operators, choose any other star | |||
JulesFM | Why does ((1,2),3).flat work (it prints (1 2 3) in REPL, but @a = (1, 2), 3; @a.flat not work? (it prints ((1 2) 3) in REPL) ???? | ||
flussence | Zoffix: you'll have psycopathic maintenance programmers hunting you down if you do that :) | 21:24 | |
ChoHag | How can you do stub code in a role without needing to write it in the class which consumes it? | ||
Zoffix | flussence, why? | ||
ChoHag | ie. how to differentiate between "I haven't written this yet" and "you need to write this"? | ||
flussence | it's almost impossible to see that it's a fancy unicode star and not an ascii one | ||
21:24
pierre-v_ joined
|
|||
AlexDaniel | flussence: ascii stars??? | 21:24 | |
flussence | * | ||
ChoHag | The ascii * is the star of David. ★ is 5-pointed which ... isn't. | 21:25 | |
RabidGravy | ChoHag, I don't think you can | ||
Zoffix | m: (⋆ + ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆)(|^20).say | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/oyn4h7w1eaBogus statementat /tmp/oyn4h7w1ea:1------> 3(7⏏5⋆ + ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ * ⋆ *  expecting any of: prefix term» | ||
AlexDaniel | flussence: what font on earth does render those similarly? | ||
Zoffix | Looks sexy to me | ||
MilkmanDan | ChoHag: I think you have that backwards. | ||
flussence | those are both 5-pronged with inconsolata.ttf | ||
RabidGravy | weirdo | ||
JulesFM | What am I missing about lists? | ||
Zoffix | .u multiplication | ||
yoleaux | U+00D7 MULTIPLICATION SIGN [Sm] (×) | ||
U+228D MULTISET MULTIPLICATION [Sm] (⊍) | 21:26 | ||
U+2715 MULTIPLICATION X [So] (✕) | |||
autarch | I note that in my font the ASCII star has 5 points | ||
MilkmanDan | ASCII * is the stick figure version. | ||
AlexDaniel | m: my @a = (1, 2), 3; say @a.flat | ||
camelia | rakudo-moar 9441bb: OUTPUT«((1 2) 3)» | ||
Zoffix | Or even this: (⋆ + ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆ × ⋆)(|^20).say | ||
AlexDaniel | m: my @a = (1, 2), 3; say flat @a | ||
camelia | rakudo-moar 9441bb: OUTPUT«((1 2) 3)» | ||
AlexDaniel | m: my @a = (1, 2), 3; say |@a | ||
camelia | rakudo-moar 9441bb: OUTPUT«(1 2)3» | ||
Zoffix | | is slip | 21:27 | |
AlexDaniel | m: my @a = (1, 2), 3; say flat flat @a | ||
camelia | rakudo-moar 9441bb: OUTPUT«((1 2) 3)» | ||
AlexDaniel | m: my @a = (1, 2), 3; say flat flat flat flat @a # dammit | ||
camelia | rakudo-moar 9441bb: OUTPUT«((1 2) 3)» | ||
21:27
pierre-v_ left,
pierre-vigier left
|
|||
Zoffix | hm | 21:27 | |
21:27
pierre-vigier joined
|
|||
AlexDaniel | m: my @a = (1, 2), 3; dd @a | 21:27 | |
camelia | rakudo-moar 9441bb: OUTPUT«Array @a = [(1, 2), 3]» | ||
AlexDaniel | m: my @a = (1, 2), 3; dd @a[0] | ||
camelia | rakudo-moar 9441bb: OUTPUT«List @a = $(1, 2)» | ||
AlexDaniel | m: my @a = (1, 2), 3; say @a[0].WHAT | ||
camelia | rakudo-moar 9441bb: OUTPUT«(List)» | ||
Zoffix | oh, this reminds me | ||
21:28
llfourn left
|
|||
Zoffix | It's likely related to .flatmap being broken too rt.perl.org/Ticket/Display.html?id=127036 | 21:28 | |
dalek | p: 51585c8 | (Pawel Murias)++ | t/nqp/88-more-if-tests.t: Test nqp::ifnull. |
||
JulesFM | So what's the difference between a list and an array, and how did we end up with a top-level Array and not a List? | ||
21:29
hankache joined
|
|||
flussence | lists have one end but may not have another | 21:29 | |
Zoffix | .u whatever | 21:30 | |
yoleaux | No characters found | ||
Zoffix | :( | ||
This looks awesome: (★ + ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★ × ★)(|^20).say | 21:31 | ||
Skarsnik | :) | ||
AlexDaniel | what really bothers me is that unicode has BLACK and WHITE symbols | 21:32 | |
21:32
hankache left
|
|||
AlexDaniel | instead of using normal and INVERTED | 21:32 | |
.u DRAUGHTS | |||
yoleaux | U+26C0 WHITE DRAUGHTS MAN [So] (⛀) | ||
U+26C1 WHITE DRAUGHTS KING [So] (⛁) | |||
U+26C2 BLACK DRAUGHTS MAN [So] (⛂) | |||
AlexDaniel | guess how that looks like on black background | ||
JulesFM | p6: @a = (1,2),3; say @a.WHAT; say @a[0].WHAT; | ||
camelia | rakudo-moar 9441bb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/tmpfileVariable '@a' is not declaredat /tmp/tmpfile:1------> 3<BOL>7⏏5@a = (1,2),3; say @a.WHAT; say @a[0].WHA» | ||
AlexDaniel | JulesFM: my | 21:33 | |
21:33
domidumont left
|
|||
Zoffix | p6:my @a = (1,2),3; say @a.WHAT; say @a[0].WHAT; | 21:33 | |
21:33
domidumont joined
|
|||
Zoffix | p6: my @a = (1,2),3; say @a.WHAT; say @a[0].WHAT; | 21:34 | |
camelia | rakudo-moar 9441bb: OUTPUT«(Array)(List)» | ||
mst | flussence: did our patch make it in yet? | ||
flussence: github.com/tadzik/rakudobrew/issues/73 looks like the same thing | |||
AlexDaniel | this is driving me crazy, how can this thing become flat? | ||
I mean, how do I make it flat | |||
even if it is a bug, what's the workaround? | 21:35 | ||
flussence | mst: both our patch and the thing nine came up with made it into git, but not 2015.12 | ||
mst | flussence: is that issue the same thing? | ||
or a mkdir versus mkpath difference | |||
flussence | yep | ||
mst | right, I have to head out to meet somebody again | 21:36 | |
can you write something up on the issue please? | |||
RabidGravy | m: my @a = (1,2),3; say @a.map: *.list | ||
camelia | rakudo-moar 9441bb: OUTPUT«((1 2) (3))» | ||
flussence | righto | ||
RabidGravy | oh. weirder | ||
mst | thanks | ||
& | |||
flussence++ | |||
RabidGravy | m: my @a = (1,2),3; say @a.map({ $_.list}).flat | ||
camelia | rakudo-moar 9441bb: OUTPUT«(1 2 3)» | ||
dalek | p: d0eb164 | (Pawel Murias)++ | t/nqp/19-file-ops.t: Test we are at EOF after nqp::readallfh. |
21:37 | |
AlexDaniel | m: my @a = (1, 2), 3; say @a>>.list.flat | ||
camelia | rakudo-moar 9441bb: OUTPUT«(1 2 3)» | ||
RabidGravy | there | ||
AlexDaniel | m: my @a = (1, (2, 5)), 3; say @a>>.list.flat | ||
camelia | rakudo-moar 9441bb: OUTPUT«(1 2 5 3)» | ||
chansen_ | Did Swift reuse multi dispatch on named parameters? AFIK only Perl6 and Swift uses named parameters? | ||
Zoffix | m: my @a = (1, (2, (42,5))), 3; say @a>>.list.flat | ||
camelia | rakudo-moar 9441bb: OUTPUT«(1 2 42 5 3)» | ||
RabidGravy | there's always a way | 21:38 | |
AlexDaniel | JulesFM: ↑ | ||
21:38
dotness left
|
|||
Zoffix | m: say ((1, (2, (42,5))), 3).flat | 21:39 | |
camelia | rakudo-moar 9441bb: OUTPUT«(1 2 42 5 3)» | ||
chansen_ s/reuse/reuse from Perl6/ | |||
Ox0dea | m: my @a = (1,2),3; say @a.List.flat # RabidGravy | ||
camelia | rakudo-moar 9441bb: OUTPUT«(1 2 3)» | ||
Ox0dea | No need to map. | ||
Just reconstruct. | |||
AlexDaniel | Ox0dea: awesome | ||
Ox0dea | NO U | ||
RabidGravy | what larks | 21:40 | |
diakopter | whimsy | ||
chansen_ | AlexDaniel: What happen if you combine them with Unicode skin tones? | 21:41 | |
21:41
domidumont left
|
|||
AlexDaniel | chansen_: nothing, I hope | 21:41 | |
by the way, let's try skin tones… | |||
21:41
smls left
|
|||
dalek | ast: 5fb2feb | (Zoffix Znet)++ | S32-num/is-prime.t: Test more values in is-prime sub This covers incorrect values described in RT#127044 rt.perl.org/Ticket/Display.html?id=127044 |
21:43 | |
ast: 4c91839 | lizmat++ | S32-num/is-prime.t: Merge pull request #92 from zoffixznet/rt-127044 Test more values in is-prime sub |
|||
RabidGravy | chansen_, erlang and ocaml have named parameters to my certain knowledge | ||
flussence | `rakudobrew build moar` pulls straight from latest git/nom, right? | ||
RabidGravy | yes | ||
flussence | k, just wanted to make sure I don't give people a bunch of wrong advice :) | 21:44 | |
Ox0dea | .u BLACK CHESS KING + EMOJI MODIFIER FITZPATRICK TYPE-1-2 | ||
yoleaux | U+0020 SPACE [Zs] ( ) | ||
U+002B PLUS SIGN [Sm] (+) | |||
U+002D HYPHEN-MINUS [Pd] (-) | |||
Ox0dea | That went well. | ||
chansen_ | RabidGravy: supporting multi dispatch named parameters in constructors and method names? | 21:45 | |
Ox0dea | Zoffix: You misspelled "coercion". :< | 21:46 | |
Zoffix | heh, I had it as coercion and then changed it -_- | ||
Ox0dea | English is a guessing game, amirite? :P | 21:47 | |
Zoffix | Ox0dea, well, submit a PR | ||
RabidGravy | well in the case of erlang that's somewhat of a trick question, don't know ocaml well enough to be sure | ||
skyl4rk | anybody using vim to write perl6 and having problems with vim freezing to a cpu-eating halt? | ||
lizmat | good *, #perl6 | ||
Ox0dea | skyl4rk: Not yet. | ||
skyl4rk | (with syntax hilighting on, turning it off seems to drop the problem) | ||
Zoffix | No, English is fine when you're not writing it in the morning after 4 days of heavy drinking | ||
gfldex | m: my $l = ((1, (2, (42,5))), 3); dd $l.flat; | 21:48 | |
camelia | rakudo-moar 9441bb: OUTPUT«(1, 2, 42, 5, 3).Seq» | ||
lizmat | Zoffix: wrt PR 656, I approve of the idea, but not of the patch... testing another one right now | ||
mort96 | eyyyy, back with a working Linux install | ||
Zoffix | lizmat, sure, go ahead with closing it and using something saner instead :) | ||
Ox0dea | mort96: Papyros? | ||
AlexDaniel | m: say ‘🎅🏿’.chars | ||
camelia | rakudo-moar 9441bb: OUTPUT«2» | ||
mort96 | no, arch | ||
well | |||
RabidGravy | skyl4rk, yes I use vim, no it doesn't do that. And I edit some large files. | ||
AlexDaniel | sooo, should it be 2? | ||
mort96 | antergos really | ||
lizmat | Zoffix: fwiw, I *did* merge the tests :-) | ||
Zoffix | lizmat, there're two typoes as Ox0dea++ just discovered. "coersion" should be "coercion" | 21:49 | |
Maybe you could fix it :) | |||
Ox0dea | An Archer using IRCCloud? | ||
Something new every day. | 21:50 | ||
mort96 | Ox0dea: was hit by a tiny bug in Rakudobrew which deleted everything in /bin, so had to reinstall | ||
lizmat | Zoffix: will do, also: it's is-prime, not isprime and the number of tests was incorrect :-) | ||
mort96 | don't worry, I'm currently working on writing my own replacement for irccloud | ||
Ox0dea | mort96: Why? | ||
uvtc | Which docs can I access with `perl6 --doc`? I panda-installed Acme::Meow, but `perl6 --doc Acme::Meow` couldn't stat the file, and `perl6 --doc=Acme::Meow` just drops me into the repl. | ||
Zoffix | lizmat, oh god :) I should not submit PRs when I'm super hungover >_< | ||
mort96 | why what? reinstall or irccloud replacement? | ||
ChoHag | I have a token "module" which matches perl-like module names (<.plain-word> [ '::' <.plain-word> ]+), why doesn't the token which includes it (<.module> [ '+{' <.module> '}' ]*) match module names with +{Foo::Bar} appended? | 21:51 | |
dalek | ast: d4a77bd | lizmat++ | S32-num/is-prime.t: Fix tests added by Zoffix++ |
||
Zoffix | .oO( coercion ) |
||
mort96 | Ox0dea: | ||
AlexDaniel | folks, so am I getting it right that emoji skin color modifier should kinda combine with the previous character? So that we get 1 when we do .chars? | 21:52 | |
dalek | kudo/nom: 8c56c11 | lizmat++ | src/core/Int.pm: Only return True on whole numbers, Zoffix++ This is an alternate version of PR #656 |
||
Ox0dea | mort96: You'd already explained why you reinstalled, so why would I be asking about that? | ||
lizmat | AlexDaniel: it probably should, yes | ||
mort96 | idk, could be something like "why would a bug in rakudobrew delete /bin?" | ||
Ox0dea | mort96: More to the point, why did you run it with the requisite privileges? | 21:53 | |
AlexDaniel | what does the unicode say about this? Should it actually be treated as one grapheme? That would make sense | ||
mort96 | because it asked me | ||
writing a replacement for irccloud because I like writing software, and like using my own software, and don't want to pay for irccloud | 21:54 | ||
and because irccloud sometimes goes down, which is annoying | |||
chansen_ | RabidGravy: Ok | ||
ShimmerFairy | AlexDaniel: AFAICT Unicode's current definition of "extended grapheme cluster" may not cover the skin color modifiers; if so, feel free to file a bug with them :) | 21:55 | |
AlexDaniel | “When a human emoji is not immediately followed by a emoji modifier character, it should use a generic, non-realistic skin tone, such as: #3399CC” | ||
this is just nuts… | |||
Ox0dea | AlexDaniel: Python and Ruby both say 2. | ||
RabidGravy | is #3399CC sort of Simpsons yellow? | 21:56 | |
AlexDaniel | Ox0dea: they are wrong. Throw a combiner into them and they'll say the same thing | ||
RabidGravy: it's fucking blue | |||
ChoHag | Goes down? | ||
How can it go down? | |||
It's _the cloud_. | |||
mort96 | lol | ||
21:57
JulesFM left
|
|||
Zoffix | RabidGravy, it's this: jsfiddle.net/hvg2x5ks/ | 21:57 | |
flussence | "why is our business losing thousands of dollars a minute? precipitation!" | ||
chansen_ | AlexDaniel: why do you think I ask you? Unicode is insane! ;o) | ||
timotimo | if anybody here owns a nintendo 3ds, the "console hacking" talk on the 32c3 is about to start | ||
Ox0dea | AlexDaniel: You're right. | ||
flussence | timotimo: already got it open :D | ||
timotimo | streaming.media.ccc.de/32c3/hallg/ | ||
Skarsnik | 32c3? | ||
blub | thats a pretty blue | ||
timotimo | 32nd chaos communication congress | 21:58 | |
RabidGravy | the colour of smurfs, that's not non-realistic | ||
AlexDaniel | “As to hair color, dark hair tends to be more neutral, because people of every skin tone can have black (or very dark brown) hair—however, there is no requirement for any particular hair color. One exception is PERSON WITH BLOND HAIR, which needs to have blond hair regardless of skin tone.” | ||
Just read this, it is hilarious: unicode.org/reports/tr51/#Emoji_Modifiers_Table | 21:59 | ||
21:59
anthk_ joined
|
|||
Zoffix | lol | 21:59 | |
Skarsnik | rofl unicode | ||
Hotkeys | mort96: could always just use a bouncer like znc | ||
RabidGravy | god that meeting must have been way fun | 22:00 | |
timotimo | run weechat on a server and use the weechat remote protocol | ||
Skarsnik | Zoffix, I have another thing for you to add to irc::client, allow some pluging to create new event xD | ||
22:00
pierre-vigier left
|
|||
timotimo | 100x better than "bouncer"s | 22:00 | |
Hotkeys | lol | ||
flussence | .oO( unicode should just assign codepoint equivalents for VT220 escape sequences ) |
||
ChoHag | m: grammar Path { token plain-word { <:Letter + [_]> <:Letter + :Number + :Symbol - [.\[\]\<\>\:]>* }; token module { <.plain-word> [ '::' <.plain-word> ]+ }; token class { <.module> [ '+{' <.module> '}' ]* } }; Path.parse('Foo::Bar', :rule<class>).perl.say; Path.parse('Foo::Bar+{Baz::Bing}', :rule<class>).perl.say | ||
camelia | rakudo-moar 9441bb: OUTPUT«Match.new(ast => Any, list => (), hash => Map.new(()), orig => "Foo::Bar", to => 8, from => 0)Nil» | ||
ChoHag | Why is the 2nd Nil? | ||
Hotkeys | idk I like my bouncer | ||
ChoHag | Is there some sort of problem with irssi & tmux which needed solving with http? | 22:01 | |
ShimmerFairy | it looks like the skin tone modifiers are Grapheme_Base, and not Grapheme_Extend like I'd expect, for some odd reason | ||
mort96 | yes, actually | ||
ChoHag | That's a rhetorical question. | ||
Zoffix | Skarsnik, what's the use case? | ||
lizmat | m: my $f = "\x1F466\x1F3FE"; say "$f $f.chars()" # this feels like a bug | ||
camelia | rakudo-moar 9441bb: OUTPUT«👦🏾 2» | ||
AlexDaniel | “In real multi-person groupings, the members may have a variety of skin tones.” – does it mean that KISS character should have one person black and another one white? | ||
mort96 | irssi in tmux in ssh works pretty shit on phones. | ||
flussence | mst, anyone else interested: github.com/tadzik/rakudobrew/issues/73 people on OS X are apparently having the same problems distro packager people are. might be good cause to roll a 2015.12.1... | 22:02 | |
Skarsnik | Zoffix, Twitch.tv chat that use IRC, they have specific event like "someone is hosting you" | ||
ChoHag | mort96: On shit phones maybe. | ||
Though in your defense, they all are. | 22:03 | ||
22:03
pierre-vigier joined
|
|||
Zoffix | Skarsnik, what do you mean by "create new event"? A new event other plugins can subscribe to? | 22:03 | |
Skarsnik | Yes | ||
Zoffix | Skarsnik, then I don't get the usecase :) | ||
Hotkeys | is there a quick way to initilize an int array to 0 | ||
mort96 | terminals are inherently bad on touch screens. | ||
AlexDaniel | “The U+200D ZERO WIDTH JOINER (ZWJ) can be used between the elements of a sequence of characters to indicate that a single glyph should be presented if available.” | 22:04 | |
Hotkeys | would I just do a for loop on @array and set $_ = 0 | ||
AlexDaniel | ok, I give up, I have no idea how this could possibly work | ||
mort96 | plus, how are you supposed to get notifications? You could have something listen to a bell character, but you wouldn't get the text and sender in the notification | ||
lizmat | AlexDaniel: will submit rakudobug | ||
AlexDaniel | lizmat: oh, nice | ||
timotimo | Hotkeys: int arrays are not initialized to zeroes for you? | 22:05 | |
m: my int @a[10]; say @a | |||
camelia | rakudo-moar 9441bb: OUTPUT«[0 0 0 0 0 0 0 0 0 0]» | ||
22:05
dududuedu left
|
|||
Hotkeys | spam: | 22:05 | |
> my Int @lights[1000;1000]; | |||
Method 'gist' not found for invocant of class 'NQPMu' | |||
> @lights[0;3] | |||
> @lights[0;3] = 1 | |||
1 | |||
deniska | mort96: set up your server to send you SMS when someone pings you | ||
Hotkeys | > @lights[0;3] | ||
1 | |||
AlexDaniel | lizmat: maybe it should also mention ZERO WIDTH JOINER… or this could be a separate bug report | ||
Hotkeys | am I doing this wrong | ||
AlexDaniel | Hotkeys: yes, why don't you use gitlab snippets? | ||
mort96 | then I'm not notified on my tablet | ||
ChoHag | Odd. This works: | ||
Hotkeys | not that part | ||
ChoHag | m: grammar { token plain-word { <:Letter + [_]> <:Letter + :Number + :Symbol - [.\[\]\<\>\:]>* }; token module { <.plain-word> [ '::' <.plain-word> ]+ }; token class { <.module> [ '++' <.module> ]* } }.parse('Foo::Bar++Baz::Bing', :rule<class>).perl.say | ||
camelia | rakudo-moar 9441bb: OUTPUT«Match.new(ast => Any, list => (), hash => Map.new(()), orig => "Foo::Bar++Baz::Bing", to => 19, from => 0)» | ||
Hotkeys | I meant the array | ||
22:05
uvtc left
|
|||
deniska | Also who needs notifications? | 22:05 | |
lizmat | AlexDaniel: I think a different one would be in order, will you do that one ? | 22:06 | |
ChoHag | But this doesn't, despite an identical change in the string and token: | ||
mort96 | they're nice to have. | ||
ChoHag | m: grammar { token plain-word { <:Letter + [_]> <:Letter + :Number + :Symbol - [.\[\]\<\>\:]>* }; token module { <.plain-word> [ '::' <.plain-word> ]+ }; token class { <.module> [ '+(' <.module> ]* } }.parse('Foo::Bar+(Baz::Bing', :rule<class>).perl.say | ||
camelia | rakudo-moar 9441bb: OUTPUT«Nil» | ||
AlexDaniel | lizmat: yes, deal | ||
deniska | mort96: they are nice way to allow other people to eat your time :) | ||
AlexDaniel | lizmat: but I will read about this one for a few minutes… | ||
ChoHag | Obviously perl's and my idea of identical differ, but why? | ||
Skarsnik | Zoffix, hm, like if I want to write a ircbot to do stuff with twitch chat, I probably want to handle twitch special stuff, like when someone is hosting my stream (you get a privmsg/notice from an user). I mean I can do it normaly, but I probably just want to have a special new event for that | ||
Hotkeys | m: my Int @lights[10,10]; say @lights; | ||
camelia | rakudo-moar 9441bb: OUTPUT«Method 'gist' not found for invocant of class 'NQPMu' in block <unit> at /tmp/BLg5N_0wX3 line 1» | ||
Hotkeys | m: my Int @lights[10;10]; say @lights; | ||
camelia | rakudo-moar 9441bb: OUTPUT«Method 'gist' not found for invocant of class 'NQPMu' in block <unit> at /tmp/BbFvpgQUrI line 1» | ||
Hotkeys | how do I shaped array | ||
Skarsnik | the 32c3 stream buffer like crazy :( | ||
22:07
pierre-vigier left
|
|||
Hotkeys | m: my int @lights[10;10]; say @lights; | 22:07 | |
camelia | rakudo-moar 9441bb: OUTPUT«[[0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0] [0 0 0 0 0 0 0 0 0 0]]» | ||
Hotkeys | oh weird | ||
Zoffix | Skarsnik, k, I'll add that when I get a chance | ||
Hotkeys | Are arrays of "Int" not a thing? | ||
chansen_ | AlexDaniel: I didn't intend to cause this disturbance in your work ;) | 22:08 | |
anthk_ | hello | ||
Zoffix | anthk_, hai | ||
anthk_ | how do I iterate over a file content in binary mode in Perl6? | ||
Zoffix | anthk_, use :bin | 22:09 | |
Skarsnik | open :bin ? | ||
Ox0dea | Hotkeys: Hm? | 22:10 | |
Hotkeys | see above camelia bits | ||
22:11
kaare_ left
|
|||
Ox0dea | m: say my @a[10;10].shape # Hotkeys | 22:11 | |
camelia | rakudo-moar 9441bb: OUTPUT«(10 10)» | ||
22:11
patrickz left,
krshn left
|
|||
chansen_ | AlexDaniel: Unicode has done a lot of mistakes since they thought ISO/IEC 10646 where theres to control | 22:12 | |
lizmat | AlexDaniel: #127047 | ||
22:12
patrickz joined
|
|||
chansen_ | lizmat: Do you have uri for that? | 22:13 | |
anthk_ | Zoffix: would it work if I copy the bytes to an array? | ||
lizmat | chansen_: rt.perl.org/Ticket/Display.html?id=127047 | ||
chansen_ | lizmat: thanks | 22:14 | |
anthk_ | what I am trying to implement is a chip8 interpreter , and copying bytes to the fake memory array gave me type errors. | 22:15 | |
AlexDaniel | RT #127047 | ||
where's the bot? :) | |||
Zoffix | ded | ||
anthk_ | my uint16 @memory[4096]; | ||
lizmat | good night, #perl6! | ||
Zoffix | night | 22:16 | |
RabidGravy | anthk_, assigning a Buf to that won't no | 22:17 | |
$buf.list however may work | |||
i.e | 22:18 | ||
m: my $buf = Buf.new(<1 2 3 4>); my uint16 @a = $buf.list; say @a; | 22:19 | ||
camelia | rakudo-moar 8c56c1: OUTPUT«1 2 3 4» | ||
Ox0dea | RabidGravy: grammarist.com/usage/ie-eg/ | ||
22:19
Begi joined
|
|||
Zoffix | Really bruh? -_- | 22:20 | |
Ox0dea | Precision matters. | ||
Don't let these things upset you. | |||
Zoffix | Not in here. | ||
RabidGravy | that's nice | 22:21 | |
Zoffix | *Not in this case. | ||
22:21
Zero_Dogg left
|
|||
anthk_ | Buf.new() could work with the file handle? | 22:21 | |
RabidGravy | anthk_, if you do ... .open(:bin); .... my $buf = $handle,read(..); | 22:22 | |
you get a Buf back | |||
so no need to construct one | 22:23 | ||
22:24
llfourn joined
|
|||
AlexDaniel | m: say “\x1F469\x200D\x2764\xFE0F\x200D\x1F48B\x200D\x1F468”.chars | 22:28 | |
camelia | rakudo-moar 8c56c1: OUTPUT«4» | ||
22:29
llfourn left
|
|||
AlexDaniel | m: say “\x1F469\x200D\x2764\xFE0F\x200D\x1F48B\x200D\x1F468” | 22:29 | |
camelia | rakudo-moar 8c56c1: OUTPUT«👩❤️💋👨» | ||
anthk_ | now I need a way to get the size. Sorry if I annoy you. | 22:30 | |
Zoffix | anthk_, the total number of elements in your array? it's .elems | ||
m: my @a = ^10; say @a.elems | |||
camelia | rakudo-moar 8c56c1: OUTPUT«10» | ||
AlexDaniel | m: my @a = ^10; say +@a | 22:31 | |
camelia | rakudo-moar 8c56c1: OUTPUT«10» | ||
Zoffix | This is hilarious brainfuck written in printf: github.com/HexHive/printbf | ||
Hotkeys | is there an idiomatic way to toggle a bool? | ||
Zoffix | Hotkeys, ? | ||
Hotkeys | or should I just xor it | ||
Zoffix | Oh, toggle | ||
Ox0dea | Hotkeys: What's wrong with `$b = !$b`? | 22:32 | |
Hotkeys | oh | ||
right | |||
I'm, dumb | |||
s/,// | |||
deniska | $b.=not | 22:34 | |
because why .=not? | |||
RabidGravy | :) | ||
Ox0dea | Ah, there's the method for which I was looking. | ||
Hotkeys | nice | ||
I like it | |||
Ox0dea | `.=` might be my favorite operator. | 22:35 | |
RabidGravy | ugly to me | ||
Hotkeys | yeah | ||
Ox0dea | Pfft. | ||
Do you feel that way about compound assignment in general? | |||
timotimo | i like .= | ||
RabidGravy | yeah lots of people do, I just don't feel the love | 22:36 | |
22:37
mohij joined
|
|||
anthk_ | mapping a buffer to an array seems impossible to me :( | 22:37 | |
ShimmerFairy | $a ^^= True ? :) | ||
Zoffix | anthk_, why? | ||
22:38
leont joined
|
|||
anthk_ | my $buf = $fh.read($fh.IO.s); | 22:38 | |
ShimmerFairy | RabidGravy: I personally like making use of .= to allow the user to choose (more easily) if the method modifies the object, i.e. $a.doesn't-modify, $a.=this-does | ||
22:38
patrickz left
|
|||
anthk_ | and then I create a loop from $i to $buf.IO.s, because I don't know how to get the size of the buffer | 22:39 | |
Ox0dea | ShimmerFairy: It doesn't actually modify the invocant, though. | ||
22:39
SwellJoe joined
|
|||
RabidGravy | $buf.elems | 22:39 | |
anthk_ | but this is perl6, sure there is another and proper way to do so | ||
Zoffix | anthk_, I told you, .elems | ||
AlexDaniel | lizmat: rt.perl.org/Public/Bug/Display.html?id=127048 | ||
Zoffix | anthk_, doc.perl6.org/type/Buf | ||
nine | .tell [Coke] yes, I'm quite sure panda will get an uninstall | 22:40 | |
yoleaux | nine: I'll pass your message to [Coke]. | ||
22:41
mohij is now known as patrickz
|
|||
ShimmerFairy | Ox0dea: true, I just like making it so that the extra = as a visual indicator that $a will change, instead of remembering/looking up the API. Not that I stick to the rule all that much, but it's a nice one anyway. :) | 22:41 | |
22:45
lnrdo left,
otsuaf joined
|
|||
otsuaf | hallo | 22:45 | |
22:45
lnrdo joined,
mue left
22:46
geck joined,
otsuaf left
|
|||
anthk_ | ok, now it works, thanks. | 22:47 | |
ironic that opcode logic seems easier (pen and paper does wonders) than some new stuffin p6 | 22:48 | ||
Ox0dea | m: say [+] grep * %% (3|5), ^1000 # anthk_ | 22:49 | |
camelia | rakudo-moar 8c56c1: OUTPUT«233168» | ||
Ox0dea | My favorite Euler #1 solution evar. | ||
It looks like pseudocode for programmers. | |||
22:50
Begi left
|
|||
Ox0dea | I think some of that is new in Perl 6, anyway. | 22:50 | |
anthk_ | 0x0dea I am writting the chip8 interpreter in an easy way, sure I could do some perl magic as some people did implementing the vm in Scheme | ||
Ox0dea | 03> Sound timer: This timer is used for sound effects. When its value is nonzero, a beeping sound is made. | 22:51 | |
That's fun. :P | |||
AlexDaniel | m: say [+] ^1000.grep: * %% (3|5) | ||
camelia | rakudo-moar 8c56c1: OUTPUT«Potential difficulties: Precedence of ^ is looser than method call; please parenthesize at /tmp/87CupQm5AH:1 ------> 3say [+] ^10007⏏5.grep: * %% (3|5)0» | ||
AlexDaniel | m: say [+] ^1000 .grep: * %% (3|5) | ||
camelia | rakudo-moar 8c56c1: OUTPUT«(499500)» | ||
AlexDaniel | huh, different answer? | 22:52 | |
m: say [+] (^1000 .grep: * %% (3|5)) | |||
camelia | rakudo-moar 8c56c1: OUTPUT«5===SORRY!5=== Error while compiling /tmp/5EqdaqdEjMConfusedat /tmp/5EqdaqdEjM:1------> 3say [+] (^1000 .7⏏5grep: * %% (3|5))» | ||
anthk_ | the fonts were easy, just a fixed array of bytes. Literally. | ||
Zoffix | m: say (^1000 .grep: * %% 3|5) | ||
camelia | rakudo-moar 8c56c1: OUTPUT«(0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 8…» | ||
Zoffix | m: say [+] (^1000 .grep: * %% 3|5) | ||
camelia | rakudo-moar 8c56c1: OUTPUT«5===SORRY!5=== Error while compiling /tmp/0ynGc04Fl1Confusedat /tmp/0ynGc04Fl1:1------> 3say [+] (^1000 .7⏏5grep: * %% 3|5)» | ||
Zoffix | m: say [+] (^1000 \ .grep: * %% 3|5) | ||
camelia | rakudo-moar 8c56c1: OUTPUT«5===SORRY!5=== Error while compiling /tmp/CagJHoQVwXConfusedat /tmp/CagJHoQVwX:1------> 3say [+] (^1000 \ .7⏏5grep: * %% 3|5)» | ||
Ox0dea | Zoffix: Please figure it out locally. :P | ||
Zoffix | m: say [+] (0..9999 .grep: * %% 3|5) | ||
camelia | rakudo-moar 8c56c1: OUTPUT«5===SORRY!5=== Error while compiling /tmp/44NB0XoA_cConfusedat /tmp/44NB0XoA_c:1------> 3say [+] (0..9999 .7⏏5grep: * %% 3|5)» | ||
Ox0dea | Or keep shitting into the channel. :( | 22:53 | |
Zoffix | m: say [+] ((0..9999) .grep: * %% 3|5) | ||
camelia | rakudo-moar 8c56c1: OUTPUT«5===SORRY!5=== Error while compiling /tmp/8NZYgbTrzOConfusedat /tmp/8NZYgbTrzO:1------> 3say [+] ((0..9999) .7⏏5grep: * %% 3|5)» | ||
AlexDaniel | m: say [+] (^1000).grep: * %% (3|5) | ||
camelia | rakudo-moar 8c56c1: OUTPUT«233168» | ||
Zoffix | m: say [+] ((0..100).flat.sort: * %% (2|3)) | 22:55 | |
camelia | rakudo-moar 8c56c1: OUTPUT«cannot numify this in block <unit> at /tmp/3HYqx8FtL1 line 1» | ||
Zoffix | m: say [+] ((0..100).flat.sort: * %% 3) | ||
camelia | rakudo-moar 8c56c1: OUTPUT«5050» | ||
Ox0dea | m: say sum ^101 # Zoffix: Mine's shorter. :P | 22:57 | |
camelia | rakudo-moar 8c56c1: OUTPUT«5050» | ||
geck | are there any ORMs from perl6 yet? I don't need something as full features at DBIc, just some premade sugar for handling my queries & managing connections | 22:58 | |
22:58
molaf left
|
|||
Zoffix | geck, not yet | 22:58 | |
RabidGravy | well some very experimental ones, github.com/tony-o/perl6-db-orm-quicky | 22:59 | |
I don't even know this works BTW | 23:00 | ||
geck | that has some smells | 23:01 | |
Zoffix | "Latest commit Dec 2, 2014"... I highly doubt it works. | ||
RabidGravy | yeah, I'd take book on it not working given the last time it was updated | ||
Hotkeys | "Partially dimensioned views of arrays not yet implemented." this makes me sad | ||
Rotwang | how do I know which core perl6 module is the official one? All the official modules are maintained under perl6 group in github? | 23:02 | |
23:02
zengargoyle left
|
|||
Zoffix | .oO( perl6 has core modules? ) |
23:02 | |
Skarsnik | Not really | ||
Test/NC maybe? | 23:03 | ||
RabidGravy | Rotwang, there are only two "core" modules, NativeCall and Test | ||
Zoffix | But those aren't in a git repo | ||
Skarsnik | Probably Test. NC depend a lot of internal feature | ||
geck | How about web frameworks? | ||
Zoffix | geck, have you seen modules.perl6.org? | ||
RabidGravy | modules.perl6.org/ | ||
23:03
zengargoyle joined
|
|||
geck | yes, been looking through it all day, and founda few options for things | 23:04 | |
Rotwang | RabidGravy: I meant those distributed with rakudo * | ||
Zoffix | geck, they're a couple, but nothing usable in production TBH | ||
geck, you could use Perl 5 stuff via Inline::Perl5 tho | |||
Rotwang | for example lwp-simple is forked gazilion times, how do I know which one is the one being used by rakudo *? | ||
geck | not really looking for production usage, mostly looking for stuff to play with | ||
Skarsnik | hm, rakudo star is quite random | ||
the one on modules.perl6.org | |||
RabidGravy | Rotwang, same answer as to geck modules.perl6.org/ | ||
Zoffix | geck, there's Bailador that I tried using | 23:05 | |
RabidGravy | that is built from the same list that panda uses to install, and thus Task::Star will use those | 23:06 | |
Skarsnik | modules.perl6.org is probably missing to be mentionned on perl6.org maisn pages? | ||
Zoffix | (web frameworks) | ||
Skarsnik, I see it as item 3 in perl6.org/getting-started/ | |||
RabidGravy | People need to start using tags on their distributions | 23:07 | |
of course then we'll get a host of weirdos trying to mandate a "taxonomy" | 23:08 | ||
Skarsnik | taxonomy? | ||
geck | trying to standardize the tags that are used | ||
and getting REALLY vigilent about it | 23:09 | ||
Zoffix | damn, why are modern movies so long :/ | ||
2h24m for The Martian :\ | 23:10 | ||
Skarsnik | I don't know how is doable, but maybe add a .travis job on ecosystem perform some check on the last entry | ||
geck snickers | |||
Zoffix | Skarsnik, hm? | 23:11 | |
Skarsnik | well we could have a .travis on ecosystem that will be run on each PR request that will check like the Meta file? | ||
Zoffix | That leaves the problem of not checking METAs after authors modify them | 23:13 | |
We have this tho: you can grep for "[error]" to find all errors. modules.perl6.org/update.log | |||
flussence glances at timotimo and expects github will be overloaded right about now too... :) | |||
Zoffix | I notice 007 now got a JSON error | ||
timotimo | flussence: :D | 23:14 | |
"sorry, were you using github for anything else?" | |||
RabidGravy | are you breaking stuff | ||
23:14
pmurias left
|
|||
timotimo | no | 23:15 | |
something was just announced | |||
Zoffix | Where? | ||
flussence | 32C3 | ||
Zoffix | Perl 6? | ||
RabidGravy | github was rightly cocking me around yesterday | ||
flussence | nahhhh, we're way too small time to generate that kind of traffic... | ||
RabidGravy | swift or go then | 23:16 | |
Zoffix | Can I watch what was announced or ... ? | ||
23:16
espadrine left
|
|||
flussence shrugs, it'll probably have everything on youtube same day though... | 23:17 | ||
(I'm kinda impressed that they had a live stream in webm format that actually worked though) | 23:18 | ||
timotimo | flussence: you underestimate the c3voc | ||
go to the main page and find the "re-live" button | 23:19 | ||
flussence clearly knows nothing :) | |||
timotimo | the c3voc is simply 100% amazing. | 23:20 | |
Ox0dea | flussence: Are you Jon Starkgaryen? | ||
RabidGravy | webm has been around for a while, icecast supported it for a few versions now | ||
Zoffix | So... what was announced? | ||
timotimo | Zoffix: new hax for nintendo 3ds | ||
Zoffix | ah | 23:21 | |
23:21
virtualsue joined
|
|||
Zoffix got all excited for nothing | 23:21 | ||
RabidGravy | yeah not really my thing | ||
flussence | RabidGravy: I've tried many, many times to do some sort of webm streaming via ffserver and it's always failed miserably. maybe I was using the wrong software | 23:22 | |
RabidGravy | though they've got a relatvely good sound chip | ||
flussence, you could probably get something going with liquidsoap and icecast | 23:23 | ||
don't know of a good source client though (more interested in audio streaming) | |||
23:25
llfourn joined
|
|||
dalek | kudo/nom: 47d3b98 | hoelzro++ | src/Perl6/Compiler.nqp: Move Linenoise logic into helper method Also, rename $!linenoise to $!readline, paving the way for integrating with Readline should it be available |
23:26 | |
kudo/nom: 0a76a99 | hoelzro++ | src/Perl6/Compiler.nqp: Load completions lookup unconditionally Otherwise each readline backend will have to remember to load them, and it's not a big performance hit to maintain it |
|||
kudo/nom: 5dacb11 | hoelzro++ | src/Perl6/Compiler.nqp: Add Readline support Now Rakudo will try to use Jeff Goff's Readline module if available, since many users don't care for Linenoise |
|||
kudo/nom: a7ea8e6 | hoelzro++ | src/Perl6/Compiler.nqp: Only emit a single message if Readline and Linenoise cannot be found |
|||
23:26
spider-mario left
23:27
herby_ joined
|
|||
herby_ | o/ | 23:27 | |
23:27
frew joined
|
|||
RabidGravy | erp | 23:28 | |
frew | are the [^$foo] on perl6advent.wordpress.com/2015/12/...s-is-here/ supposed to be links | ||
? | |||
herby_ | m: map(.WHAT.perl, ('hello', 2, 4)) | ||
camelia | rakudo-moar 8c56c1: OUTPUT«Cannot call map(Str, List); none of these signatures match: (&code, + is raw) in block <unit> at /tmp/GZYT18pieU line 1» | ||
23:29
joydo joined
|
|||
flussence | frew: nah, footnote numbers | 23:29 | |
frew | ahhh | ||
flussence: thanks | |||
herby_ | m: ('hello', 2, 4).map: {.WHAT.perl}; | ||
camelia | ( no output ) | ||
frew | looking forward to a 6.c rakudo star | 23:30 | |
assuming that's imminent | |||
RabidGravy | week or so at a guess (but a reall guess) | ||
Skarsnik wish someone write a proper zip module | |||
23:30
llfourn left
|
|||
frew | Skarsnik: be the change you want in the world | 23:31 | |
herby_ | m: my @plus3 = map({$_ + 3}, (2, 4, 6)); say @plus3; | ||
camelia | rakudo-moar a7ea8e: OUTPUT«[5 7 9]» | ||
Skarsnik | nop | ||
I already some modules to work on x) | 23:32 | ||
RabidGravy | ah gwan | ||
Ulti | m: say (2, 4, 6).map: * + 3; | 23:34 | |
camelia | rakudo-moar a7ea8e: OUTPUT«(5 7 9)» | ||
Ox0dea | m: say map *+3, (2,4,6) # herby_ | 23:35 | |
camelia | rakudo-moar a7ea8e: OUTPUT«(5 7 9)» | ||
Ox0dea | Almost Haskell! | ||
gfldex | m: role R { method Str() {'hidden!'} }; my $i = 1 but R; sub f(\bound){ put bound }; f($i); $i++; f($i); | ||
camelia | rakudo-moar a7ea8e: OUTPUT«hidden!2» | ||
herby_ | Ox0dea, hmmm | 23:36 | |
gfldex | should postfix:<++> strip the mixin in that way? | ||
Ulti | m: say map *+3, 2,4,6 | ||
camelia | rakudo-moar a7ea8e: OUTPUT«(5 7 9)» | ||
herby_ | say map ***3, 2,4,6 | ||
m: say map ***3, 2, 4, 6 | 23:37 | ||
camelia | rakudo-moar a7ea8e: OUTPUT«((6) (12) (18))» | ||
Ox0dea | Uh-oh. | ||
herby_ | hmm | ||
AlexDaniel | m: say (2, 4, 6)>>.succ>>.succ>>.succ | ||
camelia | rakudo-moar a7ea8e: OUTPUT«(5 7 9)» | ||
AlexDaniel | m: say (2, 4, 6)».succ».succ».succ | ||
camelia | rakudo-moar a7ea8e: OUTPUT«(5 7 9)» | ||
AlexDaniel | no version of succ that takes a parameter? | 23:38 | |
herby_ | m: say map * **3, 2, 4, 6 | ||
camelia | rakudo-moar a7ea8e: OUTPUT«(8 64 216)» | ||
Ulti | m: say map * ** 3, 2,4,6 #a little more readable >:P | ||
camelia | rakudo-moar a7ea8e: OUTPUT«(8 64 216)» | ||
23:38
jcrespo joined
|
|||
herby_ | guess it needs that space | 23:38 | |
AlexDaniel | m: say map *³, 2,4,6 | 23:39 | |
camelia | rakudo-moar a7ea8e: OUTPUT«Cannot call Numeric(Whatever: ); none of these signatures match: (Mu:U \v: *%_) in block <unit> at /tmp/TaF18IESwA line 1» | ||
Ulti | AlexDaniel: think superscripts only work for literals | ||
AlexDaniel | m: say map {.³}, 2,4,6 | 23:40 | |
camelia | rakudo-moar a7ea8e: OUTPUT«(8 64 216)» | ||
23:40
jcrespo_ joined
|
|||
Ulti | wow | 23:40 | |
23:40
lucasb joined
|
|||
herby_ | how in the world do you get a superscript in irc? | 23:40 | |
RabidGravy | yeah the whatever case isn't making a closure | ||
Ulti | there are more common examples of that | ||
23:40
cpage left
|
|||
herby_ | m: say map ** *3, 2,4,6 | 23:40 | |
camelia | rakudo-moar a7ea8e: OUTPUT«((6) (12) (18))» | ||
herby_ | ? | 23:41 | |
i'm confusing myself at this point | |||
23:42
cpage_ left,
cpage_ joined
|
|||
AlexDaniel | how does that ↑ work? | 23:42 | |
herby_ | m: say grep ('hello', 1, 2, 3).grep: Int | ||
camelia | rakudo-moar a7ea8e: OUTPUT«()» | ||
herby_ | blah | 23:43 | |
m: say ('hello', 1, 2, 3).grep: Int | |||
camelia | rakudo-moar a7ea8e: OUTPUT«(1 2 3)» | ||
Ulti | herby_: design.perl6.org/S02.html#The_Hype...tever_Type | ||
herby_ | ahhh, I'll give that a read. Thanks! | ||
AlexDaniel | hyperwhatever… ok | ||
23:44
jcrespo left
|
|||
Ulti | UltraWhatever | 23:44 | |
*** | |||
flussence | ⁂ | ||
Ulti | deals with changing dimensions through time | ||
herby_ | m: say (2,3,4,5,6).grep: %2 == 0 | 23:45 | |
camelia | rakudo-moar a7ea8e: OUTPUT«Cannot use Bool as Matcher with '.grep'. Did you mean to use $_ inside a block? in block <unit> at /tmp/IRa9hiazAy line 1Actually thrown at: in block <unit> at /tmp/IRa9hiazAy line 1» | ||
herby_ | hosed that up | ||
can I grep a list to see what numbers can be evenly divisible by 2? | 23:46 | ||
AlexDaniel | m: say (2,3,4,5,6).grep: *%2 == 0 | ||
camelia | rakudo-moar a7ea8e: OUTPUT«(2 4 6)» | ||
herby_ | ah, missed the * | ||
AlexDaniel | m: say (2,3,4,5,6).grep: *%%2 | ||
camelia | rakudo-moar a7ea8e: OUTPUT«(2 4 6)» | ||
AlexDaniel | m: say (2,3,4,5,6).grep: {.%%2} | ||
camelia | rakudo-moar a7ea8e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/f_N26L0iORMalformed postfix callat /tmp/f_N26L0iOR:1------> 3say (2,3,4,5,6).grep: {.7⏏5%%2}» | ||
AlexDaniel | m: say (2,3,4,5,6).grep: {. %% 2} | ||
camelia | rakudo-moar a7ea8e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/FIJTkDs0o7Unsupported use of . to concatenate strings; in Perl 6 please use ~at /tmp/FIJTkDs0o7:1------> 3say (2,3,4,5,6).grep: {.7⏏5 %% 2}» | ||
AlexDaniel | okay | ||
herby_ | m: say ('hello', 'world', 2,3,4,5,6).grep: *%2 == 0 | 23:47 | |
camelia | rakudo-moar a7ea8e: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5hello' (indicated by ⏏) in whatevercode at /tmp/rcKEpjPjHR line 1 in block <unit> at /tmp/rcKEpjPjHR line 1Actually thrown at: in whateverc…» | ||
lucasb | m: say (42 but 'foo').Int | ||
camelia | rakudo-moar a7ea8e: OUTPUT«foo» | ||
lucasb | m: say (42 but 'foo').perl | ||
camelia | rakudo-moar a7ea8e: OUTPUT«foo» | ||
Ulti | m: say ('hello', 'world', 2,3,4,5,6).grep({$_ ~~ Int}).grep: *%2 == 0 | 23:48 | |
camelia | rakudo-moar a7ea8e: OUTPUT«(2 4 6)» | ||
herby_ | grep({$_ ~~ Int}) grabs all the Ints? | 23:49 | |
Ulti | yup | ||
:) | |||
flussence | am I doing something wrong? trying to build rakudo-jvm with --prefix=/usr; it works fine for moar but the java build ends up with a «javac -source 1.7 -cp /usr/usr/share/nqp/runtime/asm-4.1.jar:/usr/usr/share/nqp/runtime/asm-tree-4.1.jar...» and everything falls apart after that | ||
AlexDaniel | why {} though? | ||
Ulti | to make a closure | ||
AlexDaniel | say ('hello', 'world', 2,3,4,5,6).grep(* ~~ Int).grep: *%%2 | ||
m: say ('hello', 'world', 2,3,4,5,6).grep(* ~~ Int).grep: *%%2 | |||
camelia | rakudo-moar a7ea8e: OUTPUT«(2 4 6)» | ||
AlexDaniel | m: say ('hello', 'world', 2,3,4,5,6).grep(Int).grep: *%%2 | 23:50 | |
camelia | rakudo-moar a7ea8e: OUTPUT«(2 4 6)» | ||
Ulti | its a christmas miracle :) | ||
23:51
jcrespo__ joined
|
|||
RabidGravy | :) | 23:51 | |
ttfn | |||
AlexDaniel | any way to make it shorter? | ||
herby_ | ('hello', 'world', 2,3,4,5,6).grep(Int).grep(* %% 2).say | 23:52 | |
m: ('hello', 'world', 2,3,4,5,6).grep(Int).grep(* %% 2).say | |||
camelia | rakudo-moar a7ea8e: OUTPUT«(2 4 6)» | ||
23:53
Ch0c0late joined,
jcrespo_ left
|
|||
herby_ | m: ('hello', 'world', 2,3,4,5,6).grep(Str).say | 23:53 | |
camelia | rakudo-moar a7ea8e: OUTPUT«(hello world)» | ||
herby_ | m: ('hello', 'world', 2,3,4,5,6).grep(Str ~~ 'hello').say | ||
camelia | rakudo-moar a7ea8e: OUTPUT«Cannot use Bool as Matcher with '.grep'. Did you mean to use $_ inside a block? in block <unit> at /tmp/vw_uk86QLH line 1Actually thrown at: in block <unit> at /tmp/vw_uk86QLH line 1» | ||
AlexDaniel | eq | 23:54 | |
herby_ | m: ('hello', 'world', 2,3,4,5,6).grep(Str eq 'hello').say | ||
camelia | rakudo-moar a7ea8e: OUTPUT«Use of uninitialized value of type Str in string contextAny of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in block <unit> at /tmp/yHrP2HxOKL line 1Cannot use Bool as Matcher with '.grep'. Did you mean to use $_ inside …» | ||
AlexDaniel | * eq :) | ||
herby_ | m: ('hello', 'world', 2,3,4,5,6).grep(* eq 'hello').say | ||
camelia | rakudo-moar a7ea8e: OUTPUT«(hello)» | ||
herby_ | :) | ||
AlexDaniel | or | ||
m: ('hello', 'hello world', 2,3,4,5,6).grep(* ~~ /hello/).say | |||
camelia | rakudo-moar a7ea8e: OUTPUT«(hello hello world)» | ||
Ulti | m: my Int subset Even where * %% 2; ('hello', 'world', 2,3,4,5,6).grep(Even).say; | ||
camelia | rakudo-moar a7ea8e: OUTPUT«(2 4 6)» | ||
atweiden | flussence: jvm build failed for me, but for a different reason (Missing serialize function for REPR ContextRef) | ||
AlexDaniel | Ulti: great idea | 23:55 | |
herby_ | m: ('hello', 'world', 2,3,4,5,6).grep(* ~~ /ll/).say | ||
camelia | rakudo-moar a7ea8e: OUTPUT«(hello)» | ||
Ulti | Perl 6 has a lot of them it turns out | ||
herby_ | Ulti, all that is new to me | ||
23:55
RabidGravy left
|
|||
AlexDaniel | yeah. If I was going to express that in pseudo code, would it be shorter? I don't think so | 23:56 | |
Ulti | herby_ sure especially if you know Perl 5 since types are suddenly a thing you can (ab)use | ||
herby_ | I struggle with Perl 5 too :) | ||
Ulti | herby_: do you get what my example did? | 23:57 | |
herby_ | ehhh, I think so but I'll take an explanation if you got one | ||
23:59
jcrespo__ left
|
|||
Ulti | so the first bit my Int subset Even where * %% 2; I created a whole new type based off of Int with a constraint on what satisfies that new subtype using the where clause in this case some example of an Int must return true when you do %% 2 on it for it to be considered an Even type | 23:59 | |
23:59
jcrespo__ joined
|