Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-05-01

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:06 envi_|2 joined #perl6
00:07 eviltwin_b joined #perl6
00:13 whiteknight joined #perl6
00:19 allbery_b joined #perl6
00:25 eviltwin_b joined #perl6
00:25 lestrrat joined #perl6
00:26 fgomez joined #perl6
00:33 geekosaur joined #perl6
00:35 eviltwin_b joined #perl6
00:38 allbery_b joined #perl6
00:42 tokuhirom joined #perl6
00:57 eviltwin_b joined #perl6
01:03 geekosaur joined #perl6
01:10 spaceships joined #perl6
01:18 eviltwin_b joined #perl6
01:32 havenn joined #perl6
01:40 geekosaur joined #perl6
01:50 dalek tablets: ef83e04 | (Herbert Breunung)++ | docs/appendix-g-glossary.txt:
01:50 dalek tablets: explaining smartmatch and lol and adding some other term dummies
01:50 dalek tablets: review: https://github.com/perl6/tablets/commit/ef83e04893
01:51 tadzik 'morning
01:51 phenny tadzik: 30 Apr 22:04Z <sisar> tell tadzik regarding popolnik, maybe you were looking for http://pastebin.com/hmjcndwB
01:51 lichtkind TimToady: had nothing to do with your ponderings :)
01:52 eviltwin_b joined #perl6
01:54 tadzik phenny: tell sisar Thanks, that's more than I remembered :)
01:54 phenny tadzik: I'll pass that on when sisar is around.
01:55 moritz tadzik: sleepless too?
01:56 allbery_b joined #perl6
01:56 tadzik moritz: not really, just came from a party
01:57 moritz tadzik: oh, that's a much nicer reason to be awake at this time of night
01:57 tadzik I slept through most part of Alice in Wonderland :)
01:57 * moritz tries to sleep again
01:57 tadzik in particular, I don't remember anything between getting in a rabbit hole and getting out of it
01:58 tadzik but I do remember some quote saying "you won't remember anything". Which is kind of ironic
02:00 JimmyZ_ joined #perl6
02:00 oiig_ joined #perl6
02:02 geekosaur joined #perl6
02:05 eviltwin_b joined #perl6
02:16 ponbiki joined #perl6
02:18 allbery_b joined #perl6
02:22 wolfman2000 joined #perl6
02:23 eviltwin_b joined #perl6
02:29 cognominal joined #perl6
02:30 allbery_b joined #perl6
02:38 tyatpi joined #perl6
02:40 jaldhar joined #perl6
02:42 sorear masak++
02:43 orafu joined #perl6
02:52 uvtc joined #perl6
03:05 allbery_b joined #perl6
03:12 mmol_saffron joined #perl6
03:17 JimmyZ joined #perl6
03:23 Su-Shee_ joined #perl6
03:36 allbery_b joined #perl6
03:42 allbery_b joined #perl6
03:58 lestrrat joined #perl6
03:58 eviltwin_b joined #perl6
04:00 dalek tablets: 3f58f27 | (Herbert Breunung)++ | docs/appendix-g-glossary.txt:
04:00 dalek tablets: refining some bits especially the subroutine entry
04:00 dalek tablets: review: https://github.com/perl6/tablets/commit/3f58f2778f
04:07 allbery_b joined #perl6
04:13 fgomez joined #perl6
04:13 cognominal_ joined #perl6
04:36 NamelessTee joined #perl6
04:38 cognominal_ joined #perl6
04:44 eviltwin_b joined #perl6
04:51 REPLeffect joined #perl6
05:09 allbery_b joined #perl6
05:31 cognominal joined #perl6
05:32 itz joined #perl6
05:34 lestrrat joined #perl6
05:34 geekosaur joined #perl6
05:43 eviltwin_b joined #perl6
05:44 noam joined #perl6
05:46 allbery_b joined #perl6
05:51 eviltwin_b joined #perl6
05:57 geekosaur joined #perl6
05:58 allbery_b joined #perl6
06:02 geekosaur joined #perl6
06:09 eviltwin_b joined #perl6
06:18 geekosaur joined #perl6
06:28 geekosaur joined #perl6
06:43 jerome_ joined #perl6
06:49 noam joined #perl6
06:59 sftp joined #perl6
07:17 brrt joined #perl6
07:33 fglock joined #perl6
07:42 bjarne joined #perl6
07:53 JimmyZ joined #perl6
07:59 cognominal joined #perl6
08:25 cognominal_ joined #perl6
08:28 moritz oh shark
08:28 moritz it's quiet in here today
08:28 JimmyZ \o
08:29 arnsholt Well, labour day is for not working, no? =)
08:30 moritz right
08:30 moritz which means, by definition, hanging out in IRC :-)
08:31 arnsholt Troo, troo
08:34 * moritz accidentally deleted his parrot
08:36 tadzik good morning
08:42 arnsholt moritz: So now you get to compile Rakudo all over again. Congrats =)
08:44 moritz tadzik: fwiw the 'smoker' script in emmentaler should probably be executable
08:44 cognominal joined #perl6
08:45 moritz tadzik: and the README says that neutro is a dependency
08:45 moritz that should probably be panda
08:54 dakkar joined #perl6
08:55 cognominal \o/  what is the way/library for command switch processing?
08:57 arnsholt Just the MAIN sub I think
08:58 moritz yes
08:58 moritz it covers some of the common cases
08:58 moritz though arguably in the long run we'll need something more sophisticated
09:00 cognominal thx
09:04 moritz tadzik: https://gist.github.com/2566601 failure while bootstrapping panda
09:04 moritz I have done a fresh clone of panda, and no local changes
09:10 tadzik moritz: oh, interesting
09:11 tadzik moritz: can you try removing ~/.panda/?
09:11 tadzik you may have some local changes there, ie ~/.panda/src/panda
09:15 eviltwin_b joined #perl6
09:19 allbery_b joined #perl6
09:19 cognominal_ joined #perl6
09:20 dalek Perlito: ad3b918 | (Flavio S. Glock)++ | / (6 files):
09:20 dalek Perlito: Perlito5 - javascript: implement $AUTOLOAD variable
09:20 dalek Perlito: review: https://github.com/fglock/Perlito/commit/ad3b918ccd
09:21 fglock labour day is a working day in the Netherlands :P
09:24 masak good antenoon, #perl6
09:28 masak TimToady: we have a non-smartmatch topicalizer.
09:31 PacoAir joined #perl6
09:35 eviltwin_b joined #perl6
09:37 moritz yes, but it's verbosish
09:40 jnthn It's the first of May, first of May!
09:40 jnthn ...good morning, #perl6 :)
09:40 moritz good antenoon, jnthn :-)
09:40 moritz tadzik: works after removing ~/.panda
09:40 jnthn :P
09:45 fglock good lunchtime!
09:48 eviltwin_b joined #perl6
09:50 GlitchMr joined #perl6
09:59 masak good noon!
10:00 dalek nqp: 480d22d | (Arne Skjærholt)++ | src/6model/reprs/CArray.c:
10:00 dalek nqp: [CArray] Refactor bind_pos_boxed/at_pos_boxed.
10:00 dalek nqp:
10:00 dalek nqp: Since we've added child_objs, we can cache the generated String objects as
10:00 dalek nqp: well, and eliminate the need for at/bind_pos_complex.
10:00 dalek joined #perl6
10:01 arnsholt Durr? I didn't just push that commit I think...
10:01 moritz arnsholt: oh, I'm sorry
10:01 moritz arnsholt: I had locally merged that branch, and never meant to push it
10:02 moritz arnsholt: and then I did another commit, forgot it, and pushed
10:02 moritz :(
10:02 moritz arnsholt: should I revert the merge?
10:02 masak do a git push --force
10:02 daemon joined #perl6
10:02 masak it's only been 2 minutes.
10:02 moritz ok
10:03 moritz masak++ arnsholt++
10:03 arnsholt Oh, right
10:04 dalek nqp: 0dde8f3 | moritz++ | tools/lib/NQP/Configure.pm:
10:04 dalek nqp: [configure] automatically configure push urls
10:04 dalek nqp:
10:04 dalek nqp: when cloning NQP or Parrot, automatically add an ssh-based pushurl,
10:04 dalek nqp: to make contributions easier for those with commit bits
10:04 dalek nqp: review: https://github.com/perl6/nqp/commit/0dde8f3dd0
10:04 arnsholt I think the commit is good
10:04 moritz arnsholt: it wasn't just that commit, it was the whole branch. dalek just reported one
10:04 arnsholt I was just a bit confused by me committing something while working on something else =)
10:04 moritz arnsholt: I'll let you do the merge once you decide it's time for it
10:05 moritz note to self: make a different branch for testing local merges
10:05 arnsholt I recently fixed git push to only push the current branch
10:07 timotimo joined #perl6
10:08 moritz well, that doesn't help when I locally merge your branch into master for testing :-)
10:08 arnsholt Right ^_^
10:10 moritz http://corte.si/posts/code/pathod/announce0_1.html # that looks quite cool
10:10 dalek emmentaler: 90ae502 | tadzik++ | / (21 files):
10:10 dalek emmentaler: Remove obsolete files
10:10 dalek emmentaler: review: https://github.com/tadzik/emmentaler/commit/90ae502dff
10:10 dalek emmentaler: b7843aa | tadzik++ | smoker (2 files):
10:10 dalek emmentaler: Make smoker executable
10:10 dalek emmentaler: review: https://github.com/tadzik/emmentaler/commit/b7843aa6e2
10:10 dalek emmentaler: 01a2fb5 | tadzik++ | formatter (2 files):
10:10 dalek emmentaler: Rename formatter, make it executable
10:10 dalek emmentaler: review: https://github.com/tadzik/emmentaler/commit/01a2fb5d4a
10:10 dalek emmentaler: d51daf8 | tadzik++ | README:
10:10 dalek emmentaler: Update README
10:10 dalek emmentaler: review: https://github.com/tadzik/emmentaler/commit/d51daf8a04
10:10 allbery_b joined #perl6
10:11 cognominal joined #perl6
10:11 jnthn .oO( I'm not for smoking, but it's executing smokers a little harsh? )
10:11 jnthn *isn't
10:11 masak moritz: nice.
10:12 masak jnthn: they're only being made executable.
10:12 jnthn masak: I know but the temptation it'll unleash... :P
10:12 masak like a craving.
10:17 arnsholt Let's see if I can't unbreak my NQP
10:18 havenn joined #perl6
10:18 jnthn oh noes, you broke it?
10:18 arnsholt Well, only locally =)
10:19 arnsholt But ever since I tried to add my CStr repr to the build process, it complains about not being able to locate the nqp_dyncall_ops shared lib
10:19 jnthn Hm
10:19 jnthn That's...very odd.
10:19 moritz arnsholt: what to paste the diff to Makefile.in?
10:20 arnsholt Yeah. I'm thinking that it's not actually a failure to locate but a failure to load
10:20 arnsholt I'm trying to rebuild without the CStr repr right now. I'll come back with the diff if it's still broken
10:22 colomon anyone out there understand how #?DOES is supposed to work in fudge?
10:22 allbery_b joined #perl6
10:22 moritz colomon: there are two ways it can work
10:23 moritz colomon: you can put it in front of a block, and do a #?impl skip 'reason'. Then it will skip as many tests as the number after #?DOES
10:23 moritz colomon: or you can put it in front of a function. In which case fudge considers that function a normal test function like ok() or is(), and that it runs the specified number of tests
10:24 moritz does t/spec/S02-magicals/env.t pass on current rakudo?
10:25 colomon what I'm running into at the moment is that the value (at least using niecza's fudgeandrun) appears to be sticky
10:25 jnthn Not here, but I thought that may be Windows specific.
10:25 colomon that is, I say #?DOES 3 before a block, and every skip after that is getting marked as 3 tests.
10:25 arnsholt There, I fixed it
10:26 arnsholt Combination of two errors. One brain-dead copy-pasta, and one line I forgot to update in Makefile.in
10:26 moritz jnthn: do Test::Util based tests run on windows now?
10:27 jnthn moritz: yeah
10:27 moritz \o/
10:27 jnthn I have vastly less failures these days
10:27 moritz jnthn: what failures remain?
10:27 dalek rakudo/nom: 5552804 | moritz++ | docs/ChangeLog:
10:27 dalek rakudo/nom: fill in some ChangeLog entries
10:27 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5552804f58
10:28 jnthn moritz: Mostly ones in the pod tests due to \r\n related parse issues
10:28 colomon moritz: never mind, deleting the #?DOES commands I'd added and switching to the function version made it work beautifully.
10:28 moritz colomon: good
10:28 jnthn moritz: Can do a run now to see the full list
10:29 arnsholt jnthn: BTW, after some thought I'm not sure I'm happy with manually-manage(). What do you think about explicitly-manage?
10:29 dalek roast: 4d31087 | (Solomon Foster)++ | S03-operators/short-circuit.t:
10:29 dalek roast: Add proper #?DOES for accumtest, unfudge test that now works in Niecza.
10:29 dalek roast: review: https://github.com/perl6/roast/commit/4d31087f4c
10:29 arnsholt It's not manually managing memory in the sense of malloc/free, after all
10:30 jnthn keep-alive(...) :)
10:30 arnsholt Heh. That makes me think of HTTP =)
10:30 jnthn Yeah, that was kinda deliberate.
10:31 jnthn Instead of a re-marshall for every call, we marshall once and re-use that every call. :)
10:31 arnsholt Point, point
10:31 jnthn It's probably a "you think it's cute today" name though :)
10:31 eviltwin_b joined #perl6
10:31 arnsholt Does have that potential, yeah
10:33 moritz r: say %*ENV<notthere>.defined
10:33 p6eval rakudo 2da78a: OUTPUT«True␤»
10:33 moritz tadzik: ^^ that's a regression from your patches
10:33 moritz r: say %*ENV<notthere>.WHAT
10:33 p6eval rakudo 2da78a: OUTPUT«Str()␤»
10:34 moritz r: say %*ENV<notthere>.perl
10:34 p6eval rakudo 2da78a: OUTPUT«""␤»
10:34 moritz tadzik: at least I think so
10:34 tadzik moritz: it would seem so, yes
10:35 tadzik it may be that from a system's POV there's no difference between an unset variable and a variable set to ""
10:35 tadzik will investigate
10:35 moritz there is, I think
10:36 jnthn 4, 5, 9 and 15 from env.t fail here
10:36 * tadzik investigates
10:36 moritz tadzik: I'm fudging the tests for now
10:36 tadzik okay, thanks
10:36 dalek roast: f5b0e56 | moritz++ | S02-magicals/env.t:
10:36 dalek roast: [env.t] redo tests for child process %*ENV with Test::Util
10:36 dalek roast:
10:36 dalek roast: Also re-fudge for rakudo
10:36 dalek roast: review: https://github.com/perl6/roast/commit/f5b0e569aa
10:37 jnthn moritz: Do you have a failure in S10-packages/basic.t?
10:38 moritz jnthn: no
10:38 jnthn Oddness.
10:39 moritz jnthn: which one fails?
10:39 jnthn 47
10:39 tadzik may it be that get_string_keyed VTABLE always returns a string, even ""?
10:39 jnthn And it looks like a really weird failure to be Windows-specific...
10:39 * tadzik tries a patch
10:40 jnthn tadzik: You can nqp::existskey to check for existence and do soemthing different.
10:40 tadzik right
10:41 tadzik what should an unset var return, a Str type object?
10:42 moritz r: my %h; say %h<foo>.perl
10:42 p6eval rakudo 2da78a: OUTPUT«Any␤»
10:42 moritz tadzik: sound sensible
10:42 tadzik Got it
10:43 geekosaur joined #perl6
10:56 geekosaur joined #perl6
11:04 moritz jnthn: any idea how I could implement the -I (search path) command line option?
11:04 moritz jnthn: the question is, where do we store the additional search paths, and when do we stuff them into @*INC?
11:04 jnthn moritz: Guess it wants similar handling to PERL6LIB?
11:05 brrt left #perl6
11:05 cognominal_ joined #perl6
11:06 moritz jnthn: ok, that answers the "when"
11:06 jnthn moritz: It all happens in term.pm
11:06 moritz jnthn: but where do we store it? in the Perl6::Compiler object?
11:06 moritz or HLL::Compiler, for that matter?
11:06 jnthn Oh, you mean where is it kept?
11:06 geekosaur joined #perl6
11:07 moritz yes
11:07 moritz between parsing it  and the run time of the setting
11:08 jnthn You're in the dynamic context of the compiler when the setting is being loaded.
11:08 eviltwin_b joined #perl6
11:08 jnthn In Actions.pm to find the --setting=... we do %*COMPILING<%?OPTIONS><setting>
11:08 moritz oh
11:08 jnthn You'll need to use nqp::atkey(...) blah in the setting though
11:08 moritz so I can just access %*COMPILING<%?OPTIONS><I>
11:08 jnthn e.g. not do Perl 6 style keying...
11:08 jnthn Yeah
11:09 moritz hm, I thought it worked
11:09 jnthn You can always try it out in a BEGIN block to figure out how to get hold of it.
11:09 moritz because of how we marshal parrot stuff to Perl 6 types
11:09 jnthn We marshall return values from method calls.
11:09 jnthn Don't think we marshall contextual lookups.
11:09 jnthn bbi10, eating brunch :)
11:11 allbery_b joined #perl6
11:11 cognominal_ joined #perl6
11:11 oiig_ joined #perl6
11:16 dalek nqp: 480d22d | (Arne Skjærholt)++ | src/6model/reprs/CArray.c:
11:16 dalek nqp: [CArray] Refactor bind_pos_boxed/at_pos_boxed.
11:16 dalek nqp:
11:16 dalek nqp: Since we've added child_objs, we can cache the generated String objects as
11:16 dalek nqp: well, and eliminate the need for at/bind_pos_complex.
11:16 arnsholt Hmm. I think dalek needs some kind of rate limiting
11:16 dalek joined #perl6
11:19 arnsholt But now the write-barrier stuff is in master
11:21 eviltwin_b joined #perl6
11:22 dalek zavolaj: 3b4926f | (Arne Skjærholt)++ | t/07-writebarrier. (2 files):
11:22 dalek zavolaj: Add tests for write-barriering of CArray and CStruct types.
11:22 dalek zavolaj: review: https://github.com/jnthn/zavolaj/commit/3b4926f5c8
11:23 geekosaur joined #perl6
11:23 spider-mario joined #perl6
11:24 jnthn arnsholt++
11:24 tadzik FETCH cannot return Any?
11:25 tadzik it seems to segfault rakudo when I do it in the setting
11:25 * jnthn doesn't see why it couldn't
11:26 tadzik hm
11:28 tadzik https://gist.github.com/2567462
11:30 jnthn alive3
11:30 jnthn I don't see taht in the code?
11:30 tadzik oh
11:30 tadzik it's the third "alive"
11:31 jnthn tadzik: uh
11:31 tadzik must've undoed something accidentaly
11:31 jnthn YOu're returning
11:31 tadzik so it blows up on "return Any"
11:31 jnthn "return"
11:31 jnthn Yeah
11:31 jnthn YOu don't want to do taht.
11:31 jnthn That returns from the at_key
11:31 tadzik oh
11:31 jnthn Not from the closure you're FETCHing.
11:31 jnthn FETCH => {
11:31 jnthn That's just a closure, so it's transparent to return.
11:31 arnsholt I just have to mention that I <3 git
11:32 jnthn Just remove the return statements.
11:32 tadzik I think it's the second time I stumble upon this :)
11:32 dalek Perlito: 000df64 | (Flavio S. Glock)++ | / (2 files):
11:32 dalek Perlito: Perlito5 - javascript: implement infix:<**>
11:32 dalek Perlito: review: https://github.com/fglock/Perlito/commit/000df646a9
11:32 tadzik thanks jnthn
11:32 arnsholt Make WIP commit on branch, do stuff in a couple other branches, come back to original branch, reset HEAD^ and pick off where I left
11:32 arnsholt No idea what I'd done if this were svn
11:33 tadzik I usually use stash for this
11:33 arnsholt Yeah, it's essentially a manual stash
11:34 arnsholt But I had some new source files I wanted to get out of the way since I was going to merge my feature branch into master
11:34 eviltwin_b joined #perl6
11:34 arnsholt Which would be git stash -u, I see now that I bother to read the docs again O:)
11:35 moritz arnsholt: to be fair, svn makes working with dirty trees much easier than git
11:36 fgomez joined #perl6
11:36 arnsholt Dirty tree yes, but I'm starting to quite like the pattern of temporary WIP commits to get things out of the way
11:40 geekosaur joined #perl6
11:48 ponbiki joined #perl6
11:50 benabik joined #perl6
11:58 dalek nqp/toqast: 07ab3c7 | jnthn++ | src/QAST/ (2 files):
11:58 dalek nqp/toqast: Sketch out 'bind' op; since it's sensitive to the variable type, the real work on this will be done by the QAST::Var processor.
11:58 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/07ab3c752a
11:58 dalek nqp/toqast: d8fd160 | jnthn++ | src/QAST/Compiler.nqp:
11:58 dalek nqp/toqast: Implement lookup of and binding to locals; handles natively typed ones right off (which PAST never did).
11:58 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/d8fd160af3
11:58 dalek nqp/toqast: b67c3b8 | jnthn++ | t/qast/qast.t:
11:58 dalek nqp/toqast: Some very basic tests for binding to a local of the various native types, and ensuring a bind works as an rvalue too (e.g. we return the bound value).
11:58 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/b67c3b812b
11:58 * jnthn -> store, hope it's open!
11:59 sjn jnthn: good luck with that
11:59 sjn mayday is pretty important here in the nordics :)
12:04 moritz jnthn: fwiw I noticed that nqp::shift can be both shifting off an RPA or off an iterator
12:04 moritz jnthn: i guess for compatibilty with other ops we might want an nqp::itershift or so
12:06 * moritz has a working prototype for -I lib
12:07 masak nice: http://www.utf8everywhere.org/
12:08 moritz aye, though I think some parts of it are technically not well done
12:08 moritz for one they focus quite a bit on C++
12:08 * sjn writes a hackathon report
12:08 sjn anyone here want to give me some ideas of what worked and what didn't so much? :)
12:09 moritz and then they don't actually tell you how to do some operations (like substr) on the Codepoint or character leven with UTF-8
12:09 moritz sjn: worked: nice location, good information upfront, good food, good hacking
12:10 moritz sjn: not worked: discussing all the topics you guys suggested up front
12:10 rsimoes "unicode everywhere" might be more palatable
12:10 sjn moritz: yep, good point
12:11 rsimoes since it's not obvious to everyone that utf8 is preferable over alternatives
12:14 dalek roast: 353a80c | tadzik++ | S02-magicals/env.t:
12:14 dalek roast: Untodo passing %*ENV tests
12:14 dalek roast: review: https://github.com/perl6/roast/commit/353a80c7c6
12:15 dalek rakudo/nom: e9d0bbb | tadzik++ | src/core/terms.pm:
12:15 dalek rakudo/nom: Fix %*ENV regressions
12:15 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e9d0bbb8a0
12:16 jnthn sjn: My local coop seems pretty immune to red days :)
12:16 cognominal_ joined #perl6
12:19 jnthn sjn: Venue was great and easy to work undistracted, good supply of coffee and nom, well organized everything, good balance of hacking/socializing.
12:21 masak jnthn: local coop doesn't respect May 1? Bloody commies! oh wait :P
12:21 jnthn masak: If they're not supporting a *red* day, how are they... :P
12:21 masak and it's a *co-op*!
12:21 brrt joined #perl6
12:21 dalek rakudo/nom: 4c241c8 | moritz++ | / (3 files):
12:21 dalek rakudo/nom: implement -I command line option
12:21 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4c241c86e2
12:22 masak I guess they've been corrupted by soulless profiteering or something.
12:22 jnthn sjn: As moritz mentioned, we didn't manage to discuss all the topics suggested up front... I wonder if there's some degree to which if you put a bunch of people who already have a bunch of interesting problems to work together though, they'll reliably and quite happily self-organize without needing a theme.
12:23 * sjn notes that the Swedes are slowly turning into American Capitalist Pigs :)
12:24 sjn jnthn: how about friday?
12:24 * sjn has no clue what you guys spent your time on, on friday
12:24 jnthn sjn: We discussed stuff and hacked on stuff.
12:24 sjn that day kinda became a "bonus day"
12:25 jnthn sjn: Getting us a place to be able to do so was a big win.
12:25 sjn jnthn: so when you "good balance of hacking/socializing", you took friday into account
12:26 sjn you said*
12:26 jnthn sjn: Yes.
12:26 jnthn sjn: Friday was productive in the day and social in the evening :)
12:26 geekosaur joined #perl6
12:26 jnthn (For those of us around early enough to hack on Friday, that is.)
12:29 moritz sjn: as a summary, I for one was very happy with the hackathon
12:31 jnthn Same. I was only sad on Monday, when I realized that the hackathon had come to an end. :)
12:31 jnthn And thought "gee, why can't all days be that much fun?" :)
12:35 masak I thought "what if every day at work at clients were like this?" i.e. brimming with creativity around a table, people just exchange information freely when they need to, and everyone gets a lot done on whatever they want. and somehow lunch just materializes. :P
12:36 moritz it didn't materialize; krunen++ usually was involved with preparing it :-)
12:36 masak I know... :)
12:36 masak krunen++
12:36 moritz sjn++ krunen++ frettled++
12:36 masak I agree on the Friday being a big win. the hackathon still felt short, but the Friday sure helped to gear into it.
12:37 eviltwin_b joined #perl6
12:38 cogno joined #perl6
12:38 [Coke] seen ambs?
12:38 aloha ambs was last seen in #parrot 139 days 1 hours ago joining the channel.
12:39 [Coke] I didn't see any perl6 submissions for grants this quarter!
12:40 [Coke] (granted, I forgot to squawk about it here...)
12:41 jnthn oh darn, I still didn't file my final report for my current one!
12:43 masak jnthn: what's blocking you?
12:44 jnthn masak: Finding it more fun to write code than to write prose :P
12:44 jnthn (So basically, nothing besides getting around to it.)
12:45 [Coke] does anyone have any thing they'd work on if only someone would pay them to?
12:46 tadzik well, if one could start in July...
12:46 * masak .oO( drinking pina coladas on an idyllic beach in Thailand... )
12:47 masak oh, "work"... :P
12:47 jnthn I'd work on a microbrewery tour?
12:47 jnthn :)
12:47 Chillance joined #perl6
12:47 * jnthn will actually file a grant after this to do compact arrays and other S09 goodness.
12:47 jnthn *after this one
12:47 JimmyZ_ joined #perl6
12:47 masak \o/
12:48 PerlJam [Coke]: money and tuits aren't fungible.  Even if TPF has money to give, it's the tuits that are the real problem.
12:48 masak still, asking doesn't hurt.
12:48 jnthn Aye
12:48 PerlJam indeed
12:50 PerlJam It would be neat if TPF had a "make a wish" kind of grant where TPF takes care of whatever details are required to obtain the appropriate tuits for you to work on some Perl thing.
12:50 PerlJam :-)
12:50 moritz [Coke]: I might. But I'm still working on that exceptions grant
12:51 oiig joined #perl6
12:54 dalek nqp/toqast: 28c8f73 | jnthn++ | t/qast/qast.t:
12:54 dalek nqp/toqast: Make sure simple lookups of locals work too.
12:54 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/28c8f73aad
13:03 leprevost joined #perl6
13:13 geekosaur joined #perl6
13:15 tokuhirom joined #perl6
13:15 eviltwin_b joined #perl6
13:30 c1sung joined #perl6
13:46 eviltwin_b joined #perl6
13:48 mikemol joined #perl6
13:50 dalek tablets: a3c24a0 | (Herbert Breunung)++ | docs/report.pl:
13:50 dalek tablets: regularize report script
13:50 dalek tablets: review: https://github.com/perl6/tablets/commit/a3c24a0947
13:50 dalek tablets: 56dfda4 | (Herbert Breunung)++ | docs/appendix-g-glossary.txt:
13:50 dalek tablets: small format fixe
13:50 dalek tablets: review: https://github.com/perl6/tablets/commit/56dfda45d1
13:57 arnsholt Segfault! \o/
13:57 tadzik \o/
13:57 tadzik always funy
13:58 dalek Perlito: b44f592 | (Flavio S. Glock)++ | / (2 files):
13:58 dalek Perlito: Perlito5 - TODO update
13:58 dalek Perlito: review: https://github.com/fglock/Perlito/commit/b44f5925ae
13:58 arnsholt Yeah. Also, it means that I managed to get my new NQP C code to run from Perl 6 =)
14:01 arnsholt Oh, dang. I forgot to set debug flags in my Parrot
14:02 sergot joined #perl6
14:02 sergot hi o/
14:02 tadzik hi fs
14:02 tadzik aw. hi sergot
14:07 * colomon is trying out emmentaler locally....
14:10 masak o rekin, sergocie.
14:11 sergot masak: why 'rekin'? :)
14:11 * masak .oO( when they dissect masak's brain in 2076, and discover that he knows the vocative of "shark" in Polish really well, but almost no other Polish... )
14:11 masak sergot: you asked that yesterday!
14:12 masak I said you should check the backlog, but apparently I chose a word that means "to-do list".
14:12 masak so you probably never did :)
14:12 sergot masak: Oh, ok. :)
14:14 masak sergot: the explanation is that "hai" means "shark" in a couple languages, and tadzik realized this and started saying "oh shark" instead of "oh hai".
14:16 cogno joined #perl6
14:16 skids joined #perl6
14:17 sergot :)
14:17 birdwindupbird joined #perl6
14:20 dalek tablets: dca1063 | (Herbert Breunung)++ | docs/report.pl:
14:20 dalek tablets: report now includes all tablets
14:20 dalek tablets: review: https://github.com/perl6/tablets/commit/dca1063688
14:21 colomon tadzik: perl-5.14 required?
14:21 * colomon turns back on his perlbrew...
14:21 tadzik colomon: uh, shouldn't be
14:21 tadzik that reminds me to write the Perl 5 dependencies
14:21 tadzik I suppose even 5.8 will do
14:22 allbery_b joined #perl6
14:22 colomon tadzik: formatter, line 2: use 5.014;
14:23 tadzik right
14:23 tadzik it's just a habit of mine, so I have say() and all this
14:23 tadzik I'm now sanitizing this file a little bit
14:23 colomon sure, 5.14 is cool
14:23 colomon \o/
14:24 colomon successfully generated my own emmentaler HTML page.
14:24 tadzik yay!
14:24 colomon now to hack it to run under niecza... ;)
14:24 colomon well, actually, now to $work, and p6 hacking for later
14:25 birdwind1pbird joined #perl6
14:25 flussence .oO( would be nice for my $dayjob stuff if I could write "use $specific-perlbrew-install-alias;"... )
14:25 Chillance joined #perl6
14:27 dalek emmentaler: d6058c1 | tadzik++ | formatter:
14:27 dalek emmentaler: Simplify formatter
14:27 dalek emmentaler: review: https://github.com/tadzik/emmentaler/commit/d6058c14d3
14:27 dalek emmentaler: e12a40a | tadzik++ | README:
14:27 dalek emmentaler: Note Perl 5 dependencies in README
14:27 dalek emmentaler: review: https://github.com/tadzik/emmentaler/commit/e12a40a8c2
14:28 NamelessTee joined #perl6
14:44 cogno joined #perl6
14:45 * tadzik frowns at http://perlcabal.org/syn/S02.html#Double-underscore_forms
14:46 tadzik in particular at having a separate variable for every POd block type
14:47 masak well, it would feel a bit silly to have a = twigil just to get $=pod
14:47 tadzik that too ;)
14:48 masak =begin DATA
14:48 masak didn't we lower-case 'DATA' to 'data'?
14:48 masak i.e. shouldn't S02 play catch-up with S26 there?
14:49 tadzik should
14:50 tadzik hmm, that shouldn't be too hard to implement, maybe
14:51 masak oh, and '=begin END' is '=begin finish' now.
14:51 masak the prose says it, but the table doesn't.
14:52 geekosaur joined #perl6
14:53 * masak wonders if we have a spectest to make sure that '=end finish' is treated as verbatim text, not a directive
14:53 [Coke] ... begin finish?
14:53 drbean joined #perl6
14:53 masak [Coke]: usually just =finish
14:53 masak [Coke]: Perl 6's __END__
14:53 [Coke] just read funny.
14:53 [Coke] (no funnier than begin end, I suppose. ;)
14:54 masak no :)
14:54 masak and =end is problematic
14:54 masak so =finish it became.
14:54 masak it's good 'cus its dual noun/verb.
14:55 eviltwin_b joined #perl6
14:55 [Coke] I would have preferred "stop", I think.
14:55 [Coke] but, close enough. ;)
14:55 masak that reads wrong to me.
14:56 masak sure, the Perl 6 parser stops caring, but the Pod parser is just getting warmed up! :)
14:56 masak whereas "finish" has connotations of "and now, the big finish!"
14:56 masak (especially =begin finish)
14:57 * PerlJam thinks finale would work better there :)
14:58 masak sure, but it's just noun-y.
14:58 masak I kinda like finale, though.
15:04 NamelessTee joined #perl6
15:04 mucker joined #perl6
15:11 cogno joined #perl6
15:17 masak p6: s[ish] = 'ale' given my $directive = 'finish'; say $directive
15:17 p6eval rakudo 4c241c, niecza v17-2-gb8fcf85: OUTPUT«finale␤»
15:17 p6eval ..pugs: OUTPUT«␤»
15:17 * masak still thinks that syntax is awesome sauce
15:18 tadzik how does one iterate over a hash in nqp?
15:18 * masak .oO( very carefully )
15:18 jnthn for %hash { }
15:18 tadzik and I get a pair inside?
15:18 jnthn for %hash { say($_.key); say($_.value) }
15:18 tadzik okay, thanks
15:19 jnthn pzh
15:19 MContagious joined #perl6
15:19 arnsholt jnthn: In case you wondered, 6model isn't happy if a REPR forgets to implement the initialize method O:)
15:19 jnthn arnsholt: er, I imagine not, no :)
15:19 geekosaur joined #perl6
15:20 PerlJam masak: for half a second I was confused about how you were accessing the "ish" element of the s array   ;)
15:20 jnthn Oh, I just saw "ale" in the code and assumed it must be awesome code.
15:20 PerlJam heh
15:20 noam joined #perl6
15:23 kaare_ joined #perl6
15:23 thou joined #perl6
15:23 masak r: constant s = (1, 2, 3); s[ish] = 'ale' given my $directive = 'finish'
15:23 p6eval rakudo 4c241c:  ( no output )
15:23 masak r: constant s = (1, 2, 3); s[ish] = 'ale' given my $directive = 'finish'; say $directive
15:23 p6eval rakudo 4c241c: OUTPUT«finale␤»
15:24 masak PerlJam: seems s[] is almost as much a special form in Perl 6 as in Perl 5
15:24 masak in Perl 5 it's kinda tricky to invoke a 'sub s'... :)
15:24 jnthn r: sub s { "yes?" }; say s()
15:24 p6eval rakudo 4c241c: OUTPUT«yes?␤»
15:25 arnsholt If $x does ARole, $x ~~ ARole, right?
15:25 masak yes.
15:25 masak infix:<~~> is a kind of mechanism-agnostic type checker.
15:25 masak works on classes, roles, subtypes, and things we haven't thought of yet ;)
15:27 pmichaud good morning, #perl6
15:28 masak pmichaud! \o/ \o/
15:28 arnsholt Yeah, that's what I thought, but I had a moment of doubt =)
15:29 tadzik okay, I got stuff like $=DATA working. The problem is, the optimizer catches their usage before I construct them, so I have to do eval '$=DATA' :)
15:29 MContagious1 joined #perl6
15:29 masak r: class ReallyGrumpyType { method ACCPETS($) { False } }; say ReallyGrumpyType.new ~~ ReallyGrumpyType
15:29 p6eval rakudo 4c241c: OUTPUT«True␤»
15:29 masak dang :)
15:29 arnsholt jnthn: Any particular reason the various DYNCALL_ARG_* constants are all even numbers?
15:29 masak r: class ReallyGrumpyType { method ACCPETS($self:U: $) { False } }; say ReallyGrumpyType.new ~~ ReallyGrumpyType
15:29 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤invoke() not implemented in class 'Capture'␤»
15:30 masak tadzik: then the optimizer is wrong.
15:30 tadzik masak: probably. It's funny, for it doesn't catch $=pod this way
15:30 arnsholt r: class ReallyGrumpyType { method ACCEPTS($self:U: $) { False } }; say ReallyGrumpyType.new ~~ ReallyGrumpyType
15:30 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤invoke() not implemented in class 'Capture'␤»
15:31 arnsholt Oh, not that.
15:33 dalek rakudo/named_pod_vars: a2db837 | tadzik++ | src/Perl6/ (2 files):
15:33 dalek rakudo/named_pod_vars: First attempt at implementing Pod variables like $=data, $=SYNOPSIS etc
15:33 dalek rakudo/named_pod_vars: review: https://github.com/rakudo/rakudo/commit/a2db83712a
15:33 arnsholt jnthn: Never mind. I see it
15:34 MContagious1 Hey how can I help?
15:34 eviltwin_b joined #perl6
15:34 tadzik hello MContagious1! What would you like to do?
15:35 MContagious1 I am basically Perl5 developer and can help you on testing with perl6 code
15:36 tadzik are you interested in compiler development, or module development?
15:36 MContagious1 module dev
15:37 masak MContagious1: hiya! welcome.
15:37 goraki joined #perl6
15:37 tadzik we have a module repository, see http://modules.perl6.org/ Modules are in various stages of workingness, see http://tjs.azalayah.net/new.html You may want to look at some code, possibly revive some outdated module or write a new one
15:37 MContagious1 masak:thank you
15:38 MContagious1 tadzik:checking them
15:38 tadzik we also have a list of Most Wanted Modules, https://github.com/perl6/ecosystem/wiki/Most-Wanted-Modules
15:38 masak MContagious1: we're currently expanding in web, databases, and irc bots. pick whatever pleases you and dig in.
15:38 masak tadzik++
15:38 masak MContagious1: you'll know you're on the right track when people start to ++ you ;)
15:39 MContagious1 :)
15:40 Tudetus joined #perl6
15:41 Tudetus left #perl6
15:43 Tudetus joined #perl6
15:48 Psyche^ joined #perl6
15:51 cogno joined #perl6
15:57 tadzik colomon: do you have some fresh results.json lying around?
15:58 colomon er, yes, but there's absolutely nothing special about them
15:58 tadzik if there are generated they are fine for me, I have a limited bandwith right now to run the script, but I need them for some experimenting. Can you paste them somewhere?
16:01 lichtkind joined #perl6
16:02 lichtkind what is the difference between term an expression?
16:03 arnsholt Mmm. Cargo-culting code
16:04 masak lichtkind: a term is one "thing" in the code. like 42 or "OH HAI" or [1, 2, 3]
16:04 masak lichtkind: an expression is a well-formed sequence of terms and operators.
16:05 PerlJam lichtkind: terms are nouns, operators are verbs, expressions are sentences  (sorta)   :-)
16:05 goraki Hi there, can someone tell me the best way to read stdin line by line (e.g. process each line as the user hits return) in perl 6?
16:05 PerlJam mayhap I stretch the analogy
16:05 masak terms are tightest-precedence in the op precedence table because they're like the "atoms" of code
16:05 tadzik goraki: for $*IN.lines should be fine
16:06 masak goraki: or just 'for lines() { ... $_ ... }'
16:06 tadzik r: for $*IN.lines -> $line { say $line.uc }
16:06 p6eval rakudo 4c241c: OUTPUT«LAND DER BERGE, LAND AM STROME,␤LAND DER ÄCKER, LAND DER DOME,␤LAND DER HÄMMER, ZUKUNFTSREICH!␤HEIMAT BIST DU GROSSER SÖHNE,␤VOLK, BEGNADET FÜR DAS SCHÖNE,␤VIELGERÜHMTES ÖSTERREICH,␤VIELGERÜHMTES ÖSTERREICH!␤␤HEISS UMFEHDET, WILD UMSTRITTEN␤LIEGST DEM ERDTEIL DU IN…
16:06 masak both work. don't remove those parens, though :)
16:06 masak tadzik: there's no need to schaut... :)
16:06 tadzik oh, sorry;
16:06 tadzik r: for $*IN.lines -> $line { say $line.lc }
16:06 p6eval rakudo 4c241c: OUTPUT«land der berge, land am strome,␤land der äcker, land der dome,␤land der hämmer, zukunftsreich!␤heimat bist du großer söhne,␤volk, begnadet für das schöne,␤vielgerühmtes österreich,␤vielgerühmtes österreich!␤␤heiß umfehdet, wild umstritten␤liegst dem erdteil du inmi…
16:06 arnsholt If you prefer recursive definitions: a term is the smallest (atomic) expression, while an expression in genereal maybe composed of many smaller expressions with the help of operators
16:07 masak aye.
16:07 masak the terms are the stuff and the operators are the glue. together, they form expressions.
16:07 goraki tadzik: masak: when I run either I don't get any output until I hit ctrl-d to "end" the input.
16:08 masak goraki: let my try locally.
16:08 masak my gosh, you're right!
16:08 goraki masak: ta.
16:08 * masak submits rakudobug
16:08 goraki masak: (-:
16:08 masak goraki: your request has been filed. thank you for noticing.
16:08 PerlJam wait... that's a bug?
16:08 masak sure.
16:08 tadzik sure
16:09 masak lines() is supposed to be lazy.
16:09 goraki masak: no worries.
16:09 spaceships joined #perl6
16:09 goraki masak: thanks for listening.
16:10 masak that we're happy to do.
16:10 masak let us know if you notice something else that's odd.
16:11 goraki will do.
16:11 masak your request can now be followed at https://rt.perl.org/rt3/Ticket/Display.html?id=112716
16:12 sftp joined #perl6
16:13 thelazydeveloper joined #perl6
16:14 geekosaur joined #perl6
16:14 * TimToady is starting to think we should scrap =begin finish and just replace it with something like =======================
16:15 PerlJam TimToady: I still like "=begin finale"   :-)
16:15 TimToady this whole business of allowing a special exemption for an unbalanced =begin or =end just stinks
16:15 * sjn is a fan of markdown </blasphemy> :)
16:16 TimToady all we're doing is turning off the Perl 6 parser
16:16 TimToady and the Pod parser (almost) doesn't care about that
16:17 jnthn tadzik: The...optimizer is whining at you about undeclared variables?
16:17 TimToady and the reason it was END before was so that it would stand out visually
16:17 jnthn tadzik: I didn't think it did that :)
16:17 * TimToady is not a fan of lowercasing it
16:17 tadzik jnthn: yeah, it does :)
16:17 TimToady but =================== stands out visually
16:17 MayDaniel joined #perl6
16:17 jnthn tadzik: --optimize=off makes the issue go away?
16:17 unobe joined #perl6
16:18 PerlJam TimToady: how many = is that again?  :P
16:18 tadzik jnthn: https://gist.github.com/2569314 on pod_named_vars branch, or however I named it
16:18 tadzik jnthn: dunno, let me recompiler
16:18 TimToady more than N, where N is negotiable
16:18 tadzik named__pod_vars
16:18 PerlJam TimToady: I vote N = 4 then
16:18 PerlJam well,  N=3 for "more than"
16:19 TimToady and it has to be where a pod directive is expected, I suppose
16:19 jnthn tadzik: When is $=DATA being declared?
16:19 tadzik jnthn: POd parser declares it
16:19 jnthn Before we'd parse the say $=DATA ?
16:19 masak TimToady: I agree about the stink.
16:20 tadzik jnthn: er, I don't think so
16:20 TimToady in that sense __END__ was an improvement on its successors
16:20 tadzik it installs the lexical symbol after we're done parsing the file
16:20 tadzik same for $=pod
16:20 masak ===== could also be a merge garbage marker, but I guess we catch it at '<<<', so that should be fine.
16:21 TimToady well, we could require more of 'em
16:21 jnthn tadzik: Then it's too late.
16:21 jnthn tadzik: It's not the optimizer
16:21 jnthn tadzik: It's the same thing that catches:
16:21 jnthn r: say $a; my $a;
16:21 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤Variable $a is not declared␤at /tmp/ZXr8utD5lR:1␤»
16:21 tadzik I see
16:21 tadzik still, why does it work for $=pod just fine?
16:21 masak TimToady: +1
16:22 jnthn tadzik: no eye deer
16:22 tadzik :)
16:22 jnthn tadzik: er
16:22 jnthn tadzik: I think I can guess actually and this is disgusting :)
16:22 tadzik :P
16:22 jnthn tadzik: It's because CORE.setting ends up with a $=pod
16:22 jnthn :P
16:22 tadzik go ahed, I'll pour me some juice
16:23 jnthn And thus is in the outer lexical scope :)
16:23 tadzik noooooo
16:23 tadzik how is it possible
16:23 pmichaud re:  RT #112716    I suspect the problem isn't that lines() isn't lazy, but rather that the for statement isn't running in sink context
16:24 jnthn The $=pod installation is not conditional.
16:24 jnthn pmichaud! \o/
16:24 dalek nqp/cstr: eee0fa5 | (Arne Skjærholt)++ | / (4 files):
16:24 dalek nqp/cstr: First cut of handling explicitly managed strings.
16:24 dalek nqp/cstr: review: https://github.com/perl6/nqp/commit/eee0fa501f
16:24 tadzik oh, I see now
16:24 jnthn pmichaud: Nice to see you :)
16:24 PerlJam TimToady: or we could use a slightly more complicated token that starts with =
16:24 tadzik gosh. I though we put my $=pod at the end of the setting to prevent this issue
16:24 jnthn tadzik: No, it's not quite *that* bad :)
16:25 jnthn tadzik: Things are working a little too accidentally at the moment though :)
16:25 PerlJam TimToady: =!!!=
16:25 tadzik okay. Could we turn of the undefined variable worning for $= vars?
16:25 pmichaud oh, maybe not.
16:25 PerlJam (for instance)
16:25 arnsholt jnthn: Could you take a look at that NQP commit and see if something appears to be completely insane?
16:25 tadzik . o O ( good worning )
16:25 TimToady =ö=
16:25 PerlJam TimToady: :-)
16:25 arnsholt I've got a simple test in Zavolaj that passes, but I'm still not entirely convinced I did it right =)
16:25 jnthn tadzik: Yeah
16:26 eviltwin_b joined #perl6
16:26 tadzik jnthn: I'll try to do that
16:26 jnthn tadzik: So long as $=FLYING-CARROT doesn't blow up in an excessively bad way :)
16:26 tadzik still, the spec for those $=vars is ... what?
16:27 jnthn I dunno. Is it a closed set, or...? :)
16:27 TimToady my carrots usually fly after they blow up...
16:27 tadzik no, it's potentially infinite
16:27 tadzik you are free to write a =begin FLYING-CARROT block
16:27 lichtkind masa, PerlJam thanks
16:27 tadzik but I see what you mean
16:27 lichtkind masak++, PerlJam++ thanks
16:28 jnthn Well, I was angling for a name that nobody would ever declare, but now somebody probably is going to go and do that one in their module docs :P
16:28 PerlJam jnthn: you've just created another Perl 6 meme!  ;)
16:29 tadzik I'm commiting that to Acme::Meow right now
16:29 masak Acme::Flying::Carrots
16:30 jnthn oops :P
16:30 tadzik https://github.com/tadzik/perl6-Acme-Meow/commit/1562be0e66d
16:31 tadzik I wonder what the Pod renderer will do with that
16:31 jnthn tadzik: :P
16:31 tadzik ha, it does nothing. Cool!
16:31 tadzik I'll now put it everywhere
16:31 masak better than flying sharks, with frigging lasers on their heads.
16:32 tadzik I'm now commiting that to panda
16:33 tadzik ;)
16:33 tadzik > ./perl6 -e 'say $=FLYING-CARROT'
16:33 tadzik Null PMC access in find_method('gist')
16:33 tadzik yeah :/
16:34 masak r: say $=FLYING-CARROT
16:34 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤Variable $=FLYING-CARROT is not declared␤at /tmp/v3FQHfDkpM:1␤»
16:34 masak \o/
16:35 tadzik that's not too good either
16:35 tadzik r: =begin FLYING-CARROT␤bl bla␤=end FLYING-CARROT␤say $=FLYING-CARROT
16:35 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤Variable $=FLYING-CARROT is not declared␤at /tmp/cDUAeKuX7t:4␤»
16:36 PerlJam What's the scoping on pod variables?
16:36 tadzik they're file scoped
16:37 PerlJam there's not some magic POD package they all live in?
16:37 tadzik nope
16:38 colomon tadzik: sorry for the delay!  https://gist.github.com/2569482   # didn't name it, but that's my results.json
16:38 tadzik thanks :)
16:39 tadzik wow, that's a fast machine
16:41 colomon tadzik: ?
16:43 tadzik colomon: 10 minutes, about twice as fast as mine :)
16:44 colomon oh, the 607 is the run time in seconds?
16:44 pmichaud re: #112716   ---   lines() itself is sufficiently lazy
16:44 pmichaud when run from the REPL, it's in sink context though
16:44 colomon tadzik: it's a fairly nice MacBook Pro
16:44 pmichaud sorry
16:45 pmichaud when run from the REPL, it's not in sink context
16:45 TimToady ==END==
16:45 TimToady optionally
16:45 TimToady ==END== ==END== ==END== ==END== ==END== ==END== ==END==
16:46 TimToady that's...visible...
16:46 PerlJam TimToady: +1
16:46 tadzik colomon: aye
16:46 PerlJam TimToady: but not  ===END== or ==END=== or ==END=========  or ==END==END==END==   ?
16:47 tadzik colomon: formatter prints that at the bottom of the html file
16:47 colomon tadzik++
16:47 allbery_b joined #perl6
16:47 TimToady allowing those would be just Too Darn Fancy
16:48 TimToady but if we match / '==END==' \N* / then we can have:
16:48 TimToady ==END====END====END====END====END==
16:48 * [Coke] wishes github had a "display formatted json" option for json files.
16:48 TimToady or ==END==anythingelse
16:49 PerlJam TimToady: right.  and that seems reasonable to me.
16:49 TimToady well, the p6 part of the parser just stops at the first ==END==, so it only matters what Pod thinks of that line
16:50 MContagious joined #perl6
16:51 TimToady but a weird singleton pod directive feels rightish to me, and also resonates with the old __END__
16:52 PerlJam indeed.
16:53 pmichaud http://gist.github.com/2569584    # lines() is lazy, it's .map that is batching things up
16:55 pmichaud my $munched := $!list.munch($argc * $count);
16:55 pmichaud that's the problem line.
16:56 jnthn That's also the line that made iteration performance in the "for 1..10000 { ... }" case an order of magnitude better, fwiw.
16:56 pmichaud right
16:56 pmichaud but obviously it's making .map not lazy
16:56 jnthn Well, not lazy enough for this case, at least. :)
16:57 pmichaud (this is at least one of the bugs I alluded to in the sunday afternoon "lists" session at the hackathon, fwiw. :-)
16:57 jnthn *nod*
16:57 jnthn Now we just need a way that's (a) lazy enough and (b) keeps the performance win ;)
16:57 pmichaud the solution is to fix .munch
16:57 jnthn ok.
16:57 pmichaud I can work on that today, I think.
16:57 jnthn ooh :)
16:57 pmichaud if not today then tomorrow
16:57 jnthn ++pmichaud
16:58 jnthn pmichaud: Any idea when the mark_commit tuits may appear?
16:58 pmichaud sadly, no.
16:58 jnthn OK.
16:58 pmichaud it's still on my mental "I really need to get that done" list
16:59 jnthn Yeah, it's a pain point, for Rakudo and also for qbootstrap.
16:59 pmichaud yes, I understand.  I'm not comfortable with letting it remain in the May release, if that's worth anything.
16:59 pmichaud So, upper-bound is two weeks.
16:59 jnthn wfm
16:59 jnthn I've slowly chipping away at QAST.
17:00 pmichaud jnthn++
17:00 jnthn It already does at least one thing PAST never did. :)
17:00 jnthn (natively typed register vars)
17:01 jnthn One question I had. Do we use floating point anywhere in NQP?
17:02 jnthn At the moment it seems everything gets done with Float PMCs.
17:02 pmichaud basically all of the arithmetic and numeric relops use the __NN  opcodes
17:03 pmichaud because .... those are the only ones available that can understand floating point :)
17:03 jnthn Hm.
17:04 jnthn Things are gonna get icky there, I fear.
17:04 pmichaud I'm not exactly comfortable with saying that NQP should be an integer-only language
17:04 pmichaud or even that it should default to ints
17:04 jnthn I'm not exaclty proposing it :)
17:05 jnthn It's more that we'll have a "my int $a" and "my num $b" distinction.
17:05 pmichaud anyway, since parrot's notion of number tends to be "num" or "Float", that's what NQP generally ends up with
17:05 jnthn We already do for natively typed attributes.
17:05 jnthn Yeah, I'm worrying about "beyond Parrot" at this point. :)
17:06 jnthn When I did the early NQP on the CLR port, I actually had it multiple-dispatching the operators.
17:06 pmichaud well, it would be okay with me if NQP had a way of translating operators like  + - * /   into typed instructions
17:06 jnthn I'm not sure I want to go there either though.
17:06 jnthn I guess I'd be OK with static overloading.
17:07 jnthn Taht is, if we see it's an int + and int, we just say "oh, use add_i"
17:07 pmichaud at the time I was writing NQP, though, always using num was a way to avoid having to do a lot of type analysis in PAST and/or NQP
17:07 jnthn Doing type analysis is easier once you have a type system. :)
17:07 pmichaud (especially since it was going to be som..... exactly.)
17:08 jnthn Anyway, making NQP an integer-only language felt odd to me, so if it doesn't feel right to you that probably confirms it's the wrong way. :)
17:10 eviltwin_b joined #perl6
17:12 ponbiki joined #perl6
17:14 tadzik http://tjs.azalayah.net/mpo.html -- thoughts?
17:15 sorear good * #perl6
17:15 sorear masak++
17:15 tadzik hello sorear
17:15 colomon tadzik: Lingua::EN::Numbers::Ordinal   overlaps its description on my machine
17:15 tadzik colomon: same here
17:15 benabik Same here.
17:15 jnthn Same here
17:16 colomon \o/
17:16 tadzik and same on modules.perl6.org, fwiw
17:16 colomon write once, overlap everywhere!
17:16 tadzik \o/
17:17 dalek modules.perl6.org/test_results: e511f1e | tadzik++ | web/ (4 files):
17:17 dalek modules.perl6.org/test_results: Add badges for smoketesting results
17:17 dalek modules.perl6.org/test_results: review: https://github.com/perl6/modules.perl6.org/commit/e511f1e4ee
17:17 PerlJam tadzik: put the module name at the top and the description below it?
17:17 tadzik patches welcome
17:17 tadzik PerlJam: maybe, I don't know, I'm no HTML wizard :)
17:18 PerlJam me either
17:18 tadzik I only added those smoke testing badges
17:19 masak sorear: thanks. again :)
17:19 masak sorear: you're right, it was easy.
17:20 masak TimToady++ spotted an URL that I hadn't tested properly, but that was the only real mishap.
17:21 colomon Why is Smart::Match on the Perl 6 module wish list?
17:22 tadzik I think I put it there
17:23 tadzik I think it
17:23 allbery_b joined #perl6
17:23 tadzik 's quite nice, utilities like contains(), positive(), more_than() or whatnot
17:24 tadzik maybe there are better ways, but it seemed nice when I looked at it
17:26 MContagious joined #perl6
17:26 MContagious can I know how to use perl -e (perl onliners)  to import module like in perl5 ?
17:27 tadzik what do you mean? Like perl6 -e 'use Foo; something()'?
17:28 MContagious we need to import modules in the actual code.. Is there a flag to import modules like -AM in perl5 ?
17:28 MContagious sorry '-M'
17:29 PerlJam MContagious: you want the perl6 equivalent to  perl -MFoo -e '...'  ??
17:29 MContagious yeah
17:29 tadzik I'm afraid there isn't any
17:29 PerlJam perl6 -e 'use Foo; ...'  is it
17:29 colomon tadzik: positive is just * > 0 in p6, more_than is * > $cutoff
17:30 jnthn Though, moritz++ implemented -I earlier today. -M should be possible too :)
17:30 tadzik colomon: okay, feel free to remove it then
17:30 leprevost joined #perl6
17:30 colomon tadzik: still not sure it's completely useless, mind you.  :)
17:31 tadzik :)
17:32 tadzik clearly not the Most Wanted thing
17:32 MContagious jnthn:It will be cool if -M supported :)
17:33 masak MContagious: I could easily write a shell script for you that emulates that ;)
17:34 tadzik hey, it was supposed to be easier to port a shell than a shell script ;)
17:35 tadzik also, it's particulary nice for perl -MCarp::Always::Color script.pl
17:36 MContagious tadzik:yes
17:38 MContagious it will be helpful to make modules like ExtUtils::Command
17:41 tadzik http://tjs.azalayah.net/mpo.html updated
17:41 moritz \o
17:41 tadzik ExtUtils should be quite possible, as an extension of Shell::Command or something
17:41 tadzik hello moritz
17:43 dalek ecosystem: e21e4a6 | tadzik++ | META.list:
17:43 dalek ecosystem: Remove Digest-sum, it's gone from Github
17:43 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/e21e4a6da8
17:50 sorear masak: I'm a little suprised you were about to upload the zip file
17:51 sorear s/about/able/
17:52 masak really, why?
17:55 * moritz thinks that lines() is lazy, but that 'for' is overly eager
18:03 masak could be.
18:04 masak is there any experiment that would yield support for this hypothesis?
18:04 tadzik pmichaud's gist I suppose
18:05 jnthn Yeah, pmichaud++'s gist showed it up pretty well
18:05 cognominal___ joined #perl6
18:11 envi_ joined #perl6
18:14 localhost joined #perl6
18:15 Transformer joined #perl6
18:15 Transformer left #perl6
18:16 uvtc joined #perl6
18:16 xinming joined #perl6
18:18 uvtc phenny, tell sjn I'm a fan of markdown too. I haven't read S26 too carefully, but it would be nice if I could just do =begin markdown ... =end markdown and write all my docs in markdown.
18:18 phenny uvtc: I'll pass that on when sjn is around.
18:19 dalek zavolaj/cstr: 8619523 | (Arne Skjærholt)++ | lib/NativeCall.pm6:
18:19 dalek zavolaj/cstr: Add vim modeline to NativeCall.pm6.
18:19 dalek zavolaj/cstr: review: https://github.com/jnthn/zavolaj/commit/8619523b9a
18:19 dalek zavolaj/cstr: e94f45c | (Arne Skjærholt)++ | / (3 files):
18:19 dalek zavolaj/cstr: Tests and support functions for explicitly managing strings.
18:19 dalek zavolaj/cstr: review: https://github.com/jnthn/zavolaj/commit/e94f45ca4d
18:19 tadzik uvtc: hey
18:20 uvtc hi taddy
18:20 uvtc Erp! tadzik.
18:20 tadzik :)
18:20 tadzik uvtc: how does your colour-blindness react to http://tjs.azalayah.net/mpo.html ?
18:20 arnsholt moritz: Could you try that branch and nqp/cstr with your sqlite stuff? Hopefully it works now
18:21 tadzik uvtc: if that was you, I'm not sure
18:21 uvtc Ooooh, ahhh... I like the gemstone-looking check-boxen! Though, they don't go well with the other badges.
18:21 uvtc tadzik, no, not me.
18:21 tadzik yeah, in the end we'll probably need something else than icons stolen from KDE :P
18:21 tadzik hmm, someone was telling me not to leave things just coloured, but also with symbols
18:21 uvtc Hah. I'm not a KDE user. Didn't recognize them. There's gotta be some good free icons around.
18:22 uvtc Right. Symbols for those with trouble seeing color, but color as well. Sounds good.
18:22 uvtc To me, the graphics on the badges aren't all that recognizable.
18:24 uvtc Are there any residents on this channel who do a little web design?
18:24 birdwindupbird joined #perl6
18:25 uvtc My web design skills only go up to: "make it gray, but a box around it, add an <img>, there --- looks good".
18:25 noam joined #perl6
18:26 fglock joined #perl6
18:27 timotimo why is the logo for "commits in the last 90 days" a cut-open citrus fruit?
18:27 arnsholt It's fresh =)
18:27 uvtc it's fresh, it's so fresh
18:27 uvtc exciting
18:29 masak tadzik: najs! # http://tjs.azalayah.net/mpo.html
18:29 tadzik :)
18:30 tadzik maybe clicking the smoke badges could redirect to an appropiate emmentaler page
18:30 masak sounds appropriate.
18:31 tadzik that'll need some emmentaler extending too
18:31 tadzik we'll see to taht
18:31 masak two suggestions, and do with them what you will.
18:31 tadzik go ahead
18:32 masak (1) make the green checkmark boxes slightly less colorful. they're "uninteresting" in that they mark "everything's fine".
18:32 tadzik right. The icons are temporary, or I hope so
18:32 masak I quite like them, actually.
18:33 masak (2) perhaps suppress further red cross checkboxes after the first one?
18:33 tadzik the second one would be nice, indeed
18:33 masak gives a bit of a spatial clue saying "we only really got this far".
18:33 dalek emmentaler: 2cb8081 | (John Gabriele)++ | template.tt:
18:33 dalek emmentaler: added legend
18:33 dalek emmentaler: review: https://github.com/tadzik/emmentaler/commit/2cb80812fc
18:33 tadzik that'll require some HTML::Template fu
18:33 tadzik actually, I thought someone will contribute (hint hint) ;)
18:33 masak not really. there's three boxes: green, red, and blank :)
18:34 tadzik heh
18:34 tadzik and there's also True, False and DontCare :)
18:34 masak this is similar to that, yes. True, False, and N/A.
18:34 tadzik uvtc++
18:34 dalek rakudo/named_pod_vars: eee338b | tadzik++ | src/Perl6/Actions.pm:
18:34 dalek rakudo/named_pod_vars: Remove some leftover debugging output
18:34 dalek rakudo/named_pod_vars: review: https://github.com/rakudo/rakudo/commit/eee338bb85
18:34 dalek rakudo/named_pod_vars: 641e6b7 | tadzik++ | src/Perl6/Actions.pm:
18:34 dalek rakudo/named_pod_vars: Make the compiler not whine about undeclared $= variables, and vivify them to Any
18:34 dalek rakudo/named_pod_vars: review: https://github.com/rakudo/rakudo/commit/641e6b7e46
18:35 spider-mario what’s wrong with Oxygen icons?
18:35 spider-mario I like them :)
18:37 goraki rakudo question, is it correct that there must be whitespace between 'else' and the block that follows it? e.g. else{ … } causes an error?
18:37 tadzik uvtc: fwiw, I don't think "Implemented" describes "Yes, the tests have passed". Maybe something like "Everything Okay" / "Something's wrong" would be better?
18:37 tadzik it may be
18:37 tadzik r: if 0 { say('') } else{ say "foo" }
18:37 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤Confused␤at /tmp/sJAnsL98AE:1␤»
18:37 tadzik std: if 0 { say('') } else{ say "foo" }
18:37 p6eval std fab64fc: OUTPUT«[31m===[0mSORRY![31m===[0m�Whitespace required after keyword at /tmp/ZaA9Z7C1b_ line 1:�------> [32mif 0 { say('') } else[33m�[31m{ say "foo" }[0m�Parse failed�FAILED 00:00 41m�»
18:38 tadzik goraki: there you go
18:38 uvtc tadzik, Oh, whoops. I just copied what I saw below. Will change that.
18:38 tadzik uvtc: thanks
18:38 NamelessTee joined #perl6
18:38 goraki tadzik: right, fair enough. thanks.
18:39 tokuhirom joined #perl6
18:39 uvtc tadzik, Actually. Not sure what should go with those. I just wanted the legend there so the camelia logo wouldn't interfere with the far-right column in the table below.
18:40 tadzik hehe, fair enough :)
18:41 tadzik just go for something that clearly indicates the meaning, even if it's "OK", "Not OK", "No eye deer" :)
18:41 sisar joined #perl6
18:42 masak it's wonderful to see these developments.
18:42 moritz std: if 1 { } else{ 0
18:42 p6eval std fab64fc: OUTPUT«[31m===[0mSORRY![31m===[0m�Whitespace required after keyword at /tmp/VDM28zGwX_ line 1:�------> [32mif 1 { } else[33m�[31m{ 0[0m�Parse failed�FAILED 00:00 40m�»
18:42 * moritz replies to stale backscroll
18:42 eviltwin_b joined #perl6
18:44 sisar tadzik, where is the code for http://tjs.azalayah.net/mpo.html ?
18:44 phenny sisar: 01:54Z <tadzik> tell sisar Thanks, that's more than I remembered :)
18:44 tadzik sisar: https://github.com/perl6/modules.perl6.org/tree/test_results
18:44 * sisar looks
18:45 * tadzik moves inside
18:47 wolfman2000 joined #perl6
18:48 cognominal joined #perl6
18:48 sisar tadzik, the webpage looks (maybe) broken at the end. The last module in the list is Digest::SHA256 ?
18:50 tadzik looks good to me
18:50 tadzik sisar: ^
18:51 tadzik that's what I see: http://i.imgur.com/EWLIN.png
18:51 tadzik the list is complete
18:52 geekosaur joined #perl6
18:52 tadzik masak: now that I think of it, maybe modules.perl6.org wants only one indicator, saying "doesn't build", "tests fail" or so
18:52 sisar huh, let me get a screengrab...
18:53 dalek emmentaler: 7a267f3 | (John Gabriele)++ | template.tt:
18:53 dalek emmentaler: changed the legend, made it a <dl> to make it a bit taller, thus more room for camelia to fly around
18:53 dalek emmentaler: review: https://github.com/tadzik/emmentaler/commit/7a267f3d76
18:53 masak tadzik: well, yes and no.
18:54 masak tadzik: the visitor is only really interested in one bit of information. "how far did it get?" but three columns form a progress bar of sorts, which is suggestive.
18:54 masak tadzik: removing visual clutter is admirable, though.
18:54 sorear masak: I'm just suprised that non-sorear people can add downloads to sorear/.*/downloads
18:54 tadzik masak: I think that maybe a visitor to mpo wants only to know if something is outright broken
18:55 moritz sorear: that right comes along with commit bits
18:55 tadzik if he/she really wants all these information, he/she'll visit emmentaler
18:55 tadzik .u ☺
18:55 phenny U+263A WHITE SMILING FACE (☺)
18:56 sorear emmentaler, n.  Something which makes something else mental.
18:56 masak sorear: oh! but I'm a contributor. the only rights I don't have are what's under the "Admin" tab.
18:57 sisar tadzik, here is what I see http://imgur.com/rdbZc (Firefox). Ditto for Chromium.
18:57 uvtc tadzik, feel free to change that smiley. Seemed appropriate, but tastes vary.
18:58 arnsholt When class Foo does Role[$param], is there a licenced way to dig out the $param again?
18:59 uvtc I think I like seeing the checkboxen all the way across. Lots of green checkboxes == good, lots of red boxes with X's == bad, hover mouse over box if you forget what it's supposed to indicate.
18:59 moritz arnsholt: make an accessor for it in Role
18:59 moritz role Roles[$param] { method param() { $param } }
18:59 arnsholt Right. That was my other option
19:00 uvtc tadzik, Oh, wait, that doesn't really go well with "commits in the last 90 days" though, since it will make any slightly older modules look bad.
19:01 tadzik sisar: hee, odd
19:01 sisar aye
19:01 tadzik what does the page source say?
19:01 uvtc tadzik, maybe "commits in the last 90 days" should just be something extra (simply absent if project not touched in last 90 days).
19:01 moritz uvtc: remember that perfect is the enemy of good
19:02 uvtc moritz, also, sorry for the bikeshedding.
19:02 tadzik uvtc: I'm leaning towards removing the three badges from mpo, and leaving just a warning saying "well, tests fail"
19:02 dalek nqp: 446badf | moritz++ | src/PAST/NQP.pir:
19:02 dalek nqp: nqp::die as alias for pir::die
19:02 dalek nqp: review: https://github.com/perl6/nqp/commit/446badfc49
19:02 dalek nqp: d498216 | moritz++ | / (2 files):
19:02 dalek nqp: allow single-letter command line options without spaces between option and value
19:02 dalek nqp:
19:02 dalek nqp: also allow grouping of options that take arguments. Now -Ilib and -pes/// should work
19:02 dalek nqp: review: https://github.com/perl6/nqp/commit/d49821658c
19:02 tadzik if someone wants to know more, he/she can click and go to emmentaler
19:03 tadzik moritz++
19:03 arnsholt r: say('foo' != all('a', 'b', 'c'));
19:03 p6eval rakudo 4c241c: OUTPUT«False␤»
19:04 tadzik r: say('foo' ne all('a', 'b', 'c'));
19:04 p6eval rakudo 4c241c: OUTPUT«True␤»
19:04 tadzik :)
19:04 arnsholt Durr.
19:04 arnsholt I've been doing too much Python lately >.<
19:05 tadzik hugme: hug arnsholt
19:05 * hugme hugs arnsholt
19:05 uvtc Was experimenting with file IO, and got a weird error from this: https://gist.github.com/2570536
19:05 uvtc "Variable $line is not declared"
19:05 uvtc But that's commented out.
19:05 tadzik huh
19:05 uvtc perl6 is wearing its x-ray specs
19:06 uvtc (seeing through comment markers)
19:06 moritz r: https://gist.github.com/2570536
19:06 sisar tadzik, the page source ends abruptly at the SHA256 block... maybe its my internet connection. Will try again later and let you know.
19:06 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤Variable $line is not declared␤at /tmp/GvhcUy3zPf:10␤»
19:06 moritz uvtc: the problem is $whole_enchilada<<<
19:07 moritz uvtc: that starts to parse a postcircumfix:<>
19:07 moritz uvtc: and inside it, # are not comments
19:07 uvtc I was going to say, it gets better. When I remove the commented out code completely, I get a different errer.
19:07 uvtc s/errer/error/
19:08 uvtc ===SORRY!===
19:08 uvtc Missing << or >>
19:08 moritz std: https://gist.github.com/2570536
19:08 p6eval std fab64fc: OUTPUT«[31m===[0mSORRY![31m===[0m�Variable $line is not predeclared at /tmp/7xtvI59y68 line 9:�------> [32m# for @lines -> [33m�[31m$line {[0m�Unable to parse statement list; couldn't find right brace at /tmp/7xtvI59y68 line 11 (EOF):�------> [32m# }[33m�[31m<EOL…
19:08 moritz I wonder if those errors hould be deferred to CHECK time, just so that we can see other syntax errors too
19:09 wolf2k_away joined #perl6
19:09 arnsholt r: say("foo" ne all("foo", "bar"))
19:09 p6eval rakudo 4c241c: OUTPUT«True␤»
19:10 uvtc moritz, The reason I was putting ">>>these<<<" around the text in the string was because I wanted to see what was happening with any newlines present. Just a nice visual marker.
19:10 arnsholt Am I being silly again?
19:10 uvtc moritz, should I file/email a bug report?
19:11 arnsholt uvtc: It's parsed as the start of a $var<subscript> syntax, which is why it explodes
19:11 jnthn arnsholt: "foo" isn't equal to "bar"
19:11 uvtc moritz, oh, I see what you mean.
19:11 jnthn arnsholt: So it's true that it's not equal to all of them.
19:11 uvtc whoops. s/moritz/arnsholt/
19:11 arnsholt jnthn: Being silly again, of course. I want eq any()
19:11 jnthn r: say("foo" eq all("foo", "bar"))
19:11 p6eval rakudo 4c241c: OUTPUT«all(True, False)␤»
19:12 tadzik hehe
19:12 jnthn r: say(so "foo" eq all("foo", "bar"))
19:12 p6eval rakudo 4c241c: OUTPUT«False␤»
19:12 tadzik True! and False!
19:12 jnthn tadzik: ne collapses the junction by negating
19:12 xinming_ joined #perl6
19:12 tadzik yeah
19:15 arnsholt jnthn: Getting the CStr repr going was quite pleasant BTW. 6model is nice =)
19:17 moritz arnsholt: fwiw negated ops are supposed to autothread differently from normal ops
19:17 moritz ie  $a ne $b  works like  not $a eq $b
19:18 moritz and then the eq autothreads
19:18 brrt joined #perl6
19:18 jnthn arnsholt: yay :)
19:18 uvtc moritz, jnthn , filed a bug for what I was just asking about.
19:19 arnsholt moritz: Right. Did you see the cstr branches in nqp and zavolaj BTW? Should be relevant to sqlite
19:20 moritz uvtc: it's not a bug, as I tried to explain
19:20 moritz uvtc: at least not in rakudo
19:21 moritz uvtc: the <<< introduces a postcircumfix, which you never close. inside it, # does not introduce comments
19:21 moritz uvtc: so it's OK to complain about undeclared variables in there
19:21 moritz it's the same as
19:21 moritz r: my $a; $a<< foo $bar baz >>;
19:21 p6eval rakudo 4c241c:  ( no output )
19:21 moritz erm, that one should complain
19:21 moritz std: my $a; $a<< foo $bar baz >>;
19:21 p6eval std fab64fc: OUTPUT«[31m===[0mSORRY![31m===[0m�Variable $bar is not predeclared at /tmp/VYDgntPMKy line 1:�------> [32mmy $a; $a<< foo [33m�[31m$bar baz >>;[0m�Check failed�FAILED 00:00 42m�»
19:22 moritz std: my $a; $a<< foo #  $bar baz >>;
19:22 p6eval std fab64fc: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Variable $bar is not predeclared at /tmp/ZSecueKnDh line 1:â�¤------> [32mmy $a; $a<< foo #  [33mâ��[31m$bar baz >>;[0mâ�¤Check failedâ�¤FAILED 00:00 42mâ�¤Â»
19:22 moritz uvtc: that's what you are doing, basically
19:22 uvtc moritz, Ah, sorry, I misunderstood.
19:23 fgomez joined #perl6
19:24 mdupont joined #perl6
19:25 uvtc moritz, thanks for the explanation.
19:31 alester joined #perl6
19:31 uvtc Added this page to the mostly harmless docs: http://wiki.perl6.org/Mostly%20Harmless%20Docs/Files%20and%20IO . It uses the wiki's Perl 5 syntax highlighter.
19:31 uvtc Also added a note to the front page about getting better Perl 6 syntax highlighting for the wiki.
19:33 uvtc alester, I see the mostly harmless docs on the wiki http://wiki.perl6.org/Mostly%20Harmless%20Docs/Main as being somewhat similar to your http://perl101.org/ .
19:34 uvtc (though, they're not nearly finished)
19:41 uvtc phenny, tell alester http://irclog.perlgeek.de/perl6/2012-05-01#i_5525866
19:41 phenny uvtc: I'll pass that on when alester is around.
19:42 alester I'm here
19:42 phenny alester: 19:41Z <uvtc> tell alester http://irclog.perlgeek.de/perl6/2012-05-01#i_5525866
19:42 alester I have email, too.
19:42 uvtc gotcha.
19:42 alester I haven't done anything on perl101 in forever.
19:43 uvtc Right. But when I saw your nick, I thought of perl101 and then made the connection.
19:43 alester I'm not sure I ever will.  But who know.
19:44 uvtc I just had phenny ping you because I figured, if I don't hear back from someone, it probably won't hurt to have phenny let them know when they get back.
19:44 alester understood.
19:47 Su-Shee joined #perl6
19:50 uvtc How do I "shell out"? `this` doesn't work.
19:50 moritz qx
19:51 uvtc moritz, Hm. Not working for me: `my $date = qx/date/;` ...
19:52 uvtc moritz, nor qx[date]
19:52 moritz uvtc: in what way is it not working for you?
19:53 uvtc ===SORRY!===
19:53 uvtc Confused
19:53 uvtc at ./foo.pl:1
19:53 moritz are you using literal ` in there?
19:53 moritz r: my $date = qx/date/;
19:53 uvtc https://gist.github.com/2570898
19:53 p6eval rakudo 4c241c: OUTPUT«qx, qqx is disallowed in safe mode␤  in sub restricted at src/SAFE.setting:2␤  in sub QX at src/SAFE.setting:9␤  in block <anon> at /tmp/Nctt_jdPxT:1␤␤»
19:54 uvtc Oh heck. It's the `say`.
19:54 uvtc It didn't like the hashes in there.
19:54 * moritz wonders why not
19:55 [Coke] comment!
19:55 jnthn o.O
19:55 moritz std: my $date = qx[date];
19:55 uvtc I was trying to put something harmless in there, and didn't want to use >>>these<<<.
19:55 p6eval std fab64fc: OUTPUT«ok 00:00 41m␤»
19:55 [Coke] r: say "#what#"
19:55 p6eval rakudo 4c241c: OUTPUT«#what#␤»
19:55 [Coke] or not. ;)
19:55 [Coke] though it really looks like ColdFusion when you do that.
19:55 moritz std: my $date = qx[date]; say "#$date#"
19:55 p6eval std fab64fc: OUTPUT«ok 00:00 42m␤»
19:55 snearch joined #perl6
19:55 moritz r: my $date = "now" say "#$date#"
19:55 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤Confused␤at /tmp/q2fwiF7nbN:1␤»
19:55 moritz r: my $date = "now"; say "#$date#"
19:55 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤Confused␤at /tmp/PavkFBzTMh:1␤»
19:55 moritz r: my $date = "now"; say "#$date"
19:55 p6eval rakudo 4c241c: OUTPUT«#now␤»
19:56 moritz r: my $date = "now"; say "$date#"
19:56 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤Confused␤at /tmp/9P9KzO9pWC:1␤»
19:56 jnthn Interpolation fail, maybe?
19:56 moritz oh, it's the old unspace-after-interpolation parse error :/
19:56 moritz r: my $date = "now"; say "$date."
19:56 p6eval rakudo 4c241c: OUTPUT«now.␤»
19:56 moritz r: my $date = "now"; say "$date.("
19:56 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 2␤»
19:56 moritz that one
19:57 [Coke] r: my $date = "a" && say "${date}("
19:57 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤Non-variable $ must be backslashed at line 1, near "${date}(\""␤»
19:57 jnthn {$date}
19:57 [Coke] arglebargle. "except in perl 6"
19:58 fgomez joined #perl6
19:58 * jnthn wonders if we have a rule somewhere there should be a token, thus it goes off parsing whitespace and finding the comment.
19:58 masak std: say q]hop!]
19:58 p6eval std fab64fc: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Use of a closing delimiter for an opener is reserved at /tmp/bkFuI3KXVC line 1:â�¤------> [32msay q[33mâ��[31m]hop!][0mâ�¤    expecting any of:â�¤       argument listâ�¤  prefix or termâ�¤Parse failedâ�¤FAILED 00:00 40mâ�¤Â»
19:58 masak :P
19:58 masak also, phew. :)
20:08 dalek nqp/cstr: abef7b9 | (Arne Skjærholt)++ | src/6model/reprs/CStr.c:
20:08 dalek nqp/cstr: Handle encoding parameter for CStr representation.
20:08 dalek nqp/cstr: review: https://github.com/perl6/nqp/commit/abef7b968b
20:08 dalek zavolaj/cstr: 216d11c | (Arne Skjærholt)++ | lib/NativeCall.pm6:
20:08 dalek zavolaj/cstr: Pass encoding parameter to CStr representation.
20:08 dalek zavolaj/cstr: review: https://github.com/jnthn/zavolaj/commit/216d11cb48
20:11 uvtc How do I print to stderr? I tried `say $*ERR $err-msg;` but that's not it...
20:12 masak uvtc: 'note $err-msg'
20:12 masak uvtc: or '$*ERR.say($err-msg)'
20:12 uvtc Oooh. I think I saw "warn" mentioned somewhere as well.
20:12 masak uvtc: or '$*ERR.say: $err-msg'
20:12 uvtc Ok.
20:13 masak uvtc: &warn throws a resumable exception, which then gets printed to STDERR when caught.
20:13 masak or rather, when nothing catches it and silences it :)
20:13 xinming joined #perl6
20:14 uvtc I see that `warn` gives me the line number.
20:14 uvtc Whereas `note` doesn't.e
20:15 uvtc s/doesn't.e/doesn't/
20:15 uvtc masak, thanks.
20:15 masak r: say $?LINE
20:15 p6eval rakudo 4c241c: OUTPUT«===SORRY!===␤Variable $?LINE is not declared␤at /tmp/nDbA0gB39H:1␤»
20:15 masak n: say $?LINE
20:15 p6eval niecza v17-2-gb8fcf85: OUTPUT«1␤»
20:16 uvtc r: say "hi"; warn "ouch!"; say "bye"  # should never get to "bye"? XXX
20:16 p6eval rakudo 4c241c: OUTPUT«hi␤ouch!  in block <anon> at /tmp/hHEPJmg5vn:1␤␤bye␤»
20:16 uvtc How can I make `say` "hot"?
20:17 masak yes, it should get to bye, and it does.
20:18 uvtc masak, I only ask, because you mentioned "resumable exception", but I never caught any exception.
20:18 masak the runtime catches it, and resumes it.
20:18 masak that's what warnings are: milder forms of error after which stuff continues on.
20:19 uvtc Ok, will get back to understanding that better after learning about p6 exceptions.
20:19 uvtc thanks, masak.
20:19 * masak kowtows
20:20 uvtc Is there any way to make `say` non-buffered? That is, write directly to stdout, without delay.
20:22 moritz it already is non-buffered
20:23 masak theoretically, $*OUT.autoflush = True
20:26 brrt joined #perl6
20:26 eviltwin_b joined #perl6
20:27 uvtc Thanks, masak. Using `note` sounds great.
20:29 moritz I dimly remember a script or module that lets you search for unicode codepoints by name
20:29 uvtc Oh, and `die "no!!!!"` also seems to write to stderr as well. (of course, then exists the script)
20:29 moritz something p5ish
20:29 moritz can somebody tell me its name?
20:30 uvtc http://shapecatcher.com/
20:30 masak moritz: App::Uni
20:30 moritz name, not shape
20:30 moritz masak: thanks
20:30 masak it's one of the first CPAN modules I install on any new Unix box of mine :)
20:48 PerlJam moritz: If TimToady doesn't know, ask tchrist; he's bound to know.
20:49 PerlJam oops, /me was scrolled up
20:49 masak there should be a warning for scrollback staleness.
20:51 REPLeffect joined #perl6
20:51 TimToady 'course, I use one of my own that is rather simpler than App::Uni
20:52 TimToady https://gist.github.com/2571294
20:53 allbery_b joined #perl6
20:57 uvtc What's the difference between `leg` and `cmp`?
20:58 brrt left #perl6
20:59 uvtc .oO( We have both kinds, country *and* western. )  :)
21:00 masak uvtc: `leg` coerces to Str, `cmp` compares anything as best it can
21:01 uvtc Ah, thanks, masak.
21:01 eviltwin_b joined #perl6
21:02 masak (`leg` is to `le` and `ge` as `<=>` is to `<=` and `>=`)
21:02 uvtc masak, right.
21:03 masak though the corresponding `cmp` comparison operators aren't called `cm` and `pm`, they're `before` and `after` :)
21:03 PerlJam heh
21:04 cognominal_ joined #perl6
21:04 mucker joined #perl6
21:04 masak so maybe `cmp` should be renamed `befsameaft` :P
21:05 masak or `before===after`
21:06 uvtc What is `eqv`?
21:06 masak data structure equivalence.
21:06 masak p6: say [1, 2, 3] eqv [1, 2, 3]
21:07 p6eval pugs: OUTPUT«1␤»
21:07 p6eval ..rakudo 4c241c, niecza v17-2-gb8fcf85: OUTPUT«True␤»
21:07 ponbiki joined #perl6
21:07 masak those are two different array references, but they are eqv to each other.
21:07 geekosaur joined #perl6
21:07 uvtc masak, you mean, it ripples through a data structure, recursively, checking corresponding pieces for equality?
21:07 masak p6: say [1, 2, { foo => 'bar' }] eqv [1, 2, { foo => 'bar' }]
21:07 p6eval rakudo 4c241c, niecza v17-2-gb8fcf85: OUTPUT«True␤»
21:07 p6eval ..pugs: OUTPUT«␤»
21:07 masak uvtc: yes.
21:08 uvtc Interesting. I'd've guessed that it would check if two objects are the same object.
21:08 masak that's part of what === does.
21:08 uvtc Does eqv use eq or ==?
21:08 uvtc Oh, wait. ===?
21:08 masak :)
21:09 masak p6: say 42 eqv "42"
21:09 uvtc Ok, so, like cmp doing the best with what you give it,
21:09 p6eval rakudo 4c241c, niecza v17-2-gb8fcf85: OUTPUT«False␤»
21:09 p6eval ..pugs: OUTPUT«␤»
21:09 masak seems eqv uses === underneath.
21:09 uvtc What does `===` do?
21:09 masak compares reference identity.
21:10 masak unless it's been told the thing is a value object (like numbers and strings and stuff), then it compares values.
21:10 uvtc What does eqv use when comparing one item in one data structure to the corresponding item in the other d-s? eq or ==?
21:11 geekosaur joined #perl6
21:11 masak ===
21:11 masak which boils down to reference comparison, eq, or ==, depending.
21:12 uvtc masak, regarding using ===, I don't see how that would work, unless the implementation is sharing fragments of data structures behind the scenes.
21:12 doy p6: class A { has $.a } say A.new(a => 1) eqv A.new(a => 1)
21:12 p6eval niecza v17-2-gb8fcf85: OUTPUT«[31m===[0mSORRY![31m===[0m��Strange text after block (missing comma, semicolon, comment marker?) at /tmp/WvZUIjBcAy line 1:�------> [32mclass A { has $.a }[33m�[31m say A.new(a => 1) eqv A.new(a => 1)[0m��Parse failed��»
21:13 p6eval ..rakudo 4c241c: OUTPUT«===SORRY!===␤Confused␤at /tmp/oo34y3viO1:1␤»
21:13 p6eval ..pugs: OUTPUT«␤»
21:13 doy p6: class A { has $.a }; say A.new(a => 1) eqv A.new(a => 1)
21:13 p6eval rakudo 4c241c: OUTPUT«False␤»
21:13 p6eval ..niecza v17-2-gb8fcf85: OUTPUT«Unhandled exception: Cannot use value like A as a number␤  at <unknown> line 0 (ExitRunloop @ 0) ␤  at /home/p6eval/niecza/lib/CORE.setting line 261 (Any.Numeric @ 5) ␤  at <unknown> line 0 (ExitRunloop @ 0) ␤  at /home/p6eval/niecza/lib/CORE.setting line 0…
21:13 p6eval ..pugs: OUTPUT«␤»
21:13 masak uvtc: well, it does work, whether you see how or not ;)
21:13 uvtc That's good. :)
21:14 masak doy: custom types need to tell infix:<eqv> how to recurse, otherwise they'll be treated as leaves.
21:14 doy masak: makes sense to me, i was just making sure
21:14 doy (:
21:15 masak p6: class A { has $.a }; sub infix:<eqv>(A $l, A $r) { $l.a eqv $r.a }; say A.new(a => 1) eqv A.new(a => 1)
21:15 p6eval niecza v17-2-gb8fcf85: OUTPUT«Unhandled exception: Nominal type check failed in binding '$l' in 'infix:<eqv>'; got Int, needed A␤  at /tmp/JLOuricC7d line 0 (infix:<eqv> @ 1) ␤  at /tmp/JLOuricC7d line 1 (infix:<eqv> @ 5) ␤  at /tmp/JLOuricC7d line 1 (mainline @ 5) ␤  at /home/p6eval/ni…
21:15 p6eval ..rakudo 4c241c: OUTPUT«Nominal type check failed for parameter '$l'; expected A but got Int instead␤  in sub infix:<eqv> at /tmp/Rhy2OKhnyh:1␤  in sub infix:<eqv> at /tmp/Rhy2OKhnyh:1␤  in block <anon> at /tmp/Rhy2OKhnyh:1␤␤»
21:15 p6eval ..pugs: OUTPUT«*** No such method in class Int: "&a"␤    at /tmp/pEOxFPXNBS line 1, column 52-66␤»
21:15 masak oops.
21:15 masak p6: class A { has $.a }; multi infix:<eqv>(A $l, A $r) { $l.a eqv $r.a }; say A.new(a => 1) eqv A.new(a => 1)
21:15 p6eval pugs: OUTPUT«*** No such method in class Int: "&a"␤    at /tmp/Gpc_J6Bdhp line 1, column 54-68␤»
21:15 p6eval ..niecza v17-2-gb8fcf85: OUTPUT«Unhandled exception: Cannot call &infix:<eqv>; none of these signatures match:␤    A, A␤  at /tmp/nA7WqWdd01 line 1 (infix:<eqv> @ 5) ␤  at /tmp/nA7WqWdd01 line 1 (mainline @ 5) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3840 (ANON @ 3) ␤  at /home/p6e…
21:15 p6eval ..rakudo 4c241c: OUTPUT«True␤»
21:15 pani joined #perl6
21:15 masak sorear: ^^ that looks... interesting.
21:16 uvtc left #perl6
21:17 eviltwin_b joined #perl6
21:18 xinming joined #perl6
21:20 masak 'night, #perl6
21:21 allbery_b joined #perl6
21:41 sivoais joined #perl6
21:41 alvis joined #perl6
21:44 wolfman2000 joined #perl6
22:07 eviltwin_b joined #perl6
22:08 lichtkind good night
22:09 * jnthn -> sleep
22:13 allbery_b joined #perl6
22:15 lichtkind good night
22:15 geekosaur joined #perl6
22:15 lichtkind anyone awake who knows exactly what an expressionis?
22:31 eviltwin_b joined #perl6
22:36 allbery_b joined #perl6
22:38 geekosaur joined #perl6
22:41 sftp_ joined #perl6
22:49 skids joined #perl6
22:50 flussence_ joined #perl6
22:54 szbalint_ joined #perl6
22:54 broquain1 joined #perl6
22:55 mikec__ joined #perl6
22:57 plobsing joined #perl6
22:57 krunen joined #perl6
23:00 simcop2387 joined #perl6
23:00 REPLeffect joined #perl6
23:00 bjarne_ joined #perl6
23:00 timotimo joined #perl6
23:00 wolfman2000 joined #perl6
23:00 mucker joined #perl6
23:00 envi_ joined #perl6
23:00 MContagious joined #perl6
23:00 Patterner joined #perl6
23:00 thou joined #perl6
23:00 Util_ joined #perl6
23:00 domidumont joined #perl6
23:00 huf joined #perl6
23:00 colomon joined #perl6
23:00 tadzik joined #perl6
23:00 Timbus joined #perl6
23:00 ocharles joined #perl6
23:00 odoacre_ joined #perl6
23:00 Tene joined #perl6
23:00 sunnavy joined #perl6
23:00 shachaf joined #perl6
23:00 ashleydev joined #perl6
23:00 takesako joined #perl6
23:00 au joined #perl6
23:00 charsbar___ joined #perl6
23:00 sorear joined #perl6
23:00 rhr joined #perl6
23:00 Gothmog_ joined #perl6
23:00 yves_ joined #perl6
23:00 ingy joined #perl6
23:00 felher joined #perl6
23:00 kranius joined #perl6
23:00 PZt joined #perl6
23:00 prammer joined #perl6
23:00 cxreg joined #perl6
23:00 silug joined #perl6
23:00 Juerd joined #perl6
23:00 kcwu joined #perl6
23:00 cosimo joined #perl6
23:01 eviltwin_b joined #perl6
23:01 Woodi_ joined #perl6
23:01 orafu joined #perl6
23:01 bruges joined #perl6
23:01 xdbr joined #perl6
23:01 Guest36035 joined #perl6
23:01 betterworld joined #perl6
23:01 pyrimidine joined #perl6
23:01 pmichaud joined #perl6
23:01 apejens joined #perl6
23:01 Grrrr joined #perl6
23:01 Yappo___ joined #perl6
23:02 xinming joined #perl6
23:02 thelazydeveloper joined #perl6
23:02 bonsaikitten joined #perl6
23:02 doy joined #perl6
23:02 frettled joined #perl6
23:02 Bucciarati joined #perl6
23:02 `patch` joined #perl6
23:02 LoRe joined #perl6
23:02 jtpalmer joined #perl6
23:02 risou joined #perl6
23:05 araujo joined #perl6
23:15 geekosaur joined #perl6
23:16 Khisanth joined #perl6
23:17 benabik joined #perl6
23:17 [Coke] not much of a change on spec test comparison in teh past week:
23:17 [Coke] "Impl",      "pass","fail","todo","skip","plan","spec"
23:17 [Coke] # 05/01/2012 - rakudo++ ; niecza (94.34%); pugs (42.24%)
23:17 [Coke] "niecza",     20384,     2,   761,  1499, 22646, 24155
23:17 [Coke] "pugs"  ,      9127,     1,  3341,  1555, 14024, 24016
23:17 [Coke] "rakudo",     21605,    30,   708,  1855, 24198, 24165
23:23 Gruber joined #perl6
23:23 bruges_ joined #perl6
23:23 Yappo_____ joined #perl6
23:24 infosophy joined #perl6
23:25 pmichaud_ joined #perl6
23:27 eviltwin_b joined #perl6
23:27 xdbr__ joined #perl6
23:27 orafu joined #perl6
23:29 Woodi joined #perl6
23:30 geekosaur joined #perl6
23:33 betterworld joined #perl6
23:37 sftp joined #perl6
23:38 havenn joined #perl6
23:39 mmol_saffron joined #perl6
23:43 pyrimidine joined #perl6
23:43 Grrrr joined #perl6
23:44 sftp_ joined #perl6
23:45 BlueT__ joined #perl6
23:45 mj41_ joined #perl6
23:45 mathw_ joined #perl6
23:46 Helios` joined #perl6
23:46 hillu_ joined #perl6
23:46 pjcj joined #perl6
23:47 ruoso_ joined #perl6
23:47 Lorn_ joined #perl6
23:49 lestrrat joined #perl6
23:50 ilogger2_ joined #perl6
23:51 HarryS joined #perl6
23:51 HarryS joined #perl6
23:53 lichtkind [Coke]:  do you know exactly what an expression is ?
23:55 whiteknight joined #perl6
23:58 sivoais joined #perl6

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

Perl 6 | Reference Documentation | Rakudo