»ö« 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:01 alester left 00:02 rgrau left, cotto_work joined 00:03 cotto_work left 00:13 mikehh left 00:22 jevin left 00:24 icwiener left 00:37 [Coke] left
masak good night, #perl6. 00:49
00:49 masak left 00:54 mikehh joined
sorear good * #perl6 00:56
weekend \o/
NIECZA TIME
TimToady: "map" is lazyish too but supports loop control 00:57
TimToady: I should clarify - I'm planning to use a factoring where map, Z, and X call the same code
wanted: .u with UniHan/EDICT support 00:58
01:09 plobsing joined
TimToady let's just say that normal operators that you'd apply metas to shouldn't be in the business of doing "next" 01:14
we can just call it "undefined"
01:48 felliott left, nadim left 01:51 envi joined 02:01 noganex_ joined 02:04 noganex left 02:06 cafesofie left 02:22 cdarroch left 02:23 stkowski left 02:25 stkowski joined, stkowski left 02:26 [Coke] joined 02:27 mtk left 02:36 whiteknight left, mtk joined 02:42 envi left 02:53 envi joined 02:55 eternaleye left 02:56 jevin joined 02:59 dukeleto left, dukeleto joined 03:12 agentzh joined 03:22 mtve left 03:30 mikehh left, Trashlord left, spq left, brill left, shachaf left, pochi left, kaydsoft left, domidumont left, cotto left, hillu left, jmmills left 03:36 felliott joined 03:42 benabik joined 03:45 [particle]1 joined 03:46 [particle] left 03:48 [particle]1 is now known as [particle] 03:50 felliott_ joined, felliott left, felliott_ is now known as felliott 04:01 mikehh joined, Trashlord joined, spq joined, brill joined, shachaf joined, pochi joined, kaydsoft joined, domidumont joined, cotto joined, kcwu joined, TiMBuS joined, pjcj joined, nothingmuch joined, bartolin joined, hillu joined, jmmills joined, eternaleye joined 04:02 eternaleye left, eternaleye joined 04:11 satyavvd joined 04:14 hercynium joined
sorear so quiet 04:14
benabik chirp, chirp 04:15
sorear TimToady: ping 04:19
04:26 Su-Shee left 04:28 Su-Shee joined 04:43 charsbr__ left, charsbr__ joined 04:52 risou joined
TimToady is icing a carpal tunnel and can only type left handed 04:54
sorear ow :/
I was just curious what your goals were in rebooting STD 04:55
TimToady just see if it worked with new cclass stuff
04:59 meswami joined 05:03 meswami left
sorear TimToady: there seem to be issues with assignment and metachar:var 05:09
TimToady: I'm snaptesting a fix now 05:11
TimToady, what was the last snaptest result? 05:12
TimToady b4 reboot 93% good 05:13
same as before
724/778 05:17
05:24 lue left 05:31 felliott left 05:33 molaf joined 05:35 dukeleto left, qiyong joined
qiyong perl6 doesn't support switch? 05:35
05:35 dukeleto joined
TimToady called given/when 05:35
05:41 kaare_ joined 05:44 hercynium left 05:48 risou_ joined
TimToady rosettacode.org/wiki/Execute_Brain****/Perl_6 is an example 05:48
05:48 kaydsoft left 05:49 risou left
sorear it should be pointed out that all current implementations are O(number of cases) 05:50
given/when is designed to support jumptables but I don't think anyone does it 05:51
certainly not niecza or rakudo
TimToady not Perl 5 either 05:52
oddly Perl 5 did, and without even having a switch statement :)
s/5/4
sorear How were Perl 4 jumptables written? 05:53
TimToady two opcodes jumped on an int or on an initial char
sorear I mean in source code
TimToady any conditional cascades worked
sorear also note: both Perl 5 and Niecza use an O(n) algorithm for goto 05:54
TimToady: why was that removed in the rewrite? did it turn out irrelevant?
TimToady the innards were completely different, and no one ever got around to reproducing the logic
in a sense it was much easier in Perl 4 because the interpreter just interpreted the tree 05:57
in p5 we had an op_next to consider, so the structure was not so evident in some ways 05:58
06:04 benabik left 06:16 kaydsoft joined, dju joined 06:18 dju left, dju joined, dju left, dju joined 06:23 mayuresh joined 06:25 dju left, dju_ joined 06:27 dju_ left, dju_ joined, dju_ left, dju_ joined 06:28 Aankhen`` joined 06:29 Aankhen`` left 06:32 cjk101011 left 06:33 cjk101010 joined 06:35 mayuresh left
moritz_ good morning 06:37
TimToady still a very dark morning here :) 06:39
and only in the other half of the country
sorear 727/781
dalek d: 6e4a586 | sorear++ | / (4 files):
Reboot and fix viv
06:40
TimToady looks like I need to pull more tests :)
06:42 nadim joined
jdhore tomaw, Out of curiousity, what side of the country are you on, if you don't mind my asking, good sir? 06:43
TimToady the half where it's not morning yet
jdhore ah 06:44
TimToady the quarter where it still won't be morning in an hour
jdhore The West Coast. Just as i suspected...Excellent *taps fingers together* 06:45
jdhore calls the hounds
:P
TimToady course, there's bits that won't have morning for two or three hourse yet...
*hours
jdhore Yep. Like Palin-land and Hawaii :P 06:46
sorear -> sleep 06:47
TimToady n*
jdhore g'night 06:48
06:54 brill left 06:57 s1n left 06:58 s1n joined 07:00 wtw joined 07:02 jaldhar_ joined 07:03 necrodearia left 07:06 _jaldhar left, necrodearia joined 07:30 cjk101011 joined 07:32 Mowah joined, slavik2 joined 07:33 slavik1 left 07:47 dukeleto left 07:48 dukeleto joined 07:55 noganex joined 07:58 noganex_ left 07:59 noganex left 08:00 cosimo left, noganex joined 08:02 kanishka joined 08:11 dju_ is now known as dju
jnthn morning, #perl6 08:29
moritz_ \o jnthn 08:30
jnthn o/ 08:31
jnthn is in Stockholm today :)
08:31 dukeleto left
jnthn Snow storm. Can haz. 08:32
moritz_ teaching again?
jnthn No, "just" speaking this time at an event. :)
08:32 dukeleto joined
jnthn In theory, heading home this evening. In practice, the airports are...chaotic...thanks to the snow. 08:33
moritz_ I thought the Scandinavians had learned to cope with that? :-) 08:35
jnthn I suspect they're pretty good at recovering from it or coping with normal amounts.
This is, apparently, less normal. 08:36
08:38 kjeldahl joined
sjn jnthn: radar images show that it's getting better in stockholm :) 08:41
jnthn: www.yr.no/radar/norden.html
08:45 risou_ left 08:48 wiseguyxp joined 08:50 justatheory left 08:51 justatheory joined 08:54 kjeldahl left
jnthn sjn: Ah, that's kinda reassuring. :) 08:54
08:55 justatheory left 09:01 wiseguyxp left 09:04 solarion left 09:05 solarion joined 09:18 redicaps joined 09:21 redicaps left 09:30 awoodland joined 09:38 dakkar joined 09:39 kanishka left 09:50 mayuresh joined 09:51 mayuresh left 09:52 cjk101011 left 09:53 cjk101011 joined 10:01 cotto left 10:10 kanishka joined 10:15 mtk left 10:21 kanishka left 10:23 daxim joined 10:24 mtk joined 10:25 mayuresh joined 10:27 mayuresh left 10:28 am0c joined 10:34 coldhead left 10:48 awoodland left 10:49 drbean left 10:56 arnsholt left, arnsholt joined 10:58 jaldhar_ left, jaldhar_ joined 11:23 masak joined
masak good afternoon, #perl6 11:23
tadzik afternoon masak 11:25
masak: I passed my first year :)
colomon zenog: -1 * log(1 - $u, $E) can be just -ln(1 - $u)
masak tadzik: kudos. tadzik++
tadzik masak: actually, not entirely. I'll be repeating Physics, but don't tell moritz ;) 11:26
masak it's in the vault :P
colomon rakudo: say e
tadzik hm?
p6eval rakudo 86bf4c: OUTPUT«2.71828182845905␤»
colomon zenog: also, e is a built-in constant in p6, see above
11:27 woosley joined
colomon zenog: as is pi, come to think of it 11:27
zenog colomon: Cool, thank you! 11:29
masak sorear: I'm curious: why is the algorithm for goto O(n) in Niecza and Perl 5?
colomon oh, you're on at the moment (instead of just logging) -- great!
afk # for about two minutes 11:30
zenog rakudo: say pi
p6eval rakudo 86bf4c: OUTPUT«3.14159265358979␤»
zenog nice
11:33 cibs left
colomon back 11:35
jnthn rakudo: say pie
p6eval rakudo 86bf4c: OUTPUT«Could not find sub &pie␤ in main program body at line 22:/tmp/SxB1R1rqQX␤»
masak jnthn! \o/
jnthn masak! \o/
masak jnthn: so... snow, eh? :) 11:36
colomon rakudo 86bf4c: yum, yum
jnthn \o/
masak: Yeah!
masak: Loads!
masak we got it down here as well. in the form of rain. :P
jnthn "Liquid snow"
masak and not too much, either.
jnthn heh 11:37
zenog rakudo: say ln(1)
p6eval rakudo 86bf4c: OUTPUT«Could not find sub &ln␤ in main program body at line 22:/tmp/JgymcU48q5␤»
jnthn There's enough here to cancel flights and stuff.
masak jnthn: I hope the events are going fine.
jnthn But it seems to be improving.
Yeah, event is fine.
zenog colomon: ln is not there, need to use log(x, e) then
jnthn I'm last speaker today.
masak best of luck. 11:39
colomon zenog: oh! That's an odd inconsistency. colomon--
rakudo: say 1.ln
p6eval rakudo 86bf4c: OUTPUT«0␤»
colomon rakudo: say -4.lmn
rakudo: say -4.ln
p6eval rakudo 86bf4c: OUTPUT«Method 'lmn' not found for invocant of class 'Int'␤ in main program body at line 22:/tmp/eWkwLmiClW␤»
rakudo 86bf4c: OUTPUT«-1.38629436111989␤»
masak submits rakudobug 11:40
11:40 cibs joined
colomon tries to remember if he had a reason for leaving out the sub form of ln, or if it is just an oversight. 11:41
rakudo: say 9.log; say 9.ln 11:42
p6eval rakudo 86bf4c: OUTPUT«2.19722457733622␤2.19722457733622␤»
colomon ah, log actually defaults to base e anyway.
I think I might have put ln in merely as an internal routine.
should maybe be !ln 11:43
masak what does the spec say?
colomon spec has log and log10, no ln
masak adds this to the ticket 11:44
11:44 satyavvd left 11:46 ab5tract joined
colomon I think (looking at the code) that ln is there because it was tricky defining log($x, $base) in terms of log($x) / log($base). Something about the interaction of multis and roles, I think. I'll have to look through the blog and see if I explained it there. 11:46
Might be worth re-evaluating when our new nom overlords have taken over. 11:47
11:48 shi joined
jnthn There are issues with multis and roles that will be fixed. 11:48
colomon zenog: I'm very confused by your use of is r vs is rw and $. vs $! 11:49
zenog: not sure it's wrong, but it's definitely surprising / befuddling to me. :)
masak 'is r' looks wrong.
should be 'is readonly', no?
jnthn aye
zenog colomon: let me see 11:50
masak, colomon: I guess I naively assumbed 'r' means
'readonly'
masak it's the default for attributes, so you might not even need to write it. 11:51
colomon readonly doesn't actually mean constant in this context, does it?
masak (I haven't looked at the code.)
zenog Why does Rakudo not complain about it? What is the meaning of 'r'?
So readonly is the default? Good to know ;-) 11:52
masak colomon: for private attributes, it does. a readonly private attribute is essentially useless.
tadzik oh, an lhf
11:53 felliott joined
colomon rakudo: class A { has $.a is rw; }; my $b = A.new; $b.a = 10; 11:53
zenog masak: So private attributes you also cannot initialize?
p6eval rakudo 86bf4c: ( no output )
colomon rakudo: class A { has $.a is rw; }; my $b = A.new; $b.a = 10; say $b.perl
p6eval rakudo 86bf4c: OUTPUT«A.new(a => 10)␤»
masak zenog: exactly. it just falls out of the design. :P
colomon rakudo: class A { has $.a is r; }; my $b = A.new; $b.a = 10; say $b.perl
p6eval rakudo 86bf4c: OUTPUT«Cannot modify readonly value␤ in '&infix:<=>' at line 1␤ in main program body at line 22:/tmp/3s6sI4DQhq␤»
zenog OK
colomon rakudo: class A { has $.a; }; my $b = A.new; $b.a = 10; say $b.perl
p6eval rakudo 86bf4c: OUTPUT«Cannot modify readonly value␤ in '&infix:<=>' at line 1␤ in main program body at line 22:/tmp/8MCrgWBrbV␤»
colomon zenog: readonly doesn't mean it's constant; it means there is no write accessor constructed for the attribute. 11:54
rakudo: class A { has $.a; method set-a() { $!a = 10; }; }; my $b = A.new; $b.set-a; say $b.perl 11:55
p6eval rakudo 86bf4c: OUTPUT«A.new(a => 10)␤»
masak colomon: only for public attributes.
zenog colomon: Is there a way of accessing attributes bypassing accessors, i.e. are objects still some kind of blessed hash? 11:56
masak that's the thing 'is readonly' affects the attribute if it's declared private, and the accessor if the attribute is declared public.
colomon rakudo: class A { has $!a is readonly = 10; }; my $b = A.new; say $b.perl
p6eval rakudo 86bf4c: OUTPUT«A.new(a => 10)␤»
masak zenog: not without using the metaclass.
colomon so if it's a private attribute and is readonly, it's effectively constant? That's handy, I guess. 11:57
masak zenog: (so it's still possible, but it's considered bad form)
colomon: no, it's not handy. it can't even be assigned to once.
jnthn Actually the meta-class isn't really what knows how to access attributes.
The meta-class only know what attributes an object has.
masak right, but you can get at Attribute objects through the meta-class. 11:58
colomon masak: I certainly just did it back there. Is it a rakudobug?
masak colomon: I'm only now seeing it. 11:59
tadzik > perl6 -e 'say ln(1)'
0
masak colomon: it goes against what I've understoon about 'is readonly', but I'm glad to see it works.
jnthn masak: Yeah but I'm not convinced they help either.
masak: They only give information to the REPR about the attribute.
masak tadzik: note that the bug changed since I opened it. 12:00
12:00 qiyong left
masak tadzik: I forgot to cc p6c about the change. 12:00
jnthn I know we ended up with get_value and set_value or something on the attribute meta-object. I'm not particularly intending to keep that.
masak jnthn: oh?
jnthn I didn't think it was right in the first place.
And Damian had plenty of issues with it. 12:01
masak I thought the hard-fought consensus was that they were OK.
tadzik hmm, right
masak Damian didn't object to my eloquent rebuttal. :)
jnthn If there's a way to do it, that's one thing. I just don't know that the correct way is via the attribute meta-object.
12:03 gdey joined 12:04 drbean joined 12:11 eternaleye left, eternaleye joined
masak the argument, briefly, goes: "The MOP breaks encapsulation big time *anyway*, and there are unholy ways of getting at an object's attributes *anyway*, so let's just provide a clean way to access the attributes through the MOP." 12:17
12:19 gdey_ joined 12:22 gdey left
masak recall also that we're not doing it just for foolish consistency, but because (1) attribute initialization and (2) serialization *require* the encapsulation of attributes to be momentarily broken. 12:23
either we provide a clean way to do that in Perl 6, or we'll be forever confined to (probably platform-dependent) escape hatches. 12:24
jnthn masak: My point was that the REPR uses the MOP to arrnage an allocation strategy, so knowledge of how to look up an attribute is not "owned" by the attribute meta-object. 12:25
I agree we should provide an escape hatch.
I'm just not overly keen on the current factoring. 12:26
12:26 obra joined
masak ok. 12:28
dalek ecza: b246ee3 | pmurias++ | cl-backend/backend.lisp:
[cl-backend] handle class Foo {...}
12:37
ecza: 710ffd7 | pmurias++ | cl-backend/backend.lisp:
[cl-backends] remove empty lines
ecza: e735b87 | pmurias++ | cl-backend/backend.lisp:
[cl-backend] added simple arithmetic ops
ecza: a552664 | pmurias++ | cl-backend/ (2 files):
[cl-backend] move stash handling into a seperate package
12:39 wolfram_ joined
masak pmurias++ 12:39
wolfram_ masak: re irclog.perlgeek.de/perl6/2011-02-10#i_3276966: looks like you point to the worst copy (scanned image) of that doc. See www.google.com/search?q=intitle%3A%...type%3Apdf 12:41
Other PDFs are Type 3 fonts which is just acceptable quality but quite typical for not-so-recent TeX -> PDF 12:42
bacek ~~ 12:43
12:43 solarion left, solarion joined
bacek JFYI, parrot switched to GenerationalGC few minutes ago. 12:43
masak wolfram_: ok, great, thanks!
bacek Testers are welcome. You'll need bleeding edge version of rakudo. 12:44
masak wolfram_: I must say I liked the fonts, despite the less-than-perfect quality of the document.
bacek++ bacek++ bacek++
masak builds the latest rakudo 12:45
12:46 bluescreen joined 12:49 wolfram_ left
jnthn bacek++ # will check it out! :-) 12:50
bacek: Will try to get nqp working on it at weekend.
Unless you beat me to it ;) 12:51
bacek jnthn, I checked nqp source. It will not be easiest task :)
jnthn :/
bacek: How so?
bacek Too much low-level C memory allocations.
And there is no "core.pir" to test on it :) 12:52
12:52 MayDaniel joined
masak Parrot revision RELEASE_3_0_0-512-g78df613 required (currently RELEASE_3_0_0-238-g97b004d) 12:52
bacek which exposed quite few problems
jnthn Well, though nqp it bootstrapped. So it has to be able to build itself. That's a pretty big test case :)
masak this is right after building/installing the latest Parrot.
what have I missed?
bacek masak, make reconfig in parrot? 12:53
masak um. ok.
never heard that one before.
bacek masak, it's make realclean + Configure.pl combo
masak ooh.
right, I've lost the realclean habit since moving to a new laptop. 12:54
bacek++
bacek And don't forget --optimize in parrot. Debug build has way too many internal checks :)
jnthn bacek: It's in theory "just" inserting write barriers in the correct places, though?
bacek jnthn, yes :)
jnthn bacek: OK. :) 12:55
bacek: I can always write some object allocation stress tests too.
bacek jnthn, it will definitely help
jnthn, afaiu you have own "vtables", correct? 12:56
you can put write barriers just after calling set_*
12:57 obra left
takadonet morning all 12:58
masak takadonet: \o
jnthn bacek: OK, will take a look.
Will ask if I run into any issues.
13:02 risou joined
bacek jnthn, ok, sure. I'll take a look also. May be it's not _so_ big task. 13:03
13:05 drbean left
jnthn bacek: :) 13:05
bacek: Shouldn't be so bad. Many of the low-level allocations never reference another PMC. 13:06
Well, some of them don't anyway :)
bacek jnthn, yes. But nqp crashes :)
jnthn Right.
I expected it'd need changes.
They're worth it, to have generational GC :) 13:07
masak bacek: Parrot build works, but Rakudo build fails: gist.github.com/822316 13:08
bacek ok. Just build parrot without optimize. It will be dead slow. But help to catch GC errors early.
masak this is bleedingest of both Parrot and Rakudo.
bacek masak, which platform?
masak Debian. 13:09
x64
bacek masak, and how much memory do you have?
Latest stable?
masak about 1.5 GB inside this VM.
HEAD of both Rakudo and Parrot.
bacek interesting... 13:10
It should work.
masak glad we agree on that point ;) 13:11
bacek remote gdb session?
just to print pmc->vtable->whoami->strstart 13:12
from assertion
masak sure, but I'll need hand-holding...
bacek gdb --args usr/local/bin/parrot src/gen/perl6.pbc --target=pir src/gen/core.pm 13:13
type "r" in prompt
wait until it crashes
masak tries that
13:14 felliott left
bacek
.oO( Are commits from perl6/nqp reported somewhere? )
13:14
masak, did you realclean rakudo?
masak um. no :/
masak tries that first
that's probably the reason, come to think of it. :/ 13:15
bacek masak, it can help :)
dalek : 1329dd0 | moritz++ | misc/dalek-conf.json:
[dalek] report commits of the new nqp to #perl6 and #parrot
13:17
takadonet just wrote my first python script..... man i feel dirty hehe 13:19
13:19 kfo_ joined
masak takadonet: nah, don't feel dirty. students of French don't feel dirty when they write Spanish. 13:19
takadonet ya 13:21
13:22 dsp_ joined, kfo left
bacek jnthn, nqp is buildable now. Few tests are failing though. 13:25
moritz_ two test files have been failing before
module.t
and... can't remember the other
dalek p: 7387a66 | bacek++ | src/metamodel/reprs/P6opaque.c:
Insert write barrier after compute of allocation strategy.
13:26
kudo: 32b3a9d | moritz++ | build/PARROT_REVISION:
bump PARROT_REVISION to generational_gc merge. We can use some testing :-)
masak bacek: problem persists even after the realclean. doing the gdb thing. 13:27
bacek: "No executable file specified." 13:28
bacek: this was when running gdb --args usr/local/bin/parrot src/gen/perl6.pbc --target=pir src/gen/core.pm 13:29
moritz_ maybe the --args need to go after the parrot?
masak I tried that too.
got ""/home/masak/git-ours/rakudo/src/gen/perl6.pbc": not in executable format: File format not recognized"
moritz_ is the path to parrot correct? 13:31
13:32 satyavvd joined
masak no, missing / at the beginning. 13:32
moritz_++
bacek jnthn, is nqp test passed before? 13:35
13:36 whiteknight joined
moritz_ bacek: nope, 2 or 3 test files failed 13:37
whiteknight good morning, #perl6
moritz_ vtable.t
module.t
and maybe roles.t
bacek moritz_, hooray! nqp is ported to gen_gc :)
masak, any luck? Or it's still running? 13:38
masak still running. 13:39
bacek: ok, got the same error now from within gdb. 13:40
bacek "up" 13:41
x times to reach assert
masak PARROT_ASSERT(
bacek "p pmc->vtable->whoami->strstart"
masak "No symbol "pmc" in current context." 13:42
did I not go far enough?
whiteknight masak: "frame"
masak ok.
is the output of that interesting to you?
whiteknight yes 13:43
bacek masak, first few lines 13:44
whiteknight, full backtrace gist.github.com/822316
masak gist.github.com/822316
also has gdb interaction now.
bacek masak, "down" 13:46
masak ok, back one level down.
bacek "p pmc->..." 13:47
masak $1 = 0x7ffff7a7398e "CallContext" 13:48
whiteknight is there an actual gdb backtrace?
bacek got it...
whiteknight, #1990
13:49 risou left
bacek whiteknight, may be not... 13:49
13:53 agentzh left 13:54 nadim left 13:56 risou joined 13:57 clkao joined
dalek tpfwiki: (Razan Abbass)++ | www.perlfoundation.org/perl6/index.cgi?perl_6 14:04
14:06 kaare_ left, mikehh left
bacek masak, can you pull parrot to bleeding edge again? 14:07
masak does so 14:08
14:11 plobsing left
bacek masak, I'm falling asleep. Create ticket on trac.parrot.org if latest commit didn't help. Or update #2005 14:28
masak bacek: oki. 14:29
so far, so good. not past the gen/core.pm step yet, but if it crashes I'll create a ticket. 14:30
bacek masak, ok, night. 14:33
Don't forget to rebuild parrot with "Configure.pl --optimize" for any performance testing :) 14:34
masak gotha :) 14:35
colomon how long has --optimize been in there?
14:39 rhr left
tadzik since I remember 14:45
but it's not that long ;)
masak I think I learned about it fairly early, but ignored it since it was connected with instability. 14:46
and I preferred stability to speed.
colomon Ah, agreed on that. 14:48
masak Parrot's stability has since improved a great deal, but I hadn't re-evaluated that decision. 14:50
14:50 Chillance joined, risou_ joined
masak hm, the build proper succeeded. 14:51
but compiling Test.pm failed.
masak submits parrotbug
14:51 risou left 14:52 ofir joined 14:53 pmurias joined 14:56 rhr joined
masak phenny: tell bacek trac.parrot.org/parrot/ticket/2006 14:58
phenny masak: I'll pass that on when bacek is around.
15:04 benabik joined 15:05 shi left 15:14 whiteknight_ joined, cotto joined 15:15 whiteknight left, whiteknight_ is now known as whiteknight, lestrrat left 15:16 whiteknight left, slavik2 left, rokoteko left 15:17 benabik left, hatseflats left, hudnix left, ggoebel left, jql left, silug left, araujo left, zostay left, Maddingue left, jrockway left, sbp- left, diakopter joined, JodaZ left, masak left, simcop2387 left, starcoder left 15:18 rokoteko joined, ggoebel joined, hatseflats joined, lestrrat joined 15:19 simcop2387 joined, yahooooo left, jql joined, yahooooo joined 15:20 araujo joined, Chillance left, dukeleto left, envi left, ofir left, szabgab left, gbacon left, bacek left, zenog left, hugme left, pmichaud left, cognominal left, BinGOs left, skangas left, thepler left, ponbiki left, dsp_ left, Tedd1 left, rhr left, necrodearia left, Su-Shee left, dual left, y3llow left, kst` left, edenc left, shortcircuit left, sftp left, uniejo left, ascent_ left, TimToady left, nsh- left, jpr5 left, krakan_ left, perigrin left, peters_mops left, revdiablo left, MayDaniel left, daxim left, solarion left, noganex left, [particle] left, maja left, flatwhatson left, tty234 left, pnu left, Tene left, larsen left, bluescreen left, gdey_ left, _ilbot left, pyrimidine left, barika left, starcoder2 left, cschimm1 left, gabiruh left, chitragupt left, sorear left, mathw left, jnthn left, Khisanth left, s1n left, dju left, charsbr__ left, [Coke] left, colomon left, cls_bsd left, huf left, LoRe left, llabthgie left, Grrrr left, yves left, Bucciarati left, stepnem left, frooh left, cjk101010 left, varna left, ab5tract left, Mowah left, Patterner left, jedai left, sjohnson left, ruoso left, tadzik left, PacoLinux left, Hackbinary left, ddima left, patch left, betterworld left, mdxi left, cjk101011 left, kaydsoft left, molaf left, lopaway left, Vlavv_ left, literal left, jonnie left, robinsmidsrod left, risou_ left, wtw left, Sarten-X left, aesop left, meteorjay left, pothos left, takadonet left, Eevee left, felipe left, Gothmog_ left, PZt left, snarkyboojum left, tomaw left, pmurias left, clkao left, awwaiid left, arlinius left, florz left, p6eval left, sunnavy left, Grimnir_ left 15:22 diakopter left, jevin left, mkramer left, ashleydev left, xinming left, Helios left, c1sung left, PerlJam left, DarthGandalf left, phenny left, renormalist left, nsh left, sbp left, moritz_ left, takesako left, szbalint left, Trashlord left, spq left, shachaf left, pochi left, domidumont left, kcwu left, TiMBuS left, pjcj left, nothingmuch left, bartolin left, hillu left, jmmills left, cibs left, rokoteko left, lestrrat left, cotto left, eternaleye left, jaldhar_ left, am0c left, mtk left, dakkar left, _sri left, allbery_b left, yahooooo left, kfo_ left, mj41 left, nrr left, wooden left, Kovensky left, kst left, gfldex left, flatwhatson_ left, rbuels left, mux left, aloha left, kolibrie left, frodwith left, meraxes left, araujo left, jql left, simcop2387 left, REPLeffect left, wolverian left, f00li5h left, cookys left, hatseflats left, ggoebel left, satyavvd left, estrabd left, frettled left 15:27 ashleyde1 joined, diakopte1 joined, amkrankr1leuen joined, avuserow_ joined, c1sung_ joined, xinming_ joined, szbalint_ joined, shabble_ joined, PerlPilot joined, cxreg2 joined, moritz__ joined, knewt2_ joined, justatheory joined, Sarten-X joined, cookys joined, szbalint joined, meraxes joined, takesako joined, moritz_ joined, sbp joined, nsh joined, frodwith joined, renormalist joined, frettled joined, phenny joined, kolibrie joined, _sri joined, DarthGandalf joined, aloha joined, mux joined, dalek joined, jjore joined, hcchien joined, apejens joined, broquaint joined, amkrankruleuen joined, saaki joined, avuserow joined, cxreg joined, knewt2 joined, jdhore joined, shabble joined, flussence joined, PerlJam joined, rbuels joined, allbery_b joined, flatwhatson_ joined, calvino.freenode.net sets mode: +vvv phenny aloha dalek, f00li5h joined, wolverian joined, REPLeffect joined, c1sung joined, Helios joined, xinming joined, estrabd joined, gfldex joined, kst joined, Kovensky joined, wooden joined, nrr joined, ashleydev joined, mj41 joined, mkramer joined, jevin joined, Trashlord joined, spq joined, shachaf joined, pochi joined, domidumont joined, kcwu joined, TiMBuS joined, pjcj joined, nothingmuch joined, bartolin joined, hillu joined, jmmills joined, dakkar joined, mtk joined, am0c joined, jaldhar_ joined, cibs joined, eternaleye joined, kfo_ joined, satyavvd joined, cotto joined, diakopter joined, rokoteko joined, ggoebel joined, hatseflats joined, lestrrat joined, simcop2387 joined, jql joined, yahooooo joined, araujo joined, starcoder joined, jrockway joined, Maddingue joined, zostay joined, WAAGL8K joined, benabik joined, ribasushi joined, DAA4Y6Q joined, JodaZ joined, hudnix joined, masak` joined, rhr joined, pmurias joined, ofir joined, risou_ joined, Chillance joined, clkao joined, dsp_ joined, MayDaniel joined, bluescreen joined, gdey_ joined, ab5tract joined, daxim joined, cjk101011 joined, solarion joined, dukeleto joined, noganex joined, Mowah joined, necrodearia joined, wtw joined, s1n joined, cjk101010 joined, dju joined, kaydsoft joined, molaf joined, charsbr__ joined, Su-Shee joined, [particle] joined, envi joined, [Coke] joined, szabgab joined, awwaiid joined, dual joined, colomon joined, gbacon joined, aesop joined, Patterner joined, maja joined, jedai joined, bacek joined, lopaway joined, meteorjay joined, sjohnson joined, pothos joined, y3llow joined, takadonet joined, zenog joined, Eevee joined, kst` joined, hugme joined, ruoso joined, Vlavv_ joined, cls_bsd joined, tadzik joined, pmichaud joined, arlinius joined, felipe joined, Tedd1 joined, ponbiki joined, thepler joined, skangas joined, BinGOs joined, cognominal joined, bbkr joined, Raynes joined, rblackwe joined, breinbaas joined, krunen_ joined, Juerd joined, Util joined, Grimnir_ joined, sunnavy joined, p6eval joined, florz joined, edenc joined, flatwhatson joined, _ilbot joined, Gothmog_ joined, pyrimidine joined, shortcircuit joined, PacoLinux joined, literal joined, sftp joined, Hackbinary joined, jonnie joined, calvino.freenode.net sets mode: +vv hugme p6eval, tty234 joined, barika joined, uniejo joined, pnu joined, huf joined, Tene joined, ascent_ joined, LoRe joined, snarkyboojum joined, starcoder2 joined, llabthgie joined, TimToady joined, tomaw joined, ddima joined, Grrrr joined, cschimm1 joined, gabiruh joined, chitragupt joined, sorear joined, yves joined, revdiablo joined, peters_mops joined, perigrin joined, krakan_ joined, jpr5 joined, nsh- joined, patch joined, varna joined, larsen joined, Khisanth joined, jnthn joined, mathw joined, betterworld joined, frooh joined, stepnem joined, Bucciarati joined, mdxi joined, robinsmidsrod joined, lamstyle left, HarryS left, woosley left 15:28 HarryS joined, alester joined 15:29 xinming left, ashleydev left 15:30 lamstyle joined
masak` I think there could be a market for a really good p5->p6 regex converter. 15:30
15:30 knewt2 left, Helios left, PerlJam left, cxreg left, shabble left, renormalist left, c1sung left, moritz_ left, szbalint left, avuserow left, amkrankruleuen left, diakopter left, phenny left, nsh left, Helios joined 15:31 phenny joined, nsh joined 15:32 masak` is now known as masak
sorear masak: linear search 15:33
moritz__ takadonet: perl 6 regexes interpolate strings as literals (not regexes), so there's no point in \Q...\E anymore 15:35
and for writing literals, we have quotes in regexes too
m/'match f*#&! things'/ 15:36
takadonet moritz__: Indeed just saw that in S05 . I rewrote the rx and all is well
I got my test to pass now and working on the others
15:39 Lorn joined
tadzik I thought about writing a JSON parses using json-glib through zavolaj, but estimating the number of calls needed I doubt if it would be any faster, and if it's worth the effort 15:40
15:40 molaf left
masak sorear: that was my guess. Yapsi does it as well right now. 15:41
sorear: shouldn't be difficult to improve, though.
15:42 plobsing joined
tadzik looks like the biggest bottleneck of JSON::Tiny is lots and lots of method calls 15:44
is anyone familiar with those profiling wonders? 15:45
15:46 cotto_work joined, cotto_work left
masak tadzik: I know pmichaud did a bit of profiling. he mentioned it on parrot-dev, and that he got surprising/seemingly impossible results. 15:50
flussence gee, he's still having problems joining the channel? :/
tadzik yeah, seems so
15:51 felliott joined, nadim joined
TimToady std: not 42 15:52
p6eval std 625303c: OUTPUT«ok 00:01 118m␤»
TimToady sorear: that seems to fail now under ./viv -e 15:53
masak std: so not 42
p6eval std 625303c: OUTPUT«ok 00:01 118m␤»
TimToady Whitespace required after keyword at (eval) line 1: 15:54
------> no⏏t 42
masak std: no t
p6eval std 625303c: OUTPUT«ok 00:01 117m␤»
flussence WRT profiling, "impossible" has been the case every time I've done any serious profiling of code... 15:55
15:58 PerlPilot left, PerlJam joined 15:59 jaldhar_ left, jaldhar_ joined, satyavvd left 16:03 cjk101011 left 16:04 wtw left
sorear TimToady: I fixed that in niecza recently. I guess the bug wasn't niecza-only... let me try to same fix. 16:05
TimToady is the <?before \w> in <ws> wrongly adding itself to the longest token? 16:13
dalek d: 0ef3d73 | sorear++ | STD.pm6:
[STD] Fix keyspace LTM
sorear <ws> should be special-cased to not generate longest tokens ever
there was, however, nothing to stop the <?before <-[(]>> in keyspace from adding to it 16:14
16:14 Patterner left
TimToady right--I didn't search for the right error message :) 16:14
thanks 16:15
16:17 Psyche^ joined, Psyche^ is now known as Patterner, kaare_ joined
TimToady appears to fix all my 'nok' blowups too, not surprisingly :) 16:20
sorear snaptest improved much?
TimToady well, moving it over to my new server machine speeded it up to 18 minutes :) 16:21
if you'd like an account for snaptesting, I can give you one...
sorear is this diakopter's vps? 16:22
TimToady no, a machine in my house
sorear the trouble with external testing is I prefer to test, then publish... 16:23
TimToady right
also, the name is under dynamic IP, so disappears off the face of the earth for 10 minutes if my network glitches
but if you want some heavy CPU at some point, I've got six cores on that machine 16:24
it's also still a bit unstable because we're still bringing up sysadmin stuff that was on our old linux gateway machine before it started dying 16:26
16:37 orafu joined 16:38 MayDaniel left
dalek d: 4608239 | sorear++ | / (2 files):
[viv] Add $<x> = { code } to reduce dependency on mutable cursors
16:44
16:45 bluescreen left
TimToady for some reason my last snaptest on my new server couldn't find is_run, despite the fact that it's defined in the .syml 16:50
so I only got 905
90%
16:50 ofir left
TimToady likely related somehow to being in Test/Util.syml 16:51
16:57 felliott left
TimToady the encapsulation breakers should be named something like BAD_MONKEY_SEE and BAD_MONKEY_DO :) 16:59
pmurias sorear: hi 17:00
sorear: i passed my lisp project
TimToady \o/ 17:01
17:01 wiseguyxp joined
pmurias sorear: do you think it makes sense to work more on the lisp backend or should i help more with the main stuff? 17:01
17:02 Sarten-X left 17:04 zenog left 17:05 ab5tract left 17:06 shi joined
TimToady takadonet: I presume you discovered that /m turned into ^^ and $$ anchors instead 17:09
std: /^$/m 17:10
p6eval std 625303c: OUTPUT«===SORRY!===␤Unsupported use of suffix regex modifiers; in Perl 6 please use prefix adverbs at /tmp/kMEfZaXdvs line 1:␤------> /^$/m⏏<EOL>␤Other potential difficulties:␤ Unsupported use of /m; in Perl 6 please use ^^ and $$ anchors at
../tmp/kMEf…
17:11 felliott joined, felliott_ joined, felliott left, felliott_ is now known as felliott 17:12 Sarten-X joined 17:15 avuserow_ is now known as avuserow 17:21 felliott left 17:22 kjeldahl joined 17:24 araujo left 17:25 bluescreen joined 17:27 icwiener joined 17:28 silug joined 17:33 pmurias left 17:34 aesop left, aesop joined 17:43 cdarroch joined, cdarroch left, cdarroch joined 17:44 aesop left 17:48 Lorn__ joined, kjeldahl left 17:50 wiseguyxp_ joined 17:51 MayDaniel joined, diakopte1 left, hatseflats left, ggoebel left, starcoder left, simcop2387 left, diakopter joined, ggoebel joined, jql left, starcoder joined, hatseflats joined, yahooooo left, Lorn left, wiseguyxp left, ryan__ joined, yahooooo joined 17:52 simcop2387 joined
moritz__ rakudo: say (1161-1629)/1629*100 # rakudo speedup through parrot's gen_gc 17:53
p6eval rakudo 86bf4c: ( no output )
moritz__ pugs: say (1161-1629)/1629*100 # rakudo speedup through parrot's gen_gc
p6eval pugs: OUTPUT«-28.7292817679558011049723756906077348066298␤»
moritz__ erm, minus the - :-)
benabik moritz__: Measured how? Build, spectest, other benchmark? 17:54
moritz__ benabik: spectest
rakudo: say 1
p6eval rakudo 86bf4c: ( no output )
benabik moritz__: Awesome.
flussence well of course it'd be 28 times faster - it replaced everything with no-op!
benabik :-D 17:55
TimToady when can we haz it? 17:56
moritz__ I'm rebuilding now on the server 17:57
TimToady: it's already merged, so "now"
jdhore Does rakudo have non-blocking IO yet? 17:58
moritz__ no 17:59
jdhore :( 18:00
TimToady the forest fire simulator is quite a bit snappier now \o/ 18:01
moritz__ any contributions in that direction would be very welcome
18:02 MayDaniel left, mtk left 18:03 dakkar left, stkowski joined
TimToady my quiz editor doesn't seem much faster though, so may it's not GC-bound 18:06
18:07 szbalint_ is now known as szbalint
TimToady it's probably just too-many-PMC-indirections-bound 18:08
18:10 aesop joined 18:11 mtk joined, gdey joined
masak jdhore: "Is feature X in yet?" -- "No." -- ":(" is a fairly inefficient way to promote a featuer in an open-source project. 18:13
jdhore masak, I was just curious. 18:14
flussence async IO is easy - just implement threads and it's a one-liner 18:15
18:15 gdey_ left
masak other ways: "you know what would be great... here's why: ..." -- "hey, I wrote these tests!" -- "hey, I wrote this patch" -- "hey, I have this project that could really use feature X. if someone implements it, it'd be really cool!" 18:15
jdhore masak, None of those apply to me and i don't like patronizing people by overstating/lying about a feature that'd be nice/cool. 18:16
18:17 ymasory joined
masak jdhore: I'm not saying that async IO isn't important. (I don't know enough about it to say either way.) I'm saying that the devs have a given set of priorities and that some actions make it easier than others to prioritize your priorities. 18:18
flussence libaio + zavolaj might be an easy way to get it
(though it's very kernel-specific)
18:19 ggoebel left
jdhore masak, I'm not asking them to prioritize my priorities. I was just curious. It wouldn't really bother me if rakudo didn't get async IO for 10 years. 18:19
masak jdhore: ok, then I misinterpreted your ":(". 18:20
18:21 plainhao joined, simcop2387 left, takadonet left 18:22 takadonet joined
jdhore Yes you did. 18:22
takadonet flussence: how's Text-tab-wrap fork doing? 18:23
TimToady but perhaps you also misled him :)
18:23 simcop2387 joined
flussence takadonet: I've made the module code more perl6ish, I'll look at replacing the global variables with named params soon 18:24
takadonet ok
18:24 ggoebel joined
flussence also, this is a lot more readable than the original IMO: github.com/flussence/Text-Tabs-Wra...p/t/wrap.t :) 18:25
takadonet i already saw that branch :) Good job. Remember I was just doing a straight port 18:27
I'm doing the same with Text::Diff right now and man it's ugly
flussence takadonet++ # porting scary code 18:28
moritz__ rakudo: say 1
p6eval rakudo : OUTPUT«1␤»
18:29 PZt joined, envi left
takadonet flussence++ for cleaning up my mess 18:30
TimToady takadonet: you saw my note above about /m? 18:33
takadonet nope
dukeleto has anybody done any rakudo benchmarking on the new parrot master branch, since generational_gc was merged? 18:35
TimToady irclog.perlgeek.de/perl6/2011-02-11#i_3280982
^^ for takadonet 18:36
dukeleto: irclog.perlgeek.de/perl6/2011-02-11#i_3281109
dukeleto TimToady: the performance change is uneven. It seems that for the spectest, it is a win 18:38
TimToady 28% faster
dukeleto TimToady: but for write-heavy code, it will be slower
things seem to be faster on average, but some stuff is much slower. Is this acceptable for Rakudo ?
the branch was merged to master earlier than some would like, so I am trying to figure out if Rakudo is happy 18:39
yes, the spectest is faster, but has anyone tried some actual benchmark code?
TimToady my quiz editor is still usable 18:40
masak dukeleto: I'm having problems running the built Rakudo: trac.parrot.org/parrot/ticket/2006
dukeleto: bacek started looking at it, and helped with a problem during the build itself.
TimToady what rakudo mostly needs is to use fewer PMCs, or for parrot to provide much lighter PMCs
takadonet TimToady: thx
dukeleto we are seeing a >2x slowdown on Parrot's md5sum code
TimToady does that use PMCs heavily, or native types? 18:42
flussence spectest faster? we'll see about that :)
TimToady flussence++
flussence goes to rebuild on slow-as-molasses server
dukeleto TimToady: a mixture. It seems to use FixIntegerArrays and lots of native type variables 18:44
TimToady: so it uses PMCs for containers, but uses native types for the actual calculated quantities
TimToady wonders if it's doing unnecessary boxing/unboxing
18:44 ymasory left 18:46 cotto_work joined 18:47 cotto_work left, jferrero joined 18:50 risou_ left
TimToady obviously we should change our algorithms so they always do reads instead of writes ;) 18:52
colomon brilliant! ;)
18:55 kjeldahl joined, mikehh joined 18:57 cotto_work joined, cotto_work left 18:59 daxim left 19:01 kjeldahl left 19:03 cotto_work joined, cotto_work left 19:04 cotto_work joined, hudnix left
dalek tpfwiki: (Razan Abbass)++ | www.perlfoundation.org/perl6/index.cgi?max 19:07
19:07 cotto_work left, cotto_work joined, hudnix joined
TimToady um, that's odd 19:08
19:09 cotto_work left 19:10 cotto_work joined, araujo joined 19:11 cotto_work left, cotto_work joined 19:12 cotto_work left
[Coke] blastr.com/2011/02/read-arthur-c-clarkes-rel.php - short story from Arthur C Clarke that might be of interest to this crowd. 19:12
19:14 cotto_work joined, cotto_work left 19:15 cotto_work joined 19:16 cotto_work left
TimToady At least Clarke gives God some free will, which is more than we can say for lots of theologies that tell God what he must have done, and how he must have done it. :) 19:17
I include those theologies that tell God he can't exist... :) 19:18
19:19 hatseflats left
sbp God gives Clarke free will, Clarke gives God free will 19:19
19:19 hatseflats joined 19:20 cotto_work joined, cotto_work left 19:22 cotto_work joined, cotto_work left 19:25 cotto_work joined, cotto_work left 19:26 cotto_work joined, ymasory joined
masak it's interesting how even such a short story has a clear ring of that era. had it been written today, would God have been using multitouch gestures instead of all-caps verbs? 19:33
sbp and fifty years before, it would have been some telephone exchange metaphor
sort of like Vannevar Bush's Memex paper. I know it's prophetic genius and so on, but it does make me chuckle how the various inventions are represented in such thoroughly contemporary terms 19:35
forseeing the styles, fashions, and quirks of the future much harder than the trends 19:36
someone should translate Ada Lovelace's "first program" into perl6
masak ooh
[Coke] ZOMG I TRIED IT AND IT ALREADY COMPILES 19:37
takadonet rakudo: my $ya = "\cIa" 19:38
p6eval rakudo : OUTPUT«===SORRY!===␤Method 'panic' not found for invocant of class 'Regex;Match'␤»
takadonet ???
moritz__ internal error during error reporting
masak submits rakudobug
takadonet nuts 19:39
masak sbp: the Wikipedia page says Ada's program computed Bernoulli numbers, but it doesn't go into details. know any webpage that goes into details? 19:40
sbp no, but see cs-www.cs.yale.edu/homes/tap/Files/...notes.html for a quote
the program was Note G in Lovelace's appendices
reprinted, apparently, in Toole's work quoted there
masak ok, thanks.
19:41 shi left
sbp I have not been able to find any more substantive reproduction on the web, of which I am somewhat surprised 19:41
masak rakudo: "\cI"
p6eval rakudo : OUTPUT«===SORRY!===␤Method 'panic' not found for invocant of class 'Regex;Match'␤»
masak sbp: indeed.
takadonet rakudo: my $ya = '\cIa'
p6eval rakudo : ( no output )
moritz__ nqp: "\cla" 19:42
p6eval nqp: OUTPUT«Unrecognized \c character at line 1, near "la\""␤current instr.: 'parrot;HLL;Grammar;panic' pc 635 (src/cheats/hll-compiler.pir:206)␤»
moritz__ that's the error I'd expect
sbp this is supposed to be a copy of some table associated with her Bernoulli algorithm: 19:43
moritz__ what's weird is that rakudo doesn't override <charspec> (the routine that throws this error)
sbp www.computerhistory.org/babbage/ada.../5-7-2.jpg
masak adds that to the ticket
sbp blog.wolfram.com/2008/04/29/today-w...thematica/ is of some interest too, a modern solution to the same problem 19:44
masak: found it: 19:45
www.fourmilab.ch/babbage/sketch.html
masak \o/
sbp specifically www.fourmilab.ch/babbage/sketch.html#NoteG
I love the beginning of the second paragraph 19:46
"The Analytical Engine has no pretensions whatever to originate anything. It can do whatever we know how to order it to perform. It can follow analysis; but it has no power of anticipating any analytical relations or truths. Its province is to assist us in making available what we are already acquainted with."
what a wonderful introduction to the notion of programming in general
masak when I got into cumputing in the 80's, that was a fact that I still saw stated in introductory computing books. I wonder if it needs to be as heavily emphasized nowadays. :) 19:50
19:50 MayDaniel joined 19:52 bluescreen left
masak sbp: seems the whole algorithm is treating (8) as a recurrence relation. 19:55
sbp well, I'm more impressed with the way that she understood so thoroughly the principles, at the same time as she was writing out the first program. a lot of people come to new ideas with only partial understanding
for example Newton and his fluxions: Bishop Berkeley famously derided him for not having solved the bit that we now solve with limits 19:56
but Newton did that step intuitionistically
or, similarly, the behaviouralisms of HTML weren't really understood very well, so SGML kept its grip in the standards side of things until HTML5 moved things on (despite the TAG's TagSoup issue) 19:57
dukeleto Many of the most famous math proofs of history where technically first proved incorrectly, but then found out to be correct for other reasons.
Euler was the king of questionable algebra that turned out to be correct.
sbp Fermat's famous margin wouldn't have contained the contemporary proof even if it had extended to a dozen folios, indeed
no, surely Ramanujan
people are still puzzled over where he got his insights 19:58
his approximations for pi, for example
benabik I love how long it took for the infinitesimal method of calculus to actually be proved.
sbp some of those are insane!
dukeleto sbp: Ramanujan never had questionable algebra. He just wrote down the answer.
sbp hehe
I see, that is an important distinction :-)
dukeleto sbp: i've implemented some of Ramanujans pi identities in GMP. They are fascinating.
arnsholt The Chuck Norris algebra! =D
dukeleto Ramanujan was the Chuck Norris of Number Theory 19:59
19:59 kjeldahl joined 20:00 jql joined, am0c left
masak if you've mentioned Euler and Ramanujan, I'll have to throw in Galois, my famous young troubled mathematician. 20:01
don't know about the quality of his proofs, but there is reputed to be a lot of "I don't have time to explain" in his notes...
masak backs a few Parrot/Rakudo revisions so that he can write a Bernoulli number algorithm 20:03
20:04 bluescreen joined
arnsholt masak: Ah that's a classic proof technique. Proof by left-as-an-exercise-for-the-reader 20:05
I've used it occasionally in my math-related exams =) 20:06
benabik arnsholt: Better than Fermat's famous proof by don't-have-room-on-this-page.
arnsholt =D
masak Ramanujan has a number of formulas for calculating Bernoulli numbers. as usual, his formulas look totally arbitrary. 20:09
arnsholt And apparently the Bernoulli numbers were first published in a book called Ars Conjectandi. "The art of guessing", a bit crudely translated =D 20:11
masak I do love a good gerund. 20:12
"Six numerical data are in this case necessary for making the requisite combinations." -- nice to see someone treat "data" as a plural. nowadays it's more of a mass noun. :) 20:13
arnsholt The gerund is indeed an awesome form
Too bad it fell out of use in medieval Latin
masak I never got that far. I took classical Latin, and then didn't proceed up to the newer forms. 20:14
arnsholt And I'm guilty of treating data as a mass noun, actually. I tend (or at least try) to be conservative with the classical inflections in English
masak aye. 20:15
arnsholt Medieval Latin is primarily closer modern Romance, really
So gerunds and supines are all but gone, and the syntax is a lot simpler
(Unless it's completely broken, which is occasionally the case when the scribes really didn't know what they were doing) 20:19
masak Ada Lovelace's Note G doesn't quite help explaining it to me. and for once, the Wikipedia page on Bernoulli numbers is more a hindrance than a help. 20:22
TimToady data as a count noun has turned into a mere shibboleth
sbp Lt. Cmdr. Data are not amused 20:23
masak on the Wikipedia page, the odd-indexed Bernoulli numbers that are all 0, except for B_1. but Ada's equation has only odd-indexed Bernoulli numbers in it. 20:24
benabik masak: It's a simplification to make computation faster.
sbp wonder if you could get to 10**9 using the same method but with the techniques used in that recent pi computation paper 20:26
then again, part of that was down to the algorithm
masak benabik: ok.
I think the secret to what Ada is actually doing might be revealed if one understands her tables. but I'm not sure I have the presence of mind to do that tonight. 20:27
benabik masak: Nothing makes an equation faster than removing all the parts that require doing math with things other than 0.
moritz__ rakudo: "\ca"
p6eval rakudo : OUTPUT«===SORRY!===␤Unrecognized \c character at line 22, near "a\""␤»
moritz__ rakudo: "\cla"
p6eval rakudo : OUTPUT«===SORRY!===␤Unrecognized \c character at line 22, near "la\""␤»
arnsholt TimToady: My response to insisting on data as a plural is to ask for the plural of aquarium =)
moritz__ rakudo: "\cIa" 20:28
p6eval rakudo : OUTPUT«===SORRY!===␤Method 'panic' not found for invocant of class 'Regex;Match'␤»
masak arnsholt: "fish tanks"? :P
arnsholt Cop out =p
sbp images fish going to war
*imagines
"Forms: Pl. -iums, -ia." - OED
20:29 mkramer left
arnsholt That would be awesome. Also, I so want an unabridged OED 20:29
sbp aquariums from 1869, aquaria from 1880 (Disraeli, heh) 20:30
20:30 ryan__ left
dalek p-rx: 14741af | moritz++ | src/HLL/Grammar.pm:
change error reporting in <charspec>

This makes no difference in nqp itself, but in rakudo the old way caused a
  "Method 'paniuc' not found for invocant of class 'Regex;Match'
20:30
p-rx: e18bf4e | moritz++ | src/stage0/ (3 files):
update bootstrap files
sbp (ooh en.wikipedia.org/wiki/Boustrophedon_transform ) 20:34
20:34 jaldhar_ left
TimToady and I'm *guilty* of using data as a mass noun only in the sense that I'm guilty speaking 21st century English. 20:35
so please don't apologize to masak for speaking modern English. :P
masak "boustrophedon" is an awesome word. :)
TimToady not if you're an ox
masak not sure oxes have opinions on words... 20:36
TimToady ox fords seems to, however
*seem
masak :P 20:37
[Coke] my new favorite is octopodes.
TimToady odd that they have no feet
20:37 nadim left
sbp octopodes - two feet 20:38
TimToady unless the octopode in question is a yoke of oxen... 20:40
sbp (try them as two trochees, sounds awesome) 20:41
20:44 nadim joined
sbp programmingpraxis.com/2011/02/08/th...program/2/ 20:50
some putative versions of Lovelace's Bernoulli program in lisp and python
20:52 MayDaniel left
arnsholt sbp: As an aside, the Greek quantity pattern is probably short-long-short-short =) 20:52
But, yay trochees indeed
sbp bah, the Greeks wouldn't know euphony if it hit them with an... oh wait, euphony is a Greek word 20:54
20:54 plobsing left
TimToady I greatly prefer to use amphibrach meter... 20:54
20:55 plainhao left
sbp they should call the amphibrach a namphimacer 20:55
also, it's funny how amphibrach is an amphimacer but amphimacer doesn't even reciprocate in using the same syllabic cardinality 20:56
dukeleto generational_gc just unmerged from Parrot master 20:57
sbp perhaps amphimacer was the original word for an amphibrach, and modern amphimacer was called a namphimacer and then evolved to the current form through apheresis
dukeleto currently lives in the gen_gc2 branch. We would love some Rakudo testing on it, since we plan to merge it after 3.1 gets cut
dukeleto goes back to cave 20:58
TimToady well, anapest is dactyl, and dactyl is trochee, so you can see how everything ends up there...
20:59 takadonet left
TimToady that's why it's Teenage Mutant Ninja Turtles all the way down... 20:59
masak ok, I have an algorithm that I think might be right. 21:07
rakudo: my @B; for 1..* -> $n { say @B[2 * $n - 1] = [+] 1/2 * (2 * $n - 1)/(2 * $n + 1), map -> $k { -@B[2 * $k - 1] * ([*] map { 2 * $n - $_ }, 0 .. 2 * $k) / ([*] 2..2+2*$k); }, 1..$n-1 }
p6eval rakudo : OUTPUT«(timeout)66666667␤0.133333333333333␤-0.60952380952381␤-2.57936507936508␤1.53131313131313␤89.213986013986␤582.988563288563␤-1006.4921087627␤-72644.3203851761␤-895113.241460749␤-1371996.23046368␤193955278.071697␤4847126037.86978␤49192195850.4352␤-917903851769.26␤-59060810914091␤-1.48…
masak does that look like Bernoulli numbers to you? :) 21:08
anyway, it's based on Ada's equation (8). and it looks a bit similar to the Lisp program sbp linked to.
Ada writes "Thus there will be a cycle of a cycle of Variable-cards." I think she is referring to the map inside the $k for loop. 21:12
arnsholt Certainly sounds like a nested loop 21:13
pmichaud good afternoon, #perl6
I may be largely unavailable except via email for the next 5 days; Paula and I are taking an "emergency vacation" :-) 21:14
I will be checking email and irc each evening and morning, however 21:15
moritz__ pmichaud: have the appropriate amount of fun and recovery/recreation 21:21
pmichaud we will. Do we have a release manager for Thursday? 21:22
moritz__ nope
but I'll take care of that
pmichaud if no-one volunteers, I will do it.
moritz__ (either find a volunteer, or do it myself)
pmichaud wfm
and thanks
21:23 gdey left, gdey joined
sbp masak++ 21:25
flussence spectest finished! half an hour faster than usual 21:26
21:26 plobsing joined
flussence which, considering it went up by half an hour a few days ago, is a good start... 21:27
moritz__ anybody wants to do the release on Thursday? 21:30
it's nto hard, just follow instructions :-)
the hardest part is settling for a .pm group for the code name
21:31 arlinius left, kaare_ left
masak that's actually true. 21:32
21:33 dukeleto left 21:34 dukeleto joined 21:36 mtk left
pmichaud was any .pm group active at FOSDEM, ooc? 21:40
if so, they're a good candidate for release name, imo
also, I'd accept almost any .pm group that szabgab++ would care to honor :) 21:42
21:50 MayDaniel joined 21:53 awwaiid left 21:54 arlinius joined
jdhore I'm not szabgab++, but NYC.pm :P 21:55
masak becomes aware of the Java syntax 'A.new B()' for the first time 21:56
er, a.new B(), where a is an A, and B is a nested class in A.
moritz__ what does it do? 21:57
kinda looks like TTIAR to me
masak it creates a new instance of A.B 21:58
yeah, it looks totally weird.
21:58 aindilis joined, gdey_ joined
masak Eclipse was complaining when I wrote it as new A.B(); 22:00
and it even knew to give a good enough hint of what I should write instead.
moritz__ maybe that's like closures, where the outer context has to be executed to provide the lexical context for the inner scope 22:01
arnsholt Yeah, new A.B() only works if B is class A { static class B {} } IIRC
moritz__ so the outer class needs an instance to create the inner one 22:02
arnsholt What moritz__ said. The inner object of a non-static inner class can access properties (even privates! =) of its outer object
masak yes, you're both right.
22:02 gdey left
arnsholt You can even do A.self to get your parent 22:02
masak and the class B couldn't be made static, because it used instances from the outer class A. 22:03
22:03 moritz__ is now known as moritz_
arnsholt Arglebargle. Prolog's exception handling is making my brain all weird 22:04
moritz_ you mean it isn't already all weird? :-)
arnsholt Well, weird-er- =)
Prolog is kinda weird as well, which doesn't exactly help ^^ 22:05
moritz_ masak: do you have an ETA for p4 reviews? 22:06
masak moritz_: I'm hoping to start preparing a blog post tomorrow. I don't want to rush it though, so it might be a few days before I publish it. 22:07
moritz_ masak: ok, thanks
arnsholt: do you want to do a Rakudo release for a change? :-)
arnsholt I could do that, I guess 22:08
But I have to fill out the CLA, right?
masak doubts that's necessary 22:10
or maybe it is, since you're making commits to the Rakudo repo... 22:11
moritz_ arnsholt: would be good, but for a single release i think we can manage without
arnsholt: if you want to make occasional Rakudo contributions, you should consider signing one
arnsholt Yeah, I've been meaning to do it, but never got around to it 22:12
moritz_ arnsholt: I've entered you as a release manager
now I need to go to bed :-)
'night all
arnsholt 'nite 22:13
22:13 ryan__ joined
masak 'night, moritz_. 22:15
dalek kudo: d267ba8 | moritz++ | docs/release_guide.pod:
[docs] arnsholt++ volunteers for release
22:16
sorear good * #perl6 22:22
22:29 ymasory left
masak sorear! \o/ 22:29
arnsholt Hmm. Maybe my exception handling code wasn't just wrong, but also too complicated 22:32
arnsholt hopes the light at the end of the tunnel isn't a train
sorear sbp: I recently got my hands on a computer architecture book from 1959. I think the symbols used for AND and OR gates are the biggest thing that's changed in the last 50 years... 22:33
22:34 pyrimidine left 22:36 felliott joined
sorear speaking of papers with antequated terms 22:36
jdhore: What exactly do you mean by "non-blocking IO"? 22:39
ryan__ Hello, I'm looking for GSOC ideas and Dukeleto++ informed me that I should speak to some people in the IRC. Does any one have any ideas? 22:41
jnthn ryan__: Not off hand but I'm planning to blog some GSoC ideas that I'd be willing to mentor shortly. 22:42
I'm sure others have ideas too.
What are you intersted in working on?
ryan__ I'm interested in bioinformatics 22:44
sorear jdhore: I think currently my perl6 is in the best position to add that...
masak woot
22:44 vmspb joined
masak ryan__: hi, I'm an almost-graduated bioinformatician. :) 22:45
sorear you are in good company, ryan__
jdhore sorear, Which Perl 6 is yours?
sorear niecza
jdhore ah
arnsholt Aren't there some people working on BioPerl6?
There was someone in here, but the name escapes me... 22:46
ryan__ I've asked about that in the #bioperl irc, but I often don't get any responses from people 22:47
masak arnsholt: I think that's takadonet, but not sure either.
ryan__ bioperl6 would be really interesting
sorear knows regrettably little about this "bioinformatics" stuff
arnsholt Yeah, takadonet sounds right
masak sorear: it's fascinating. lots of nice data structures and big data sets. 22:48
arnsholt In theory I know nothing about bioinformatics. But since I'm a computational linguistics, a lot of the same techniques turn up ^_^
22:48 gdey_ left
masak sorear: I learned about the wonders of suffix trees on a bioinformatics course. 22:48
ryan__: just "bioperl6" is probably way too big a project for GSoC... :) 22:49
jdhore <sorear> sbp: I recently got my hands on a computer architecture book from 1959. I think the symbols used for AND and OR gates are the biggest thing that's changed in the last 50 years... <--- What are these magical symbols, out of curiousity?
masak ryan__: but there are a number of things related to it that probably would make good GSoC projects. 22:50
sorear jdhore: I don't fully remember offhand, sorry 22:51
jdhore dang
sorear jdhore: it was more "this is annoying" than "this is interesting"
jdhore I can imagine.
ryan__ masak: can you think of any off hand? is there a webpage that would like bioperl6 sub projects?
22:51 whiteknight joined
masak ryan__: not to my knowledge. there might be a github page for bioperl6 somewhere. 22:51
masak looks
sbp hmm. 'There are two sets of symbols in common use, both now defined by ANSI/IEEE Std 91-1984 and its supplement ANSI/IEEE Std 91a-1991. The "distinctive shape" set, based on traditional schematics, is used for simple drawings, and derives from MIL-STD-806 of the 1950s and 1960s.'
masak ryan__: ah, here: github.com/cjfields/bioperl6 22:52
arnsholt Bah. Beat me to it =p 22:53
masak ryan__: from what I've heard, Perl 6 grammars are a great enabler for things like parsing FASTA etc.
arnsholt I also have a basic Viterbi decoder module
22:53 jevin left
arnsholt I've talked a bit to takadonet about making it useful for bioperl6, but nothing came out of it 22:54
masak ryan__: but slow runtime speed and large memory footprint also set fairly strict limits to what can be done.
sbp what's the difference between the ^^ and the ?? !! operators?
x ?? a !! b is pretty much x(a) ^^ b, isn't it? 22:55
masak I wouldn't say so. 22:56
sorear My book used these: commons.wikimedia.org/wiki/Category...ogic_gates
masak sbp: in x ?? a !! b, x and either one of a or b (but not both) is evaluated.
sbp: x(a) looks like a function call of x with a as an argument.
sbp: and then both x, a and b are evaluated. 22:57
sbp yeah, but obviously I mean by x(a) to construct a nonce function that returns a if x and false otherwise
masak "obviously" :)
sbp hehe
masak well, b will always be evaluated if you use ^^ 22:58
sorear jdhore: ^^^
sbp oh, hmm. what does it mean that ^^ is short-circuiting then?
sorear True ^^ True ^^ die() # doesn't die
jdhore ah, wow
masak sbp: it means that it stops as soon as it has *enough* information.
sorear as soon as two true values are seen, ^^ stops
sbp ah, I see. but True ^^ die() does die 22:59
masak right.
sbp is there a fully short-circuiting form of xor?
arnsholt You can't really short-circuit more, I think 23:00
masak right.
sbp what about this: a ?? a !! b
arnsholt a xor b can't be decided based on a single value like or/and
sbp hmm, otherwise it could be or. of course...
arnsholt That's a or b
masak sbp: that's called a || b
sbp I just don't think ahead 23:01
23:01 pmurias joined
pmurias sorear: hi 23:01
sorear pmurias: hi
arnsholt sbp: Then I'm not alone, which is good I suppose 23:02
Or at least a consolation to me =)
sbp :-)
pmurias sorear: i passed my common lisp project ;)
23:03 gdey joined
pmurias sorear: what are niecza's long term plans? 23:04
23:04 mj41_ joined
pmurias sorear: i'm not sure what the role of the common lisp backend should be 23:06
23:06 mj41 left 23:07 mj41_ is now known as mj41, Mowah left 23:08 drbean joined 23:11 vmspb left
sbp so what about (a if x) or b? is that the same as x ?? a !! b? 23:14
sorear sbp: it's spelled (x and a) or b
sbp: and it's not *quite* the same - consider x=1, a=0, b=1 23:15
sbp: but it's close enough that Python uses it
pmurias: I'm not totally sure about the long-term plans myself
sbp oh, the ternary forces booleanity back into the condition alone 23:17
you could make binops that behaved that way 23:18
do any others do that? only treating False as false, not 0?
23:20 alester left
sorear uhm, x=True a=False b=True has the same issue 23:20
sbp oh, silly me 23:21
masak 'night, #perl6 23:25
sbp so what about this:
(x and a or Nil) // b
'night masak 23:26
23:26 masak left
sbp (ignore cases where a is Nil) 23:26
pmurias sorear: i think it would be worthwhile to decide/think about what do you want niecza to be 23:27
s/be/become
sbp ugh, no, that won't work either
(a if x or Nil) // b seems to 23:28
23:28 plobsing left
sbp not sure if that needs to be ((a if x) or Nil) 23:29
¿tighter(if, or)?
pmurias sorear: making it usefull for something seems a decent plan (you would have to find a niche for it)
sorear: possible things that come to my mind would be either making useable .NET option for Perl coders (interop/more of the commonly used features/decent speed) 23:31
sbp rakudo: say "a" if 0 or 1 # easy way to find out 23:32
p6eval rakudo : OUTPUT«a␤»
pmurias sorear: or making it an interesting toy (implement something cool that rakudo etc. is not likely to have in the near future)
sorear: the way i intended to go with mildew (before i decided it wasn't worth pushing it and smop alone) was to go the static/compile time route as much as possible 23:33
23:35 plobsing joined
sorear the original idea of niecza was that it would be an interesting toy, a test platform for optimizations 23:37
since then things have changed a bit
it's still a lovely test platform - I can explore things Rakudo does differently 23:38
niecza implements a few things Rakudo is far away from, and vice versa 23:44
it will serve as an "interesting toy" for people who want threads, or LTM 23:45
definitely I should work on getting full CLR interop working
a lot of people are having issues with smallish missing features, like .fmt and decimal literals 23:48
pmurias: how does the simple-tests stuff work? 23:49
TimToady: Are the "is unary" declarations in STD fossils? 23:50
pmurias sorear: the clisp backend pass the simple-tests 23:51
23:52 jevin joined
sbp rakudo: say 1,2 X 3,4 X 5,6 23:53
p6eval rakudo : OUTPUT«No applicable candidates found to dispatch to for 'infix:<X>'. Available candidates are:␤:(Any $lhs, Any $rhs)␤␤ in main program body at line 22:/tmp/h2bytGzjpz␤»
sbp
The operator is list associative, so
1,2 X 3,4 X 5,6
produces
(1,3,5),(1,3,6),(1,4,5),(1,4,6),(2,3,5),(2,3,6),(2,4,5),(2,4,6)
23:53 MayDaniel left
sbp (S03) 23:53
sorear sbp: not in rakudo (known bug) 23:54
sbp thanks
23:56 ryan__ left
pmurias prove -e 'mono run/Niecza.exe' simple-tests runs the simple tests 23:59