»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
00:02
spine left
00:03
kmwallio left
00:06
tokuhirom joined
|
|||
dalek | ecza: 701e7eb | (Solomon Foster)++ | lib/CORE.setting: Add sub pairs. |
00:09 | |
ecza: 6e964d2 | (Solomon Foster)++ | t/spectest.data: Turn on S32-array/pairs.t. |
|||
00:13
molaf left
00:16
tokuhirom left,
tokuhirom joined
00:22
tokuhirom left
00:28
tadzik left,
[Coke] left,
pmichaud left,
masak left,
Util left,
molaf joined
00:29
Juerd left,
PerlJam left
00:31
wolfman2000 joined
00:33
bacek_at_work joined
00:35
[Coke] joined,
masak joined,
pmichaud joined,
PerlJam joined
00:36
Util joined
|
|||
dalek | ecza: 9bf5263 | (Solomon Foster)++ | lib/CORE.setting: Add sub elems. |
00:36 | |
ecza: e6dfd53 | (Solomon Foster)++ | t/spectest.data: Turn on S32-array/elems.t. |
|||
00:41
tadzik joined
|
|||
dalek | ast: 4984187 | (Solomon Foster)++ | S32-array/elems.t: Fudge for niecza. |
00:41 | |
00:56
shinobicl___ left
|
|||
dalek | ast: b8ba7e6 | (Solomon Foster)++ | S32-hash/exists.t: Fudge for niecza. |
00:59 | |
ast: b44e3ec | (Solomon Foster)++ | S32-hash/exists.t: Tests for :exists added. |
|||
ecza: 6ad55ae | (Solomon Foster)++ | t/spectest.data: Turn on S32-hash/exists.t. |
01:00 | ||
sorear | karma colomon | ||
aloha | colomon has karma of 204. | ||
sorear | karma Solomon Foster | ||
aloha | Solomon Foster has karma of 153. | ||
sorear | almost there! | ||
colomon | ;) | 01:01 | |
01:07
raiph joined
|
|||
dalek | ast: 8032449 | (Solomon Foster)++ | S04-blocks-and-statements/pointy.t: Fudge for niecza. |
01:07 | |
ecza: fc198f2 | (Solomon Foster)++ | t/spectest.data: Turn on S04-blocks-and-statements/pointy.t. |
01:08 | ||
ast: 154dbe5 | (Solomon Foster)++ | S16-io/basic-open.t: Fudge for niecza. |
01:15 | ||
ecza: 0e2bf45 | (Solomon Foster)++ | t/spectest.data: Turn on S16-io/basic-open.t. |
01:16 | ||
01:17
SolarNRG joined
01:19
SolarNRG left
01:25
zjmarlow left,
sftp joined
01:26
leprevost joined
|
|||
dalek | ecza: 4dcd1f7 | sorear++ | src/niecza: Start towards a consistent handling of type_constraints and typenames |
01:27 | |
01:29
raiph left
01:30
leprevost left,
leprevost joined,
Juerd joined
|
|||
dalek | ast: 2b3a229 | (Solomon Foster)++ | S02-types/sigils-and-types.t: Fudge for niecza |
01:31 | |
01:33
zjmarlow joined
|
|||
dalek | ecza: c9ab37e | (Solomon Foster)++ | t/spectest.data: Turn on S02-types/sigils-and-types.t. |
01:36 | |
ast: 3511439 | (Solomon Foster)++ | S02-types/declare.t: Additional fudging for niecza. |
01:50 | ||
ast: ed292ed | (Solomon Foster)++ | S06-advanced/lexical-subs.t: Change fail to ok 0. This seems more consistent. Probably still a better way to right it. |
02:02 | ||
ecza: bbfe2b9 | (Solomon Foster)++ | t/spectest.data: Turn on S06-advanced/lexical-subs.t. |
|||
sorear | colomon: perhaps somebody mixed up fail with flunk | 02:03 | |
colomon | seems like it should be lives_ok or something like that | ||
but ok 0 seems like it should work for sane conditions, and makes niecza like the file. | |||
ack! I said "right" instead of "write". | 02:04 | ||
I will be so happy when I shake this head cold. | |||
02:04
bluescreen10 left,
bluescreen100 left
|
|||
colomon | at 11am this morning I was already so tired I was thinking it was 4pm. | 02:04 | |
02:21
lutok left
|
|||
colomon | sorear: do we have FIRST yet? | 02:21 | |
sorear | No. | 02:22 | |
START will fill some of the same purposes in a pinch though. | |||
TimToady | moving the code out in front of the loop is usually simpler :) | 02:23 | |
colomon | FIRST is one of those sugar things I lust after. | 02:24 | |
TimToady | colomon: if you just put a gist of your pi, I can put in on RC, if you're shy. :) | ||
colomon | TimToady: yeah, I should get around to that, shouldn't I? | 02:25 | |
TimToady | I just think it'd make a great 400th entry on RC | 02:26 | |
colomon | awww | ||
just give me a minute to try to get reduce working on niecza. | |||
sorear | What was the big feature that made the pi work on Rakudo again? | ||
colomon | bignums | ||
bigints | |||
sorear | ISTR there was a reason it didn't work on niecza | ||
TimToady | niecza needs to support subsigs | ||
sorear | niecza: sub foo($x [$y,$z]) { say $z }; foo([2,3]) | 02:27 | |
p6eval | niecza v13-185-gbbfe2b9: OUTPUT«Potential difficulties: $x is declared but not used at /tmp/Woz5tkEcLq line 1:------> sub foo(⏏$x [$y,$z]) { say $z }; foo([2,3]) $y is declared but not used at /tmp/Woz5tkEcLq line 1:------> sub foo($x [⏏$y,$z]) { … | ||
sorear | niecza: sub foo($x [$y,$z]) { say $z }; foo([2,3]) #OK | ||
colomon | right, I've got an uglier version that works on niecza, but the subsig version is nice | ||
p6eval | niecza v13-185-gbbfe2b9: OUTPUT«3» | ||
TimToady | cool | ||
didn't know that | |||
sorear | are you missing Mu.Capture? | ||
colomon had no idea subsigs worked at all on niecza | 02:29 | ||
sorear | they were added two days ago | 02:30 | |
+only | |||
colomon | new! | ||
doesn't work because my reduce broke the niecza build. | 02:31 | ||
sorear | sure I didn't break it first? | ||
colomon | yes | ||
sorear | how is your reduce connected to reduceop? | 02:32 | |
colomon | I used True and False before they were defined | ||
massively simpler | |||
sorear | worth killing reduceop, then? | ||
colomon | no, no, no, it's not a replacement | ||
parallel version of the same basic concept | 02:33 | ||
S32-Containers and search on reduce | |||
Sub-signatures NYI at /Users/colomon/tools/pi/pi-timtoady.pl line 27: | 02:35 | ||
------> stream(-> [$u, $v]⏏ { floor($u * $v * $n); }, | |||
sorear | oh | 02:39 | |
-> $ [... | |||
I missed the path for when there is no overall variable | |||
dalek | ast: 3bf852e | (Solomon Foster)++ | S32-list/reduce.t: Fix broken test. Fudge for niecza. |
||
sorear | will fix that shortly | ||
colomon | sorear++ | ||
sorear | niecza: say [] | 02:41 | |
p6eval | niecza v13-185-gbbfe2b9: OUTPUT«» | ||
sorear | colomon: I wonder if I should close #102 | 02:43 | |
colomon: 'git log S02-types/parcel.t' ... this isn't a regression | |||
it does document a NYI | |||
dalek | ecza: 2daaa81 | sorear++ | / (2 files): Support literal constants as types in multis (fixes #101) |
02:44 | |
colomon | niecza: say <5 7 8>[] | 02:46 | |
p6eval | niecza v13-185-gbbfe2b9: OUTPUT«Unhandled exception: No value for parameter \$index in postcircumfix:<[ ]> at /home/p6eval/niecza/lib/CORE.setting line 0 (postcircumfix:<[ ]> @ 1)  at /tmp/_vrraHiSJe line 1 (mainline @ 2)  at /home/p6eval/niecza/lib/CORE.setting line 2968 (ANON @ … | ||
colomon | sorear: your call. I was mostly worried because I thought it was a regression | ||
dalek | ecza: 71a58df | sorear++ | src/niecza: Fix sub-signatures with no preceding variable, colomon++ |
02:51 | |
sorear | 2daaa81 might allow a few unfudges, although it doesn't yet let you write multi foo(Increase) {} or multi foo(pi) {} | 02:52 | |
nom: multi foo(True) {} | |||
p6eval | nom 38165a: ( no output ) | ||
sorear | nom: multi foo(pi) {} | ||
p6eval | nom 38165a: ( no output ) | ||
dalek | ecza: 7704df1 | (Solomon Foster)++ | lib/CORE.setting: Simple implementations of Any.reduce and sub reduce. |
02:55 | |
ecza: c5f959c | (Solomon Foster)++ | t/spectest.data: Turn on S32-list/reduce.t. |
|||
colomon | sorear++ # pi works on niecza now! | 02:58 | |
sorear | so how far are we from Easter? :D | 02:59 | |
03:09
zjmarlow left
|
|||
colomon | pi gist: gist.github.com/1586644 | 03:12 | |
TimToady sees it and seizes it :) | 03:13 | ||
colomon | If TimToady++ thinks this should be #400, then I'd appreciate a quick code review | ||
TimToady | looking | ||
colomon | TimToady: this code works on niecza and rakudo | ||
the use Test can be deleted, clearly | |||
comments, maybe? | 03:14 | ||
TimToady | don't need the Haskell | ||
colomon | www.mathpropress.com/stan/bibliogra...spigot.pdf is the Haskell program I translated to p6 | ||
TimToady | biab | 03:15 | |
03:17
zjmarlow joined
|
|||
TimToady | RC has it's own examples of other languages :) | 03:18 | |
colomon | oh, interesting... I just changed it to be properly infinite, and niecza stops dead at digit 100 or so. | ||
03:18
athomason joined
|
|||
colomon | I've just updated the gist with a slightly better end section, no comments other than the above URL. | 03:20 | |
huh. rakudo goes that far and stops too | 03:21 | ||
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865 | 03:22 | ||
it's correct that far | |||
TimToady | maybe it can't gc if you don't throw away the earlier digits | 03:23 | |
colomon | seems odd that both implementations would gc in the same spot | 03:24 | |
I'll bet it's a real flaw in the implementation | |||
TimToady | could be | 03:26 | |
colomon | hmm... looks like mono hits 100M and stops | ||
but it's chewing up CPU | |||
yeah, it's chewing up a full core's worth of CPU without any apparent additional memory allocation | 03:28 | ||
TimToady | nom leaks slowly after hitting 300m | 03:30 | |
Rat limits? | 03:31 | ||
colomon | might be | ||
It's been so long I don't remember how the code works anymore. :) | 03:32 | ||
TimToady | if the rhs is greater than 64bits.. | ||
div works better | |||
colomon | Did they actually fix Rats to not be de facto FatRats in Rakudo? | ||
ooooo.... interesting | 03:33 | ||
I think you're basically right, but.... | |||
extr's result becomes NaN | 03:34 | ||
TimToady | and if you're div'ing Ints, the .floors are redundant | ||
colomon | yup, just give me a minute to study how it fails more carefully. :) | 03:35 | |
03:38
orafu left,
orafu joined,
Psyche^ joined
|
|||
colomon | okay, I *think* what is happening is the internal numbers are getting so big that when the / operation can't be a Rat, both sides are converted to Num and the numbers are too big to be Nums, so they become Inf, and then it's Inf / Inf | 03:39 | |
[Coke] | niecza: gist.github.com/1586644 | ||
p6eval | niecza v13-189-gc5f959c: OUTPUT«(timeout)3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865» | ||
colomon | bingo! | 03:40 | |
[Coke] | colomon: should I hold off before doing the final run of the day? | ||
colomon | [Coke]: I'm not doing any more spectest cleaning today, for sure. | ||
niecza: gist.github.com/1586644 | 03:41 | ||
p6eval | niecza v13-189-gc5f959c: OUTPUT«(timeout)3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712… | ||
03:41
Patterner left,
Psyche^ is now known as Patterner
|
|||
colomon | looks correct | 03:42 | |
just generated ~2000 digits in 10 seconds here (niecza) | 03:43 | ||
seems like Rakudo starts lagging around digit 1900 or so | 03:45 | ||
TimToady wonders why you can iteratoe pi-stream() directly in niecza but not nom | 03:46 | ||
if you do that, all you need is: state $ = print '.' | 03:47 | ||
but it seems pi-stream returns something indexable but not iterable... | 03:48 | ||
funny, since it says it's type List() | 03:49 | ||
colomon | TimToady: if you don't mind, I'm going to turn this over to you for rosetta coding... I don't really remember how to edit the site. And I should be getting to bed. | 03:50 | |
TimToady | okay, will do | ||
thanks! | |||
colomon | thank you! | ||
03:51
saberman_2 joined
03:52
saberman_2 left
04:00
saberman_2 joined
04:01
saberman_2 left
|
|||
TimToady | 400 entries for Perl 6 on rosettacode thanks to colomon++! \o/ | 04:04 | |
(well, and everyone else :) | 04:11 | ||
sorear++ and jnthn++ in particular | |||
04:19
kaleem joined
|
|||
sorear | \o/ | 04:20 | |
moritz | \o | 04:33 | |
phenny | moritz: 09 Jan 22:30Z <jnthn> tell moritz oops, the setting compilation bustage was not anything to do with moving the temporal ops. It was to do with the sleep change that came in the previous commit. | ||
moritz: 09 Jan 22:30Z <jnthn> tell moritz well, the rtype bit anyway | 04:34 | ||
moritz: 09 Jan 22:57Z <jnthn> tell moritz fixed the other bug you ran into too. Note - please can we call what you're called CORE2 as CORE, and then call the more primitive one something like PRIMITIVES? :) | |||
moritz | oh doh | ||
04:34
birdwindupbird joined
|
|||
[Coke] | # 01/09/2012 - niecza at 96.68% -- gist.github.com/1476841 | 04:36 | |
moritz | phenny: tell jnthn oh d'oh, thanks. I'm fine with any setting rename, it's just a proof of concept so far | ||
[Coke] | (still increasing, despite recent gains by rakudo!) | ||
phenny | moritz: I'll pass that on when jnthn is around. | ||
moritz -> travel | 04:38 | ||
04:46
thou left
05:12
skids left
06:00
cognominal left
06:01
cognominal joined
06:06
mkramer joined
06:27
kaleem left,
donri joined
06:30
koban joined
06:37
alim_ joined
06:40
odoacre left
06:44
wtw joined
06:53
odoacre joined
06:56
replore joined
06:59
kaleem joined
07:09
Suor joined
07:17
Suor left
07:20
zby_home left
07:38
Suor joined
07:41
Suor left
07:53
alim_ left
07:56
snearch joined
|
|||
masak | niecza: constant @fiblist = 0, 1, 1, map &fib, 1..*; sub fib($n where * > 2) { @fiblist[$n - 1] + @fiblist[$n - 2] }; say fib 5 | 07:56 | |
p6eval | niecza v13-189-gc5f959c: OUTPUT«Unhandled exception: System.Exception: Unable to find lexical &fib in @fiblist init at Niecza.CLRBackend.NamProcessor.ResolveLex (System.String name, Boolean upf, System.Int32& uplevel, Boolean core) [0x00000] in <filename unknown>:0  at Niecza.CLRBac… | ||
masak | aww :) | ||
clearly that must be made to work at some point. | |||
g'morning, #perl6 | 07:57 | ||
08:06
jeffreykegler joined
|
|||
tadzik | o/ | 08:08 | |
08:11
jeffreykegler left
08:17
carlin left
08:27
cognominal left
08:29
cognominal joined
|
|||
masak | *why* is .wrap already in-place? | 08:32 | |
hm, probably because it's diffy :) | 08:33 | ||
niecza: sub foo(5) { say "OH HAI" }; foo 5 | 08:35 | ||
p6eval | niecza v13-189-gc5f959c: OUTPUT«OH HAI» | ||
masak | \o/ | ||
sorear++ | |||
08:36
mj41 joined
08:37
LlamaRider joined
08:38
koban left
|
|||
TimToady | here's a challenge: make gist.github.com/1587894 work (or find the bugs) | 08:40 | |
zzz & | |||
jnthn | masak: How can that constant one work? The expression would be evaluated at BEGIN time, before you declared fib. | 08:51 | |
phenny | jnthn: 04:36Z <moritz> tell jnthn oh d'oh, thanks. I'm fine with any setting rename, it's just a proof of concept so far | ||
jnthn | moritz: okies :) | 08:53 | |
masak | jnthn: I'm allowed to refer to &-sigil variables before I declare them, am I not? | 08:59 | |
jnthn: and the sub isn't actually invoked until I request the first element, right? | |||
jnthn | oh, ick, missed the lazy map | 09:00 | |
masak | TimToady: nice! | ||
nom: constant @fiblist = 0, 1, 1, map &fib, 1..*; sub fib($n where * > 2) { @fiblist[$n - 1] + @fiblist[$n - 2] }; say fib 5 | 09:01 | ||
p6eval | nom 38165a: OUTPUT«===SORRY!===Cannot handle constant @fiblist with non-literal value yet at line 1, near "= 0, 1, 1,"» | 09:02 | |
masak | aww :) | ||
LlamaRider | TimToady: does using unicode symbols as operators really scale? I mean there are just that many keys you can map to uncommon UTF-8 chars | ||
masak | nom: &foo(); sub foo { say "OH HAI" } | ||
p6eval | nom 38165a: OUTPUT«OH HAI» | ||
masak | LlamaRider: I don't buy that argument. it's like saying "there are just that many keys you can map to sub and method names" | 09:03 | |
LlamaRider | but I can _type_ sub and method names. I can't type \in | 09:04 | |
jnthn | LlamaRider: Just buy one of those keyboards the Chinese use with 4000 keys on :) | ||
masak | LlamaRider: I can. I use LEIM in Emacs. | ||
LlamaRider: I literally type '\in' in TeX mode, and I get the ∈ operator. | |||
LlamaRider | ah, but that's wonderful! | 09:05 | |
\in I can type :) | |||
masak | LlamaRider: there are reasons to avoid Unicode operators, but that isn't one of them :) | ||
jnthn: have you seen someone use one of those? they're *awful*. | |||
jnthn: en.wikipedia.org/wiki/File:Chinese_...writer.jpg | 09:06 | ||
talk about hunt-and-peck! | 09:07 | ||
jnthn | omgz I was joking! :P | ||
I....I didn't think somebody woulda made one :P | |||
sorear | o/ masak | ||
masak | sorear: \o | 09:08 | |
jnthn: I didn't know about it until about half a year ago. | |||
sorear | notice that there are gaps in the layout. | 09:09 | |
what this tells me is that they are using a two-coordinate indexing system | |||
most likely some form of radical+phonetic scheme | 09:10 | ||
09:10
ChanduBS joined
|
|||
sorear | LlamaRider: having a one-to-one correspondence between keys and characters is what's unscalable | 09:11 | |
I need a better (read: unified and more general) input method system | |||
09:12
jupp joined
|
|||
sorear | I can enter most of the Latin script using XCompose | 09:12 | |
jupp | hi | ||
sorear | I can enter Japanese (and Chinese, sort of) using IBus, TimToady++ | ||
LlamaRider | sorear: sure it's scalable, you just put more characters next to each other ;) | ||
sorear | hello and welcome, jupp, how can we help you? | ||
jupp | any hint on how I can get the old perl -en behavior with parrot? | 09:13 | |
sorear | I've memorized the hex codes for the Greek alphabet | ||
anything else I have trouble with | |||
09:13
ChanduBS left
|
|||
LlamaRider | sorear: I've memorized the letter names, and use \name in LaTeX, which works perfectly. But I agree it's more old-fashioned than memorizing hex codes ^^ | 09:13 | |
jupp | ie I want to do some complex regex substitutions as part of a shell script | 09:14 | |
sorear | LlamaRider: I haven't figured out how to make LaTeX work with all my X11 apps | ||
jupp: Parrot isn't a scripting language interpreter. It doesn't even have -e | |||
I am uncertain what you meant | |||
Unless you meant Rakudo | |||
jupp | yes I did | 09:15 | |
sorry for the confusion | |||
sorear | will a Rakudo expert field this one? masak, you did nap, didn't you? | ||
masak | sorear: yes, I seem to recall it was some radical+phonetic scheme. see languagelog.ldc.upenn.edu/nll/?p=3092 | ||
09:15
zjmarlow left
|
|||
sorear | LlamaRider: in particular, I need a way to make LaTeX work with rxvt-unicode, or another terminal emulator that's reasonably lean and POLSy | 09:16 | |
09:16
alim joined
|
|||
masak | jupp: Rakudo has -n and -e | 09:16 | |
jupp: but you may not be able to write it as -ne at this point. | |||
jupp: writing it as -en never worked, in my experience. | |||
sorear | -en means to call the function named "n" | 09:17 | |
always has, even in P5 | |||
masak | right. | ||
jupp | I see, that fixes it | ||
thanks for your hely | 09:18 | ||
p | |||
LlamaRider | sorear: no clue about any of that, I didn't even know about LEIM in Emacs | ||
sorear | are you a person who can get everything they want to do done in emacs? | 09:19 | |
LlamaRider | O | ||
I'm trying to be, I guess. | 09:20 | ||
jupp | masak: any chance on why this won't yield 'bar': echo "foo" | perl6 -n -e 's/foo/bar/' | 09:21 | |
jnthn | Isn't it -p that prints the output too? | 09:22 | |
masak | aye. | ||
try with -p instead of -n | |||
(this also holds with perl5, by the way) | |||
09:23
alim_ joined
|
|||
jupp | sweet | 09:23 | |
masak | did it work? | ||
I got a Null PMC access locally when trying it :) | |||
jupp | works for me :) | 09:25 | |
masak | \o/ | ||
09:26
alim left,
alim_ is now known as alim
|
|||
LlamaRider | t4 of the p6cc is quite the amount of fun to work on :) just started it | 09:27 | |
masak | I can only concur. :) | 09:28 | |
jnthn | masak: (NPMCA) maybe ticket it, so we can make sure it's not the case in latest master? | ||
masak | jnthn: just pulled and about to rebuild. | 09:31 | |
09:31
bacek joined
|
|||
sorear | ...oh right. Well I guess I can stop waffling over whether I want to enter p6cc now. | 09:33 | |
indecision-- | 09:34 | ||
masak | there's always next year. | ||
sorear | yes | ||
sorear wonders how urgent it is to get constants (incl. enum values) working as types | 09:35 | ||
masak | also, the problems are public, so if you just want to solve them without winning great books, that's still an option. | ||
sorear: in what sense are non-enum constants types? | |||
or in what sense do they work as types? | 09:36 | ||
sorear | masak: multi JapaneseName(Tue) { "kayōbi" } | ||
jnthn | nom: enum Yesness <Yes No>; multi ru(Yes) { say "Da" }; multi ru(No) { say "Nyet" }; ru(Yes); ru(No); # curious if it works in nom... | 09:38 | |
p6eval | nom 38165a: OUTPUT«DaNyet» | ||
sorear | wait, that was an enum type | ||
masak | sorear: looks like the ordinary constant-in-signature sugar mechanism to me. | 09:39 | |
sorear | nom: multi foo(pi) { "Pi" }; multi foo(Any) { "Not Pi" }; say foo(pi) | ||
p6eval | nom 38165a: OUTPUT«Pi» | ||
sorear | masak: exactly | ||
masak | so... they already work...? | ||
sorear | allowing types and constants to be used interchangably in niecza's signatures involves an amount of yak shaving I'd rather not take on just yet | 09:40 | |
sorear just remembers subsets need to be fixed up | |||
s/s»/ed/ | |||
LlamaRider | masak: do you know how many people registered for p6cc? And why I'm the only one in #perl6? I feel like the only newbe to Perl6 on board | 09:41 | |
masak | nom: enum Yesness <Yes No>; multi ru(Yes) { say "Да" }; mtul ru(No) { say "Нет" }; ru($_) for Yes, No # jnthn: at least do it with real letters! :P | ||
p6eval | nom 38165a: OUTPUT«===SORRY!===Confused at line 1, near "mtul ru(No"» | ||
09:41
baest left
|
|||
masak | nom: enum Yesness <Yes No>; multi ru(Yes) { say "Да" }; multi ru(No) { say "Нет" }; ru($_) for Yes, No | 09:41 | |
p6eval | nom 38165a: OUTPUT«ДаНет» | ||
masak | LlamaRider: 35 people registered. | 09:42 | |
sorear | is е iotated? | ||
masak | LlamaRider: you're not the only contestant on #perl6 :) | ||
sorear: "iotated"? | |||
sorear | the y in nyet | 09:43 | |
masak | sorear: yes. | ||
LlamaRider | Nice info, good to know ^^ I gues I'm the only one being too loud about it xD | ||
masak | sorear: if you want the non-y version, it's э | ||
LlamaRider: it's nice that you're here -- and very strategic, I might add. increases the chances of winning. :) | 09:44 | ||
LlamaRider | I'm quite sure I won't win anything, but it's definitely 10 times more fun when I have people to chat with :) | ||
09:45
dakkar joined
|
|||
jnthn | masak: Yeah, I really shoulda...especially given I'm meant to be improving my Russian atm... :) | 09:45 | |
LlamaRider | to avoid old cyrillic letters such as "э", one can use a well-behaved language like Bulgarian, No = "Не" :) | 09:46 | |
jnthn | Bulgarian is a terribly behaved Slavic language. It has articles! :P | 09:47 | |
sorear | jnthn: Why are you meant to be improving your Russian? | 09:48 | |
jnthn | sorear: Actually have regular contact with somebody to speak it with now. | ||
sorear | \o/ | 09:49 | |
jnthn | Plus I want to. It's a nice language. :) | ||
LlamaRider | jnthn: touché | ||
sorear | .oO( So it's not the same to practice Polish with tadzik, GlitchMr, and x3nU? ) |
||
09:50
snearch left
|
|||
jnthn | sorear: By "speak" I meant, actually speaking, not just typing. :) | 09:51 | |
sorear | Ah. | 09:52 | |
masak should get a similar reason to improve his Mandarin | 09:53 | ||
09:54
spine_ joined
|
|||
masak | ah. "iotation", from the Greek letter iota (ι). makes sense. | 09:55 | |
sorear | I found someone once... only had a few minutes and I cannot for the life of me make a proper л or х | 09:56 | |
my Х and К come out sounding exactly the same | |||
masak | х is mostly just a regular "h" sound, no? | ||
maybe slightly more throaty than in English. | 09:57 | ||
sorear | k/kh standardly | ||
saKHarov, etc | |||
masak | uh, yes. | ||
I don't think of that as something odd any more :) | |||
sounds completely normal to me... even though Swedish has the less throaty "h" sound like English. | 09:58 | ||
there are at least two sounds for л: hard and soft. | |||
sorear | s/Л/Р/ | 09:59 | |
masak | oh! :) | ||
sorear | (does anyone else find this error remotely as funny as I do?) | ||
masak | I can see how it occurred :) | ||
sorear | my friend tells me Р is identical to a Spanish trilled r. Which I've never been able to say either | ||
masak | same as in Swedish, too. | 10:00 | |
tadzik | about wrap again: gist.github.com/1585730 | ||
masak | can anyone confirm that `perl6 -p -e ''` is busted in latest nom? I've now rebuilt, and it still gives a Null PMC access. | ||
jnthn can't do the Spanish really trilled 'r' | |||
sorear wonders if the folks in Sakhalin speak Lusskij | 10:01 | ||
jnthn | :P | ||
masak: mebbe it didn't get updated properly in nom? | |||
(can't verify, at $dayjob without a Rakudo build to hand) | 10:02 | ||
masak | tadzik: looks like a bug to me. | ||
tadzik | S11 uses the word "binding" when it comes to exportation, this looks more like copying | 10:03 | |
10:03
replore left
|
|||
sorear | I also have issues with Ь and Ы | 10:04 | |
masak | that's completely normal :) | 10:05 | |
tadzik: haven't read what S11 says about it, but binding makes a lot of sense and copying doesn't. | 10:06 | ||
tadzik: will you submit a rakudobug, or shall I? | |||
sorear needs to learn more Swedish/Norwegian/(Maybe German would be good enough?) if ey's going to run off to the frozen north | 10:07 | ||
tadzik | masak: go on | ||
masak submits rakudobug | 10:09 | ||
sorear: I'd say German gives the most bang for the buck. plus it's good to know if you plan to tackle Swedish/Norwegian/Danish at some point anyway. | 10:10 | ||
sorear | finishing Russian and French would also be good someday | 10:11 | |
masak | "finishing"? | 10:12 | |
arnsholt | Scandinavian isn't too hard I think, the lack of inflection really helps | ||
On the other hand we have some messed up pronounciation | 10:13 | ||
sorear | masak: well, hiking to a more favorable point along the effort/reward curve | ||
10:13
wtw left
|
|||
tadzik | masak++ | 10:13 | |
dalek | ecza: 4336983 | sorear++ | / (2 files): Treat subsets in MMD as base type + where |
10:14 | |
masak | sorear: I'm only fluent in three languages at present. my French, Russian, Yiddish, Latin, and Mandarin are all in various states of disrepair. | 10:19 | |
donri | jbobau ko! | 10:20 | |
jnthn | tadzik: huh, exporting is decidedly binding. | 10:21 | |
tadzik: But don't forget closure cloning. | 10:22 | ||
sorear | masak: what languages *are* you fluent in? | ||
masak | sorear: Swedish, English, Esperanto. in that order. | ||
jnthn is only fluent in English :( | 10:23 | ||
sorear | for some reason I had you down as a German | ||
English, and minimally fluent in Spanish | 10:24 | ||
masak | no, that's moritz :) | ||
jnthn used to speak reasonable Spanish, back when he lived in Spain | 10:25 | ||
10:26
awoodland joined
|
|||
jnthn | Taking vacation in Argentina later this year, so trying to remember it all. Though I think the Spanish down there is...interesting. :) | 10:27 | |
sorear | well I only speak TJ spanish anyway :D | 10:28 | |
dalek | ecza: 4b71f28 | sorear++ | src/ (5 files): Mergeback |
||
jnthn | So long as I can order beef, beer and bus tickets, I'm sure I'll be fine. | 10:29 | |
ah, fun times at $dayjob. Our DAG is losing its A-ness... | 10:30 | ||
10:30
daxim joined
|
|||
sorear | It was really fun that day I got Niecza's exception dispatcher to hang chasing an infinite loop of CALLER links | 10:30 | |
well I think I'd best sleep now. Immediate-term TODO: MMD/multi dispatch interaction, two level attribute stuff/trusts | 10:32 | ||
jnthn | Oh, I played fast and loose with Parrot CallContexts a few months back and achieved just the same... :) | ||
sorear | ..."MMD/multi dispatch interaction"?? | ||
I mean MMD/junctions | 10:33 | ||
sorear out | |||
masak | jnthn: so... the DAG... it's a directed graph now? :) | ||
10:33
baest joined
10:34
bacek left
|
|||
masak | well, as long as you don't traverse it expecting to bottom out, you're fine, I guess. | 10:34 | |
sorear wonders why tadzik and doy have the same shell prompt | |||
jnthn | masak: Yeah, and guess what we do with it... :) | 10:35 | |
masak | jnthn: traverse it? :) | ||
well, as long as you don't expect it to bottom out, you're fine, I suppose :) | |||
jnthn | Well, it may feel in some companies that there's an infinite number of levels of management, but I'm pretty sure most of them bottom out somewhere :P | 10:38 | |
masak .oO( it's bosses all the way down ) | 10:45 | ||
10:46
bacek joined
11:00
bs338 joined
11:02
nornagest joined,
bs338 is now known as integral
11:03
LlamaRider left
11:39
bacek left
11:42
bkolera joined
11:46
bkolera left
11:47
Trashlord joined
11:53
jupp left
11:54
jupp joined,
jupp left
11:57
bacek joined
|
|||
colomon | TimToady: line 14, @elems should be @args (or maybe vice versa line 13) | 12:01 | |
12:01
bkolera joined
12:04
spine_ left
12:08
benabik left
12:12
cognominal_ joined
12:15
nornagest left,
cognominal left
12:18
wtw joined
12:20
mkramer left
12:27
LlamaRider joined
12:33
benabik joined
12:36
nornagest joined
12:40
x3nU left
12:41
x3nU joined
12:44
awoodland left
|
|||
jaldhar | masak: Some days ago I asked you about entering the perl6 contest but I've just realized I forgot to email you as the instructions say. Is it too late? | 12:54 | |
masak | jaldhar: yes :/ | 12:57 | |
jaldhar | masak: oh well. I'll do the problems anyway just for my own edification. | 12:59 | |
masak | nice. | ||
seems you didn't ask me, but talked with moritz and kshannon. | |||
jaldhar | yeah that's right. Though I thout I did ask you as well but I guess not. | 13:02 | |
13:02
jupp joined
|
|||
masak | not according to the logs... | 13:02 | |
jaldhar: if you do find nice solutions to problems, and send them to me by email, I will give you proper recognition in the blog posts about the tasks, even if you aren't technically part of the contest. | 13:04 | ||
see last year's p4 task and arnsholt++: strangelyconsistent.org/blog/p4-pic...-of-stones | |||
13:05
LlamaRider left
|
|||
jaldhar | ok "nice" might be a bit beyond my grasp :) but I want to try this. | 13:07 | |
kshannon | jnthn: gist.github.com/1584871 - I'm down to just 6 failing test files in qbootstrap. :) | ||
jnthn | kshannon: How'd you fix the subclass one? | 13:08 | |
kshannon++ | |||
49-regex-interpolation.t is likely just a case of NYI rather than a bug | 13:09 | ||
13:15
nornagest left
13:21
cognominal_ left
|
|||
kshannon | Dammit, still some more corner cases with the bstack | 13:22 | |
masak | today's autopun spotting: twitter.com/timminchin/status/156665165075582976 | ||
kshannon | And my fix leaves more entries on the stack than probablt should be there. | ||
13:23
cognominal joined
|
|||
jnthn | kshannon: Yes, keeping the bstack straight is quite the brainache. | 13:23 | |
kshannon | masak: Love tim. Best song ever - Rock and roll nerd. | 13:24 | |
13:25
bluescreen10 joined
|
|||
[Coke] | kshannon++ #diving in to rakudo guts. | 13:25 | |
kshannon | also his beat poem - Storm - www.youtube.com/watch?v=UB_htqDCP-s | ||
[Coke]: nqp actually :) | |||
I got lost in maze of twisty ListIter's when I was hacking Rakudo guts... | 13:26 | ||
benabik | kshannon: NQP kinda is the Rakudo guts. ;-) | ||
kshannon | jnthn: I think the bstack needs some docs... :( | 13:28 | |
jnthn | kshannon: Yeah. pmichaud tends to be...pretty light...on docs... Then, I'm not much better. | 13:29 | |
masak | kshannon: Storm is great. you'll want to see the animated movie, too: www.youtube.com/watch?v=HhGuXCuDb1U | 13:30 | |
jnthn is highly amused by "If I didn't have you" | |||
masak | "you fall within a bell curve" :P | 13:32 | |
kshannon: I kinda like "Not perfect". | 13:37 | ||
kshannon | "Peace anthem" had me rolling on the floor the first time I heard it. | 13:39 | |
masak | :D | 13:41 | |
13:50
Trashlord left
14:00
alim left
14:01
alim joined
14:06
jupp left
14:08
kcwu joined
14:17
kaleem left
14:22
skids joined
|
|||
masak | has anyone written something noteworthy about the structural similarities of these activities: reporting a bug; writing a test case; requesting help on IRC? | 14:23 | |
kshannon | jnthn: I'm almost sure we need this for any meaningful semantics of the bstack: github.com/KrisShannon/nqp/commit/...proto-hack | 14:29 | |
(and the le', '$I11', '$I18', $jumplabel is probably not needed...) | 14:33 | ||
14:35
jupp joined,
LlamaRider joined
14:39
cognominal left,
wolv joined
14:40
dukeleto- joined,
lestrrat left,
wolverian left,
dukeleto left,
fhelmberger left,
tadzik left,
masak left,
ashleydev left,
Lorn left,
lestrrat joined,
bbkr left,
spetrea left,
dalek left,
cognominal joined,
_jaldhar joined,
bbkr joined,
ashleydev joined,
tadzik joined,
kfo left,
dalek joined,
ChanServ sets mode: +v dalek,
fhelmberger joined,
jaldhar left,
dukeleto- is now known as dukeleto,
masak joined
14:41
spetrea joined,
kfo joined
14:42
Lorn joined
14:43
PacoAir joined
|
|||
masak | $net.split | 14:43 | |
14:45
LlamaRider left
|
|||
colomon | niecza: subset Even of Int where { $_ % 2 == 0 }; say 2 ~~ Even | 14:47 | |
p6eval | niecza v13-191-g4b71f28: OUTPUT«Unhandled exception: System.NullReferenceException: Object reference not set to an instance of an object at Niecza.STable.FindMethod (System.String name) [0x00000] in <filename unknown>:0  at Niecza.P6any.InvokeMethod (Niecza.Frame caller, System.Stri… | ||
colomon | niecza: subset Even of Int where { $_ % 2 == 0 }; say "alive!"; say 2 ~~ Even | ||
p6eval | niecza v13-191-g4b71f28: OUTPUT«alive!Unhandled exception: System.NullReferenceException: Object reference not set to an instance of an object at Niecza.STable.FindMethod (System.String name) [0x00000] in <filename unknown>:0  at Niecza.P6any.InvokeMethod (Niecza.Frame caller, Syst… | ||
14:48
LlamaRider joined
14:52
zhangkaizhao joined,
sayu joined
14:56
fsergot joined
|
|||
jnthn | kshannon: Sorry, was tied up with $dayjob for a bit :) | 14:58 | |
kshannon: Hmm...we're removing the whole cut functionality there... | |||
jnthn wonders if we really need it, and what fails with it gone | |||
kshannon: oh, I think I see what the patch is doing... | 15:00 | ||
kshannon: Would be interested to know a Rakudo spectest run with that patch in NQP master looks compared to without it. | |||
kshannon | Well, I don't think the cut actually works. | ||
jnthn | kshannon: I think it's meant to unwind captures that we've backtracked over. | 15:01 | |
kshannon: But from what I saw when starting to look at things, it often throws away far too much. | |||
kshannon | OK, I'm just running the nqp tests at the moment doing a timing comparison between master and qbootstrap | 15:02 | |
jnthn | kshannon: Also interesting. | ||
kshannon: In theory QRegex should be faster. In practice, having the NFA runner in NQP may well be hideously slow. | |||
(pmichaud didn't expect that part to stay in NQP) | |||
A run with -Rsubprof should be revealing. | 15:03 | ||
kshannon | At a first approximation I'd say hideously slow is pretty accurate... | ||
It's taking about double the time (double user, 50% more system, and double walltime) | 15:07 | ||
jnthn | kshannon: OK. Profiling time! :) | 15:08 | |
kshannon: I'll have chance to get the profiler on it this evening after $dayjob. | 15:13 | ||
15:13
sayu left
|
|||
[Coke] | seen pmichaud? | 15:16 | |
aloha | pmichaud was last seen in #parrot 14 hours 35 mins ago joining the channel. | ||
15:23
Trashlord joined
|
|||
LlamaRider | Q: How do I do " while (<STDIN>) { ... } in P6 ? | 15:23 | |
I've seen STDIN is now $*IN, but <> no longer do the same thing | |||
15:24
wtw left
|
|||
TimToady | for $*IN.lines { ... } | 15:24 | |
[Coke] | (I just saw his irssi process spike while looking at something else, wondering if he was about. ;) | 15:25 | |
LlamaRider | thanks. I just found it through .^methods, came to brag, and the help was there :) | ||
TimToady | LlamaRider++ for your gumption anyway | 15:26 | |
jnthn | nom: say $*IN.^methods | 15:27 | |
p6eval | nom 38165a: OUTPUT«open close eof get getc lines read seek tell write opened print say slurp d e f l r s t w x z copy chmod ins chomp path» | ||
LlamaRider | TimToady++ for teaching me SAT words ^^ | ||
masak | since $*IN is the default, 'for lines() { ... }' works as well. but the parens in 'lines()' are mandatory due to the way listop parsing works. | ||
jnthn | Wow, .^methods output is, like, more useful now ;) | 15:28 | |
masak | or you could go the same route and write 'for lines -> $line { ... }' or similar ;) | ||
benabik | nom: $*IN.e.say | ||
p6eval | nom 38165a: OUTPUT«Bool::False» | ||
masak | benabik: standard input does not exist. it is a social construct. | ||
LlamaRider | jnthn: Definitely useful! I can't wait for the day where it will spit out a table with "method name | synopsis " rows ;) | ||
jnthn | nom: say $*IN.^methods.perl | 15:29 | |
p6eval | nom 38165a: OUTPUT«(method open(IO, Any, Mu *%_) { ... }, method close(IO, Mu *%_) { ... }, method eof(IO, Mu *%_) { ... }, method get(IO, Mu *%_) { ... }, method getc(IO, Mu *%_) { ... }, method lines(IO, Any $limit?, Mu *%_) { ... }, method read(IO:D, Cool:D $bytes, Mu *%_) { ... }, m… | ||
masak | ooh | 15:31 | |
jnthn++ | |||
LlamaRider | more like $*IN.^methods.map({ $_ ~ " : " ~ $_.WHY }) or something | 15:32 | |
jnthn | nom: say $*IN.^methods>>.perl>>.say | ||
p6eval | nom 38165a: OUTPUT«method eof(IO, Mu *%_) { ... }method getc(IO, Mu *%_) { ... }method chmod(IO, Any $mode, Mu *%_) { ... }method w(IO, Mu *%_) { ... }method l(IO, Mu *%_) { ... }method get(IO, Mu *%_) { ... }method tell(IO:D, Mu *%_) { ... }method e(IO, Mu *%_) { ... }method sl… | ||
jnthn | That's probably nicer output | ||
masak | naughty jnthn, using >>.say | 15:33 | |
nom: class C { multi method foo($x) {}; multi method foo($x, $y) {} }; say C.^methods.perl | |||
p6eval | nom 38165a: OUTPUT«(method foo(Any, Any, Mu *%_) { ... },)» | ||
masak | oh, it shows the proto? | ||
15:33
cognominal left
|
|||
jnthn | masak: Correct | 15:33 | |
benabik | Why do they all have Mu *%_ ? | ||
masak | benabik: "interface consistency" | ||
benabik: see S12, and A12. | |||
jnthn | benabik: All methods get that by default to ease deferral | 15:34 | |
benabik | masak++ | ||
jnthn | As masak says, more retionale in la spec. | ||
*rational | |||
benabik | jnthn++ | ||
jnthn | oh, whatever :) | ||
masak | benabik: short answer: because some subclass may introduce more named params. | ||
15:34
cognominal joined
|
|||
jnthn | Well, it works the other way around too | 15:35 | |
You can write subclasses that defer and they don't have to care about all the nameds that parents support. | |||
So if the parent starts to support extra ones, the subclass that defers to it need not be updated. | |||
15:38
LlamaRider_ joined
|
|||
masak | aye; that's probably more to the point, now that I think about it. | 15:38 | |
deriving classes shouldn't have to break if the base class adds a named param or two. | |||
colomon | anyone here have wisdom on converting Unicode to ASCII in C/C++? I know it sucks, but I need to make it happen for $work... | 15:40 | |
15:40
fsergot left
|
|||
masak | convert? you decode the Unicode, then you encode the ASCII... | 15:41 | |
15:41
LlamaRider left
|
|||
masak | or s:2nd/the/as/, rather. | 15:41 | |
ergh, s:2nd/the>>/as/ ;) | 15:42 | ||
colomon | decode to what? | ||
colomon is pondering just going through wchar's and throwing out all the ones greater than 128.... | 15:43 | ||
masak | well, greater than 127 in that case... | 15:45 | |
colomon | yeah | ||
ugh, that's evil | |||
masak | it completely depends on what you want to achieve. | 15:46 | |
maybe it's completely kosher to just throw them out. probably not. | |||
colomon | Unicode filename ==> Representation of filename which can legally be stored in a pure ASCII file | ||
jnthn | colomon: Heh, if that's all you need then just treat the encoded unicode string as a bunch of bytes and base64 it ;) | 15:47 | |
dalek | ast: b741ac7 | coke++ | / (4 files): niecza (auto)unfudge |
||
masak | jnthn++ | 15:48 | |
jnthn | And make sure you're consistent about the encoding :) | ||
That way you won't lose any info. | |||
masak | indeed. | ||
colomon | intriguing notion | ||
I don't actually ever have to read filename back from the file. | 15:49 | ||
benabik | Write-only storage? | ||
15:50
alim left
|
|||
colomon | benabik: writing the file is the point of the program; and the internally encoded filename is a trivial human-readable detail. | 15:50 | |
benabik | fsvo human-readable? | 15:51 | |
masak does a double-take at metacpan.org/source/SBURKE/Text-Un...de.pm#L400 | |||
colomon | gist.github.com/1589727 # find the filename ;) | 15:52 | |
15:56
kaare_ joined
|
|||
geekosaur | ...Hollerith strings?! | 15:57 | |
15:57
fsergot joined
|
|||
PerlJam | Herman Hollerith's legacy continues. | 15:57 | |
16:01
thou_ joined
|
|||
masak | 36HHerman Hollerith's legacy continues. | 16:08 | |
16:08
panterax joined
|
|||
PerlJam | masak: obviously my geek-fu is not as great as yours today | 16:09 | |
16:10
fsergot left
|
|||
colomon | The attentive eye will also note that those are 80 column lines... | 16:11 | |
masak | :) | 16:12 | |
geekosaur | also the D (instead of E) in the DOUBLE PRECISION constants | ||
colomon | geekosaur: yup. | 16:13 | |
afk # morning walk | |||
masak decommute & | |||
16:14
thou joined,
birdwindupbird left
|
|||
LlamaRider_ | any shorthand for " @a.grep({ defined $_; }); " ? Seems cumbersome | 16:14 | |
jnthn | @a.grep(*.defined) | 16:15 | |
jnthn -> home, bbl | 16:16 | ||
benabik | ([and] @a>>.defined) ? | ||
LlamaRider_ | Nice! * is something I have seen several times, but am yet to read about it in detail. Thanks jnthn++ | ||
benabik | Oh, d'oh, wasn't paying enough attention. WTF brain? | ||
skids | hrm. | 16:24 | |
rakudo: class A { multi method foo(::B $b) { say "Surprise! ::B is an en-passant type capture"; } }; class B { }; my B $b .= new(); my A $a .= new(); $a.foo($b); $a.foo(2); | |||
p6eval | rakudo 38165a: OUTPUT«Surprise! ::B is an en-passant type captureSurprise! ::B is an en-passant type capture» | ||
PerlJam | skids: why is that a surprise exactly? | 16:27 | |
skids | It's a surprise to anyone who thought they were using ::B to use a class before it was declared. | 16:28 | |
(which is something they will probably learn well before learning what an en-passant type capture is) | 16:29 | ||
16:49
thou_ left
16:50
daxim left
|
|||
jnthn back | 16:54 | ||
LlamaRider_: * has various meanings. But *.method_name is same as { $_.method_name } - that is, it makes a closure. | 16:55 | ||
skids: The rule is that ::B only works for talking about as yet undeclared types in non-declarative scenarios. A signature is declarative. | 16:56 | ||
16:57
kaleem joined
16:58
wolfman2000 left
|
|||
skids | That might bear noting in S10. Are the synopsis still in the old pugs repository? | 17:02 | |
17:03
sayu joined
|
|||
PerlJam | skids: no, github.com/perl6/specs | 17:03 | |
skids | Well, maybe after lunch I will finally learn to do a pull request :-) | 17:04 | |
17:06
hanekomu joined
17:07
LlamaRider_ left
17:15
baest left
17:22
daxim joined
|
|||
[Coke] | rakudo: my $foo = Whatever.new(); say 1..$foo[^10]; | 17:24 | |
p6eval | rakudo 38165a: OUTPUT«1..(*, Failure.new(exception => Exception.new()), Failure.new(exception => Exception.new()), Failure.new(exception => Exception.new()), Failure.new(exception => Exception.new()), Failure.new(exception => Exception.new()), Failure.new(exception => Exception.new()), … | ||
kshannon | rakudo: my $foo = Whatever.new(); say (1..$foo)[^10]; | 17:34 | |
p6eval | rakudo 38165a: OUTPUT«1 2 3 4 5 6 7 8 9 10» | ||
[Coke] | ah, thank you. | ||
rakudo: my $foo = Whatever.new(); my $bar = Whatever.new(); say $foo===$bar; | 17:35 | ||
p6eval | rakudo 38165a: OUTPUT«Bool::False» | ||
[Coke] | Should Whatever be a singleton? | ||
17:40
cognominal left
17:41
cognominal joined
17:42
cognominal left
17:44
daxim left,
cognominal joined
|
|||
jnthn | kshannon: Just done a profile of 59-nqpop.t. Over 50% of time is spent in NFA.run. | 17:46 | |
17:47
kaare_ left
17:48
daxim joined,
kaare_ joined
17:54
baest joined
17:55
sayu left
|
|||
kshannon | Well then, if we can speed that up to take no time at all we'll be a little bit faster than the master branch :) | 17:56 | |
jnthn | Aye, and I think there'll be other wins to be had too. | 17:57 | |
17:58
kaare_ left
|
|||
jnthn | kshannon: Did you get chance to try that bstack patch against the Rakudo spectest? | 17:58 | |
17:59
kaare_ joined
18:00
dakkar left,
mj41 left
|
|||
kshannon | I've only run it against the nqp tests, on the master branch it does fail two of the t/qregex tests | 18:02 | |
jnthn | ah | 18:03 | |
jnthn feared it may bust something | |||
kshannon | Yeah, but I've been looking at the pir generated (it's the same on both branches), and I still think it's the right thing to do (not so many corner cases) The QAST compiler just needs a bit of prodding. | 18:06 | |
Running a rakudo build on patched master nqp now. | |||
jnthn | kshannon: If it's a better approach overall then I'm all for it. | ||
kshannon: Note that I introduced a patch a while back to quantifier handling that may be unrequired after this one. | 18:07 | ||
tadzik | o/ | ||
jnthn | kshannon: I'm having a crack an an NFA running dynop | 18:08 | |
o/ tadzik | |||
18:09
zhangkaizhao left
|
|||
[Coke] stares at ack "plan +d" t/spec | sort -t: -k2.5 -n and wonders why it's not sorting the way he thinks it should. | 18:09 | ||
kshannon | I think it will also be pretty easy to do the 'let' binding stuff. | ||
[Coke] | s/2.5/3.5/ (no change in output) | 18:10 | |
ARGLEBARGLE. yes there is, nevermind. | |||
18:11
leprevost left
18:12
alester joined,
Chillance joined
|
|||
cj | Mr. Coleda | 18:15 | |
[Coke] | Mr. Adams-Collier | 18:18 | |
Yes? | 18:19 | ||
18:19
hanekomu left
18:23
mkramer joined
18:24
leprevost joined
|
|||
[Coke] | Sí? | 18:24 | |
18:24
spine joined
|
|||
[Coke] | Да? | 18:25 | |
daxim | ~~((°Д°)) | 18:26 | |
18:27
LlamaRider joined
18:28
zjmarlow joined,
cognominal_ joined
18:29
mkramer left
18:30
mkramer joined
18:31
fsergot joined
|
|||
kshannon is getting a little bit confused with all these different branches... | 18:31 | ||
fsergot | o/ | ||
jnthn | kshannon: Just need to get more of them into a mergable state ;) | ||
18:32
cognominal left
|
|||
kshannon | I think I need to redo my setup so I've got completely separated environments for master, qboot, stuffing around... | 18:32 | |
skids | Unless I'm missing yet another nuance, this isn't supposed to work, but the way it doesn't work seems fishy: | 18:34 | |
rakudo: class A { has ::B $.a is rw }; class B { }; my A $a .= new(); $a.a.WHAT.say; | |||
p6eval | rakudo 38165a: OUTPUT«Method 'say' not found for invocant of class 'B' in block <anon> at /tmp/3ptlcKj_P0:1 in <anon> at /tmp/3ptlcKj_P0:1» | ||
jnthn | eek :) | ||
skids | I'm guessing "class 'B'" means it thinks it is a symbolic link. | 18:35 | |
18:36
JimmyZ joined
|
|||
gfldex | nom: subset A of Str; sub foo(A $a){}; say &sub.signature; | 18:37 | |
p6eval | nom 38165a: OUTPUT«===SORRY!===Symbol '&sub' not predeclared in <anonymous> (/tmp/D1H0qcEVj0:1)» | ||
gfldex | nom: subset A of Str; sub foo(A $a){}; say &foo.signature; | ||
p6eval | nom 38165a: OUTPUT«:(Str $a)» | ||
gfldex | shoudn't that be '(A $a)' ? | ||
jnthn | H | ||
Hm | 18:38 | ||
gfldex: Can argue it both ways | |||
gfldex: When you write a subset type in a signature, it has to be disassembled into a nominal part and a constraint part | |||
gfldex: Str is the nominal part, and of course there's no constraint part here, so I guess it's dropped it. | |||
gfldex | lets see | ||
jnthn | Well, it didn't drop it, there just wasn't one. :) | ||
gfldex | nom: subset A of Str where { $^s ~~ /^\d+$/ }; sub foo(A $a){}; say &foo.signature; | 18:39 | |
p6eval | nom 38165a: OUTPUT«:(Str $a)» | ||
jnthn | Ah | ||
18:39
mkramer left
|
|||
jnthn | ...I get that's Signature.perl missing something. | 18:39 | |
*bet | |||
18:40
rindolf joined
|
|||
rindolf | Hi all. | 18:40 | |
gfldex | so what is signature supposed to do then? | 18:41 | |
jnthn | gfldex: .signature returns a Signature object | 18:42 | |
o/ rindolf | |||
cj | [Coke]: oh, nothing. just a greeting. Imagine me saluting or tipping my hat or whatever. | ||
18:42
mkramer joined
|
|||
gfldex | it does that quite nicely, yet the returned object seams not to be overly honest to me | 18:43 | |
[Coke] | cj; well met. | ||
So, what brings you perl6 land? | |||
cj | someone was talking about which /win their #perl was in. I said "5 of course! #perl6 used to be in 6" | 18:45 | |
so I fixed it. | |||
18:45
mkramer left
|
|||
cj | Right after I joined, I found out that someone else cares about perl6 on .NET enough to commit some code, so I stayed. | 18:45 | |
18:45
nornagest joined
|
|||
cj | maybe if I get some tuits I'll contribute something other than snark. | 18:45 | |
I wrote something about it a few years ago. wp.colliertech.org/cj/?p=175 It seems that there are people who have actually implemented bits of it. | 18:47 | ||
no perl5 on perl6 on .NET yet, though. Woe. | |||
18:47
mkramer joined
18:49
kaare_ left
|
|||
[Coke] | sorear is running out of spec tests to fix, so he may get to that soon. ;) | 18:49 | |
18:49
kaare_ joined,
lichtkind joined
|
|||
lichtkind | jnthn: o/ | 18:50 | |
18:50
mkramer left
18:51
icwiener joined
|
|||
jnthn | o/ lichtkind | 18:52 | |
18:53
mkramer joined
|
|||
rindolf | jnthn: what's up? | 18:54 | |
18:55
daxim left
|
|||
dalek | p/qbootstrap: add1a9d | jnthn++ | src/ (2 files): Quick and dirty port of NFA.run to a dynop. For nqpop.t, takes time spent in NFA.run from 51% of runtime down to 3.3%. |
18:55 | |
jnthn | rindolf: Not much...just working and hacking. :) | 18:56 | |
18:56
mkramer left,
daxim joined
|
|||
rindolf | jnthn: nice. | 18:57 | |
18:57
birdwindupbird joined
|
|||
jnthn | kshannon: With that patch, we spend longer building the NFA than running it! | 18:57 | |
18:57
mkramer joined
19:00
mkramer left
19:02
mkramer joined,
LlamaRider left,
mkramer left
19:03
cognominal_ left
19:04
mkramer joined
19:05
cognominal joined,
JimmyZ left
|
|||
moritz | \o | 19:06 | |
masak | o/ | 19:07 | |
tadzik | o/ | ||
nornagest | \o/ | ||
colomon | o| | 19:08 | |
[Coke] | colomon: yes? | ||
19:08
LlamaRider joined
|
|||
LlamaRider | masak, moritz: who was the evil mind that invented the 3 naming schemes for t4? They're amazingly annoying :) | 19:09 | |
19:09
mkramer left
|
|||
colomon | may I be excused to go to the biergarten, Mr. [Coke]? | 19:09 | |
moritz | LlamaRider: not me :-) | ||
LlamaRider: and yes, I find them annoying too, but I guess I'd find any numbering scheme annoying if it was imposed on me | |||
LlamaRider | I wouldn't if it was a little bit more consistent | 19:10 | |
I can't reuse any computation :( | |||
moritz | you don't have to do any computations in that notation | 19:12 | |
masak | LlamaRider: I'll be very interested to see a less annoying notation. | ||
you have my full license to invent one ;) | 19:13 | ||
LlamaRider | always label starting left-most element on the top row. there :-) | ||
[Coke] | colomon: ja! | ||
LlamaRider | namely labels a1, i1 and p1 are there | ||
19:14
arlinius left
|
|||
LlamaRider | *end of rant* :p | 19:14 | |
masak | fine, if that makes you happy. :) | 19:15 | |
19:15
mkramer joined
|
|||
masak | to me it seems like just another distribution of (in)consistency from the current rule: numbers increase from left to right. | 19:15 | |
19:15
wolfman2000 joined,
arlinius joined
|
|||
moritz | it's just waterbed of complexity: if you don't have names for the groves, you make it more verbose to name pieces | 19:16 | |
colomon | niecza: multi foo(Inf) { say "Long time" } | ||
masak | aye. | ||
p6eval | niecza v13-191-g4b71f28: OUTPUT«Potential difficulties: &foo is declared but not used at /tmp/5VMCEpYq4U line 1:------> multi foo⏏(Inf) { say "Long time" }» | ||
colomon | niecza: multi foo(Inf) { say "Long time" }; foo(Inf) | 19:17 | |
p6eval | niecza v13-191-g4b71f28: OUTPUT«Long time» | ||
19:17
mkramer left
19:18
mtk joined
|
|||
LlamaRider | masak: considering you don't really have left and right for diagonals (rather up and down) I can't agree it's the most sensible choice. Right you index left-slanted diagonals bottom-up and right-slanted ones top-down. Maybe I made the mistake of seeing them as diagonals ;) | 19:20 | |
Right now* | |||
masak | yeah. | ||
unfortunately, I had to impose *some* notation, otherwise I couldn't write tests for it. | 19:21 | ||
[Coke] | colomon;there was an error on that when I removed the emit direcdtive in the spectest. | ||
masak | I chose the one I disliked the least ;) | ||
colomon | [Coke]: yeah, I got it too. I was trying to golf it. | ||
masak | LlamaRider: there's absolutely nothing that prevents you from translating my crappy notation to your excellent one internally in your program. | ||
colomon | niecza: multi foo(1) { say "Not many"; }; multi foo(2) { say "Lots!"; }; foo(2) | 19:22 | |
p6eval | niecza v13-191-g4b71f28: OUTPUT«Lots!» | ||
LlamaRider | masak: translating it to anything is the same amount of work ;) | ||
but it's ok, I can deal with it | |||
reminds of a real-world problem this way ;) | |||
masak | LlamaRider: if your notation isn't significantly better in any way, why do you prefer it to the present one? :P | ||
LlamaRider | I have a significantly better notation, and I prefer it to the current one, I just regret that translating the current one needs 3 distinct translation blocks | 19:23 | |
[Coke] is reminded that he solved task 1 and then forgot to move on to task 2. | |||
masak | :D | 19:24 | |
[Coke]: also, remember that submitting solutions greatly increases your chances of winning. | |||
benabik | niecza: multi foo(True) {say "Yes"}; multi foo(False) {say "No"}; foo(False) | ||
p6eval | niecza v13-191-g4b71f28: OUTPUT«===SORRY!===Lexical True is not a package at /tmp/JIB8bFDiMw line 1:------> multi foo(True⏏) {say "Yes"}; multi foo(False) {say "NoA type must be provided at /tmp/JIB8bFDiMw line 1:------> multi foo(True[33… | ||
benabik | Ah, well, worth a shot. | 19:25 | |
masak | o.O | ||
LlamaRider | Let me know if anyone wants to compare runtimes for t3 | ||
I feel very sad about my performance | |||
masak | benabik: that's a bug. | ||
benabik | nom: multi foo(True) {say "Yes"}; multi foo(False) {say "No"}; foo(False) | ||
p6eval | nom 38165a: OUTPUT«Yes» | ||
benabik | masak: Probably enum constant as multi arg is NYI or similar. | 19:26 | |
masak | supposably. | ||
[Coke] | masak: but you said there's a limit on how many times I can submit! I want to wait until the last minute so I can submit ... more... wait. | 19:32 | |
I can compare runtimes for t1... ;) | 19:33 | ||
aw, I can't use niecza, bother. perhaps I should handroll main. | 19:34 | ||
er, MAIN | |||
moritz | you can often just add MAIN(|@*ARGS); at the end | ||
dalek | ecza: 1c4a771 | sorear++ | lib/ObjModel.cs: Add missing Revalidate to fix NRE with subset ACCEPTS, colomon++ |
19:37 | |
[Coke] | moritz: if I'm less finicky about MAIN's args, that kind of works. | ||
masak | [Coke]: last year, no individual contestant exceeded 2 submissions per task. the upper limit is 10 :) | 19:39 | |
19:40
cognominal left
|
|||
sorear | good * #perl6 | 19:40 | |
masak | sorear! \o/ | ||
19:41
cognominal joined
|
|||
[Coke] | masak: you just want to read code, don't you. :P | 19:42 | |
LlamaRider | [Coke]: t1 isn't that interesting for runtimes, I guess it's more fun to read good Perl6 there :) | 19:43 | |
19:43
zby_home_ joined
|
|||
skids | rakudo: class A { }; class A {...}; | 19:43 | |
p6eval | rakudo 38165a: OUTPUT«===SORRY!===Illegal redeclaration of symbol A at line 1, near "{...};"» | ||
skids | .oO(wherefor idempotence) |
19:44 | |
masak | [Coke]: should Whatever be a singleton? no, if anything it should be uninstantiable. | 19:46 | |
jnthn | masak: I think we need to distinguish Whatever (the type) and * (instance of Whatever) | 19:47 | |
19:49
kaleem left
|
|||
[Coke] | jnthn: in a way that is different from distinguishing between an Int (the type) and 3 ? | 19:50 | |
masak | jnthn: oh, ok. example? | ||
jnthn: or rather, what does * gain from being an instance of Whatever, rather than just Whatever itself? | 19:51 | ||
jnthn | masak: ~~ Whatever vs ~~ * comes to mind | ||
masak | hm. | ||
are all occurrences of * in a program distinct instances? | 19:52 | ||
jnthn | Not sure. | ||
I hope not! | |||
:) | |||
But it's possible. | 19:53 | ||
(and if so, only because nobody optimized it yet) | |||
masak | perl6: my ($a, $b) = *, *; say $a === $b | ||
p6eval | pugs b927740: OUTPUT«1» | ||
..rakudo 38165a, niecza v13-191-g4b71f28: OUTPUT«Bool::False» | |||
masak | Pugs++ | ||
pugs: Whatever | 19:54 | ||
p6eval | pugs b927740: OUTPUT«*** No such subroutine: "&Whatever" at /tmp/j3xe4pLwuG line 1, column 1 - line 2, column 1» | ||
masak | :P | ||
skids | Hrm, neither is "class A {...}" explicitly specced to allow idempotent predeclarations in S12. | 19:57 | |
19:59
rindolf left
|
|||
masak | skids: I see where you're coming from here. maybe that should be allowed, yes. | 20:02 | |
dalek | p/qbootstrap: 6357dde | jnthn++ | src/QRegex/Cursor.nqp: Optimize match object construction a little. |
20:03 | |
p/qbootstrap: f2f8e54 | jnthn++ | src/NQPQ/Actions.pm: Handle integer literals a bit less stupidly, which gives a ~15% improvement on !cursor_start, which is currently a hot path. |
|||
p/qbootstrap: 83b1889 | jnthn++ | src/QRegex/Cursor.nqp: Cache the protoregex table, to save re-computing it every time. Can save quite a bit of time. |
|||
moritz | does qbootstrap pass its tests for you, jnthn? | 20:04 | |
20:05
zjmarlow left
20:06
zjmarlow joined
|
|||
tadzik | you know when jnthn does party when you see '\d+%' in commit log | 20:06 | |
masak | profiling party! \o/ | 20:08 | |
20:08
alvis joined
|
|||
colomon | \o/ | 20:08 | |
20:08
mj41 joined
20:09
GlitchMr joined
20:11
zjmarlow_ joined,
zjmarlow left
|
|||
masak .oO( In Soviet Russia, the Party profiles YOU! ) | 20:12 | ||
20:12
fsergot left
|
|||
benabik | ow... | 20:13 | |
20:14
wolfman2000 left,
zjmarlow joined
20:16
lichtkind left
|
|||
jnthn | moritz: No, qbootstrap didn't reach all passing yet | 20:16 | |
kshannon++ is getting there though ;) | |||
20:17
zjmarlow_ left
|
|||
[Coke] | So, what's the general process here for update the bootstrap? | 20:17 | |
dalek | kudo/staged-settings: 390b435 | moritz++ | / (3 files): move Date ops to core2 fails during compilation of CORE with "rtype not set" |
||
kudo/staged-settings: 664f46b | jnthn++ | src/core/control.pm: Work around pir::... limitation. |
|||
kudo/staged-settings: ab92aff | jnthn++ | src/Perl6/ (2 files): Fix for the 'Sub doesn't have an SC' issue - CORE and CORE2 both compile now. |
|||
kudo/staged-settings: 8e09ea9 | moritz++ | tools/build/Makefile.in: move all temporal stuff to the second setting |
|||
moritz | jnthn: oh, you found a mini^Whelper :-) | ||
benabik | … Is the NQPClassHOW cache on a per-class or per-object basis? | 20:18 | |
20:18
zjmarlow left,
zjmarlow joined
|
|||
moritz dearly hopes it's per class | 20:18 | ||
jnthn | Per class | ||
(Since the cache is stored as an attribute in the meta-object) | 20:19 | ||
Note that it's not shared by subclasses | |||
moritz | .OO( caching with class ) | ||
benabik | Ah, the protoregex table is based on the methods of the class. Now I see how it hangs together. | 20:20 | |
(Thought it was odd to do class-level caching of the result of a method.) | |||
20:20
donri left
20:21
bluescreen10 left
|
|||
moritz | in the staged-settings branch, compilation of the first setting now takes "only" about 1.45GB of virtual memory, as upposed to about 1.7GB in nom | 20:21 | |
20:22
carlin joined
|
|||
[Coke] | rakudo: my @multidim[0..3; 0..1] | 20:22 | |
p6eval | rakudo 38165a: OUTPUT«===SORRY!===Shaped variable declarations are not yet implemented at line 1, near ""» | ||
jnthn | shop & | ||
[Coke] | rakudo: use Test; eval_lives_ok('my @multidim[0..3; 0..1]', "multidimension array"); | 20:24 | |
p6eval | rakudo 38165a: OUTPUT«not ok 1 - multidimension array# Error: Shaped variable declarations are not yet implemented at line 1, near ""» | ||
[Coke] | rakudo: use Test; eval_lives_ok('my @multidim[0..3; 0..1]', "multidimension array"); ok(eval('@array11[2,0] = 12'), "push the value to a multidimension array"); | ||
p6eval | rakudo 38165a: OUTPUT«not ok 1 - multidimension array# Error: Shaped variable declarations are not yet implemented at line 1, near ""===SORRY!===Variable @array11 is not predeclared at line 1, near "[2,0] = 12"» | 20:25 | |
sorear | [Coke]: Can we help with anything? | ||
[Coke] | rakudo: use Test; my @array11 is shape(2,4); ok(eval('@array11[2,0] = 12'), "push the value to a multidimension array"); | ||
p6eval | rakudo 38165a: OUTPUT«ok 1 - push the value to a multidimension array» | ||
20:25
zjmarlow left
20:26
zjmarlow joined
|
|||
[Coke] | that pass seems dubious. | 20:26 | |
moritz | rakudo: my @a is foo(3, 4); | ||
p6eval | rakudo 38165a: ( no output ) | ||
moritz | indeed | ||
20:26
LlamaRider left
|
|||
moritz | [Coke]: note that eval doesn't catch exceptions anymore; many tests still assume that | 20:26 | |
[Coke] | shouldn't that test be for @array11[2;0], anyway? | 20:28 | |
masak | yeah. | 20:30 | |
dalek | ast: a5d2261 | coke++ | S02-types/ (4 files): rakudo (auto)unfudge also, relocate a badly placed pugs directive. |
||
20:30
RobiX joined
|
|||
dalek | ast: 92071c8 | coke++ | S02-types/array.t: use multdim syntax as (prolly) intended. |
20:32 | |
20:32
zjmarlow left
|
|||
[Coke] | no passes out of that, just a few skip->todos. | 20:33 | |
20:33
zjmarlow joined
20:34
xinming_ joined,
xinming joined
20:36
bluescreen10 joined,
fsergot joined
20:37
xinming_ left,
xinming left,
zjmarlow_ joined,
zjmarlow left,
birdwindupbird left
20:43
zjmarlow__ joined,
zjmarlow_ left
20:45
skids left
20:47
zjmarlow_ joined,
zjmarlow__ left
20:49
RobiX left
20:51
zjmarlow_ left,
zjmarlow_ joined
20:56
Trashlord left
20:57
RobiX joined
20:58
zjmarlow joined,
zjmarlow_ left
|
|||
colomon | niecza: subset Even of Int where { $_ %% 2 }; my $a = Even.new; say $a.perl | 20:58 | |
p6eval | niecza v13-192-g1c4a771: OUTPUT«0» | ||
tadzik | niecza: subset Odd of Int where { $_ !% 2 }; my $a = Odd.new; say $a.perl | 20:59 | |
p6eval | niecza v13-192-g1c4a771: OUTPUT«===SORRY!===Cannot negate % because multiplicative operators are not iffy enough at /tmp/F9TuV5fjgt line 1:------> subset Odd of Int where { $_ !%⏏ 2 }; my $a = Odd.new; say $a.perlParse failed» | ||
tadzik | niecza: subset Odd of Int where { $_ !%% 2 }; my $a = Odd.new; say $a.perl | ||
p6eval | niecza v13-192-g1c4a771: OUTPUT«0» | ||
tadzik | odd | ||
benabik | "are not iffy enough"? | 21:00 | |
21:01
daxim left
|
|||
tadzik | hmm | 21:01 | |
masak | tadzik: it's %% | ||
tadzik | perl6: subset Odd of Int where { $_ !%% 2 }; my $a = Odd.new; say $a ~~ Odd | ||
p6eval | pugs b927740: OUTPUT«***  Unexpected "!%%" expecting operator or "}" at /tmp/kjW4e2UpLh line 1, column 30» | ||
..rakudo 38165a: OUTPUT«You cannot create an instance of this type in method bless at src/gen/CORE.setting:568 in method new at src/gen/CORE.setting:555 in block <anon> at /tmp/NN2FVihZTe:1 in <anon> at /tmp/NN2FVihZTe:1» | |||
..niecza v13-192-g1c4a771: OUTPUT«Bool::False» | |||
masak | tadzik, benabik: "iffy" means something like "returning a result which is at least boolean in nature, but maybe also deeper (such as a Match object)" | 21:02 | |
tadzik: oh, and instantiating subtypes makes no sense :) | |||
21:03
zjmarlow left
|
|||
masak | likely it amounts to solving the halting problem. | 21:03 | |
21:03
zjmarlow joined
|
|||
colomon | masak: I was trying it because niecza let's you do it. | 21:03 | |
masak | maybe it could instantiate it, if the base type's default belongs to the subtype. | ||
but it should definitely protest if it doesn't. | 21:04 | ||
benabik | I suppose it should call the base class's .new and die if the result doesn't match the subset… | ||
masak | for a long time Rakudo didn't protest. | ||
jnthn | I'd rather we just say no :) | ||
masak | saying no is the conservative, 6.0.0 thing to do :) | ||
colomon | subset Person of Hash where { .keys.sort ~~ <firstname lastname> } | 21:05 | |
lives_ok { my Person $p = { :firstname<Alpha>, :lastname<Bravo> } }, | |||
'can create subset of hash with where'; | |||
does that test make any sense? | |||
jnthn | Looks OK to me at first glance | 21:06 | |
colomon | what does .keys.sort ~~ <firstname lastname> mean? | ||
masak | colomon: that the keys should be that, in that order. | 21:07 | |
jnthn | That the hash should have those two keys | ||
colomon | ah | ||
masak recognizes that code as his own! | |||
21:07
zjmarlow_ joined
|
|||
masak | I am an indirect author of some tests in the spectest suite, it seems :) | 21:07 | |
jnthn recognizes it from a ticket :) | 21:08 | ||
21:09
zjmarlow__ joined,
zjmarlow_ left
|
|||
colomon | niecza: subset Person of Hash where { .keys.sort ~~ <firstname lastname> }; my Person $p = { :firstname<Alpha>, :lastname<Bravo> }; | 21:09 | |
p6eval | niecza v13-192-g1c4a771: OUTPUT«Potential difficulties: $p is declared but not used at /tmp/MKPbS1T633 line 1:------> rt ~~ <firstname lastname> }; my Person ⏏$p = { :firstname<Alpha>, :lastname<BravUnhandled exception: Nominal type check failed for scalar store;… | ||
colomon | niecza: my %h = :firstname<Alpha>, :lastname<Bravo>; say %h.keys.sort ~~ <firstname lastname> | 21:10 | |
p6eval | niecza v13-192-g1c4a771: OUTPUT«Bool::False» | ||
21:10
zjmarlow left
|
|||
colomon | bug in Parcel.ACCEPTS, maybe? | 21:10 | |
21:12
Trashlord joined,
localhost joined
|
|||
masak | niecza: my %h = :firstname<Alpha>, :lastname<Bravo>; say %h.keys.sort.perl | 21:12 | |
p6eval | niecza v13-192-g1c4a771: OUTPUT«("firstname", "lastname").list» | ||
masak | seems that way. | ||
sounds like an opportunity for another spectest :) | |||
21:13
zjmarlow joined,
zjmarlow__ left
|
|||
sorear | I don't beleive niecza has a Parcel.ACCEPTS at all | 21:14 | |
ergo, it cannot be buggy :) | |||
(Parcels have ACCEPTS inherited from Any) | |||
colomon | ah, but its lack can be a bug, no? :) | ||
sorear | o/ masak, colomon | 21:15 | |
colomon | \o | ||
[Coke] wonders where the next set of passing niecza spectests will come from. | 21:16 | ||
masak .oO( Outer Space ) | |||
sorear | What are the blockers for stealing Rakudo's Temporal implementation? | ||
colomon | it's long | ||
colomon thought about stealing it last week.... | |||
sorear | ah | 21:17 | |
sorear thinks long stuff should go in modules | 21:18 | ||
21:18
GlitchMr left
|
|||
sorear needs to come up with some way to present the illusion of Temporal-in-the-setting while actually not | 21:18 | ||
what is the limit to what should appear in the setting? | 21:20 | ||
TimToady clearly wants a large setting, "do not force the user to predeclare the obvious" | |||
and I'm sure there's some way to magically make half of CPAN appear in CORE:: | |||
but is that really desirable? | |||
masak | we want to be everyone's reinvented wheel. | 21:21 | |
sorear | masak: I think Easter might come early this year. :) | 21:22 | |
[Coke] | Easter? | ||
21:23
zjmarlow left
|
|||
[Coke] | (as opposed to Christmas?) | 21:23 | |
21:23
zjmarlow joined
|
|||
sorear waits to see if masak remembers | 21:24 | ||
masak | dang it... I saw some reference to Easter the other day as well... :) | 21:25 | |
[Coke] also. | |||
masak | it's probably something I *should* remember. | 21:26 | |
jnthn also and was confused then :) | |||
masak | wait, don't say anything. | ||
jnthn | anything | ||
oh, sorry | |||
masak | I'll search the IRC logs and then appear very smart for remembering :P | ||
sorear | masak: Dec 23 | ||
21:27
bluescreen10 left
|
|||
[Coke] | had just found that reference. | 21:27 | |
ashleydev | what reference? | 21:28 | |
masak | :D | ||
wonderful. | |||
irclog.perlgeek.de/perl6/2011-12-23#i_4869598 | |||
[Coke] | niecza: say 18580-17965 | ||
p6eval | niecza v13-192-g1c4a771: OUTPUT«615» | ||
21:28
benabik_ joined
|
|||
ashleydev | early Easter is good! | 21:29 | |
[Coke] | colomon, sorear: here's the highest # of tests of remaining unrun files: | ||
gist.github.com/1591315 | |||
masak | overtaking Rakudo is great and all, but I find I want more... | ||
colomon | niecza: subset Naht of Str where { /^[isnt|arent|amnot|aint]$/ }; say "amnot" ~~ Naht | ||
p6eval | niecza v13-192-g1c4a771: OUTPUT«Use of uninitialized value in string context at /home/p6eval/niecza/lib/CORE.setting line 960 (warn @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 186 (Mu.Str @ 10)  at <unknown> line 0 (ExitRunloop @ 0)  at /home/p6eval/niecza/lib/CORE.settin… | 21:30 | |
masak | I want good concurrency primitives. I want object hashes. I want macros. I want mutable grammars. | ||
colomon | oh wise ones: does that subset I just used look right? | ||
masak | oh, and *I want S09*! :) | 21:31 | |
clearly I need to write a blog post about all the great things we don't have yet. | |||
colomon is planning a pi summary blog post talking about the awesome stuff we have now | |||
masak | colomon: I see nothing obviously wrong. | ||
21:31
jupp left
|
|||
colomon | masak: what does it mean to have a closure which is just a regex? | 21:31 | |
21:32
benabik left
|
|||
colomon | niecza: say { /^[isnt|arent|amnot|aint]$/ }() | 21:32 | |
p6eval | niecza v13-192-g1c4a771: OUTPUT«{ ... }» | ||
colomon | niecza: say { /^[isnt|arent|amnot|aint]$/ }("amnot") | ||
p6eval | niecza v13-192-g1c4a771: OUTPUT«{ ... }» | ||
colomon | niecza: say { /^[isnt|arent|amnot|aint]$/ }("amnot").perl | ||
p6eval | niecza v13-192-g1c4a771: OUTPUT«{ ... }» | ||
colomon | niecza: say { /^[isnt|arent|amnot|aint]$/ }("amnot").WHAT | 21:33 | |
p6eval | niecza v13-192-g1c4a771: OUTPUT«Regex()» | ||
21:33
benabik_ left
|
|||
[Coke] | niecza: say { /^[isnt|arent|amnot|aint]$/.ACCEPTS($^a) }("amnot"); | 21:33 | |
p6eval | niecza v13-192-g1c4a771: OUTPUT«#<match from(0) to(5) text(amnot) pos([].list) named({}.hash)>» | ||
dalek | ast: 85deb42 | (Solomon Foster)++ | S02-types/subset.t: Fudge for niecza. |
21:35 | |
21:36
molaf left
|
|||
sorear | colomon: It doesn't look quite right to me | 21:38 | |
colomon | where { /^[isnt|arent|amnot|aint]$/ } you mean? | 21:39 | |
sorear | colomon: That closure returns the regex, which means that the subset type check itself calls Regex.Bool, but the subset type check is happening in ClassHOW.does, where $_ isn't bound to anything useful | ||
It could be made to work, but it'd be easier to change it to where /.../ or where { m/.../ } | |||
colomon: Yes. | 21:40 | ||
21:40
zjmarlow_ joined
|
|||
colomon | the code is from roast, and it doesn't work in either niecza or rakudo | 21:40 | |
sorear | +1 to changing it, then | 21:41 | |
21:41
zjmarlow_ left
|
|||
[Coke] | +1 | 21:41 | |
21:42
zjmarlow left
|
|||
masak | +1 | 21:42 | |
oh, of course it should be /.../ | |||
didn't see that. | |||
isn't that example from the spec? | |||
colomon | I dunno. | 21:43 | |
just deleted that test from my local copy. | |||
but I'll take a minute or two before pushing it, just in case... | |||
colomon is making noms and spectesting.... | 21:44 | ||
dalek | ecza: 22d2c18 | (Solomon Foster)++ | lib/CORE.setting: Fix Num.gist so it doesn't add unnecessary "e0"s. |
21:46 | |
ecza: f409a86 | (Solomon Foster)++ | t/spectest.data: Turn on S02-types/subset.t. |
|||
21:46
snearch joined
21:51
spine left
|
|||
dalek | ast: 8d08f6f | (Solomon Foster)++ | S02-types/subset.t: Remove where { /^[isnt|arent|amnot|aint]$/ } test because no one quite knows how it should work. |
21:54 | |
21:56
skids joined
21:58
benabik joined
21:59
JustMe04_ joined
|
|||
masak | good night, #perl6. dream of Easter coming early this year. | 22:03 | |
22:05
mj41 left
|
|||
felher | o/ masak | 22:07 | |
22:07
kaare_ left,
kaare_ joined
22:08
donri joined
22:16
zjmarlow_ joined
22:20
kaare_ left,
kaare_ joined
22:23
zjmarlow__ joined,
zjmarlow_ left,
Lothar joined
22:26
zjmarlow_ joined,
zjmarlow__ left
22:28
snearch left
22:32
RobiX left
|
|||
dalek | ast: 7e50122 | (Solomon Foster)++ | S12-subset/subtypes.t: Add a couple sensible tests. Fudge for niecza. |
22:37 | |
22:37
zjmarlow_ left
22:38
kaare_ left
22:43
RobiX joined,
thou left
22:44
fsergot left,
jupp joined
22:45
panterax_ joined
22:47
bkolera left,
leprevost_ joined,
hundskatt left
22:48
panterax left
22:49
leprevost left
|
|||
skids ponders bottom of S13. | 22:53 | ||
22:54
hundskatt joined
22:55
LlamaRider joined
|
|||
skids | If you have both Fish.(Terrier $t) and Terrier.Fish(), what about situations like as/of return type or coercive types like sub foo (Fish(Terrier) $t). Which gets called? Still TBD? | 22:56 | |
sorear | no clue. | 22:57 | |
22:58
RobiX left
22:59
nornagest left
|
|||
dalek | ecza: 392be60 | (Solomon Foster)++ | t/spectest.data: Turn on S12-subset/subtypes.t. |
23:09 | |
23:12
alester left
|
|||
colomon | !tim | 23:18 | |
23:18
PacoAir left
|
|||
dalek | ecza: 08f8069 | (Solomon Foster)++ | t/spectest.data: Turn on S12-subset/multi-dispatch.t. |
23:20 | |
colomon | So, Test::Util (in roast) calls 'shell'. Is shell even spec'd for p6? is there some reasonable way we can make this work on niecza? | 23:27 | |
afk # bedtime for H | 23:28 | ||
23:29
jupp1 joined,
jupp left
23:31
Chillance left
23:32
icwiener left
23:33
jupp joined,
jupp1 left
|
|||
[Coke] | grok shell | 23:33 | |
23:34
jupp1 joined,
jupp left
|
|||
[Coke] | looks like it's in S29 | 23:34 | |
23:39
wolfman2000 joined
|
|||
sorear | shell is easy. | 23:44 | |
on Unix at least | |||
as far as I can tell, there is literally no way to make &run work on Niecza without custom C code | |||
23:49
tokuhirom joined
23:57
donri left
23:58
bluescreen10 joined
|