»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by Juerd on 28 August 2009.
00:09 beggars left 00:22 betterwosld joined 01:04 slava joined 01:13 dukeleto joined 01:21 [1]Limbic_Region joined 01:23 [1]Limbic_Region left
dukeleto seen fperrad 01:32
@seen fperrad
lambdabot I haven't seen fperrad.
01:36 colomon joined 01:38 Limbic_Region left 01:40 ag90 joined 01:43 skids left
colomon rakudo: say (4 + 0i) ** 2; 01:46
p6eval rakudo 0d4fe0: OUTPUT«16␤»
colomon rakudo: say (4 + 1i) ** 2;
p6eval rakudo 0d4fe0: OUTPUT«17␤»
colomon rakudo: say 1i ** 2; 01:48
p6eval rakudo 0d4fe0: OUTPUT«1␤»
colomon rakudo: say 1i ** 3;
p6eval rakudo 0d4fe0: OUTPUT«1␤»
01:49 ag90 left
colomon rakudo: say abs(1i); 01:52
p6eval rakudo 0d4fe0: OUTPUT«1␤»
colomon rakudo: say abs(4+1i);
p6eval rakudo 0d4fe0: OUTPUT«4.12310562561766␤»
dukeleto rakudo: say (8i).roots(4) 02:00
p6eval rakudo 0d4fe0: OUTPUT«1.55377+0.643594i-0.643594+1.55377i-1.55377-0.643594i0.643594-1.55377i␤»
colomon rakudo: say +(4+1i) 02:01
p6eval rakudo 0d4fe0: OUTPUT«4+1i␤»
colomon rakudo: say (4 + 1i).Num 02:02
02:02 wayland76 joined
p6eval rakudo 0d4fe0: OUTPUT«Method 'Num' not found for invocant of class 'Complex'␤» 02:02
wayland76 @seen moritz_ 02:03
phenny wayland76: 28 Aug 12:20Z <pmichaud> tell wayland76 I think perl6 --version should report the actual version. But I don't know of a clean way to do that yet... patches welcome.
lambdabot moritz_ is in #perl6. I last heard moritz_ speak 1d 4h 45m 47s ago.
02:10 Makoryu joined 02:17 M_o_C left 02:18 Whiteknight left
TimToady moritz_ is out sailing till Sunday, I believe 02:22
colomon TimToady: Am I correct in assuming that operators like ** are intended to work with Complex? 02:27
TimToady why not?
colomon I don't think the spec mentions it, and I wanted to make sure the tests I've been writing are reasonable. 02:28
wayland76 Ok, thanks. I was just going to suggest a clarity improvement for his blog post, but it's not really important :)
TimToady certainly for integral powers it should work
dukeleto colomon: i wrote many spec tests for complex numbers, but you may have found some new bugs
colomon TimToady: There's no real reason they can't work for complex powers as well. I've got an implementation to do it, in fact, but it fails for mysterious (non-math, I think) reasons. 02:29
wayland76 Does that mean that »**« is a hyper power?
TimToady rakudo: say 1i ** 0.3
p6eval rakudo 0d4fe0: OUTPUT«1␤»
wayland76 In that case, I think we need a meta-operator called "super" :) 02:30
02:30 tylerni7 joined
colomon TimToady: yeah, it's just completely broken in current rakudo -- routinely returns incorrect results. 02:30
TimToady rakudo: say (1..10) «**» 2
p6eval rakudo 0d4fe0: OUTPUT«Non-dwimmy hyperoperator cannot be used on arrays of different sizes or dimensions.␤in Main (/tmp/dymW1j2irE:2)␤»
TimToady o_O 02:31
dukeleto see's a bunch of colored smoke
colomon rakudo: say (1..10 >>**>> 2
p6eval rakudo 0d4fe0: OUTPUT«say requires an argument at line 2, near " (1..10 >>"␤in Main (src/gen_setting.pm:2550)␤»
colomon rakudo: say (1..10)>>**>> 2
p6eval rakudo 0d4fe0: OUTPUT«149162536496481100␤»
wayland76 I'll give say an argument
TimToady funny it thinks <<**>> is non dwimmy 02:32
wayland76 rakudo: say "I'm going to punch your head!";
p6eval rakudo 0d4fe0: OUTPUT«I'm going to punch your head!␤»
TimToady rakudo: say (1..10) <<**>> 2
p6eval rakudo 0d4fe0: OUTPUT«149162536496481100␤»
TimToady no, only «**»
wayland76 Hmm. Is that a bug?
dukeleto rakudo: say (1i ) ** 2; 02:33
p6eval rakudo 0d4fe0: OUTPUT«1␤»
TimToady I'll bet there's a copy-paste error somewhere
tylerni7 the internets say anyone who knows how to be nice can help out with perl6, is this true?
dukeleto tylerni7: indeed it is
TimToady you also have to be nice, most of the time
colomon dukeleto: There are a lot of tests for Complex, but none for **.
tylerni7 I can do that mostly
dukeleto tylerni7: welcome! how would you like to help?
wayland76 tylerni7: use.perl.org/~masak/journal/39445 02:34
dukeleto colomon: do you have commit access to the spec test suite?
02:34 weinig joined
colomon Yes. 02:34
02:34 weinig left
wayland76 tylerni7: Although masak has pointed out that the information in that link is open-ended, rather than closed-ended 02:34
colomon Do y'all reckon I should create S32-num/power.t? I don't see any tests for non-Complex **, either... 02:35
So far I've just been piggy-backing the Complex ** tests into complex.t.
tylerni7 I'm not sure what I'd be best at... I'm OK at perl 5, but I'd love to do whatever needs to be done that I can actually do? 02:36
dukeleto colomon: that is good :) S32-num/complex.t is very sparse
wayland76 tylerni7: That link will suggest various roles you could fill in the community
TimToady tylerni7: lots of ways to help out, depending
dukeleto colomon: do you want to add your examples as todo'ed test cases? 02:37
colomon dukeleto: That's what I've been thinking.
dukeleto colomon++
TimToady tylerni7: at minimum, you can tell us where our documentation sucks :)
wayland76 But it may also help to mention your skill-set. Can you also write C? Documentation? Or would you prefer to try writing real-world perl 6 and submitting bug reports? There are other options too, but those spring to mind at the moment
02:38 hudnix left
wayland76 (afk &) 02:38
tylerni7 I think I'd probably be most useful doing bug reports or documentation
dukeleto colomon: you very well may hit some parrot bugs. The parrot Complex PMC is barely tested and has some bugs with NaN handling, at least
tylerni7 so uh yea, I guess I'd be best as a priest? 02:40
dukeleto tylerni7: you can run a smoke bot, which is an automated testing service that updates to the latest code and then submits test runs to a central server
colomon rakudo: sub iPower($a, $b) { exp($b * log($a)) }; say iPower(1i, 3.0);
p6eval rakudo 0d4fe0: OUTPUT«NaNNaNi␤»
colomon versus
dukeleto tylerni7: we all fill many roles as we go further in our quest
tylerni7 ok sounds good
TimToady mostly we don't try to put people in boxes, so you can do whatever tickles your fancy
colomon rakudo: say exp(3.0 * log(1i));
p6eval rakudo 0d4fe0: OUTPUT«-1.83691e-16-1i␤»
TimToady as you can see, some people just like to torment rakudo in-channel 02:41
tylerni7 heh
dukeleto tylerni7: first thing is, have you downloaded some code and gotten it to compile on your machine? what platform are you on?
02:41 calvinf joined
dukeleto rakudo: say floor(NaN) 02:41
p6eval rakudo 0d4fe0: OUTPUT«-2147483648␤»
tylerni7 I don't have perl 6 yet, I'm on 64bit linux
(ubuntu)
TimToady same as me 02:42
02:42 carlin joined
dukeleto that isn't a rakudo bug, it's a parrot bug. I'm on it ;) 02:42
tylerni7 is there a link for the source of the smoke bot testing program thing? 02:43
TimToady well, you probably want rakudo.org/how-to-get-rakudo first 02:46
if you want to hack on tests or specs, you'll want a pugs commit bit (for the pugs repo, which holds a lot of stuff in addition to the pugs implementation) 02:48
most of the web pages are stored there too
tylerni7 ok
TimToady in fact, if you /msg me your email and preferred svn nick, I can give you a commit bit now
dukeleto tylerni7: the test suite is written in perl 02:49
tylerni7 ok
dukeleto tylerni7: it's fun, I promise
tylerni7 hehe :P I'm not worried about that
TimToady you have to understand that for some of us, our idea of fun is rather...masochistic... :)
dukeleto TimToady++ 02:50
tylerni7 I said I've used perl before :P hehehe
TimToady okay, pugs commit bit sent 02:51
tylerni7 ok I'm building rakudo now
TimToady takes a little more work to get a rakudo commit bit, 'cause they require a signed agreement
colomon What's the proper syntax to TODO a test? is it just # TODO ?
dukeleto colomon: #?rakudo todo 'some description' 02:52
02:52 calvinf left
TimToady on the line before the test 02:52
dukeleto colomon: that is called "fudging" the test
TimToady see t/spec/README for more
dukeleto colomon: it can take a number as well to denote a group of tests.
TimToady or it can treat a block of tests as one thing
dukeleto colomon: #?rakudo 3 skip '3-arg log' 02:53
colomon dukeleto++ TimToady++
dukeleto colomon: there is also #?rakudo 3 todo 'foo'
TimToady if it parses okay
colomon skip if it doesn't parse, todo if it does, right? 02:54
TimToady right
dukeleto colomon: todo tests run, so that when they pass, you know about it. skipped tests don't run, because they b0rk the test process/fail to parse/don't apply to the current platform/compilation args
pmichaud skip if it segfaults, also
(or otherwise aborts)
(good evening, #perl6)
dukeleto pmichaud: howdy 02:55
colomon Is there a code for "passes, but almost certainly for the wrong reasons"?
dukeleto colomon: there should be :) usually a hilarious and scary comment takes it's place
TimToady you can still mark it todo, and it will "unexpectedly succeed" 02:56
pmichaud might as well leave it passing. but then (if possible) add a test that demonstrates the wrong reason :)
02:56 sevvie joined
TimToady though autounfudge may delete the todo 02:57
dukeleto colomon: but I think writing another test that fails would be the best case scenario :)
colomon Sure, I've got the tests that fail, too.
But like this sequence:
dukeleto autounfudge sounds like a bland process
colomon say 1i ** 2;
rakudo: say 1i ** 2; 02:58
p6eval rakudo 0d4fe0: OUTPUT«1␤»
colomon rakudo: say 1i ** 3;
p6eval rakudo 0d4fe0: OUTPUT«1␤»
colomon rakudo: say 1i ** 4;
p6eval rakudo 0d4fe0: OUTPUT«1␤»
dukeleto rakudo: $x = 1i; say $x ** 2
p6eval rakudo 0d4fe0: OUTPUT«Symbol '$x' not predeclared in <anonymous> (/tmp/RXsGuzYQ0n:2)␤in Main (src/gen_setting.pm:3454)␤»
dukeleto rakudo: my $x = 1i; say $x ** 2
p6eval rakudo 0d4fe0: OUTPUT«1␤»
dukeleto interesting. it does not seem to be a precedence issue 02:59
colomon So the first two are wrong, and the third surely is also wrong but happens to be the correct answer by accident.
dukeleto colomon: the third is not a good test
colomon how so?
pmichaud I think the ultimate problem at the moment is that Parrot likes to numify complex numbers into reals 03:00
dukeleto x ** 4 and (ix)**4 are always the same number
since (i)**4 = 1
colomon dukeleto: it's more than that:
dukeleto so it is not a useful test
pmichaud so since Rakudo doesn't have infix:<**>(Complex, Any) yet, it's falling back to infix:<**>(Any, Any)
colomon rakudo: say (4 + 1i) ** 2
p6eval rakudo 0d4fe0: OUTPUT«17␤»
dukeleto colomon: that is definitely a bug 03:01
pmichaud and then Parrot numifies the 1i to be 1
(yes, that's broken)
example coming up
colomon pmichaud: Yes, I've implemented nfix:<**>(Complex, Any) -- but another bug seems to break it.
dukeleto colomon: the more tests the better :) 03:02
colomon Thought I'd focus on making sure there were tests for it first.
jeekobu rakudo: say (2 + 1i + 3 + 2i) ** 2
p6eval rakudo 0d4fe0: OUTPUT«34␤»
pmichaud rakudo: say (2 + 1i + 3 +2i)
p6eval rakudo 0d4fe0: OUTPUT«5+3i␤»
pmichaud rakudo: say (5 + 3i) * (5 + 3i)
jeekobu Yeah
p6eval rakudo 0d4fe0: OUTPUT«16+30i␤»
colomon 34 = 25 + 9
jeekobu Yup 03:03
pmichaud Maybe I'll patch Parrot so it throws an exception when attempting to numify a Complex with a non-zero imaginary component
colomon pmichaud: That seems like a very good idea. 03:04
pmichaud oh, ick
TimToady decommuting &
pmichaud return sqrt(re * re + im * im); 03:05
dukeleto pmichaud: that is what a signalling NaN is for
pmichaud: feel free to add your comments to trac.parrot.org/parrot/ticket/954 :) 03:06
pmichaud dukeleto: that ticket is well over my head
switching terminals... brb
dukeleto pmichaud: i doubt it :) Does rakudo want to support the concepts of "quiet" NaN (the normal one) and signalling NaN (sNaN), which throws an exception at first use 03:07
parrot is toying with implementing the idea. I don't know if any HLL's would want it though 03:08
pugs_svn r28101 | colomon++ | [t/spec/S32-num/power.t] Start to generate some tests for **.
pmichaud Perl 6 exceptions are of the "throw at first use" variety
colomon I need to get some sleep now. If someone could take a look at power.t there and see if it looks reasonable, and let me know what changes I can make, I'll try to get to them in the morning... 03:09
dukeleto colomon: there?
duh 03:10
i see
colomon: i will take a look
pmichaud I suspect the integer power tests should not be is_approx
colomon Danke.
pmichaud colomon: do you have your implementation of infix:<**>(Complex, Any) somewhere? I'd like to take a look at it 03:11
rakudo: say 3 % 0; 03:12
p6eval rakudo 0d4fe0: OUTPUT«3␤»
pmichaud o_O
rakudo: say 3 / 0
lisppaste3 colomon pasted "** for Complex" at paste.lisp.org/display/86216
p6eval rakudo 0d4fe0: OUTPUT«Divide by zero␤»
pmichaud colomon: thanks 03:13
colomon I believe the exact same code needs to be declared again as infix<**>(Any, Complex) as well.
pmichaud I'm not sure that exp and log are completely working on complex numbers
dukeleto pmichaud: for instance, floor(NaN) could raise a signalling NaN (exception) instead of returning ilogb(NaN), which is the fallback in ieee754-2008 and the non-intuitive behavior that you mentioned 03:14
pmichaud dukeleto: Rakudo will want to do whatever the Perl 6 specification says to do. I don't know what that will be. :-)
dukeleto pmichaud: is there any documented stance for what the Perl 6 spec thinks of ieee754 ? 03:15
pmichaud dukeleto: not that I'm aware of.
checking 03:16
oh, wait. lots of stuff
see S02
S02:653 03:17
colomon pmichaud: If you check the back log, you can see examples from me where complex log and exp work fine in isolation, but if you wrap a function around them the function's result is incorrect. 03:19
and now off to bed for real. 03:20
dukeleto colomon: night!
pmichaud: nice! now I have ammunition to implement that stuff in parrot :)
pmichaud buubot: spack ieee 03:21
buubot pmichaud: Couldn't match input.
pmichaud buubot: spack IEEE
buubot pmichaud: Couldn't match input.
pmichaud (I did ack -i ieee on the synopsis directory, lots of useful information there)
dukeleto whoa: in the absence of explicit initialization, native floating-point types default to NaN,... The complex type defaults to NaN + NaN i. 03:22
more than one kind of NaN ? 03:23
pmichaud rakudo: multi sub infix:<**>(Complex $a, $b) { ($a.log * $b).exp }; say 1i ** 2;
p6eval rakudo 0d4fe0: OUTPUT«-1+0i␤»
carlin rakudo: eval("sub foo"); eval("foo"); say $!;
p6eval rakudo 0d4fe0: OUTPUT«maximum recursion depth exceeded␤»
dukeleto so perl 6 distinguishes between complex NaN and real NaN 03:24
03:24 sevvie left
pmichaud my $a = 1i; my $b = 3; say log($a), $a.log; 03:25
rakudo: my $a = 1i; my $b = 3; say log($a), $a.log;
p6eval rakudo 0d4fe0: OUTPUT«0+1.5708i0+1.5708i␤» 03:26
pmichaud rakudo: my $a = 1i; my $b = 3; say log($a) * $b, $a.log * $b;
p6eval rakudo 0d4fe0: OUTPUT«0+4.71239i0+4.71239i␤»
pmichaud rakudo: my $a = 1i; my $b = 3; say exp(log($a) * $b), exp($a.log * $b);
p6eval rakudo 0d4fe0: OUTPUT«-1.83691e-16-1i-1.83691e-16-1i␤»
pmichaud a-ha 03:27
dukeleto pmichaud: precedence ? 03:28
pmichaud objectref-ness 03:29
03:29 sevvie joined
pmichaud rakudo: my $a = -1i; sub foo($a) { exp($a) }; say foo($a), exp($a); 03:29
p6eval rakudo 0d4fe0: OUTPUT«1+3.60739e-313i0.540302-0.841471i␤»
03:34 Myspl joined
pugs_svn r28102 | leto++ | Change integer tests in S32-num/power.t to use is() instead of is_approx(), set the planned number of tests and add a todo test for complex powers 03:35
03:35 Myspl left
pmichaud rakudo: say "3".exp 03:37
p6eval rakudo 0d4fe0: OUTPUT«Method 'exp' not found for invocant of class 'Str'␤»
carlin rakudo: proto foo { say 42; }; proto foo { say 42; }; foo; 03:40
p6eval rakudo 0d4fe0: ( no output )
dukeleto rakudo: say (0**0) 03:44
p6eval rakudo 0d4fe0: OUTPUT«1␤»
dukeleto rakudo: say (NaN**0) 03:45
p6eval rakudo 0d4fe0: OUTPUT«1␤»
dukeleto who thinks that is intuitive ? ;) 03:47
carlin rakudo: say "foo"**0; say "foo"**1; 03:49
p6eval rakudo 0d4fe0: OUTPUT«1␤0␤»
wayland76 Just for everyone's reference, I linked perl6.org on the Wikipedia page for Perl 6. If anyone else wants to link it on some of the other high-ranking perl6 websites... :) 03:52
03:55 mepplock joined
pugs_svn r28103 | leto++ | Add some tests to S32-num/power.t relating to Inf, NaN and complex numbers 03:55
carlin rakudo: proto foo($bar) {}; proto foo($baz, $quux) {}; foo;
p6eval rakudo 0d4fe0: ( no output )
carlin does that segfault for anyone else? 03:56
dukeleto carlin: I get a Bus error on darwin 03:59
carlin rt #68242 is sort of related to this 04:00
04:09 carlin left 04:11 meppl left
pugs_svn r28104 | leto++ | Add myself to AUTHORS. It took a while. 04:12
04:12 mepplock is now known as meppl 04:16 Confield left 04:23 nbrown left 04:41 Karthz joined
Karthz How can I be a volunteer? What kind of help could I do for Perl 6? 04:42
wayland76 Karthz: Overview of how to help use.perl.org/~masak/journal/39445 04:43
But there are many ways, depending on your skill set
Karthz Thanks!
wayland76 We also have a shiny new website: perl6.org/
Karthz I am a Software Developer. However, I am new to Perl. I would love to learn Perl though.
wayland76 Ok, that's not a problem 04:44
Karthz Yeah, I visited this chat from the new website only.
04:44 frew joined
wayland76 I'd suggest reading over the first link I pasted. Probably the first thing to do in your case is get a copy of the Rakudo implementation of the Perl 6 spec 04:44
Once you have that, try out some examples and stuff, so that you can get a feel for what's done and what isn't 04:45
What programming languages are you currently familiar with?
Karthz I am familiar with Java, C++, C, and Python. 04:46
wayland76 Ok, you may find Perl a little different
in that, you can do pretty much all the stuff you're familiar with
But there are also a number of things borrowed from other languages that you'll be less familiar with 04:47
one of the Perl slogans is "There's more than one way to do it", so Perl tends to provide features so that you can use any programming style you like
04:47 cognominal joined
wayland76 ...up to a point. They don't feel they have to get *everything* in, but they like to include lots 04:48
Karthz cool. that sounds great.
04:49 hudnix joined
Karthz Could you please tell me where I could get a copy of the "Rakudo implementation of the Perl 6 spec"? 04:49
wayland76 The long version of what I just said appears here: www.wall.org/~larry/pm.html -- that was written before perl6 was designed, but some ideas still apply (you may not want to read the long version, so that's just FYI)
wayland76 is looking for the link for Karthz 04:50
Makoryu Karthz: rakudo.org/how-to-get-rakudo <- Like this?
wayland76 www.rakudo.org/how-to-get-rakudo
Ah, I'm too slow :)
Karthz thanks to the both of you :)
Makoryu bows
wayland76 Quick overview -- the Rakudo implementation of the Perl 6 spec runs on the Parrot Virtual Machine
So part of the setup is getting that installed 04:51
If you're on an RPM system, you can also build RPMs of Parrot and Rakudo, if you prefer those
(I'll be back in 2 minutes) 04:52
Makoryu Speaking of Parrot, is there a J/K/Q implementation yet? (I know there's an APL implementation but.... it's APL.) 04:53
wayland76 You mean, is there an implementation of eg. the language called "J" that runs on Parrot? 04:55
Makoryu Yep
wayland76 I don't know the answer to that -- the #parrot channel on irc.parrot.org will probably know though 04:56
pmichaud there's been some interest in implementing J 05:04
afk, sleep 05:07
05:12 kyle_l5l joined 05:13 rwolf joined
Karthz is there a Perl book that you would recommend? 05:15
for beginners of Perl 05:16
Makoryu Karthz: The Perl 6 wikibook seems to be geared towards beginners 05:19
wayland76 My approach when learning Perl 5 was to read the Perl 5 equivalent of perlcabal.org/syn/ 05:20
That also has the big advantage that it's up-to-date :) 05:21
The Perl6 spec is fairly stable in most areas, but there are still areas that change
For example, IO is still in draft mode, and so are threads 05:22
05:25 cotto left 05:26 eMaX joined, cotto joined
Karthz cool, thanks 05:29
05:33 idontknowperl joined
idontknowperl hello? 05:33
05:33 idontknowperl left 05:36 justatheory left, beggars joined
wayland76 I should've mentioned that my link to the synopses might not be everyone's preferred method of learning, but it worked for me. 05:52
Also, S02 could be confusing if you don't know Perl
Karthz: Did you ever program in BASIC?
Karthz long back.. that's the first language i ever learnt 05:53
05:53 anfedorov joined
anfedorov hi all 05:53
wayland76 hi
anfedorov random guy on internet here, very impressed with perl6 architecture ;) you guys are brilliant! 05:54
wayland76 Karthz: Ok, so you'll be familiar with the idea that punctuation can mark a variable type
Karthz wayland76: why do you ask? is there a relation between BASIC and Perl?
anfedorov oops, I'm thinking Parrot, perl6 is neat too, though
:)
s1n ouch!
wayland76 Well, in BASIC, a string is called STRINGNAME$ whereas in Perl, a scalar is is $stringname 05:55
(scalars can be strings, ints, or whatever, like in Python)
We also have @array and %hash
so you can have $item = @array[0]
or $item = %hash<key> 05:56
Anyway, I'm going to be away from my keyboard for half an hour or so -- see you all in a bit
Karthz sure, thanks a lot. 05:57
05:58 jauaor joined
jauaor hello 05:58
06:02 SmokeMachine joined
spinclad hugme: hug me 06:03
hugme hugs me
spinclad :)
06:06 fakewasabi joined 06:07 eMaX_ joined, fakewasabi left 06:08 renormalist left, eMaX left 06:09 renormalist joined, jaldhar joined 06:10 anfedorov left
wayland76 back. 06:25
hugme: hug spinclad
hugme hugs spinclad
06:46 SmokeMachine left 06:50 rwolf left 06:53 carlin joined 07:10 zamolxes left 07:14 sri_kraih joined 07:17 SmokeMachine joined 07:21 agentzh joined 07:29 frew left 07:31 Makoryu left
dukeleto yay for proper perl6 syntax highlighting in vim 07:32
07:34 Su-Shee joined
Su-Shee good morning! :) 07:34
07:35 omega_ left, omega joined
dukeleto 'ello 07:38
07:38 FCO joined 07:39 SmokeMachine left 07:41 slava left 07:42 jrtayloriv left 07:45 beggars left 07:54 Karthz left
pugs_svn r28105 | leto++ | Add more tests for various power operations in S32-num/power.t 08:03
08:13 gr888 joined, gr888 left 08:15 molaf joined 08:27 Rint joined 08:32 caglar joined, caglar is now known as Guest84939 08:55 wormphlegm joined 08:56 wormphlegm left, wormphlegm joined 08:57 wormphlegm left, wormphlegm joined 08:58 wormphlegm left 09:00 IRSeekBot joined 09:01 Oaksage joined, PZt left 09:08 agentzh left 09:13 eMaX_ left 09:18 eMaX joined 09:20 agentzh joined 09:44 agentzh left 09:48 szbalint joined 09:50 ejs joined 10:16 abra joined 10:19 agentzh joined 10:22 kyle_l5l left 10:30 agentzh1 joined 10:33 wayland76 left, wayland76 joined 10:35 jaffa8 joined
jaffa8 hi 10:35
10:36 PZt joined
jaffa8 How would you determine in Perl 6 regular expression if a captured group is not captured? 10:36
10:37 iblechbot joined 10:40 agentzh left 10:48 M_o_C joined 10:55 payload left
cognominal jaffa8, I suppose that the name of the rule is missing as a key from the $/ tree 10:55
wayland76 You start by looking among the hostages! (Yes, that's a joke, because I don't know the answer :) ) 11:03
11:04 beggars joined 11:08 maerzhase joined
cognominal jaffa8, if you meant checking within the expression itfself, you are ouf of luck because Perl 6 closure are not yet implemented by PGE 11:14
colomon pmichaud++ # working implementation of Complex ** 11:16
11:21 Front_slash joined 11:22 ceci joined 11:29 synth left, synth joined 11:30 azawawi joined
azawawi hi 11:31
jaffa8 I mean an expression like this 11:32
e.g/(a)|(b)/
According to synopsys
both are matched as $0 11:33
How do you know which is matched left or right?
azawawi moritz_: ping 11:34
moritz_: can u install sbcl on feather1? 11:38
moritz_: thanks :)
pugs_svn r28106 | colomon++ | [t/spec/S32-num/power.t] Changed is back to is_approx for Complex powers, fixed broken test, reorganized Complex tests, added several new tests, moved plan back to plan * anticipating more heavy work on power.t in the next few days. (Have a patch for setting which makes all 11:42
..failing tests work, but breaks one of the NaN tests. Not clear if the Complex NaN tests are correct. Patch is inelegant.)
lisppaste3 colomon pasted "Patch to setting/Complex.pm to make Complex powers work (pmichaud++)" at paste.lisp.org/display/86224 11:44
colomon I recognize that patch is inelegant, and hope someone has a notion of how to make it pretty. 11:45
Also, I'm hoping to make additional Complex number patches in the next few days. I think sin and cos for Complex numbers are low-hanging fruit... 11:46
I believe the complex test cases should all be is_approx. That is, unless there is some sort of Complex made of two Ints mode I am not aware of. 11:51
cognominal rakudo: 'a' ~~ m/<a=a>/<b=b>/ and say keys %($/) 12:20
p6eval rakudo 0d4fe0: OUTPUT«Method 'postcircumfix:{ }' not found for invocant of class 'Regex'␤»
cognominal oops 12:21
rakudo: 'a' ~~ m/<a=a>|<b=b>/ and say keys %($/)
p6eval rakudo 0d4fe0: OUTPUT«Unable to find regex 'a'␤in regex PGE::Grammar::_block53 (/tmp/nqQiamD85d:1)␤called from Main (/tmp/nqQiamD85d:2)␤»
12:21 jrtayloriv joined
cognominal rakudo: 'a' ~~ m/<a='a'>|<b='b'>/ and say keys %($/) 12:21
p6eval rakudo 0d4fe0: OUTPUT«Could not find non-existent sub m␤»
cognominal rakudo: 'a' ~~ m/<a a>|<b b>/ and say keys %($/) 12:22
p6eval rakudo 0d4fe0: OUTPUT«Unable to find regex 'a'␤in regex PGE::Grammar::_block53 (/tmp/Da0UsZbulh:1)␤called from Main (/tmp/Da0UsZbulh:2)␤»
12:43 jrtaylor joined 12:53 jrtayloriv left 12:54 ejs left, azawawi left 12:56 r0bby left 13:03 KyleHa joined
jaffa8 rakudo: print $/; 13:05
p6eval rakudo 0d4fe0: OUTPUT«Use of uninitialized value␤»
jaffa8 std:$r~~/:p 3** 3.. /; 13:14