Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-07-09

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:07 HarryS joined #perl6
00:22 dalek rakudo/nom: 33633d8 | pmichaud++ | src/core/Backtrace.pm:
00:22 dalek rakudo/nom: Revert "do not use a nested class for Backtrace::Frame"
00:22 dalek rakudo/nom:
00:22 dalek rakudo/nom: This reverts commit 138213ad4c11320b1213716afcfdc05a90141cbe.
00:22 dalek rakudo/nom: On my system it causes S02-literals/autoref.t and
00:22 dalek rakudo/nom: S02-literals/pairs.t to each run for over two minutes
00:22 dalek rakudo/nom: (consuming a fair bit of memory), and halts the rest of
00:22 dalek rakudo/nom: the spectest process.
00:22 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/33633d85f2
00:33 dalek rakudo/nom: a3cb614 | pmichaud++ | src/core/Rat.pm:
00:33 dalek rakudo/nom: Fix relational operators for (Int,Rat).
00:33 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a3cb614ed1
00:43 preflex joined #perl6
01:10 scott___ joined #perl6
01:17 [Coke] pmichaud: So, I got pugs fudged, but didn't get the per-test comparison started yet.
01:22 [Coke] ... at least, I thought I did. I see it's still failing 1800 tests. WTF.
01:22 colomon [Coke]: are you seeing a zillion failures in Niecza?  (At least, say, a couple dozen more than three or four days ago?)
01:31 Coleoid Hi, #perl6!
01:31 Coleoid Can anyone now in-channel advise me on setting up a clean Windows 7 machine to do Rakudo builds?
01:32 colomon Off the top of my head, the only Rakudo guy who runs primarily on Windows is jnthn, and I suspect he's been asleep for a few hours now.
01:33 benabik I built it on Win7 using Strawberry Perl...  I don't recall needing anything else, although it was a long time ago.
01:34 Coleoid Last time I tried to get it all working was a machine I had Strawberry, ActiveState, and built-from source Perls on, and I could never quite get Rakudo to build...  :D
01:35 [Coke] colomon: +"niecza",     20590,     5,   731,  1465, 22791, 24288
01:35 Coleoid benabik, did you use GCC or Visual Studio, or some other thing?
01:35 benabik Coleoid: I'm pretty sure Strawberry installs GCC.
01:36 [Coke] Coleoid: I have MSVC++ express, strawberry perl, and command line git.
01:36 [Coke] ... actually, I am not sure if I'm compiling with strawberry or AS.
01:36 * Coleoid grins.
01:37 Coleoid Starts to sound like almost anything should work.
01:37 [Coke] but my windows box is at work. Ping me tomorrow if you get no resolution.
01:37 [Coke] ISTR the MSVC++ express was key.
01:37 [Coke] but it's the kind of thing I setup once, ti worked, then I never touched it again. ;)
01:37 [Coke] colomon: so, only 5 failures.
01:38 colomon [Coke]: so, it's just my system that's hosed.  Weird.
01:38 colomon Errr, reassuring, I guess.
01:40 Coleoid Thanks, [Coke]!  I'll hope for an outcome like yours.
01:40 [Coke] these pugs failures are weird. I was all green in my sandbox, but then the daily run failed 1800 tests? must be cron related.
02:05 dalek roast: d9800ad | coke++ | S (3 files):
02:05 dalek roast: pugs fudge
02:05 dalek roast: review: https://github.com/perl6/roast/commit/d9800adf21
02:07 [Coke] so, running it with "env -i" in  my normal checkout, I get almost no failures. hurm.
02:14 lue joined #perl6
02:15 sisar joined #perl6
02:22 diakopter Coleoid: I'm pretty sure mine is compiled with solely strawberry. (parrot, nqp, and rakudo). I just added strawberry\c\bin, strawberry\perl\bin, and strawberry\perl\site\bin to my path. it uses gcc and gmake
02:27 diakopter I have visual studio installed too but hadn't run vcvarsall (to add it to the path) when building those things.
02:28 vlixes joined #perl6
02:38 zhutingting joined #perl6
02:44 [Coke] I wonder if someone is killing pugs processes. :P
02:45 dalek doc: 02b6d4e | lue++ | .gitignore:
02:45 dalek doc: Modify .gitignore to ignore emacs' *~ backup files.
02:45 dalek doc: review: https://github.com/perl6/doc/commit/02b6d4e288
02:45 dalek doc: 60a108d | lue++ | lib/Instant.pod:
02:45 dalek doc: [Instant] Add Instant.pod
02:45 dalek doc:
02:45 dalek doc: Just some basic information on Instants, what I could gather from S02
02:45 dalek doc: and S32::Temporal.
02:45 dalek doc: review: https://github.com/perl6/doc/commit/60a108d677
02:45 dalek doc: c0352f6 | lue++ | lib/Duration.pod:
02:45 dalek doc: [Duration] Add Duration.pod
02:45 dalek doc:
02:45 dalek doc: Somewhat brief, again using information from S02 and S32::Temporal.
02:45 dalek doc: review: https://github.com/perl6/doc/commit/c0352f61dc
02:45 dalek doc: 02812fb | lue++ | lib/Instant.pod:
02:45 dalek doc: [Instant] Add link to Duration page
02:45 dalek doc:
02:45 dalek doc: Now Instant contains a link to Duration as well as vice-versa.
02:45 dalek doc: review: https://github.com/perl6/doc/commit/02812fb536
02:45 dalek doc: 79ea374 | lue++ | TODO:
02:45 dalek doc: [TODO] Remove Instant and Duration from "missing" list.
02:45 dalek doc:
02:45 dalek doc: They both may be a bit short, but certainly not missing anymore.
02:45 dalek doc: review: https://github.com/perl6/doc/commit/79ea37486f
02:51 xinming joined #perl6
02:53 * [Coke] is still confused by the pugs failures in the daily run on feather. weird.
02:57 adu joined #perl6
03:12 pmichaud I've been wanting to figure out how to make a Windows build.... now seems like a good time :)
03:12 scott__ joined #perl6
03:21 dalek nqp: 2452100 | pmichaud++ | src/QAST/Compiler.nqp:
03:21 dalek nqp: [qregex]:  Force a fail if cursor starting pos > end of string.
03:21 dalek nqp: review: https://github.com/perl6/nqp/commit/2452100db5
03:44 dalek rakudo/nom: 9388218 | pmichaud++ | src/core/Str.pm:
03:44 dalek rakudo/nom: Refactor Str.match to be lazier and accept a few more options.
03:44 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9388218cdf
03:44 dalek rakudo/nom: 0a9fb1e | pmichaud++ | tools/build/NQP_REVISION:
03:44 dalek rakudo/nom: Bump NQP_REVISION to get latest NQP updates for new match code.
03:44 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0a9fb1e6e4
03:45 dalek roast: 7bac3ca | pmichaud++ | S32-exceptions/misc.t:
03:45 dalek roast: Update a .match failure test.
03:45 dalek roast: review: https://github.com/perl6/roast/commit/7bac3cade8
03:50 cognominal joined #perl6
03:54 dalek doc: c9b8604 | moritz++ | lib/Duration.pod:
03:54 dalek doc: [Duration] grammar fix, at newline at EOF
03:54 dalek doc: review: https://github.com/perl6/doc/commit/c9b8604ef8
03:57 vlixes left #perl6
03:58 scott__ joined #perl6
04:23 * lue remembers that final newlines are preferred in doc
04:24 moritz on UNIX systems in general
04:27 lue I forced emacs to not force a newline upon me on save (unless the mode forces it anyway), just so there isn't a "useless" blank line at the end :) /me attempts to find its reason
04:28 telex joined #perl6
04:30 dalek roast: dcd76b9 | pmichaud++ | S05-substitution/subst.t:
04:30 dalek roast: Unfudge .subst tests using :x(*).
04:30 dalek roast: review: https://github.com/perl6/roast/commit/dcd76b98d3
04:30 dalek rakudo/nom: 9315e50 | pmichaud++ | src/core/Str.pm:
04:30 dalek rakudo/nom: Restore :x(*) handling suggested by spectests.
04:30 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9315e5097a
04:43 telex joined #perl6
05:06 cognominal joined #perl6
05:15 mucker joined #perl6
05:19 cognominal joined #perl6
05:39 quietfantic joined #perl6
05:41 simcop2387 joined #perl6
05:45 birdwindupbird joined #perl6
05:50 dduncan joined #perl6
05:50 dduncan left #perl6
05:53 wtw joined #perl6
06:12 sergot joined #perl6
06:12 sergot hi o/
06:16 nodmonkey joined #perl6
06:17 kaleem joined #perl6
06:17 kaleem_ joined #perl6
06:18 kaare_ joined #perl6
06:26 samlt joined #perl6
06:37 kaleem joined #perl6
06:38 kaleem joined #perl6
06:42 GlitchMr joined #perl6
06:52 sergot joined #perl6
07:08 brrt joined #perl6
07:11 dalek rakudo/nom: d8e7b66 | moritz++ | src/core/Backtrace.pm:
07:11 dalek rakudo/nom: do not use a nested class for Backtrace::Frame (take 2)
07:11 dalek rakudo/nom:
07:11 dalek rakudo/nom: mostly so that .WHAT gives the full name
07:11 dalek rakudo/nom:
07:11 dalek rakudo/nom: Now without infinite recursion in the backtrace printer
07:11 dalek rakudo/nom: (contains a workaround for RT #114034)
07:11 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d8e7b6628b
07:11 moritz pmichaud: sorry about the first version of that commit. I had a fix for it locally, and then forgot to commit it, and pushed the unfixed commit :/
07:23 * moritz has decided he has had enough of typing   rm -rf ~/.perl6/lib ~/.panda ; cd ~/p6/panda; ./bootstrap.sh
07:23 moritz now I have small script named 'repanda' that does that, as well as installing the modules I need more often
07:25 tadzik yay!
07:25 tadzik Task::BeLike::Moritz :)
07:25 tadzik or we could just have a Star meta-module that depends on everything that goes into R*
07:26 tadzik moritz: would you mind pushing repanda?
07:26 moritz tadzik: it has hardcoded paths, so not very useful
07:27 tadzik I see
07:27 moritz https://gist.github.com/3074789
07:29 moritz tadzik: if we can tell panda to bootstrap into a specific directory (and without downloading), we can use it for star installs
07:29 tadzik did you try DESTDIR with bootstrap?
07:30 moritz no; didn't know about that
07:31 kresike joined #perl6
07:31 tadzik maybe it'd be possible to do something along DESTDIR=/opt/whatever perl6 bin/panda install ./File__Tools ./JSON__Tiny and so on
07:31 tadzik I'll take a closer look when I get back home
07:31 kresike good morning all you happy perl6 people
07:32 tadzik hey hey kresike-y
07:35 kresike hello tadzik
07:35 fgomez joined #perl6
07:35 itz joined #perl6
07:37 fhelmberger joined #perl6
07:48 am0c_ joined #perl6
08:09 zhutingting joined #perl6
08:17 kaare__ joined #perl6
08:19 hoelzro I think I found another bug in Rakudo
08:20 hoelzro when I create an IO::Socket::INET with :listen and no :localport, I expect $sock.local_address to return the ephemeral port assigned to the socket
08:21 hoelzro however, it always seems to return 127.0.0.1:0
08:22 moritz have you tried .localport?
08:23 hoelzro moritz: Int()
08:25 xdbr joined #perl6
08:25 moritz hm
08:26 hoelzro it seems that Parrot (as of 4.5) doesn't provide an interface to getsockname
08:26 hoelzro how often does the Parrot team make a release?
08:27 moritz monthly
08:27 hoelzro so if I submitted a pull request to add the required functionality, it could make it into Rakudo Star 2012.07?
08:27 moritz yes
08:28 moritz I'd also appreciate a general sanity check of the socket API and implementation in rakudo
08:29 lumi_ joined #perl6
08:29 hoelzro you mean like some basic tests?
08:29 moritz because I've re-done much of it in the transition to nom, but I've never used sockets before
08:29 moritz we have some basic tests
08:29 moritz which are rather clumsy, because we have neither threads nor non-blocking IO
08:29 moritz so we need to spawn a separate process etc.
08:30 hoelzro I see
08:30 diakopter moritz: aren't threads coming soon?
08:31 moritz diakopter: yes. And they have been for half a year :-)
08:31 hoelzro christmas, right? =P
08:32 moritz well, parrot's threads branch was mostly "done" by end of last year
08:32 moritz ... on linux
08:32 moritz and since then has been slowly ported to windows too
08:39 dakkar joined #perl6
09:02 moritz fun task for anyone wanting to help rakudo: change all mentions of the u4x documentation project to point to doc.perl6.org or http://perlgeek.de/blog-en/perl-6/2012-doc-perl6-org-and-p6doc.writeback instead
09:26 aindilis joined #perl6
09:28 jnthn morning! :)
09:28 moritz \o jnthn
09:30 HarryS joined #perl6
09:37 mikemol joined #perl6
09:48 arnsholt Hee hee hee. Knowing about LD_PRELOAD was actually useful today =D
09:55 moritz arnsholt: what evil hack did you do?
09:55 moritz monkey-patch some broken routine?
09:57 arnsholt I wrote some bogus syscalls so that the Spotify for Linux client looks for its files in my ~ instead of in /usr/share/spotify
09:57 arnsholt (I don't have root on my work desktop, so I had to install it to my homedir)
09:58 arnsholt It's a pretty evil hack, but the upside is of course that it works =D
09:58 am0c_ joined #perl6
10:08 cj joined #perl6
10:16 arnsholt jnthn: In re: repr_get_attr_int not knowing about sizes, the problem is that we want to avoid making an introspection call to get the type and stuff every time we go through the op, no?
10:19 jnthn arnsholt: Right. I suspect we need some kind of REPR API change here.
10:20 Psyche^ joined #perl6
10:23 arnsholt Makes sense, yeah
10:26 arnsholt Adding something like attribute_type to REPROps_Attribute perhaps?
10:27 arnsholt CStruct at least has a list of member types, so in that case it'd be pretty simple
10:27 jnthn Well, but that probably boils down to a kind of introspection too.
10:27 arnsholt Troo
10:29 arnsholt Looking at repr_at_pos_int it looks like that's what happens in that case
10:29 arnsholt Of course arrays only have one type inside
10:32 jnthn Yeah; I'm not too comfortable with the way repr_at_pos_int does its thing either.
10:52 arnsholt Hmm. In that case, I suppose other options are changing the return value of at_pos_ref from INTVAL* to INTVAL, or adding an output parameter that writes back either the appropriate box_func or the number of bits in the type
10:58 BigBear joined #perl6
11:00 jnthn The latter is along the right lines, but endianness will make that sutble.
11:00 jnthn *subtle
11:00 spider-mario joined #perl6
11:01 arnsholt Gah. Didn't think about that
11:02 sisar joined #perl6
11:02 JimmyZ joined #perl6
11:03 gfldex joined #perl6
11:07 oftl left #perl6
11:14 masak g'day, #perl6
11:14 * masak is on a very slow connection today, presumably because some parts of Sweden are under water
11:15 hoelzro is there a way to open a class and replace an existing method?
11:16 tadzik augment may be what you are looking for
11:18 JimmyZ ^add_method
11:19 hoelzro well, I can open the class with augment
11:19 hoelzro but adding the method fails
11:19 hoelzro augment class IO::Socket::INET { method localport { ... } }
11:22 * masak disappears again
11:22 JimmyZ r: use MONKEY_TYPING; augment class IO::Socket::INET { method localport { ... } }
11:22 p6eval rakudo d8e7b6: OUTPUT«===SORRY!===␤You tried to augment class IO::Socket::INET, but it does not exist␤at /tmp/rzKSYUrBgF:1␤»
11:22 JimmyZ well, may be a bug
11:22 JimmyZ r: use MONKEY_TYPING; augment class Any { method localport { ... } }
11:22 p6eval rakudo d8e7b6:  ( no output )
11:23 hoelzro I'm using MONKEY_TYPING
11:23 hoelzro Package 'IO::Socket::INET' already has a method 'localport' (did you mean to declare a multi-method?)
11:23 hoelzro that's what I get
11:25 GlitchMr42 joined #perl6
11:26 JimmyZ r: use MONKEY_TYPING; augment class IO::Socket { method localport { ... } }
11:26 p6eval rakudo d8e7b6: OUTPUT«===SORRY!===␤You tried to augment class IO::Socket, but it does not exist␤at /tmp/DMn7pgwf48:1␤»
11:26 JimmyZ r: use MONKEY_TYPING; augment class IO { method localport { ... } }
11:26 p6eval rakudo d8e7b6:  ( no output )
11:28 hoelzro IO shouldn't have a localport method
11:31 moritz note that everything IO-related is bound to break on p6eval
11:32 moritz because it hides the "real" IO class, and replaces it with a mostly empty class
11:32 moritz r: say IO.^methods(:local)
11:32 p6eval rakudo d8e7b6: OUTPUT«␤»
11:33 moritz r: say OUTER::IO.^methods(:local)
11:33 p6eval rakudo d8e7b6: OUTPUT«eager elems end classify uniq infinite flat hash list lol pick roll reverse sort values keys kv pairs Array grep first join map min max minmax push tree unshift postcircumfix:<[ ]> at_pos all any one none postcircumfix:<{ }> at_key reduce FLATTENABLE_LIST FLATTENAB…
11:36 tadzik r: class A { method b { "be" } }; use MONKEY_TYPING; augment class A { multi method b { "ce" } }; A.new.b.say
11:36 p6eval rakudo d8e7b6: OUTPUT«===SORRY!===␤Cannot have a multi candidate for 'b' when an only method is also in the package 'A'␤»
11:37 moritz I think replacing methods only works via mixins
11:42 tadzik and then it's per-object, not per-class, right?
11:50 moritz you can do something like
11:50 moritz my $old-io = IO;
11:50 moritz my IO := $old-io but role { ... }
11:50 moritz maybe you can, dunno
11:50 moritz or maybe   my constant IO = ...;
11:50 moritz afk
11:52 brrt joined #perl6
11:59 fglock joined #perl6
12:02 _ilbot joined #perl6
12:02 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: http://irc.perl6.org/ | UTF-8 is our friend!
12:05 pmichaud moritz: ^^
12:09 jnthn pmichaud: Curious, what URL are you trying to get at?
12:09 jnthn It seems to work for me...
12:13 pmichaud okay, it just worked for me now also.
12:13 pmichaud the url I use(d) is http://irclog.perlgeek.de/perl6/today
12:38 atrodo joined #perl6
12:47 spider-mario_ joined #perl6
12:56 mucker joined #perl6
12:59 PacoAir joined #perl6
13:02 mnuklop joined #perl6
13:05 mnuklop perl6: say "test" for 1 .. 10;
13:05 p6eval rakudo d8e7b6, niecza v19-13-g442e075: OUTPUT«test␤test␤test␤test␤test␤test␤test␤test␤test␤test␤»
13:06 mnuklop perl6: say [+] for 1 .. 10;
13:06 p6eval rakudo d8e7b6, niecza v19-13-g442e075: OUTPUT«0␤0␤0␤0␤0␤0␤0␤0␤0␤0␤»
13:07 mnuklop perl6: $qq =  [+] for 1 .. 10; say $qq
13:07 p6eval niecza v19-13-g442e075: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Variable $qq is not predeclared at /tmp/Qt032rayWt line 1:â�¤------> [32m<BOL>[33mâ��[31m$qq =  [+] for 1 .. 10; say $qq[0mâ�¤â�¤Variable $qq is not predeclared at /tmp/Qt032rayWt line 1:â�¤------> [32m$qq =  [+] for 1 .. 10; say…
13:07 p6eval ..rakudo d8e7b6: OUTPUT«===SORRY!===␤Variable $qq is not declared␤at /tmp/uDNJlAMN_V:1␤»
13:07 mnuklop perl6: my $qq =  [+] for 1 .. 10; say $qq
13:07 p6eval rakudo d8e7b6, niecza v19-13-g442e075: OUTPUT«0␤»
13:08 colomon what are you trying to do?
13:08 [Coke] r: say [+] 1..10
13:08 p6eval rakudo d8e7b6: OUTPUT«55␤»
13:11 mnuklop perl6: 2.78  ~~ 10 +- 3 ?? 't' !! 'f'
13:11 p6eval rakudo d8e7b6, niecza v19-13-g442e075:  ( no output )
13:11 mnuklop perl6: say (2.78  ~~ 10 +- 3 ?? 't' !! 'f' )
13:11 p6eval rakudo d8e7b6, niecza v19-13-g442e075: OUTPUT«f␤»
13:17 colomon rn: say (10 +- 3).perl
13:17 p6eval rakudo d8e7b6, niecza v19-13-g442e075: OUTPUT«7␤»
13:17 colomon ah
13:21 xinming joined #perl6
13:22 JimmyZ r: sub infix:<+->( $a, $b ) { $a + $b }; say (10 +- 3).perl
13:22 p6eval rakudo d8e7b6: OUTPUT«13␤»
13:22 JimmyZ rn: sub infix:<+->( $a, $b ) { $a +- $b }; say (10 +- 3).perl
13:24 p6eval rakudo d8e7b6, niecza v19-13-g442e075: OUTPUT«(timeout)»
13:28 skids joined #perl6
13:30 JimmyZ bug?
13:31 tadzik hehe
13:31 tadzik PEBKAC, I think :)
13:31 tadzik what did you expect?
13:32 tadzik rn: sub foo { foo }; foo
13:32 p6eval rakudo d8e7b6, niecza v19-13-g442e075: OUTPUT«(timeout)»
13:32 tadzik I think that's quite a logical behaviour
13:33 JimmyZ I don't know, may be error info
13:35 pmichaud Locally I get
13:35 pmichaud > sub infix:<+->($a, $b) { $a +- $b }; say (10 +- 3).perl
13:35 pmichaud maximum recursion depth exceeded
13:36 pmichaud ...so, it gives error info :)
13:36 pmichaud afk
13:37 JimmyZ :)
13:38 arnsholt jnthn: Actually, if get_attr returns a pointer to the correct memory location and the correct number of bits, wouldn't "*(correctly_sized_type *) ptr" work regardless of big- or little-endian?
13:40 jnthn arnsholt: That could work but I'm worried about concurrency.
13:40 jnthn arnsholt: I think it has to be out-parameter style.
13:40 arnsholt Yeah, that's the only way I can see it working
13:41 arnsholt Return value is a pointer, and adding and "INTVAL *bits" arg that gets set appropriately
13:50 bluescreen10 joined #perl6
13:54 spider-mario joined #perl6
14:07 jaldhar joined #perl6
14:18 samlt joined #perl6
14:36 cognominal joined #perl6
14:39 cognominal joined #perl6
14:43 daxim joined #perl6
14:45 BaggioKwok joined #perl6
14:55 spider-mario joined #perl6
15:04 cognominal_ joined #perl6
15:08 sftp joined #perl6
15:14 kresike bye all
15:20 tokuhiro_ joined #perl6
15:25 thou_ joined #perl6
15:32 thelazydeveloper joined #perl6
15:36 tokuhiro_ joined #perl6
16:05 driador joined #perl6
16:08 brrt joined #perl6
16:08 lue joined #perl6
16:18 Coleoid joined #perl6
16:24 kaleem joined #perl6
16:48 GlitchMr joined #perl6
17:04 crab2313 joined #perl6
17:08 birdwindupbird joined #perl6
17:41 sorear good * #perl6
17:41 shachaf Good ★
17:43 colomon \o
17:45 moritz o/
18:14 MayDaniel joined #perl6
18:22 dalek doc: 6b6713f | moritz++ | / (2 files):
18:22 dalek doc: document Backtrace
18:22 dalek doc: review: https://github.com/perl6/doc/commit/6b6713f9c6
18:38 samlt joined #perl6
18:39 [Coke] .u ★
18:39 phenny U+2605 BLACK STAR (★)
18:40 sjohnson joined #perl6
18:42 * pmichaud is realizing that he likes Github's issue system more than RT.
18:47 jnthn huh, the star shows up white on my screen :P
18:47 moritz here too
18:48 jnthn pmichaud: I'm not sure a migration would be a particular win. But I have been fairly happy with Github issues for various things.
18:48 * diakopter sees a box :<
18:48 diakopter jnthn: what font?
18:48 jnthn Get a better font! :P
18:48 pmichaud jnthn: yeah, I'm not fond of a migration.
18:48 jnthn Courier New, of all things :)
18:48 jnthn pmichaud: phew :)
18:48 pmichaud I just know that I keep running into icky things when using RT.
18:48 rsimoes joined #perl6
18:48 pmichaud like, it doesn't display unicode properly.
18:49 diakopter hm, with Courier New it's still a box
18:49 sjohnson joined #perl6
18:49 * pmichaud starts refactoring the List/Parcel class again, expects huge numbers of test failures
18:50 pmichaud ooooh, and a segfault!
18:50 moritz that's what branches are for :-)
18:50 pmichaud yes, I'm in a branch for this one.
18:50 jnthn 文字化け
18:50 pmichaud I keep trying things and then doing "git checkout ."  to restore back, though :)
18:50 jnthn :)
18:51 * jnthn wonders where the segfault came from
18:52 dalek doc: 46abb31 | moritz++ | lib/Instant.pod:
18:52 dalek doc: [Instant] mention package type in TITLE
18:52 dalek doc: review: https://github.com/perl6/doc/commit/46abb3193e
18:52 sorear hello jnthn :)
18:53 moritz seems our pod parser doesn't like files that don't end in a newline
18:53 moritz I have big sympathy for that
18:54 jnthn hi, sorear
18:54 jnthn Grrr. So the next thing QAST needs is...figuring out what replaces the exception stuff.
18:55 moritz I guess that one's going to be pretty vm specific, no?
18:55 jnthn moritz: I'd like to try and get something that isn't...
18:56 pmichaud I'd hope it wouldn't be too vm-specific at the QAST level, at least externally.
18:56 BigBear joined #perl6
18:57 moritz r: say try { die 'foo' }
18:57 p6eval rakudo d8e7b6: OUTPUT«foo␤  in block <anon> at /tmp/1xQfXmdO6L:1␤␤»
18:57 moritz that one is supposed to return Nil, not the exception
18:57 moritz speaking of exception stuff :-)
18:57 jnthn pmichaud: Right.
18:59 moukeddar joined #perl6
18:59 sorear o/ moukeddar
18:59 moukeddar \o/ guys, how are you doing ?
19:00 diakopter at least some of us are great!
19:00 moukeddar sounds good :)
19:01 * jnthn just eated a bunch of blueberries, which was pretty great.
19:01 vmspb joined #perl6
19:01 moukeddar they're expensive a believe jnthn
19:02 moritz jnthn: now Ronja is jealous
19:02 moritz :-)
19:02 jnthn Ooops :)
19:02 jnthn moukeddar: So's everything else in Sweden :P
19:03 moukeddar i stumbled upon an article about fractals, that's crazy what a simple equation can make
19:06 moukeddar anyone tried fractals before?
19:06 moritz yes
19:06 moritz quite tasty :-)
19:06 pmichaud mine had too much powered sugar on them.  :-/
19:06 pmichaud *powdered
19:06 moritz moukeddar: I'm especially fond of the statistical method for creating a sirpinski triangle
19:07 moritz you just start with the three corners of a triangle, and a random point in the plane
19:07 * benabik remembers programming that on his TI-82.
19:08 sorear https://en.wikipedia.org/wiki/Chaos_game ?
19:08 moritz and then you randomly pick one of the corners, and place a new point halfway between that corner and the old point
19:08 moritz iterate starting from the new point
19:08 moritz sorear: yes
19:08 moukeddar first time to hear about this type, so far i read about mandelbrot set
19:11 arnsholt Is the Mandelbrot script still being hacked on?
19:11 moritz it serves as a benchmark, of sorts
19:12 arnsholt Cool. It's been a while since I heard anything about it, so I wasn't sur if it was still active
19:13 moukeddar it's quite expensive in term of computing
19:14 arnsholt Yup. That's why it's one of the benchmarks for numerical stuff
19:15 moukeddar guys, what data structure would you recommend to study? binary trees, stacks, queues etc.. ?
19:15 sorear ALL OF THEM
19:16 sorear start with this: http://www.soi.city.ac.uk/~ross/papers/FingerTree.pdf
19:20 moukeddar ALL OF THEM?
19:20 moukeddar shouting? reminds me of a scene in "Leon the professional"
19:23 moukeddar http://www.youtube.com/watch?v=DcsirofJrlM , around 1:50 ;)
19:29 REPLeffect joined #perl6
19:30 cognominal joined #perl6
19:36 moritz r: my %h; say %h.WHAT; my &c; say &c.WHAT
19:36 p6eval rakudo d8e7b6: OUTPUT«Hash()␤Any()␤»
19:36 moritz nr: my %h; say %h.WHAT; my &c; say &c.WHAT
19:36 p6eval rakudo d8e7b6, niecza v19-13-g442e075: OUTPUT«Hash()␤Any()␤»
19:36 moritz why is the default Any, when it's type-constrained to Callable?
19:36 moritz nr: my &c; &c = &c;
19:36 p6eval rakudo d8e7b6: OUTPUT«Type check failed in assignment to '&c'; expected 'Callable' but got 'Any'␤  in block <anon> at /tmp/7miTJj0Js5:1␤␤»
19:36 p6eval ..niecza v19-13-g442e075:  ( no output )
19:37 moritz n: my &c; &c = 5; say &c
19:37 p6eval niecza v19-13-g442e075: OUTPUT«5␤»
19:37 jnthn hah
19:37 jnthn moritz: Good quesiton.
19:37 jnthn *question
19:37 moritz jnthn: should it be a Callable type object?
19:37 sorear 'because apparently it's not'
19:37 jnthn moritz: I seem to recall some past discussion on this...
19:38 jnthn I can't remember anything of what was said though :(
19:38 jnthn I guess we can try changing it to Callable and seeing that happens :)
19:39 jnthn moritz: In Actions.pm there's a container_type_info
19:39 jnthn There's a branch for & sigil which has the line:
19:39 jnthn %info<default_value>   := $*W.find_symbol(['Any']);
19:40 jnthn Which is easily changed. :)
19:40 moritz ok :-)
19:41 moritz n: my Callable $c = 5
19:41 p6eval niecza v19-13-g442e075: OUTPUT«Potential difficulties:â�¤  $c is declared but not used at /tmp/60DLyyFodz line 1:â�¤------> [32mmy Callable [33mâ��[31m$c = 5[0mâ�¤â�¤Unhandled exception: Nominal type check failed for scalar store; got Int, needed Callable or subtypeâ�¤  at /tmp/60DLyyFodz line …
19:43 dalek nqp/toqast: ffcadc6 | jnthn++ | src/QAST/Compiler.nqp:
19:43 dalek nqp/toqast: Implement contextual scope.
19:43 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/ffcadc6026
19:43 dalek nqp/toqast: 2b6d5b7 | jnthn++ | src/QRegex/P6Regex/Actions.nqp:
19:43 dalek nqp/toqast: Teach P6Regex's buildsub about QAST.
19:43 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/2b6d5b7efc
19:45 dalek rakudo/toqast: 3595580 | jnthn++ | src/QPerl6/World.pm:
19:45 dalek rakudo/toqast: Fix END handling, to win back another test.
19:45 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/3595580c30
19:47 birdwindupbird joined #perl6
19:48 moritz is it correct that   my @a = 1, 2, 3;   coerces the RHS?
19:49 sorear I would not call that coercion
19:49 sorear It's a list assignment
19:49 sorear more like my @a; for 1, 2, 3 { @a.push($_) }
19:50 moritz jnthn: "Method 'signature' not found for invocant of class 'Callable'" after stage past during compiling the setting (with s/Any/Callable/ in the & default)
19:51 jnthn Hmm.
19:51 moritz current instr.: 'nqp;Perl6;Metamodel;RolePunning;_block3122' pc 33660 (src/gen/perl6-metamodel.pir:14544) (src/gen/Metamodel.pm:1191)
19:52 moritz called from the optimizer
19:52 jnthn I wonder what pan the role
19:52 jnthn Oh!
19:52 jnthn Weird.
19:52 jnthn Can you push it to a branch? I can investigate it at some point.
19:52 moritz willdo
19:54 pmichaud r:  my &c;  say &c.of
19:54 p6eval rakudo d8e7b6: OUTPUT«No such method 'of' for invocant of type 'Any'␤  in block <anon> at /tmp/TbYJ3obfSR:1␤␤»
19:54 jnthn pmichaud: On PAST::Node we had a .unique(...) thingy
19:54 jnthn pmichaud: I didn't put it in QAST. Shall I?
19:54 masak 'ev'n, #perl6
19:54 jnthn (as in, any reason not to...)
19:54 dalek rakudo/callable-default-value: b0912ac | moritz++ | src/Perl6/Actions.pm:
19:54 dalek rakudo/callable-default-value: change &c variables to default to a Callable type object
19:54 dalek rakudo/callable-default-value:
19:54 dalek rakudo/callable-default-value: blows up in the optimizer while compiling the setting
19:54 dalek rakudo/callable-default-value: review: https://github.com/rakudo/rakudo/commit/b0912ac635
19:54 pmichaud if you don't need it, don't put it :)
19:54 moritz \o masak
19:55 jnthn pmichaud: Well, I just hit a bit of code that wants it to be there :)
19:55 pmichaud it was strictly a convenience method for generating unique ids
19:55 pmichaud if you need it, then put it :)
19:55 jnthn pmichaud: Well, we could put it elsewhere. ;)
19:55 jnthn pmichaud: But if it doesn't bother you having it on QAST::Node, it wfm :)
19:55 pmichaud the other place it can often reasonably go is QAST::Compiler
19:56 jnthn Yeah...
19:56 pmichaud (indeed, PAST has one on each, iirc)
19:56 jnthn That's not immediately to hand though.
19:56 jnthn So on QAST::Node is certainly convenient.
19:56 pmichaud so, just refactor "unique id generation" to wherever makes the most sense.
19:56 pmichaud ::Node is fine.  :-)
19:56 jnthn k
19:56 pmichaud you can also create a special QAST::<mumble>  type to handle it, if you wish.
20:01 alester joined #perl6
20:01 spider-mario joined #perl6
20:05 jnthn pmichaud: We have lots of variables called $past :)
20:06 jnthn pmichaud: I'm pondering we may wish to rename 'em.
20:06 * masak .oO( the past jokes are all in the... oh wait )
20:06 pmichaud I'm fine with them either way
20:06 jnthn pmichaud: Maybe just $ast :)
20:06 masak +1
20:06 masak parses faster, too :P
20:07 * masak .oO( $t )
20:07 jnthn So that when we do, rast, sast, tast, etc ;)
20:07 jnthn .oO( Eventually, wee loop around, and finish on $last )
20:07 pmichaud zast!
20:07 jnthn *we
20:07 * masak .oO( Perl 7 uses BAST and if you're nice we'll tell you about all the versions that led up to it )
20:07 pmichaud wast would just be a waste
20:08 masak *groan*
20:08 pmichaud vast is too big
20:08 masak please stop!
20:08 masak :)
20:08 pmichaud yast is already taken, I bet :)
20:08 jnthn nast is just nasty
20:08 fridim_ joined #perl6
20:08 masak yast is a fungi.
20:08 jnthn fast would work :P
20:08 pmichaud I'm not sure about east.
20:08 masak *lol*
20:09 masak at last, it's time to stop.
20:09 pmichaud masak is the mast-er
20:09 masak I think we're way *past* mast-ery.
20:09 dalek nqp/toqast: 171f251 | jnthn++ | src/QAST/Node.nqp:
20:09 dalek nqp/toqast: Implement QAST::Node.unique.
20:09 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/171f2516c4
20:09 * masak .oO( meh, I can't be aast )
20:10 masak orka!
20:10 * geekosaur a-gast
20:10 masak phenny: sv en "Orka!"
20:10 masak phenny: sv en "Orka!"?
20:10 phenny masak: "Orka !" (sv to en, translate.google.com)
20:10 masak meh.
20:10 jnthn It couldn't be bothered to translate it.
20:10 masak :P
20:15 dalek rakudo/toqast: 9c3235c | jnthn++ | src/QPerl6/Actions.pm:
20:15 dalek rakudo/toqast: Fix a mis-translation.
20:15 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/9c3235cfc1
20:15 dalek rakudo/toqast: 8903cfe | jnthn++ | src/QPerl6/ (2 files):
20:15 dalek rakudo/toqast: Eliminate one more pirop usage.
20:15 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/8903cfe1ca
20:17 dalek doc: 933934b | moritz++ | htmlify.pl:
20:17 dalek doc: [htmlify] release a bit of memory when we can
20:17 dalek doc: review: https://github.com/perl6/doc/commit/933934b41e
20:17 dalek doc: 30231bc | moritz++ | lib/variables.pod:
20:17 dalek doc: [variables] expand scope
20:17 dalek doc:
20:17 dalek doc: talk about variables in general, not just special variables.
20:17 dalek doc: Adds a section about sigils, and explain the * twigil
20:17 dalek doc: review: https://github.com/perl6/doc/commit/30231bc70c
20:19 benabik joined #perl6
20:20 pmichaud moritz: the section saying "Assignment to C<%> and C<@>-sigiled variables ..."  is a bit misleading.  In reality, it's assignment to $-variables that is special cased.
20:21 pmichaud assignment to arrays and hashes is just normal list assignment
20:21 moritz well, "normal" depends on your perspective
20:21 moritz item assignment is what users of most programming languages know
20:22 moritz but I'm open to suggestions on how to clarify it
20:22 moritz maybe
20:22 moritz "there are two types of assignment, item assignment and list assignment"
20:23 moritz is list assignment specced to call .STORE?
20:23 pmichaud so far it's up to the implementation to decide how to handle it
20:23 pmichaud but assignment to a hash replaces the hash entries with the values from the list on the rhs
20:24 sorear niecza calls a method named LISTSTORE
20:24 pmichaud and assignment to a array replaces the array elements with the values from the list on the rhs
20:24 moritz r: my @; say @a.WHICH; @a = 1, 2, 3; say @a.WHICH
20:24 p6eval rakudo d8e7b6: OUTPUT«===SORRY!===␤Variable @a is not declared␤at /tmp/7nOfK9Ge63:1␤»
20:24 sorear passing the right side as a single parcel argument
20:24 moritz r: my @a; say @a.WHICH; @a = 1, 2, 3; say @a.WHICH
20:24 p6eval rakudo d8e7b6: OUTPUT«Array|-1112061954␤Array|-1112061954␤»
20:25 sorear n: my @a; @a does role { method LISTSTORE(\rhs) { say rhs.perl }: }; @a = 1, 2, 3;
20:25 p6eval niecza v19-13-g442e075: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Illegal use of colon as invocant marker at /tmp/Ny1553xjrH line 1:â�¤------> [32mmethod LISTSTORE(\rhs) { say rhs.perl }:[33mâ��[31m }; @a = 1, 2, 3;[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/C…
20:25 sorear n: my @a; @a does role { method LISTSTORE(\rhs) { say rhs.perl }; }; @a = 1, 2, 3;
20:25 p6eval niecza v19-13-g442e075: OUTPUT«Unhandled exception: System.IndexOutOfRangeException: Array index is out of range.␤  at Niecza.P6opaque.ChangeType (Niecza.STable to) [0x00000] in <filename unknown>:0 ␤  at Builtins.mixin (Niecza.P6any obj, Niecza.Variable role_list, Niecza.Variable init,…
20:25 sorear n: my @a := (Array but role { method LISTSTORE(\rhs) { say rhs.perl }; }).new; @a = 1, 2, 3;
20:25 p6eval niecza v19-13-g442e075: OUTPUT«(1, 2, 3)␤»
20:26 pmichaud rakudo uses .STORE by way of analogy to the Proxy class method of the same name and purpose
20:27 pmichaud but I don't believe any of it is "spec"
20:27 pmichaud (the exact mechanism may become 'spec' at some point... but it isn't yet.)
20:27 moritz ok, I now notice that I can't really explain the difference between item and list assignment
20:27 pmichaud item assignment occurs when the lhs is a scalar
20:28 moritz yes
20:28 moritz but what really happens, taht's the question
20:28 moritz list assignment leaves the semantics to the container, right?
20:28 pmichaud the scalar container is updated to refer to the object on the rhs
20:28 pmichaud _also_
20:28 pmichaud if the compiler sees that the lhs is a simple scalar, then the precedence of '=' becomes higher than comma
20:29 moritz I know, but that's a topic for 'operators', and I'm currently working on 'variables' :-)
20:29 pmichaud fair enough.  It wouldn't surprise me if newcomers think of it as a variable issue, though.
20:29 moritz maybe a small note
20:30 pmichaud anyway, yes -- list assignment leaves the semantics to the thing being assigned to
20:31 moritz nr: my @a; my $which = @a.WHICH; @a = (1, 2, 3); say $which === @a.WHICH
20:31 p6eval rakudo d8e7b6, niecza v19-13-g442e075: OUTPUT«True␤»
20:32 pmichaud there has been some speculation that "my @a;"   should leave @a bound to an Array type object, which then vivifies into an Array on first use.
20:32 samlt joined #perl6
20:33 sorear that speculation requires my @a to create a Scalar or something similar that autovivification can assign to.
20:33 sorear r: my @a; say @a.defined
20:33 p6eval rakudo d8e7b6: OUTPUT«True␤»
20:34 pmichaud I suspect that Array.STORE() could dtrt without having to involve a scalar
20:34 masak re migrating from RT to github issues: don't you people dare. I can't go further with that thought without being obviously nuclearly blackmailing.
20:34 pmichaud masak: are you referring to existing tickets or to "ever" ?
20:34 moritz I'm firmly -1 on migriting too
20:34 moritz *migrating
20:34 masak pmichaud: ever.
20:34 moritz (existing tickets)
20:34 jnthn .oO( 'cus we really want two places to look! :) )
20:35 moritz and I don't want to migrate to something where I can't open tickets by email
20:35 diakopter I went through all the tickets a few weeks ago to check the status on latest rakudo. Took me about 30 hours.
20:35 masak diakopter++
20:35 pmichaud objections noted
20:35 sorear .oO( so THAT's why masak has submitted so few nieczabugs, it's not on RT)
20:36 pmichaud my comment earlier wasn't intended as a declaration of intent to switch, fwiw.
20:36 masak sorear: given that it's not, I've submitted quite a few.
20:36 pmichaud just an observation that github's interface is generally a lot nicer to work with than rt's
20:36 masak pmichaud: sorry to be so staunch about it. I don't think github's interface would be a win for my bug workflows.
20:36 pmichaud masak: no problem, I can understand that.
20:36 jnthn Isn't our RT installation a few versions old?
20:37 masak pmichaud: I like it in other settings. wouldn't like it with Rakudo.
20:37 masak jnthn: what, you're thinking of 4.0? :)
20:37 diakopter masak: my point was, by splitting up the work, it'd be only a few hours each
20:37 masak diakopter: it can certainly be map-reduced.
20:37 moritz masak: but bear in mind that while you submit many tickets, I think you often only spend only a small part of the ticket's lifetime working on it
20:38 jnthn masak: I'm thinking that if we had a newer RT then maybe the UI is nicer :)
20:38 moritz masak: so manybe your workflow shouldn't be the target for optimization
20:38 pmichaud masak: strictly out of curiosity, if there was an email interface for github issues, would that modify your stance at all?
20:38 dalek doc: fa25cbb | moritz++ | lib/variables.pod:
20:38 dalek doc: [variables] try to clarify the difference between item and list assignment
20:38 dalek doc: review: https://github.com/perl6/doc/commit/fa25cbb14f
20:39 masak pmichaud: no, it's the search I like with RT. everyone else hates it, I tend to *find* things among those hundreds of tickets. I wouldn't with github.
20:40 moritz I have the feeling that this doc patch makes things more accurate, but less useful for the user
20:40 Khisanth joined #perl6
20:40 pmichaud masak: okay, noted.
20:40 masak github's search simply isn't up to the task for Rakudo's bug rate.
20:40 masak Khisanth! \o/
20:41 Khisanth hi?
20:41 diakopter masak: but the interface is hundreds of times faster, so you can scan through far more items in some time.
20:41 masak diakopter: that doesn't make sense to me.
20:41 diakopter pmichaud: http://developer.github.com/v3/issues/#create-an-issue
20:41 masak moritz: noted. though if I end up submitting fewer bugs (and no-one else does instead), that doesn't mean that Rakudo has fewer bugs. it means fewer bugs end up in the ticket system.
20:42 jnthn Submitting bugs is also the primary interface to the ticket system that Rakudo users encounter.
20:42 masak I realize that that's only one factor/dimension/concern... but it seems a big one.
20:43 jnthn Pretty much everyone can send an email without much effort :)
20:44 diakopter see https://github.com/plu/Pithub and https://github.com/fayland/perl-net-github
20:44 sorear If y'all will forgive me for wild speculaton
20:45 sorear after I get the poller set up in dalek, we could have it mirror tickets to a local sqlite db
20:45 diakopter masak: my point was that you can deal with a whole lot of search results much more quickly
20:45 sorear then do your fun sql queries on feather3
20:45 masak wow, I find I get fairly emotional on this subject. I will shut up now, or I'll start repeating myself.
20:45 * moritz goes to bed instead :-)
20:45 moritz \~
20:45 pmichaud WE ARE NOT MIGRATING TO GITHUB ISSUES.
20:45 pmichaud (good enough, masak?)
20:46 masak thank you.
20:46 * sorear hugs masak
20:46 * masak feels better now
20:46 jnthn Phew.
20:46 pmichaud I may want to revisit it again in the far future, but it's not an immediate concern.
20:46 sorear .oO( we just need RT 7 )
20:46 masak sorry for tugging the moorings.
20:46 pmichaud (it reminds me of the switchover from svn to git, in some ways :)
20:46 pmichaud *switchovers
20:48 masak except that git is better than svn... :)
20:48 pmichaud yes, but there were quite a few people who were very reluctant to see us switch :)
20:49 masak did they say "I use svn in ways that please me a lot and that are not possible with git"?
20:49 pmichaud they did.
20:49 masak I see why it reminds you.
20:50 masak s/^/Then /
20:50 pmichaud it was less dramatic in rakudo's case, because we had to switch repositories anyway.
20:50 pmichaud but for moving the perl6 repo from svn to git there was reluctance, and the battles on parrot's repo were epic.
20:51 pmichaud (also, in rakudo's case I made a pumpking-like-decision-by-fiat after polling the group)
20:51 masak yes, I remember. Rakudo had already made the switch, and we were already on our way adapting to git and liking it when Parrot had their discussions.
20:52 pmichaud anyway, we have plenty of other github issue trackers to play with and build up the toolset for before we need to consider moving rakudo's ticket system.
20:53 pmichaud diakopter: yeah, the new github apis are pretty nice.  I was able to write a command-line nopaste utility for github this past week.
20:53 pmichaud doing an email-to-issue gateway would be fairly simple.
20:54 * masak realizes he has the affinity thing going with RT; it feels like an extension of his brain in the way Wikipedia and duckdcukgo do
20:55 * [Coke] suggests finding out what the RT upgrade would do, and compare that version to github.
20:55 pmichaud of course, we'd have to be really good about dealing with spam issues.
20:55 * [Coke] hesitates to stump for the ugprade at all if there's a chance we'd migrate.
20:55 diakopter it would have to move to a different RT instance or upgrade perl5 also, right?
20:56 pmichaud I'm not pushing for an rt upgrade, unless there really are some much improved capabilities that result.
20:56 diakopter I heard there were tons of customizations to that installation of RT preventing upgrades
20:57 pmichaud (and it's not even interesting enough for me to yet go search for what the improvements might be)
20:57 sorear ah
20:57 masak no, please don't upgrade.
21:01 benabik Hm.  RT's front page needs some updating...  dev.perl.org/perl6 doesn't exist.  Parrot bugs should be submitted to github, not trac.
21:02 benabik Oh.  "For issues related to this RT instance[...]"  *writes an e-mail(
21:02 masak benabik++
21:02 dalek nqp/toqast: 68c25c3 | jnthn++ | src/QAST/Operations.nqp:
21:02 dalek nqp/toqast: Add abstractions for getting the current lexpad and code.
21:02 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/68c25c3ca6
21:04 [Coke] masak: if you want to do /all/ the bug wrangling, then you can tell us not to upgrade.
21:04 [Coke] Why would you not want RT-latest?
21:04 dalek rakudo/toqast: b8553f9 | jnthn++ | src/QPerl6/ (2 files):
21:04 dalek rakudo/toqast: A few more now-easy translations.
21:04 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/b8553f949c
21:04 dalek rakudo/toqast: 2c74da4 | jnthn++ | src/QPerl6/Actions.pm:
21:04 dalek rakudo/toqast: Fix pir::op
21:04 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/2c74da4946
21:04 dalek rakudo/toqast: 7a032eb | jnthn++ | src/QPerl6/Actions.pm:
21:04 dalek rakudo/toqast: Use curlexpad/curcode.
21:04 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/7a032eb342
21:05 [Coke] are there new bugs you're aware of?
21:05 masak I'll want it when I see that the changes are a net win. currently I have no complaints with this version.
21:06 masak it's not that I think that the new version sucks, it's just that I don't think the current one sucks.
21:07 masak [Coke]: what is it that you feel is worth upgrading for?
21:07 pmichaud if it had a way to post updates to the channel, that would be worth it.
21:07 masak are you aware of any improvements that might benefit us?
21:07 pmichaud if it could properly display unicode
21:07 masak well, true.
21:07 pmichaud if it would not remove the indents from the beginning of code snippets
21:08 pmichaud if I didn't have to re-log in every time I start from a new browser window
21:09 pmichaud these are issues I ran into in just the last 24 hours.
21:09 pmichaud if I could preview my replies before posting them   # here's another
21:10 jnthn Just don't make any mistakes! :P
21:10 * jnthn finds the public/private iterface distinction weird.
21:11 sorear pmichaud: so I'll prioritize adding a dalek poller for issues api v3
21:11 pmichaud sorear: I know many of us would very much like to see that :-)
21:11 diakopter it would display something here when a ticket appears/changes?
21:12 sorear diakopter: exactly
21:13 benabik Dalek announces ticket open and close on #parrot
21:13 pmichaud benabik: for github, or trac?
21:13 benabik github
21:13 pmichaud I haven't seen any of my tickets announced on #parrot, fwiw.
21:14 sorear I have not seen a github ticket announced on #parrot either
21:14 * diakopter fondly recalls creating dalek's account with freenode...... hmm, I wonder what email address I used.
21:15 [Coke] masak: so, not "please don't upgrade", but "please don't upgrade without making sure it's worth it". sure.
21:16 benabik Hm.  I recall it doing so.  Perhaps it stopped?
21:16 masak [Coke]: yes. sorry. was unclear.
21:16 pmichaud benabik: I did a brief search of #parrot logs looking for a case where a github ticket would be posted into the chan and didn't find one.
21:16 [Coke] I think the tickets were announced at some point
21:16 masak [Coke]: the discussion I saw was "hm, maybe we should upgrade just because we're a few versions behind?"
21:18 pmichaud benabik: for example, the ticket I opened a week ago (#795, 2012-07-02) was never announced to the channel.
21:18 benabik I could have sworn it did at one point.  Perhaps that's just the sleep dep talking.
21:19 pmichaud maybe it relied on an old Github API
21:40 stephenlb joined #perl6
21:45 quietfanatic joined #perl6
21:47 brrt joined #perl6
21:53 sirrobert joined #perl6
21:53 sirrobert hi #perl6
21:53 masak sirrobert, hi!
21:53 sirrobert how goes it? =)
21:54 sirrobert (and also:  how can expand a Hash into a list of Pairs in a sub call? =)
21:56 quietfanatic with prefix:<|> I believe
21:56 masak r: sub foo(*@pairs) { .say for @pairs }; my %foo = foo => 1, bar => 2; foo |(%foo.keys)
21:56 p6eval rakudo d8e7b6: OUTPUT«foo␤bar␤»
21:56 masak r: sub foo(*@pairs) { .say for @pairs }; my %foo = foo => 1, bar => 2; foo |(%foo.pairs)
21:56 p6eval rakudo d8e7b6: OUTPUT«"foo" => 1␤"bar" => 2␤»
21:56 masak r: sub foo(*@pairs) { .say for @pairs }; my %foo = foo => 1, bar => 2; foo |%foo
21:56 p6eval rakudo d8e7b6: OUTPUT«2 unexpected named parameters passed (foo, bar)␤  in sub foo at /tmp/lyxuJnb1Ni:1␤  in block <anon> at /tmp/lyxuJnb1Ni:1␤␤»
21:57 masak right. need the .pairs, otherwise they go in as nameds.
21:57 quietfanatic Did you mean named arguments, or simply positional arguments that happen to be pairs?
21:57 quietfanatic well, whichever you want, there you go :)
21:57 sirrobert heh thanks
21:57 sirrobert (trying it in my code now ... just a sec =)
21:58 sirrobert great; thanks =)
21:59 masak lol, I haz le blogged! \o/ http://strangelyconsistent.org/blog/july-9-things-and-descriptions
21:59 sorear masak++++++
22:00 sirrobert great
22:00 sirrobert What's the game?
22:01 sirrobert a mud-type game?
22:01 sirrobert ah, I see it
22:03 masak it's a re-write of a game I finished last year.
22:03 masak sorear: oh wow, unexpected karma :)
22:05 sirrobert woops -- late!  ttyl.
22:07 pmichaud r: sub foo(@pairs) { .say for @pairs };  my %foo = foo => 1, bar => 2;  foo (%foo.pairs);
22:07 p6eval rakudo d8e7b6: OUTPUT«"foo" => 1␤"bar" => 2␤»
22:07 pmichaud no need to interpolate :)
22:08 pmichaud r: sub foo(@pairs) { .say for @pairs };  my %foo = foo => 1, bar => 2;  foo (@(%foo));
22:08 p6eval rakudo d8e7b6: OUTPUT«"foo" => 1␤"bar" => 2␤»
22:09 seldon joined #perl6
22:10 seldon Good *, #perl6.
22:10 masak seldon! \o/
22:11 lue hello world o/
22:14 seldon I did not manage to look into git today, I'm afraid. I fear I have rediscovered the ultimate time waster.
22:14 * seldon dug up the old Megaman games for NES on the weekend.
22:15 * colomon has been playing Xevious lately...
22:17 seldon I'm astonished you were able to make time to tell us that.
22:21 colomon self-employment requires a certain self discipline.  I don't get to spend much time playing computer games.
22:21 colomon by the same token, I may have done more Xevious playing than I should have this morning....
22:31 cognominal what is the way to enumerate the keys of a nqp hash?
22:31 cognominal nqp: my %a; %a<a>:='b'; say(%a.keys)
22:31 p6eval nqp: OUTPUT«Method 'keys' not found for invocant of class 'Hash'␤current instr.: '_block1000' pc 76 ((file unknown):55) (/tmp/sziesbAloC:1)␤»
22:32 pmichaud nqp hashes are low level -- no methods
22:32 pmichaud so
22:32 pmichaud nqp:  my %a; %a<a> := 'b';   for %a { say($_.key) }
22:32 p6eval nqp: OUTPUT«a␤»
22:32 cognominal ok, thx
22:33 pmichaud it can also be done with low-level primitives like   nqp::iterator
22:33 pmichaud nqp:  my %a; %a<a> := 'b';  my $it := nqp::iterator(%a);  while $it { say($it.shift.key); }
22:33 p6eval nqp: OUTPUT«Method 'shift' not found for invocant of class 'HashIterator'␤current instr.: '_block1000' pc 118 ((file unknown):75) (/tmp/kqHi1xUphX:1)␤»
22:33 pmichaud nqp:  my %a; %a<a> := 'b';  my $it := nqp::iterator(%a);  while $it { say(nqp::shift($it).key); }
22:33 p6eval nqp: OUTPUT«a␤»
22:34 tokuhiro_ joined #perl6
22:35 cognominal I am making good but slow progress on https://github.com/cognominal/codeview  I hope that I will have a way to access a nqp parse tree
22:35 cognominal it would be sad if I had to choose another language than Perl 6 as target :(
22:57 jnthn cognominal: I've got a hack that spits out a Perl 6 parse tree as json. It's horrible but seems to kinda work.
23:00 jnthn cognominal: https://gist.github.com/3079610
23:00 sjn joined #perl6
23:00 sjn o/
23:00 jnthn cognominal: Seems to get classes ok too :)
23:00 jnthn hi sjn
23:02 cognominal jnthn, nice. it comes at the right time. I will add a github page for my project within a week.
23:02 jnthn cognominal: If you want to/from out, that should also be easy.
23:02 masak sjn! \o/
23:04 * sjn is reading masak's crypt-game
23:05 cognominal jnthn++  it seem very close to what I need. I am using JSON::Tiny and a different json format to drive my hilighter  but that should be very minor changes. The difficult part was to hook to Perl6 internals
23:06 cognominal jnthn, sorry to have been pushy, but that will ultimately benefit Perl 6
23:06 jnthn Well, I just swapped out the main body of the compiler for something that spits json rather than actually compiling and running the code :)
23:07 jnthn cognominal: You're welcome, I look forward to seeing what you come up with
23:09 * sjn is a little confuzzled about the mix of "programming terms" naming and "world description" naming in the crypt game
23:10 sjn masak: Maybe a silly question, but wouldn't it be easier to describe/read the game if you chose only one of those naming schemes?
23:10 cognominal maybe his game is just a big autopun
23:11 masak sjn: not sure what things you mean are confused.
23:11 * jnthn -> rest
23:11 whiteknight joined #perl6
23:11 masak sjn: I'm off to bed, but please leave suggestions in the backlog and I'll get to them.
23:11 cognominal jnthn, btw, the nqp shell is still broken. the stuff type given at the second prompt always lead to an error
23:11 masak 'night, #perl6
23:12 cognominal 'night everyone
23:12 sjn well, my first thought when reading the code was "this Adventure::Engine class, with it's attributes, might have been called Adventure::World or Game::World or something"
23:14 sjn just throwing out some thoughts...
23:14 sjn nn masak & jnthn :)
23:35 awwaiid joined #perl6
23:51 Vlavv` joined #perl6

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo