»ö« 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. |
|||
sorear | TimToady: I like the way LALR parsers can always tell you the exact location of the error and the set of expected symbols. | 00:00 | |
hello and welcome, Araq | |||
Araq | thanks | ||
00:00
att joined
|
|||
Araq | unfortunately I have to sleep soon | 00:00 | |
sorear dives into backlog for more on Araq | 00:01 | ||
Araq | maybe I'll come up with another good question before that though :-) | ||
TimToady | sometimes good questions have good answers...sometimes the best answer is "huh...hmm..." :) | 00:02 | |
00:03
havenn joined
00:04
jferrero left,
jferrero joined
|
|||
sorear | Araq: I'm back - that didn't take long | 00:05 | |
`patch` | has anyone started work on Str.normalize and the normalization forms? | 00:08 | |
Araq | so if I have operators * and + and then introduce *+ as an operator the longest match rule disambiguates *+ right? | 00:11 | |
TimToady | correct | ||
Araq | what if I don't have a *+ operator? is *+ parsed as two tokens or is it an error? | 00:12 | |
TimToady | well, it would either be a place where those two tokens make sense in that order, or it'd be an error | ||
perl6: say 2 *+ 5 | 00:13 | ||
p6eval | pugs b927740, rakudo 3ca6e5, niecza v14-97-gacd7da0: OUTPUT«10» | ||
TimToady | perl6: sub infix:<*+> ($a,$b) { $a * $b + $b }; say 2 *+ 5 | 00:14 | |
p6eval | niecza v14-97-gacd7da0: OUTPUT«15» | ||
..pugs b927740, rakudo 3ca6e5: OUTPUT«10» | |||
TimToady | pugs is a bit behind the times | ||
Araq | how do sigils and prefix operators get disambiguated? | ||
TimToady | sigils are consider part of the term, for the most part | 00:15 | |
EXPR never sees them as prefixes | |||
note that the LTM knows it's looking at both terms and prefixes in the same alternation | 00:16 | ||
so it's not really terribly important which way things are classified | |||
00:17
RandomMonkey joined
|
|||
TimToady | the only difference between a term and a prefix is what they expect after them | 00:17 | |
Araq | I can't follow. Do you mean they are basically only differentiated in the semantic checking phase? | 00:18 | |
00:18
RandomMonkey left
|
|||
TimToady | the 'termish' rule will look for a sequence of prefixes followed by a single term followed by a sequence of postfixes | 00:19 | |
so a prefix keeps looking for prefixes and terms, while a term will start looking for postfixes | |||
EXPR mostly only cares about "termish" vs "infixish" | 00:20 | ||
Araq | ok so !ident and $ident are the same | ||
(where ! is a prefix operator and $ is a sigil) | |||
TimToady | don't understand the questoion | ||
don't understand 'the same' | |||
Araq | I mean syntactically there are the same | ||
I mean the parser treats ! like $ | 00:21 | ||
TimToady | the EXPR method could expect to see either of those at 'termish' time | ||
Araq | yeah that's what I mean | ||
TimToady | but ! is prefix:<!>, while $ is the <sigil> part of <variable> | ||
but they all get |'d together into a single alternation, as far as LTM is concerned | 00:22 | ||
Araq | hm ok, but what if I have an operator $ ? | ||
or is that not allowed? | |||
TimToady | if it's ambiguous, one or the other will go first; the PEG rules are pretty detailed | 00:23 | |
Araq | perl6: sub infix:<$>($a) { $a; } | ||
p6eval | niecza v14-97-gacd7da0: OUTPUT«Potential difficulties: &infix:<$> is declared but not used at /tmp/Eq4gTqbDHL line 1:------> sub infix:<$>⏏($a) { $a; }» | ||
..pugs b927740, rakudo 3ca6e5: ( no output ) | |||
Araq | perl6: $4 | 00:24 | |
p6eval | pugs b927740, rakudo 3ca6e5, niecza v14-97-gacd7da0: ( no output ) | ||
TimToady | no state | ||
Araq | should have used 'prefix'? | 00:25 | |
perl6: sub prefix:<$>($a) { $a; } | |||
TimToady | definitions don't carry over | ||
p6eval | rakudo 3ca6e5: OUTPUT«===SORRY!===CHECK FAILED:Undefined routine '&a' called (line 1)» | ||
..niecza v14-97-gacd7da0: OUTPUT«===SORRY!===Undeclared routine: 'a' used at line 1Potential difficulties: $a is declared but not used at /tmp/XzoGhOX3Le line 1:------> sub prefix:<$>(⏏$a) { $a; }Unhandled exception: Check failed at /home/… | |||
..pugs b927740: ( no output ) | |||
Araq | perl6: sub prefix:<$>($a) { return $a; } $5; | ||
p6eval | niecza v14-97-gacd7da0: OUTPUT«===SORRY!===Strange text after block (missing comma, semicolon, comment marker?) at /tmp/6aEmsQTN4E line 1:------> sub prefix:<$>($a) { return $a; }⏏ $5;Other potential difficulties: $a is declared but not used a… | ||
..pugs b927740: OUTPUT«*** No such subroutine: "&a" at /tmp/6iVFbMDWFF line 1, column 29-31» | |||
..rakudo 3ca6e5: OUTPUT«===SORRY!===Confusedat /tmp/RF7x2Vb3AI:1» | |||
TimToady | obviously it's preferring your operator there :) | ||
perl6: sub prefix:<$>($a) { ::('$a') }; say $5 | 00:27 | ||
p6eval | pugs b927740: OUTPUT«pugs: Internal error: Invalid sigil ":$"Please file a bug report.» | ||
..niecza v14-97-gacd7da0: OUTPUT«Potential difficulties: $a is declared but not used at /tmp/YRhvM5xNvj line 1:------> sub prefix:<$>(⏏$a) { ::('$a') }; say $55» | |||
..rakudo 3ca6e5: OUTPUT«5» | |||
TimToady | there you go | ||
Araq | lots of fun ahead of me :-) | 00:28 | |
but ugh, it's too late already | |||
thanks for the answers | |||
good night | |||
TimToady | rest well | ||
00:29
Chillance left,
Araq left
|
|||
TimToady | somehow I don't think Araq lives in the Cocos Islands :) | 00:29 | |
00:36
alester left
00:41
noam_ left
01:01
havenn left
01:07
jaldhar joined
01:12
scott_ joined
01:13
scott_ is now known as Guest43686,
tokuhirom joined
01:20
aloha left,
aloha joined
|
|||
sorear | so, what should I put in the announcement about pmurias' P5 stuff? | 01:26 | |
it seems he has missed the submission deadline for documentation | |||
and I don't understand it well enough to write up anything | |||
colomon | P5 made progress? | 01:28 | |
the art of the vague | 01:29 | ||
sorear | sounds good | ||
01:39
NamelessTee left
01:40
wooden left
|
|||
dalek | ecza: f52f360 | sorear++ | docs/announce.v15: Add an announce.v15 draft |
01:41 | |
01:42
wolfman2000 joined
01:43
rafl joined
01:46
havenn joined
|
|||
TimToady | looks good | 01:49 | |
colomon | +1 | 01:54 | |
lichtkind | good night | 01:56 | |
01:56
lichtkind left
01:58
kmwallio joined
|
|||
dalek | ecza: 39faf4e | sorear++ | FETCH_URL: Update bootstrap to v15 |
02:14 | |
02:21
PacoAir left
02:29
baest joined
02:33
tokuhirom left
02:40
ascent_ joined
|
|||
sorear | who is Miroslav Silovic? | 02:41 | |
02:46
havenn left
02:49
whiteknight left
02:54
ribayr left
|
|||
dalek | ast: 28ef8dc | coke++ | / (43 files): pugs fudges |
02:57 | |
gs.hs: 725cddd | coke++ | t/spectest.data: run fudged tests |
|||
02:57
kmwallio left
03:00
woosley joined
|
|||
[Coke] | "pugs" , 5497, 6, 2174, 583, 8259, 23561 | 03:01 | |
pugs (27.07%); if nothing else changes by the run tomorrow. | |||
colomon | :) | 03:02 | |
dalek | gs.hs: 8d195b3 | coke++ | t/spectest.data: run tests |
03:12 | |
03:12
xinming left
03:14
xinming joined
03:19
orafu left,
orafu joined
03:20
xinming left
03:21
lue left
03:22
am0c left
03:31
baest left
03:32
xinming joined
03:38
sftp left
03:41
mucker left,
baest joined
03:59
havenn joined
04:04
Patterner left,
Guest43686 left
04:08
am0c joined
04:11
Psyche^ joined,
Psyche^ is now known as Patterner
04:31
havenn left
04:33
havenn joined
04:42
kaleem joined
04:54
Jerkwad left
04:55
kaleem left
05:10
birdwindupbird joined
05:11
mucker joined
05:15
skids left
05:22
am0c_ joined
05:24
am0c left
05:28
lestrrat left
05:29
lestrrat joined
05:33
thou left
05:35
am0c_ left,
noam joined
05:36
kaleem joined
05:45
am0c_ joined
05:48
retupmoca left
05:56
havenn left,
havenn joined
05:58
am0c_ left
06:04
birdwind1pbird joined
|
|||
TimToady | rosettacode.org/wiki/Arithmetic-geo...ean#Perl_6 | 06:10 | |
TimToady wonders if we should have a fixed-point target for ... to aim at | 06:13 | ||
06:18
birdwind1pbird left
|
|||
sorear | just so long as nobody confuses it with Haskell's fix, which takes fixed points in an entirely different way | 06:21 | |
geekosaur has to admit that was how he read it initially | 06:27 | ||
(and tried to apply it to the ... operator.) | |||
06:29
samlh joined
06:30
wolfman2000 left
06:33
Alias left
06:34
Alias joined
|
|||
moritz | o/ | 06:45 | |
sorear | /o moritz | 06:51 | |
07:03
noam left
07:04
noam joined
|
|||
samlh | Yay: gist.github.com/1930305 | 07:09 | |
still need to figure out a way to hook up seeking and pausing | 07:10 | ||
moritz | cool | 07:12 | |
samlh++ | |||
samlh | moritz: been a long time lurker, probably time to get out of the woodwork | 07:13 | |
07:14
plobsing left
|
|||
sorear | o/ samlh | 07:14 | |
moritz | samlh: welcome in the unlurk-world :-) | ||
s/in/to/ | 07:15 | ||
samlh | sorear: \o | 07:17 | |
sorear: thanks for a nice implementation :) | |||
moritz: my final goal is a (lossless) mp3 splitter gui, I'll see how it goes | 07:18 | ||
sorear: btw, run and qx apparently don't run on windows (no big deal) | 07:19 | ||
07:20
noam_ joined
|
|||
sorear | samlh: for run that's known, but qx *should* work | 07:20 | |
if you're having qx issues on Windows bring it up with colomon++ | 07:21 | ||
samlh | sorear: ok, thanks | ||
moritz | sorear++ # niecza v15 | ||
sorear | samlh: btw, you should be able to use .CLR::System::IDisposable::Dispose now instead of .dispose-hack | 07:22 | |
07:22
noam left
|
|||
sorear | (not that it's any shorter or faster *sigh* but at least it's less special-casey) | 07:22 | |
samlh | ah, cool | 07:25 | |
qx error gist.github.com/1930380 | |||
moritz | phenny: tell colomon about gist.github.com/1930380 (qx on windows errors out, samlh++ discovered it) | 07:28 | |
phenny | moritz: I'll pass that on when colomon is around. | ||
07:56
havenn left
07:57
kaleem left,
kaleem joined
08:07
noam joined
08:08
noam_ left
08:16
plobsing joined
08:34
mj41 joined
08:37
havenn joined
08:39
sisar joined
|
|||
sisar | moritz: there ? | 08:39 | |
phenny | sisar: 27 Feb 17:50Z <moritz> tell sisar I've turned our session into two commits, github.com/rakudo/rakudo/commit/d696855f41 and github.com/perl6/roast/commit/52f6db64fc | ||
moritz | sisar: yes | 08:40 | |
sisar | so i took up line 47 in Hash.pm | 08:41 | |
moritz | ok | 08:42 | |
sisar | the method is STORE but 'is hidden_from_backtrace' will that be a problem somehow? | ||
moritz | no, not a problem | 08:43 | |
sisar | (to introduce an exception there) | ||
ok | |||
moritz | it just means that the backtrace doesn't list it by default, but the calling location | ||
nom: sub f() { my %h = 1 }; f(); | |||
p6eval | nom 3ca6e5: OUTPUT«Odd number of elements found where hash expected in method STORE at src/gen/CORE.setting:5546 in sub f at /tmp/qjBIod6o9T:1 in block <anon> at /tmp/qjBIod6o9T:1» | ||
moritz | uhm, and it doesn't even work :( | ||
sisar | you were expecting 'in method STORE' to be missing from the error? | 08:44 | |
moritz | right | ||
sisar | anything else i need to lookout for or is this a straight forward exception with only 'message' as the only method ? | 08:46 | |
moritz | it's straight forward | ||
08:47
havenn left
|
|||
sisar | i named my clas as X::Hash::Store , or should i use caps: STORE ? | 08:47 | |
moritz | just remember to add the stub for the exception | ||
sisar will remember | 08:48 | ||
moritz | sisar: I'd suggest X::Hash::OddNumber | ||
or X::Hash::Store::OddNumber | |||
sisar | ok, will use X::Hash::Store::OddNumber | 08:49 | |
moritz looks forward to seeing a first patch from sisar++ | |||
sisar | .oO ( i went by the name of fasad earlier, ergo, I already have a rakudo commit :p) | 08:51 | |
fasad++ | |||
moritz: you missed the anouncement of my nick change | 08:52 | ||
moritz | sisar: or simply forgot. ETOOMANYNICKSAROUNDHERE :-) | 08:53 | |
08:54
fhelmberger_ joined,
fhelmberger_ left
08:58
havenn joined
|
|||
dalek | ecza: d19c478 | (Solomon Foster)++ | lib/Builtins.cs: Try to be a little more careful about array boundaries, in hopes of curing the Windows qx issue. |
09:07 | |
colomon | samlh: I just pushed a patch which may fix the qx issue. My Windows box is at the shop for repairs, so I can't test it. BTW, are you using mono or .NET? | 09:09 | |
phenny | colomon: 07:28Z <moritz> tell colomon about gist.github.com/1930380 (qx on windows errors out, samlh++ discovered it) | ||
moritz | colomon++ | ||
colomon | samlh: btw, run still won't work -- I will port the qx code to run once we've got qx working properly. | 09:10 | |
samlh | colomon: .net | 09:13 | |
colomon: thanks for the fix! I just need to get a compilation env up now :) | |||
btw, I've been testing github.com/sorear/niecza/issues/59 - the original bug is gone, just have to comment out a dispose call | 09:15 | ||
colomon: have any ideas? | |||
09:15
havenn left
|
|||
sorear | samlh: interesting - probably some subtle difference in reflection behavior | 09:17 | |
samlh: could you gist a run of sierpinski after 'set NIECZA_CLR_TRACE=1' or however that's spelled now? | 09:19 | ||
(produces 4278 lines of output here; I only *really* care about the ones with Dispose in them) | |||
although it looks like more context is needed than just what "grep" gives | 09:20 | ||
colomon heads back to bed... | 09:26 | ||
09:26
woosley left
|
|||
jnthn | morning | 09:30 | |
samlh | sorear: gist updated gist.github.com/1931425 | ||
09:39
thou joined,
thou left
|
|||
sisar | moritz: i have access to the rakudo/nqp dir only, can you give me full access to rakudo | 09:40 | |
(commit access) | |||
moritz | sisar: I'm sorry, we don't hand out commit bits for rakudo so freely :/ | 09:41 | |
sisar: you'll have to make a pull request | |||
sisar | moritz: ok, will do | ||
moritz | sisar: after a few good patches, you can submit a CLA ("Contributor's License Agreement"), and then the rakudo devs will decide over giving out a commit bit | 09:42 | |
sisar | ok | ||
can i make a pull request from my terminal ? | |||
moritz | sisar: not with the git built-ins, but some clever folks have written extensions that allow that: www.splitbrain.org/blog/2011-06/19-...l_requests | 09:43 | |
09:43
dakkar joined
|
|||
sisar | moritz: if i understand it correctly, that extension is for branch oweners to manage pull requests, not for contributors to make a pull request | 09:47 | |
moritz | oh :/ | ||
then I should read more careful in future | |||
sisar | moritz: np. i'll fork on github :) | 09:48 | |
sorear -> sleep | |||
09:48
proller_ joined,
proller joined,
proller left
|
|||
samlh -> sleep too | 09:49 | ||
moritz | oh, defunkt.io/hub/ can do command line pull requests | 09:50 | |
09:54
noam left,
proller_ left
09:55
noam joined
|
|||
sisar | moritz: github.com/rakudo/rakudo/pull/59 | 10:01 | |
moritz | \o/ | 10:02 | |
dalek | kudo/nom: fc96b6d | (Siddhant Saraf)++ | src/core/Exceptions.pm: add class X::Hash::Store::OddNumber |
||
kudo/nom: 584be63 | (Siddhant Saraf)++ | src/core/Hash.pm: passing an odd number of elements while hash creation now throws X::Hash::Store::Oddnumber |
|||
kudo/nom: 83b15cd | moritz++ | src/core/ (2 files): Merge pull request #59 from Siddhant/nom typed exception X::Hash::Store::OddNumber |
|||
sisar | i'll write a test soon | 10:03 | |
for now, afk | |||
moritz++ | |||
moritz | sisar++ | ||
10:03
grondilu joined
|
|||
dalek | ar: 419a68c | jnthn++ | Makefile: Bump version numbers. |
10:05 | |
ar: 0a79ced | jnthn++ | skel/docs/announce/2012.02: Add first draft of 2012.02 announce. |
|||
ar: f41027b | jnthn++ | skel/README: README version number bump. |
|||
10:05
lestrrat left
|
|||
grondilu | I removed the constraints in my sha256 implementation and it's *way* faster. About 15 seconds against 5 minutes! I guess constraints are much too slow. s0.barwen.ch/~grondilu/Crypto.pm6 | 10:05 | |
phenny | grondilu: 27 Feb 18:49Z <TimToady> tell grondilu if you remove the unnecessary 'where' constraints, your sha256 runs 20 times faster | ||
grondilu: 27 Feb 18:51Z <TimToady> tell grondilu if you really want them, change them to 'where ^33' and it still runs 15 times faster | |||
grondilu | TimToady: indeed I had noticed that yesterday as well. | 10:06 | |
jnthn | Review and tweaks welcome, as are suggestions of any extra modules that should go into the Star release. | ||
moritz reviews | |||
10:06
lestrrat joined
|
|||
jnthn | Away for ~15 mins | 10:06 | |
grondilu | I also had a few perl6 idioms :) | ||
moritz | grondilu: if you want to optimize for rakudo, you can use native ints for the loop variables | 10:07 | |
but then it won't run in neicza anymore | 10:08 | ||
*niecza | |||
and you ahve to write $i = $i + 16 instead of $i += 16 for now | |||
jnthn: star release announcement looks good | 10:09 | ||
grondilu | I noticed I can't use the module with the 'use' mechanism for some reason. It's not implemented or something? | ||
moritz | grondilu: what's the error you get? | 10:10 | |
grondilu: you'll need to export some subs for it to be useful | |||
grondilu | by export you mean 'our sub ....', right? | 10:11 | |
moritz | no, I mean 'sub foo($x) is export { } | 10:12 | |
grondilu | oh, my bad | ||
but shouldn't I be able to use the function with fully qualified name even if it is not exported? i.e.: perl6 -e 'use MyPackage; MyPackage::foo();' | 10:13 | ||
moritz | well | ||
in your case, everything is inside the module Crypto | 10:14 | ||
so it would be | |||
use Crypto; Crypto::util::bytesToWords(@bytes) | |||
grondilu | anyway I tried stuffs like that several times and it never worked. | 10:15 | |
10:15
plobsing left
|
|||
moritz | works here | 10:16 | |
./perl6 -e 'use Crypto; say Crypto::sha256::hex "blurb";' | |||
(wait, wait, wait) | |||
2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 | |||
f0ac34ce3cbd715bafcae72f96bd914151c12e8d478bbb645d94d55cf54a1a14 | |||
the first one is from the say sha256::hex "hello"; within the module | 10:17 | ||
moritz hopes grondilu++ can reproduce his success | 10:18 | ||
grondilu | oh it does work indeed. I don't understand what was going wrong. | 10:20 | |
moritz | maybe a typo | 10:21 | |
dalek | ar: bc1338d | tadzik++ | skel/docs/announce/2012.02: Fix a typo in the release announcement |
||
jnthn | tadzik: Nice catch :) | 10:24 | |
tadzik | it's one of those moments, "there's something in that sentence..." when you stare and stare subconsciously :) | 10:25 | |
jnthn | I'll do the release late afternoon or early evening to allow time for any shiny extra modules to get added to the list. :) | 10:29 | |
10:33
daxim joined
|
|||
tadzik | I'll add benchmark there | 10:39 | |
and maybe IoC | 10:40 | ||
dalek | p/bs: aba92d4 | jnthn++ | src/6model/sixmodelobject.h: Stub in SC barriers. |
10:43 | |
p/bs: d770a5a | jnthn++ | src/ops/nqp.ops: First crack at scattering SC-related barriers in appropriate places in nqp.ops. |
|||
jnthn | tadzik: OK. Please mention in the announce too :) | ||
tadzik | I'll poke it in a while | 10:46 | |
10:48
grondilu left
|
|||
moritz blug: perlgeek.de/blog-en/perl-6/2011-02-...tions.html | 10:57 | ||
11:04
huf joined
|
|||
jnthn | moritz++ # nice post | 11:05 | |
moritz: "a special please" => "a special pleasure" | |||
moritz++ # for the awesome work too :) | 11:06 | ||
moritz | jnthn: fixed, thanks | ||
au | "a dedicated; type" => "a dedicated type" or => "a dedicated X::Hash::Store::OddNumber type"? | 11:08 | |
moritz++ # awesome new backtraces | 11:09 | ||
jnthn | oops, missed that stray semi | ||
11:10
ab5tract joined
|
|||
moritz | stray colon fixed, au++ | 11:11 | |
11:16
plobsing joined
11:25
Trashlord left
11:30
NamelessTee joined
|
|||
dalek | ast: 8c63c26 | moritz++ | S03-operators/eqv.t: fix rakudo fudge in eqv.t Rakudo does not like argumentless todo() calls |
11:34 | |
11:34
benabik left
11:36
frettled left
11:39
PacoAir joined
11:41
xinming left
11:42
xinming joined
|
|||
dalek | p/bs: f9eb249 | jnthn++ | src/pmc/serializationcontext.pmc: Add slots in the SC for holding object repossession info. |
12:00 | |
p/bs: c11251c | jnthn++ | src/ops/nqp.ops: Implement support for maintaining a stack of currently compiling SCs. |
|||
p/bs: 10d5a9c | jnthn++ | src/HLL/World.pm: Push/pop SC to the compiling stack. |
|||
p/bs: e4937be | jnthn++ | src/ (2 files): First cut at the barrier applicability logic, which just emits a debug message for now. |
|||
p/bs: 93cbec9 | jnthn++ | src/Regex.pir: Regex library needs to push the SC it builds onto the compiling stack while doing so, to prevent spurious repossession; clears up all but two instances in the build of the barrier triggering (which it never should in the NQP build). |
|||
12:08
sftp joined
12:21
pernatiy joined
12:25
bluescreen10 joined
12:28
frettled joined
12:30
agentzh joined
12:31
bluescreen10 left
12:36
benabik joined
12:41
noam left
12:42
noam joined
12:45
bluescreen10 joined
12:49
pernatiy left
12:53
pernatiy joined
12:57
dakkar left,
dakkar_ joined
12:58
dakkar_ is now known as dakkar
|
|||
dalek | ast: b92c4a8 | moritz++ | S12-introspection/parents.t: rewrite parents.t to not use infix:<eqv> with Mu as argument |
13:00 | |
13:04
noam left
13:05
Tedd1 left,
noam joined
13:06
dakkar left
13:09
nwc10 joined
|
|||
nwc10 | moritz: is the IRC logger written in Perl 6 yet? :-) | 13:09 | |
moritz | nwc10: no | ||
nwc10: though rakudo supports sockets and enough NCI for database access now, so it would be entirely possible | 13:10 | ||
nwc10 | it would seem like interesting dogfood. Can't say that I'm volunteering, though. | ||
so, currently "Ain't broken, and a bunch of other stuff is more important" seems like a a valid state of affairs. | 13:11 | ||
jnthn | o/ nwc10 | ||
nwc10 | hi jnthn | ||
nwc10 isn't dead yet, but does now have a cough | 13:12 | ||
jnthn | GPW next week? | ||
nwc10 | assuming that I'm not dead, or faking death convincingly | ||
moritz | nwc10: it is a tempting idea though | ||
nwc10 | bother. I've distracted you from fixing other things :-/ | ||
moritz | also I'm now logging perl 5's #onionsketch | 13:13 | |
13:13
dakkar joined
|
|||
nwc10 | I know. That's why I went to have a look | 13:13 | |
jnthn | .oO( was moritz tempted to re-write the irclogger or fake death convincingly? ) |
||
moritz | so it would be a double win to provide some infrastructure for Perl 5 with a tool written in p6 :-) | ||
nwc10 | wanted to know if Perl 6 was doing the logging for something Perl 5 | ||
(snap-ish) | |||
13:16
plobsing left
13:18
dakkar left
13:19
nwc10 left
13:20
mucker left,
Tedd1 joined,
dakkar joined,
abercrombie left
13:21
ifaria joined
13:28
dakkar left
13:30
dakkar joined
13:33
simcop2387 left
13:35
simcop2387 joined
13:39
kaleem left
13:48
overrosy left
13:50
overrosy joined
13:53
kaleem joined
14:16
plobsing joined
|
|||
fsergot | hi o/ | 14:28 | |
14:28
mucker joined
|
|||
jnthn | o/ fsergot | 14:29 | |
14:30
tokuhirom joined,
Trashlord joined
|
|||
gfldex | build under cygwin is failing | 14:31 | |
it's not copying cygparrot4_1_0.dll into install | |||
moritz | :( | ||
benabik | ... Wasn't that fixed not that long ago? | 14:32 | |
moritz | so I thought too | ||
14:32
xinming left
|
|||
dalek | kudo/nom: 137b16b | moritz++ | src/core/Mu.pm: make infix:<eqv> autothread as per current spec |
14:34 | |
14:34
JimmyZ_ joined
|
|||
benabik | Yeah 25967be seems like it should install the parrot DLL on Cygwin | 14:34 | |
dalek | ast: 6e10cfa | moritz++ | S03-operators/eqv.t: unfudge now passing eqv autothreading tests for rakudo |
||
JimmyZ_ | which is failing? parrot or nqp ? | 14:35 | |
gfldex | parrot | 14:36 | |
gfldex is still investigating | |||
14:37
plobsing left
14:39
kaleem left,
plobsing joined,
agentzh left
14:42
ifaria left
|
|||
gfldex | cygparrot4_1_0.dll is not in MANIFEST* and i think it should | 14:43 | |
or should it not? | |||
benabik | Hm. My MANIFEST.generated has cygparrot4.1.0.dll instead of 4_1_0... | 14:44 | |
gfldex | i got that too | 14:45 | |
benabik | Looks like that may have been a mistake in the release. It used to have 4_0_0. | ||
(Or a bug in the tools. Investigating.) | 14:46 | ||
Bug in the tools. Our update version script does s/4.0.0/4.1.0/. I'll fix manually and then open a bug for the script. | 14:47 | ||
gfldex++ | |||
14:49
skids joined
|
|||
gfldex | there is more while building nqp: del .\\libdyncall_s.a | 14:51 | |
make[2]: del: Command not found | |||
benabik | I expected dalek to comment, but I pushed the fix for Parrot in 33a524f. | 14:52 | |
JimmyZ_ | gfldex: sorry, that's my fault | 14:53 | |
gfldex: vi 3rdparty\dyncall\buildsys\gmake\os\windows.gmake | 14:55 | ||
gfldex: rm the "RM= del" | |||
gfldex: I had emailed to dyncall author to fix these windows issues | 14:56 | ||
gfldex: here is the patch | 15:10 | ||
gfldex: gist.github.com/1933005 | 15:11 | ||
gfldex | i fixed it by hand, it's building now | ||
JimmyZ_ | moritz: this should fix gfldex's problem, hopes it goes into nqp | ||
[Coke] | perl6: sub matchcheck(*@) { 1 }; say "alive"; | 15:13 | |
p6eval | pugs b927740: OUTPUT«***  Unexpected "*@)" expecting parameter name or ")" at /tmp/7gspqhVBcN line 1, column 16» | ||
..niecza v15-2-gd19c478: OUTPUT«Potential difficulties: &matchcheck is declared but not used at /tmp/r3EGKDIJTD line 1:------> sub matchcheck⏏(*@) { 1 }; say "alive";alive» | |||
..rakudo 137b16: OUTPUT«alive» | |||
[Coke] | perl6: sub matchcheck(*@a) { 1 }; say "alive"; | ||
p6eval | pugs b927740, rakudo 137b16: OUTPUT«alive» | ||
..niecza v15-2-gd19c478: OUTPUT«Potential difficulties: @a is declared but not used at /tmp/vX1xivqWAW line 1:------> sub matchcheck(*⏏@a) { 1 }; say "alive"; &matchcheck is declared but not used at /tmp/vX1xivqWAW line 1:------> sub matchcheck⏏(*@a… | |||
[Coke] | hey, that's worth about 200 tests right there. | 15:15 | |
dalek | p/bs: 608ee61 | jnthn++ | src/ (3 files): Initial implementation of object/STable repossession; not really possible to test until the serializer is updated. |
15:16 | |
p/bs: d3c7cd7 | jnthn++ | src/6model/serialization. (2 files): Initial preparations for repossessions table in serialization. |
|||
p/bs: d83bff9 | jnthn++ | src/6model/serialization_context.c: Use LSB to signify object vs. STable repossession. |
|||
p/bs: 3de6217 | jnthn++ | src/6model/serialization.c: Implement serialization of repossessions info. |
|||
p/bs: cff103f | jnthn++ | src/6model/serialization.c: Implement deserialization time handling of the repossessions. Seems to vaguely work out. |
|||
p/bs: f6c39dc | jnthn++ | src/6model/serialization.c: Clear REPR_data pointer after freeing the data, just in case. |
|||
p/bs: 06304cb | jnthn++ | src/ops/nqp.ops: Temporarily disable triggering of SC barrier on setting boolification protocol. |
|||
kudo/bs: 5d20c5a | jnthn++ | / (2 files): Add missing Stash class in CORE.setting (we stubbed it in BOOTSTRAP, but never finished it up). |
|||
15:16
birdwind1pbird joined
15:18
daxim left
|
|||
felher | moritz++ # for blog-post and hacking :) | 15:19 | |
15:20
JimmyZ_ left
15:22
tokuhirom left
15:23
daemon left,
cognominal left,
wolverian left,
drbean left,
pjcj_ left,
BooK left,
dju left,
Maddingue left,
cotto left,
jasonmay left,
BooK joined,
pjcj joined,
Maddingue joined,
cognominal joined,
cotto joined,
wolverian joined
15:24
daemon joined,
dju joined
15:25
drbean joined
15:26
sisar left
15:28
birdwind1pbird left
15:37
att left
15:44
Psyche^ joined,
Patterner left,
Psyche^ is now known as Patterner
15:49
birdwind1pbird joined
15:50
att joined
|
|||
dalek | p/bs: 1a15a9a | jnthn++ | src/ (2 files): Have deserialization handle republication of Parrot v-table handlers, so we catch mixin cases also. With this, CORE.setting now seems to load...but then nothing happens afterwards. :/ |
15:51 | |
15:53
grondilu joined
|
|||
grondilu | perl6: my %h = foo => 'bar' | 15:53 | |
p6eval | niecza v15-2-gd19c478: OUTPUT«Potential difficulties: %h is declared but not used at /tmp/kbFei3V9sM line 1:------> my ⏏%h = foo => 'bar'» | ||
..pugs b927740, rakudo 137b16: ( no output ) | |||
grondilu | nom: say my %h = foo => 'bar' | 15:54 | |
p6eval | nom 137b16: OUTPUT«("foo" => "bar").hash» | ||
grondilu | perl6: module Foo { our %h = foo => "bar" }; say %Foo::h; | 15:55 | |
p6eval | rakudo 137b16: OUTPUT«Method 'STORE' not found for invocant of class 'Any' in <anon> at /tmp/a23QZ65PK_:1 in block <anon> at /tmp/a23QZ65PK_:1» | 15:56 | |
..niecza v15-2-gd19c478: OUTPUT«{"foo" => "bar"}» | |||
..pugs b927740: OUTPUT«» | |||
grondilu | rakudo is wrong here, right? | ||
benabik | nom: my %h = foo => 'bar'; say %h | 15:57 | |
p6eval | nom 137b16: OUTPUT«("foo" => "bar").hash» | ||
benabik | nom: our %h = foo => 'bar'; say %h | 15:58 | |
p6eval | nom 137b16: OUTPUT«Method 'STORE' not found for invocant of class 'Any' in block <anon> at /tmp/lgBZwGby7l:1» | ||
benabik | Looks like a bug in our. | ||
jnthn | Already ticketed. | 15:59 | |
grondilu | ok | 16:00 | |
16:02
grondilu left
16:04
birdwind1pbird left
|
|||
jnthn | rakudo/bs now runs perl6 -e "say('hello world')" | 16:07 | |
16:10
havenn joined
16:14
pernatiy left
16:15
pernatiy joined
|
|||
jnthn | Many of t/00-parrot and t/01-sanity pass also | 16:15 | |
libreofficer | Hello folks! | 16:27 | |
jnthn, I still try to understand metaops | 16:28 | ||
what means @values.gimme(1) ? Is this a list with one element? | 16:29 | ||
jnthn | It means "make sure the list we're currently considering has at least 1 reified element" | 16:32 | |
libreofficer | oh, at least | ||
jnthn | Lists in Perl 6 are lazy. .gimme(n) forces it to evaluate (or ensure it already did evaluate) up to n items | ||
well | |||
potentially it may do more | |||
libreofficer | I see | 16:33 | |
jnthn | It returns the number of available elements. | 16:34 | |
eiro | gimme is like take in the other langages | 16:35 | |
jnthn | Which other languages? :) | ||
libreofficer | so, 'take' in p6 is something like push in stack? | 16:36 | |
TimToady | it's more like a yield, but you can see it as a push on some anonymous array attached to the gather | 16:37 | |
dalek | kudo/bs: f5f15e5 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Pun configuration needs to be per-run. |
16:38 | |
kudo/bs: 5ab8eea | jnthn++ | tools/build/Makefile.in: Turn the optimizer down to analysis only - some transform busts things. Will figure out with one later. |
|||
TimToady | libreofficer: gimme doesn't return anything except the number of elements actually available | ||
munch is more like take | |||
dalek | ast: 39b3eb7 | (Siddhant Saraf)++ | S32-exceptions/misc.t: add test for X::Hash::Store::Oddnumber |
||
gfldex | somebody build a jnthn compatible bicycle: thereifixedit.files.wordpress.com/2...iking1.jpg | ||
16:38
plobsing left
|
|||
TimToady | (like take in FP languages, to make jnthn happy :) | 16:39 | |
16:40
sisar joined
|
|||
jnthn | gfldex: Only if they fill the basket with *good* beer, though :) | 16:40 | |
libreofficer | I see. I don't write on FP langs too much, but I almost understand | ||
gfldex | jnthn: you can fill it with any beer you want | ||
jnthn | \o/ | ||
TimToady | Haskell take is more like .shift(5), if shift took arguments | ||
jnthn packs it full of Yeti | |||
libreofficer | two more questions: :infinite, @values.infinite, and that 'triangle' in metaops funcs - what they does? | 16:41 | |
jnthn | triangle produces all the intermediate results | 16:42 | |
nom: say [+] 1..10 | |||
p6eval | nom 137b16: OUTPUT«55» | ||
jnthn | nom: say [\+] 1..10 | ||
p6eval | nom 137b16: OUTPUT«1 3 6 10 15 21 28 36 45 55» | ||
sisar | moritz: please review my commit to misc.t | ||
TimToady | I have no idea what you're referring to by 'infinite'; that word doesn't occur in P6 that I know of | ||
is this pmichaud++'s list attribute that says it knows something is infinite? | 16:43 | ||
jnthn | iirc, .infinite is a way of asking an array if it is potentially infinite in length. Evidently, that's not the spec name for it. ;-) | ||
TimToady: .infinite is just the accessor for that, yet. | |||
*yes | |||
TimToady | afaik there is no spec name for it yet because someone hasn't rewritten S07 yet then :) | 16:44 | |
jnthn | ah :) | ||
jnthn dreams of pmichaud tuits | |||
TimToady | libreofficer: yes .infinite is supposed to tell you if it knows the list is infinite | ||
nom: my @foo = 1..*; say @foo.infinite | 16:45 | ||
p6eval | nom 137b16: OUTPUT«True» | ||
TimToady | niecza: my @foo = 1..*; say @foo.infinite; # I suspect this fails | ||
p6eval | niecza v15-2-gd19c478: OUTPUT«(timeout)» | ||
libreofficer | ok, what about ':infinite' ? It looks like this: GATHER({...}, :infinite(@values.infinite)) | 16:46 | |
TimToady | and @foo ~~ :infinite is just a handy way to write the method call in a smartmatch | ||
jnthn | It's just passing on the infiniteness information to the thingy that makes a GATHER | ||
s/makes a GATHER/implements gather/ | 16:47 | ||
GATHER is what a gather desugars to, iirc. | |||
Ouch, my hands are demanding a keyboard break... Back in a bit. | |||
16:49
alester joined
|
|||
gfldex | i should not have mentioned beer :-> | 16:49 | |
TimToady | my hands usually demand I break my keyboard, but I ignore 'em | ||
libreofficer | nom: say [+] 1..10 | 16:50 | |
p6eval | nom 137b16: OUTPUT«55» | ||
TimToady | New scientific study indicates Balmer Peak comes from anesthetic effects on sore hands! | ||
nom: say [*] 1..10 | 16:51 | ||
p6eval | nom 137b16: OUTPUT«3628800» | ||
16:51
retup_work joined
|
|||
libreofficer | jnthn, so, as I understand, METAOP_REDUCE only use this anonymous array to gather values, and then return it. And we need to rewrite it like iteration. | 16:52 | |
TimToady | perl6: say ([\+] 1..*)[10] | 16:54 | |
p6eval | rakudo 137b16, niecza v15-2-gd19c478: OUTPUT«66» | ||
..pugs b927740: OUTPUT«pugs: out of memory (requested 1048576 bytes)» | |||
TimToady | perl6: say ([\+] 1..1000000000)[10] | ||
p6eval | rakudo 137b16, niecza v15-2-gd19c478: OUTPUT«66» | ||
..pugs b927740: OUTPUT«pugs: out of memory (requested 1048576 bytes)» | |||
TimToady | looks like [\op] is already properly lazy | 16:55 | |
(excepting pugs) | |||
16:57
mj41 left
|
|||
libreofficer | I want to try optimize metaops (but for begin I need to fully understand it) | 16:57 | |
TimToady | have fun! | 16:58 | |
16:58
birdwindupbird left
16:59
marmalade joined
|
|||
TimToady | moritz: someone should come up with a whois bot that tells you all the old aliases that came from the same address (which might or might not have helped with the fasad->sisar transition) | 17:04 | |
would also help spot known troublemakers (though one should give them the benefit of the doubt, since the reason for changing names *might* be in the repentant category) | 17:05 | ||
17:06
MayDaniel joined
|
|||
TimToady | 'course it wouldn't help if people change name at the same time they change address | 17:06 | |
hmm, you could make the names clickable in the irclog with known/guessed info :) | 17:08 | ||
libreofficer | two technical details. perl6 docs locates only on perlcabal.org? There is no some mans/downloadable files. And second - how to run perl6 code faster? My machine run scripts with some annoying delay | ||
TimToady | github.com/perl6/specs | 17:12 | |
and which implementation are you using? | |||
niecza compiles slower but runs up to 20 times faster than rakudo | |||
(though rakudo is likely to go much faster in the future) | |||
and it really depends on what you're doing; some things they do at about the same speed | 17:13 | ||
libreofficer | I use rakudo from debian repos | 17:14 | |
TimToady | that seems likely to be fairly ancient | ||
17:14
thou joined
|
|||
libreofficer | I also cloned rakudo and compile it, but not runs it yet | 17:14 | |
TimToady | most of us just use the latest from github | ||
libreofficer | debian wheezy | ||
oh, its old too, really | 17:15 | ||
TimToady | I just do a git pull --rebase every day and recompile; the test suite keeps it fairly stable | 17:16 | |
I also track niecza, and go back and forth to see what works well in which | |||
sigh, my pugs broke because it hardwires libffi.so.5, and my system upgraded itself to 6 | 17:21 | ||
jnthn | Rakudo's startup time should be improving soon also. | 17:22 | |
benabik | jnthn: Any initial results on that, or waiting until you unbreak more stuff? | ||
TimToady | he just got to "Hello, world!" | ||
jnthn | It certainly *feels* faster. I should do something more scientific, but want to unbust some more bits first. | 17:23 | |
benabik | TimToady: In other words, he's gotten it running code! It's exciting! | ||
jnthn: Very cool. Didn't mean to put pressure, just curious an excited. | |||
jnthn | Well, the most exciting thing about it doing "Hello, world!" is it means that it successfully deserialized CORE.setting and at least some of the stuff in it was usable.:) | ||
moritz | sisar: test commit looks good. | ||
jnthn | It also passes a bunch of sanity tests. | 17:24 | |
sorear | good * #perl6 | ||
TimToady | whoops, gotta go sign a bunch of refi papers & | ||
jnthn | Many of the fails look like the same underlying issue, which is just a NYI in the serializer. | ||
o/ sorear | |||
sisar | moritz: :-) | 17:25 | |
dalek | p: 4ff8545 | moritz++ | 3rdparty/dyncall/ (2 files): windows fix by JimmyZ |
17:26 | |
sisar | moritz: src/core/ has both Exception.pm and Exceptions.pm, which is kinda confusing | 17:29 | |
17:29
mishin_ joined
|
|||
moritz | sisar: sorry about that | 17:35 | |
mostly hysterical raisins | 17:36 | ||
I should join them into one at some point | 17:37 | ||
17:38
plobsing joined
17:40
fglock joined
|
|||
fglock | o/ | 17:41 | |
[Coke] | rant: it should be a TAP error to have two identically described tests. | ||
moritz | rant: it should be TAP error to post two identical lines in two different channels :-) | 17:45 | |
jnthn | rant: it should be a TAP error to rant | 17:47 | |
oh, wait... | |||
sisar | moritz: also, most (or maybe none) files in src/core/ do not have beginning comments to describe a files's purpose, so i can't just open a file & understand what's it for :-| | ||
moritz | sisar: it's usually quite easy. Int.pm implements the 'Int' class and operations that work on Int | 17:48 | |
sisar: fairly intuitive, isn't it? | |||
sisar | Only the names, give ssome hint... well you said it already :) | 17:49 | |
17:50
skipper joined
|
|||
sisar | moritz: can you explain line 220 in control.pm. How do i trigger it ? | 17:51 | |
17:53
skipper left,
pernatiy left
|
|||
moritz | nom: sub f { gather { take $_ for 1..3; return } }; my @a := f; .say for @f | 17:54 | |
p6eval | nom 137b16: OUTPUT«===SORRY!===Variable @f is not declaredat /tmp/U8mSjxAla_:1» | ||
moritz | nom: sub f { gather { take $_ for 1..3; return } }; my @a := f; .say for @a | ||
p6eval | nom 137b16: OUTPUT«Attempt to return from exhausted Routine in sub EXHAUST at src/gen/CORE.setting:520 in block <anon> at src/gen/CORE.setting:347 in block <anon> at /tmp/XJAo6k6kfy:1» | ||
moritz | sisar: this sub returns a lazy list. At the time the return() is run, the subroutine has already returned | ||
sisar | hmm | 17:57 | |
sisar sleeps zzz... | |||
17:57
MayDaniel left
17:59
kmwallio joined,
att left
18:00
kmwallio left
18:02
phoenix1789 joined
18:04
Chillance joined
|
|||
dalek | kudo/nom: e959358 | moritz++ | / (3 files): move contents of src/core/Exceptions.pm into Exception.pm No functional changes |
18:09 | |
18:10
dakkar left
18:12
skipper joined
18:15
skipper is now known as havennn
|
|||
dalek | p/bs: 20ef680 | jnthn++ | src/ops/nqp.ops: Comment out debug code - don't need it for now. |
18:18 | |
p/bs: cce66db | jnthn++ | src/6model/serialization.c: Start chasing chains of outer contexts, serializing along the chain rather than just the immediate one. No deserialization of the chaining just yet. |
|||
p/bs: 3f742fc | jnthn++ | src/6model/serialization.c: Serialization/deserialization of lexpads with natively typed lexicals. |
|||
p/bs: 3a2f19c | jnthn++ | src/6model/serialization.c: Fix a comment. |
|||
p/bs: 629c0b0 | jnthn++ | src/6model/serialization.c: Fixup of outer context chains on deserialization. Unbusts attribute accessor generation, which means that Rakudo's error reporting now works again and various sanity tests now pass again. |
|||
18:20
havennn left
|
|||
jnthn | dinner & | 18:20 | |
18:34
sisar left
18:35
phoenix1789 left
|
|||
moritz | jnthn: fwiw at some point the bs brach in nqp needs to be updated in a similar way as rakudo/master in connection to the take_recont merge | 18:42 | |
jnthn: that would make it easier for people to switch between nom and bs, because then they can use the same parrot for both | 18:43 | ||
18:46
MayDaniel joined,
birdwindupbird joined
|
|||
sorear | samlh: still here? | 18:48 | |
18:51
MayDaniel left
18:57
mucker left
18:59
Teratogen left
19:00
havenn left
19:02
att joined
19:04
sahadev left
19:09
pernatiy joined
19:10
Teratogen joined
|
|||
jnthn | moritz: Now that rakudo/bs is close to being somewhere interesting, yeah, I should look into that. | 19:15 | |
sorear | phenny: tell samlh I am curious what version of Mono.Cairo.dll you have | 19:16 | |
phenny | sorear: I'll pass that on when samlh is around. | ||
19:18
Khisanth joined
19:26
mishin_ left
19:28
MayDaniel joined
19:36
samlh left
19:38
plobsing left
19:46
kaare_ joined
|
|||
tadzik | 'evening | 19:49 | |
19:53
pyrimidine left
|
|||
Tene | grue: /join #phasers | 19:56 | |
Oops | |||
jnthn | hi tadzik | ||
Tene | Typing is hard. | ||
jnthn | Your command has been eaten by a grue. | 19:57 | |
fglock | `/leave | ||
19:57
fglock left
|
|||
tadzik | yeah, typins' hard | 19:57 | |
* typing's | |||
19:58
MayDaniel left
|
|||
tadzik | ./perl6 -e 'say 1' 0.25s user 0.09s system 97% cpu 0.346 total | 20:03 | |
not bad! | |||
jnthn | tadzik: That's in the bs branch? | 20:04 | |
tadzik | aye | ||
jnthn | tadzik: What is it for you normally? | ||
tadzik | I guess around 1 second | ||
20:05
bluescreen10 left
|
|||
jnthn | OK, so it's about 25% of what it was. | 20:05 | |
tadzik | more-less-ish | ||
I may rebuild the non-bs nom, I'll probably have to do some hacking on it before GPW anyway | 20:06 | ||
jnthn | Yeah, bs still has a couple of serious issues. | ||
(Not unexpected ones, just things I didn't get to doing yet.) | |||
tadzik | jnthn++ | 20:08 | |
awesome to see such progress | |||
20:11
drbean left
|
|||
masak | evenin', #perl6 | 20:13 | |
sorear | masak! | ||
jnthn | bon soir, masak | 20:14 | |
masak | sorear++ # release | ||
jnthn++ # I haven't backlogged yet, but I see "25% of what it was" above, and that sounds... promising :) | |||
sorear | colomon++ # most of the cool features in v15 | ||
20:14
tokuhirom joined
|
|||
sorear | sounds like bs will greatly increase my startup time parity challenges :| :D | 20:15 | |
20:15
drbean joined
|
|||
TimToady | niecza: say [1, 0.70710678118654746] eqv [0.85355339059327373, 0.8408964152537145] | 20:15 | |
p6eval | niecza v15-2-gd19c478: OUTPUT«True» | ||
TimToady | ^^^ | ||
er, sorear ^^^ | 20:16 | ||
sorear | What are the last two numbers? | ||
(is it sad that I can instantly recognize sqrt(1/2) ?) | |||
TimToady | the 2nd iteration from rosettacode.org/wiki/Arithmetic-geo...ean#Perl_6 | ||
which doesn't work if I change the all >>==<< to an eqv | 20:17 | ||
masak | sorear: no, it's not sad. was gonna say that it's completely normal, but I guess it isn't... :) | ||
TimToady | niecza: say [1, 0.70710678118654746] eqv [0.85355339059327373, 0.8408964152537145, 42] | ||
p6eval | niecza v15-2-gd19c478: OUTPUT«False» | ||
masak | sorear: anyway, I recognized it too. I consider it one of the constants that one "should" recognize. | ||
TimToady | I suspect niecza is comparing lengths rather than values of the arrays | 20:18 | |
masak submits nieczaissue | |||
TimToady | niecza: say [1, 0.70710678118654746] ~~ [0.85355339059327373, 0.8408964152537145] | 20:19 | |
p6eval | niecza v15-2-gd19c478: OUTPUT«False» | ||
TimToady | well, that works | ||
but eqv is rather more in the spirit of things | 20:20 | ||
20:20
benabik left
|
|||
TimToady | incidentally, rakudo fails on the line before that | 20:20 | |
20:21
benabik joined
|
|||
TimToady | if the masakbot is looking for fuel | 20:21 | |
TimToady wonders if Boeing named their first jetliner after that number... | 20:22 | ||
jnthn | my @new := [ 0.5 * [+](@old), sqrt [*](@old) ]; # that line? | ||
nom: my @new = 1,2,3; say [+](@new) | 20:23 | ||
p6eval | nom e95935: OUTPUT«6» | ||
TimToady | yeah, I get No applicable candidates found to dispatch to for 'Numeric'. when I run the program | ||
maybe it's elsewhere | 20:24 | ||
jnthn | Hm. I know we fixed the reduction parsing thingy not so long ago but long ago enough that I suspect you've a new enough nom. | 20:25 | |
TimToady | fresh built today | ||
jnthn | OK | ||
Then my first guess at why it didn't work ain't it :) | |||
TimToady | okay, it's the 'last' that's doing it, apparently throwing away the partial sequence | 20:26 | |
so the [*-1] fails | |||
if I comment the last and change *-1 to [5] it works | 20:27 | ||
oh, wait, no | |||
wrong impl | |||
but different error | |||
now it gets: Nominal type check failed for parameter '@old'; expected Positional but got Num instead | 20:28 | ||
I wonder if it's flattening the @new return value into the sequence | |||
which is arguably correct... | 20:29 | ||
yes | |||
if I change the return value to [@new] it works | |||
and still works in niecza | 20:30 | ||
however, if I uncomment the last it still has the No applicable error | |||
works if the subscript is [3] rather than [*-1], so the problem doesn't seem to be a null return | 20:31 | ||
so last is probably working right | |||
more like *-1 is not getting a valid * | |||
changing that to [10] returns Nil, so the last is correctly terminating | 20:32 | ||
jnthn | nom: say (1, 3 ... 9)[*-1] | 20:33 | |
20:33
broquaint left
|
|||
p6eval | nom e95935: OUTPUT«9» | 20:33 | |
jnthn | nom: say (1, 3 ... 9)[*-2] | ||
p6eval | nom e95935: OUTPUT«7» | ||
TimToady | ah, it's returning Inf for the length | ||
20:33
birdwindupbird left
|
|||
TimToady | because it 'knows' it's ... * | 20:34 | |
and doesn't know there's a last | |||
yes, works if I change it to ... 100 | |||
that's...an interesting failure mode | 20:35 | ||
actually, works with ... 0 too, since that never matches +[$a,$g] | 20:37 | ||
20:38
plobsing joined
|
|||
TimToady | though ... False might be a faster test | 20:38 | |
20:39
att left,
MayDaniel joined
|
|||
TimToady wonders if [*-1] should be specced to use the reified length if Inf | 20:40 | ||
since no one in their right mind will want to find the last element of an infinite list, except maybe a mathematician | 20:41 | ||
nom: say [].^methods | 20:43 | ||
p6eval | nom e95935: OUTPUT«new bind_pos delete flattens REIFY STORE_AT_POS STORE PARAMETERIZE_TYPE at_pos perl new Bool Int end fmt flat list flattens tree Capture Parcel at_pos eager elems exists gimme infinite iterator munch pick pop push roll reverse rotate shift unshift splice sort classify… | ||
TimToady | offhand I don't see a method to get the reified length | 20:44 | |
nom: say List.^methods | |||
p6eval | nom e95935: OUTPUT«new Bool Int end fmt flat list flattens tree Capture Parcel at_pos eager elems exists gimme infinite iterator munch pick pop push roll reverse rotate shift unshift splice sort classify categorize uniq REIFY STORE_AT_POS FLATTENABLE_LIST FLATTENABLE_HASH keys values pa… | ||
jnthn | That'd be equivalent to reifying it I guess | ||
tadzik | jnthn: ./perl6 -e 'say 1' 1.05s user 0.16s system 94% cpu 1.288 total | 20:45 | |
TimToady | I don't want to reify it, just find how much of it real already | ||
esp if it's infinite | |||
tadzik | that's nom, so yeah, bs is about 1/4 of the startup time | ||
(at the current state) | |||
20:45
broquaint joined
|
|||
TimToady | nom: say [1,2,3..*].gimme(*) | 20:46 | |
jnthn | nom: my @x = 1, 3 ... *; say @x[3]; say @x.gimme(*) | ||
p6eval | nom e95935: OUTPUT«2» | ||
nom e95935: OUTPUT«74» | |||
jnthn | Ah, we both had the same idea :) | 20:47 | |
TimToady | so I'd argue that the number fed to a subscript for [*-1] should be that number, not Inf | ||
.elems can still return Inf, i guess | 20:48 | ||
20:48
havenn joined
|
|||
masak | maybe I'm just being needlessly conservative, but I think it sounds like a confusing feature. | 20:49 | |
not all lazy lists are infinite. | 20:50 | ||
what if I *want* it to find the end and give me the last item? | |||
TimToady | true; I guess what I really want is the ... to trap the 'last' and unmark the .infinite | ||
20:51
y3llow_ joined,
pothos_ joined
|
|||
TimToady | niecza is producing the correct result because it does not yet support .infinite | 20:51 | |
well, and it's not flattening the @new into the ... list | 20:52 | ||
20:52
y3llow left
20:53
pothos left,
y3llow_ left
20:54
y3llow joined,
pothos_ left
20:55
pothos joined
20:56
y3llow left,
y3llow joined
|
|||
masak | +1 on trapping 'last' and unmarking .infinite -- that's only fair/sane/correct in this case. | 20:56 | |
TimToady | okay, rosettacode.org/wiki/Arithmetic-geo...ean#Perl_6 now works with both niecza and rakudo (working around current issues) | 20:57 | |
20:58
y3llow left,
pothos left,
pothos joined
|
|||
TimToady | will switch to eqv and * when those issues are resolved | 20:58 | |
20:58
y3llow joined
|
|||
TimToady | for now uses ~~ and 0 | 20:58 | |
oh, and scalar variables to avoid flattening | 20:59 | ||
I think it's a nieczabug that @new doesn't flatten into the sequence's list context | 21:00 | ||
21:00
y3llow left
|
|||
TimToady | we have use cases that rely on 1, 1, -> $a, $b { ...; $new-a, $new-b } ... * | 21:01 | |
21:01
y3llow joined,
pothos left,
pothos joined
21:03
y3llow left,
y3llow joined
|
|||
TimToady | in fact, one could write the agm program in that form, except that niecza would bind the returned capture all to the next $a, I suspect | 21:03 | |
21:04
pothos left
|
|||
dalek | kudo/bs: 038e84c | jnthn++ | src/Perl6/World.pm: Remvoe todo that's no longer todo. |
21:04 | |
kudo/bs: 662c70a | jnthn++ | src/ (3 files): Update lexical fixup handling for bs; earlier I just commented it out out. This gets us passing all 00-parrot and all of 01-sanity apart from the final test which requires Test.pm, which we can't quite build yet. |
|||
21:04
pothos joined
|
|||
TimToady | niecza: my @x := 1,10, -> $a, $b { $a+1, $b+1 } ... *; say @x[5] | 21:05 | |
p6eval | niecza v15-2-gd19c478: OUTPUT«3 3» | ||
TimToady | nom: my @x := 1,10, -> $a, $b { $a+1, $b+1 } ... *; say @x[5] | ||
p6eval | nom e95935: OUTPUT«5 14» | ||
21:05
y3llow left
21:07
pothos left
|
|||
TimToady | sorear: ^^ nieczabug | 21:09 | |
masak | nom: my @x := 1,10, -> $a, $b { $a+1, $b+1 } ... *; say @x[0..10].perl | 21:10 | |
p6eval | nom e95935: OUTPUT«(1, 10, (2, 11), (3, 12), (4, 13), (5, 14), (6, 15), (7, 16), (8, 17), (9, 18), (10, 19))» | ||
masak | niecza: my @x := 1,10, -> $a, $b { $a+1, $b+1 } ... *; say @x[0..10].perl | 21:11 | |
p6eval | niecza v15-2-gd19c478: OUTPUT«(1, 10, $(2, 11), $(11, 3), $(3, 3), $(3, 3), $(3, 3), $(3, 3), $(3, 3), $(3, 3), $(3, 3))» | ||
masak submits nieczabug | |||
21:17
glass left,
kaare_ left,
orafu left,
sorear left,
alvis left,
araujo left,
tadzik left,
doy left,
jerome_ left,
shachaf left,
bacek_at_work left,
_ilbot left,
japhb left,
charsbar___ left,
PZt left,
gfldex left,
TimToady left,
mathw left,
itz_ left,
ruoso left,
NamelessTee left,
Alias left,
havenn left,
MayDaniel left,
retup_work left,
cotto left,
BooK left,
daemon left,
benabik left,
frettled left,
PacoAir left,
ab5tract left,
lestrrat left,
preflex left,
mtk left,
mikec left,
bonsaikitten left,
colomon left,
jevin left,
pmichaud left,
jnthn left,
Bucciarati left,
conntrack left,
ocharles left,
__sri left,
`patch` left,
LoRe left,
jtpalmer left,
ashleydev left,
scottp left,
pnu left,
lumi___ left,
katernya left,
Tene left,
krakan left,
risou left,
plobsing left,
thou left,
apejens left,
Vlavv_ left,
REPLeffect left,
kthakore_ left,
awwaiid left,
[Coke] left,
ranguard_ left,
athomason left
|
|||
dalek | ecs: 6f34dd5 | larry++ | S03-operators.pod: last from ...* must change .elems to finite |
21:17 | |
21:18
samlh joined,
att joined,
pothos joined,
y3llow_ joined,
havenn joined,
MayDaniel joined,
plobsing joined,
benabik joined,
kaare_ joined,
thou joined,
retup_work joined,
daemon joined,
cotto joined,
BooK joined,
frettled joined,
PacoAir joined,
NamelessTee joined,
ab5tract joined,
lestrrat joined,
Alias joined,
orafu joined,
preflex joined,
mtk joined,
mikec joined,
bonsaikitten joined,
PZt joined,
gfldex joined,
sorear joined,
TimToady joined,
colomon joined,
apejens joined,
alvis joined,
araujo joined,
mathw joined,
Vlavv_ joined,
REPLeffect joined,
tadzik joined,
glass joined,
katernya joined,
kthakore_ joined,
itz_ joined,
doy joined,
jevin joined,
awwaiid joined,
pmichaud joined,
[Coke] joined,
jnthn joined,
jerome_ joined,
Bucciarati joined,
conntrack joined,
ruoso joined,
shachaf joined,
ocharles joined,
__sri joined,
`patch` joined,
bacek_at_work joined,
ranguard_ joined,
LoRe joined,
jtpalmer joined,
charsbar___ joined,
japhb joined,
_ilbot joined,
ashleydev joined,
scottp joined,
pnu joined,
lumi___ joined,
athomason joined,
risou joined,
krakan joined,
Tene joined,
y3llow_ left,
y3llow joined
|
|||
[Coke] wonders if we should be putting rosetta code offerings in roast. | 21:20 | ||
(preferably in some way that doesn't require manual syncing) | |||
jnthn++ # such bs. | |||
21:20
pothos left
21:21
pothos joined,
y3llow left,
havenn left,
y3llow joined
|
|||
dalek | p/bs: a1249b9 | jnthn++ | src/6model/serialization.c: For now, just treat Coroutine like Sub. Gets us able to compile Test.pm and - after copying it elsewhere because of some PROCESS bug that screws up module location - we can run spectests again. Many pass, quite a bit of fail, but hopefully a few common root causes for most of them. |
21:21 | |
masak | nom: sub infix:<*+> ($a,$b) { $a * $b + $b }; say 2 *+ 5 | 21:22 | |
p6eval | nom e95935: OUTPUT«10» | ||
masak submits rakudobug | |||
moritz | nom: sub infix:<*+> ($a,$b) { $a * $b + $b }; say infix:<*+>(2, 5) | 21:23 | |
jnthn | wtf | ||
p6eval | nom e95935: OUTPUT«15» | ||
21:23
y3llow left,
pothos left,
y3llow joined
|
|||
felher | hm. Does nom think its 2 *(+5)? | 21:24 | |
21:24
pothos joined
|
|||
masak | aye. | 21:24 | |
niecza gets it right. | |||
jnthn | yeah but...even the cheating LTM that Rakudo's parser depends on is meant to get *that* case right. | ||
masak | that's why I'm submitting it as a bug :) | ||
jnthn | Well, I dobut I'm gonna hunt down a bug in a load of code I plan to eliminate as soon as I get the tuits. :) | 21:25 | |
Hopefully the new LTM engine gets it righter. | |||
21:26
y3llow left,
y3llow joined,
pothos left
|
|||
masak | well, RT is a catalogue of things that are currently wrong, and makes no allowances for hope. ;) | 21:26 | |
21:27
pothos joined
|
|||
jnthn | I wasn't disagreeing with the ticket. :) | 21:28 | |
Just saying I won't jump on it right away. :) | |||
21:28
y3llow left,
y3llow joined
21:29
pothos left
|
|||
masak | nodnod. | 21:30 | |
21:30
pothos joined
|
|||
dalek | kudo/bs: 7c6ebd7 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Fix PROCESS handling. Now all 00-parrot and 01-sanity pass and we can run the spectests with the build produced right off. |
21:30 | |
jnthn | Yesterday: | 21:34 | |
22:05 <jnthn> Wonder if I can get Rakudo passing most of them spectests again with the bs. :) | |||
22:06 <masak> sounds like a challenge :) | |||
Depends how you pick "most", but: challenge achieved. :) | |||
timotimo | "the bs"? :) | ||
cognominal | bs is no bs. | ||
jnthn | timotimo: "Bounded Serialization" | 21:35 | |
timotimo: A Rakudo branch I've been workong on. | |||
21:35
havenn joined
|
|||
jnthn | timotimo: It cuts hundreds of megs off compiling CORE.setting, quarters startup time and will enable various missing features, extra optimizations, etc. | 21:36 | |
prammer | 'for' lop => 'for' loop # perlgeek.de/blog-en/perl-6/2011-02-...tions.html | 21:37 | |
jnthn | OK, gonna take a break, and when I come back I'll cut this month's R* release. | 21:39 | |
masak: When you did the Rakudo release did you cut an NQP release tarball also? | |||
github.com/downloads/perl6/nqp/nqp....02.tar.gz | |||
gives 404 error | |||
masak | huh :/ | 21:40 | |
jnthn: I did not. it's not in nqp's docs/release_guide.pod | |||
jnthn | :/ | ||
Release guide fail. | 21:41 | ||
masak | feel free to do it now. I would, but I'm a bit tied up. | ||
jnthn | Sure, I do it after le break. :) | ||
21:46
havenn left
|
|||
masak | rant: it should be a TAP error to read the backlog and then make fun of emergent memes in it. | 21:46 | |
21:48
mj41 joined
|
|||
masak | moritz++ # perlgeek.de/blog-en/perl-6/2011-02-...tions.html | 21:50 | |
[Coke] | rant: all y'all. :P | ||
22:00
jaymibbs joined,
preflex_ joined
22:01
preflex left,
preflex_ is now known as preflex
22:03
skids left
22:04
jaymibbs left
|
|||
araujo | :) | 22:13 | |
22:14
MayDaniel left
|
|||
jnthn is back | 22:17 | ||
22:24
colomon left
22:25
havenn joined
22:27
Araq joined
|
|||
masak | Araq! \o/ | 22:27 | |
Araq | how would templating systems or preprocessors work without source code filters? | 22:28 | |
(hi masak :-) ) | |||
masak | your question invites all manner of cheeky/witty responses, but I'll go this route instead: | ||
what do you mean? | |||
22:29
kaare_ left
|
|||
Araq | well I heard perl6 has no source code filters anymore | 22:29 | |
masak | Perl 6 rejects the notion of Perl 5 source filters. | ||
since the latter qualify as multi-pass parsing. | |||
and Perl 6 excplicitly parses source in a single pass. | 22:30 | ||
22:30
snearch joined
|
|||
masak | thus, the kinds of templating systems or preprocessors you're thinking of cannot be Perl 6, since Perl 6 is single-pass. :) | 22:31 | |
22:31
fsergot left
|
|||
Araq | ok so something like www.csse.monash.edu.au/~damian/pape...igata.html is simply not supported anymore? | 22:32 | |
masak | not through Perl 5-style source filters, no. | 22:33 | |
basically, we hope that our gift of general, extensible, hookable parsing will more than make up for that. | 22:34 | ||
timotimo | jnthn: sounds great! | ||
the bs branch i mean | 22:35 | ||
Araq | ok, now the cheeky/witty responses please | ||
timotimo | quarter of startup time is good. last time i checked, startup time was horrible ;) | ||
benabik | bs always _sounds_ great. | ||
Araq | I can't image what's funny about my question, but english is not my mother tongue ;-) | 22:36 | |
masak | Araq: how would they work? "very well." | 22:37 | |
Araq | oh alright :-) | 22:38 | |
jnthn | wtf, the Rakudo * makefile freezes while trying to check out Config-INI | ||
masak | Araq: I wasn't able to tell, fwiw, that English is not your mother tongue. now that I know, I still think it's more than adequate. | ||
22:39
noam left
22:47
tokuhirom left
|
|||
dalek | ar: 7a3322c | jnthn++ | skel/Configure.pl: Update versions in Configure.pl (grr, gotta automate this stuff more...) |
22:50 | |
ar: 60ba95e | jnthn++ | skel/tools/build/Makefile.in: Dammit, forgot to update this too. :-/ |
23:04 | ||
Araq | README: "This is the 2011.07 release of Rakudo Star." | 23:05 | |
nope ;-) | |||
masak | Araq++ | ||
geekosaur | someone needs to write a script to catch that, isn't this like the second or third time someone has caught that before release? | 23:06 | |
(and at least once nobody caught it) | |||
jnthn | Yes, this is waht I bloody mean. there's fo fscking automatio. | ||
*no | |||
23:06
XooX joined
|
|||
jnthn | Which is why I'm still cutting this stupid release rather thatn doing something more fun. | 23:06 | |
masak | XooX: welcome. | ||
masak hugs jnthn | |||
23:07
XooX left
|
|||
jnthn | Not to mention I have to do it under Linux 'cus the script to cut one doesn't work on Windows. :( | 23:07 | |
masak | yeah. much as I dislike using Windows, having a Linux-only script sounds too monocultural. | 23:10 | |
geekosaur | (obviously it should be written in perl 6) | ||
jnthn | Indeed. | 23:11 | |
masak | yeah, because a build script is where you'd want to battle with bootstrapping problems.</sarcasm> | 23:12 | |
geekosaur | :) | 23:14 | |
23:14
havenn left
|
|||
jnthn | fwiw, 2012.02 uses 2.2GB of RAM to build CORE.setting. In the bs branch it peaks around 1.3GB. | 23:15 | |
23:15
alvis left,
PacoAir left
|
|||
jnthn | nom: say 1.3/2.2 | 23:15 | |
p6eval | nom e95935: OUTPUT«0.590909090909091» | ||
Araq | good night guys | ||
jnthn | 'night, Araq | 23:16 | |
23:16
Araq left,
mj41 left
|
|||
jnthn | (That's on 64-bit...) | 23:17 | |
Which, yes, is still way to high. But it's a move in the right direction. | 23:18 | ||
At least, I has a release tarball | 23:19 | ||
23:20
havenn joined
|
|||
masak | 'night, #perl6 | 23:22 | |
felher | o/ | 23:23 | |
23:25
alvis joined,
att left
|
|||
jnthn | rakudo.org/2012/02/28/rakudo-star-2...-released/ # it's out | 23:26 | |
23:35
havenn left
23:37
whiteknight joined
23:42
samlh left
|
|||
felher | jnthn++ :) | 23:54 | |
23:57
Chillance left
23:58
lestrrat left
23:59
lestrrat joined,
havenn joined
|