Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-11-20

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:02 jercos netstar: are you doing %hash<$scalar>?
00:02 netstar yessir
00:03 jercos try %hash{$scalar}
00:03 jercos ;)
00:03 netstar lol
00:03 netstar this IS a steep learning curve
00:03 netstar worked!
00:05 raydiak huh...feather broken? perlcabal.org was down and now shows the pugscode content, while pugscode.org shows feather.perl6.nl's content
00:05 jercos little early for april fools' day
00:06 jercos raydiak: they look fine over here.
00:06 raydiak ah, thanks...flushing my dns cache will probably fix whatever momentary hiccup I picked up, then
00:06 netstar okay night all!
00:07 raydiak g'night netstar
00:07 netstar thanks for help
00:20 chenryn joined #perl6
00:27 vendethiel joined #perl6
00:27 Alina-malina joined #perl6
00:34 adu joined #perl6
00:45 treehug88 joined #perl6
00:50 bjz joined #perl6
00:58 vendethiel joined #perl6
01:12 ugexe is there a script for creating .deb of a rakudo build?
01:17 adu joined #perl6
01:18 * japhb wonders if apt-get source from unstable would do what you need
01:19 japhb apt-get source rakudo, that is
01:19 * japhb doesn't have unstable on this box to check
01:20 japhb eww, old: https://packages.debian.org/sid/rakudo
01:26 raiph joined #perl6
01:27 cognominal joined #perl6
01:39 zakharyas joined #perl6
01:58 raiph joined #perl6
02:03 vendethiel joined #perl6
02:05 adu joined #perl6
02:24 Alina-malina joined #perl6
02:38 chenryn joined #perl6
02:50 vendethiel joined #perl6
02:50 jimmy_ joined #perl6
02:59 regreg joined #perl6
03:09 Mso150 joined #perl6
03:35 vendethiel joined #perl6
03:40 kurahaupo joined #perl6
03:57 gtodd joined #perl6
04:09 rmgk joined #perl6
04:24 tinyblak joined #perl6
04:48 vendethiel joined #perl6
04:54 rurban joined #perl6
05:15 vendethiel joined #perl6
05:16 tinyblak_ joined #perl6
05:33 tinyblak joined #perl6
05:34 chenryn joined #perl6
05:35 tinyblak joined #perl6
05:35 adu grr I keep getting a string
05:35 adu I have a sub sub build-struct-declarator(%obj) { ... }
05:35 adu which needs an associative
05:35 adu and I'm passing it an associative
05:36 adu but it's receiving a string
05:36 adu why?
05:41 vendethiel joined #perl6
05:42 cognominal g'morning vendethiel
05:44 TimToady adu: how are you calling it?
05:45 adu http://pastie.org/9731507
05:45 adu and
05:45 adu http://pastie.org/9731508
05:47 TimToady well, then $<declarator>.ast isn't returning a hash; what does the make look like in declarator?
05:47 adu http://pastie.org/9731508
05:51 TimToady that looks like it's making a hash; what's the error message?
05:52 TimToady and are you sure that's the multi declarator that is really matching?
05:54 TimToady other than that, you might pull out the ast before doing the make and looking at it with .perl or so
05:54 firefish5000 joined #perl6
05:56 adu http://pastie.org/9731545
05:57 adu I suppose I could
05:57 TimToady those can't be from the binding operation
05:57 TimToady it says in numeric context
05:58 TimToady more I can't tell because I don't have your line numbers
05:58 adu binding?
05:58 TimToady the signature to the function, associating the ast with %obj
05:58 adu ah, 886 is line 10 in http://pastie.org/9731551#10
05:58 TimToady that's not a numeric context, so the binding seems to be happening just fine, but something is happening later in the function
06:00 anaeem1_ joined #perl6
06:01 TimToady that's really strange, there are no numeric contexts there
06:01 TimToady but I'd suspect the 'rest' component is not correct, maybe
06:01 adu I'm confused
06:02 TimToady well, say $stuff.perl is your friend
06:02 TimToady unless, of course, you're using stdout for data
06:03 TimToady the note works better than say
06:03 TimToady *then
06:04 * TimToady wanders away for a bit
06:08 kaare_ joined #perl6
06:10 moritz good morning
06:11 JimmyZ good morning
06:13 tinyblak joined #perl6
06:15 cognominal good morning everyone
06:20 JimmyZ good morning everytwo
06:25 cognominal every* even
06:27 vendethiel joined #perl6
06:38 kjs_ joined #perl6
06:44 kaleem joined #perl6
07:12 gtodd joined #perl6
07:15 kaare_ joined #perl6
07:15 bjz joined #perl6
07:24 darutoko joined #perl6
07:33 anaeem1_ joined #perl6
07:36 smls joined #perl6
07:36 smls morning
07:37 raydiak \o
07:45 FROGGS joined #perl6
07:48 lizmat good morning, #perl6!
07:48 lizmat PSA: in about 4 hours I will start the work on the 2014.11 release
07:53 smls joined #perl6
07:56 moritz \o
07:57 moritz it took me a while to understand that "PSA" wasn't "Phase-Sensitive Amplifier" here :-)
07:58 zakharyas joined #perl6
07:59 lizmat :-)
07:59 lizmat moritz o/
08:01 stux|RC-only joined #perl6
08:01 Hor|zon joined #perl6
08:03 vendethiel joined #perl6
08:17 sqirrel_ joined #perl6
08:17 BooK joined #perl6
08:21 FROGGS morning
08:31 ghostlines joined #perl6
08:33 pdcawley joined #perl6
08:54 virtualsue joined #perl6
09:00 telex joined #perl6
09:06 lizmat FROGGS o/
09:06 FROGGS hi lizmat :o)
09:13 bjz_ joined #perl6
09:21 ptc_p6 joined #perl6
09:26 ptc_p6 joined #perl6
09:31 fhelmberger joined #perl6
09:35 * lizmat just committed https://github.com/rakudo/rakudo/commit/​dfa0d2f67968a4f9565d0bb7e636adf28b17185f
09:35 lizmat afk&
09:48 vendethiel joined #perl6
09:53 dakkar joined #perl6
09:54 rindolf joined #perl6
09:57 kurahaupo joined #perl6
10:03 tinyblak joined #perl6
10:04 espadrine_ joined #perl6
10:05 regreg joined #perl6
10:08 yoleaux joined #perl6
10:13 arnsholt What's up with dalek these days?
10:14 timotimo fell down some stairs, can't get back up
10:14 arnsholt Awww
10:15 dalek joined #perl6
10:22 FROGGS dalek: /o/
10:26 nwc10 feather3+- # having a ssh banner on IPv6 that tells me where dalek is running
10:26 nwc10 feather3+- # no AAAA record (this might be deliberate)
10:26 nwc10 (and no reverse DNS)
10:26 nwc10 yes, I would like a pony too
10:29 moritz I hope to have proper IPv6 for the feather successor
10:29 nwc10 there's clearly enough IPv6 working to connect to it, and for it to get to freenode
10:29 nwc10 so the hard bits appear to have been done
10:30 nwc10 perl6.org has no AAAA record
10:30 nwc10 :-(
10:31 nwc10 insufficiently six-like
10:31 nwc10 ENOT6
10:32 timotimo such nonsix
10:35 moritz yesterday I ordered the new hardware for the feather successor, but haven't received an order confirmation yet
10:36 moritz we need a name
10:36 timotimo .o( plume )
10:37 * masak .oO( leather )
10:38 * masak .oO( ticklish )
10:39 * moritz acquires a domain name, and then thinks about the host name(s)
10:40 moritz "www" for the host with the websites and "unsafe" for the evalbot(s)
10:41 * masak .oO( quill )
10:41 moritz how to the call the main community server, on which people run their IRC sessions and build rakudo etc?
10:41 masak 'main'?
10:41 masak or 'community'?
10:41 moritz boring
10:41 moritz masak: community will appear in the domain name, in one form or another
10:42 masak ok.
10:42 moritz 'scratch'?
10:42 moritz or '42' maybe
10:43 masak 'tuit'?
10:43 moritz that's nice too
10:43 moritz but is it round? :-)
10:45 masak 'diffy'?
10:46 masak 'karma'?
10:46 jnthn 'hack'
10:47 jnthn ...though outsiders may take it as a challenge :P
10:47 nwc10 'hack' is probably a bad idea, given Facebook
10:47 jnthn ?
10:47 nwc10 and PHP-!7
10:47 masak 'phaser'?
10:47 moritz 'dev' # but boring
10:47 nwc10 s/probably/possibly/
10:47 masak 'pointy'?
10:47 jnthn nwc10: I...don't think that's going to be most people's association :P
10:48 moritz dev-but-boring.thedomain.org :-)
10:48 masak in appreciation of au++, either 'trust' or 'anarchy'
10:48 nwc10 in whcih case, yes, "hack", but I wonder what the clueless will dow with reverse DNS
10:48 nwc10 anarchy - I like that
10:48 nwc10 that's by far the most fun suggestion so far
10:49 masak 'anarki' is easier to spell, and Swedish.
10:50 jnthn Is '-Ofun' a valid name? :)
10:50 jnthn But yeah, I like anarchy too :)
10:50 moritz jnthn: I fear not, but ofun is
10:50 masak 'thunk'
10:50 jnthn .oO( I use this server ofun... )
10:50 moritz but people will be surprised when told to be civil on the anarchy server :-)
10:52 smls 'promenade'
10:59 TuxCM joined #perl6
11:01 vendethiel joined #perl6
11:05 FROGGS jnthn: you already did the reupload? :o)
11:10 espadrine_ joined #perl6
11:16 timotimo developersdevelopersdevelopers​developers.perl6community.org
11:16 jack_rabbit joined #perl6
11:18 lizmat 'thisisyour'   (boring)
11:18 jpve joined #perl6
11:20 timotimo this-is-your-boring
11:20 bjz joined #perl6
11:22 jpve Hi all, I would like to add two modules to the ecosystem.
11:22 jpve Is it really as simple as adding the URLs to the META.list file of the github.com/perl6/ecosystem repo?
11:23 tadzik yes
11:23 jpve Or do I need to do some other things as well?
11:23 tadzik no
11:23 tadzik :)
11:23 jpve Ok, thanks tadzik!
11:29 timotimo well, your repository does need to have the META.info, but i'm suspecting you already have that in place :)
11:30 timotimo and it's good style to have a test suite that has some chance of failing at all when stuff goes wrong
11:34 kurahaupo_ joined #perl6
11:37 jpve @timotime: I added both, but thanks for the reminder :)
11:38 moritz jpve: what's your github ID?
11:38 jpve jpve :D
11:39 moritz jpve: you have an invitation to the 'perl6' team in the 'perl6' org, which will give you direct push access to the ecosystem repo
11:39 moritz jpve: (and a few other useful repos)
11:40 jpve Ok, thanks!
11:40 timotimo thank you for contributing :)
11:43 jluis joined #perl6
11:56 chenryn joined #perl6
11:58 vendethiel joined #perl6
12:09 dalek ecosystem: 5552882 | (Jorn van Engelen)++ | META.list:
12:09 dalek ecosystem: Add Net::Packet
12:09 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/5552882a9c
12:09 dalek ecosystem: 2237b4c | (Jorn van Engelen)++ | META.list:
12:09 dalek ecosystem: Add Net::Pcap
12:09 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/2237b4c017
12:09 dalek ecosystem: 9d6fc35 | jimmy++ | META.list:
12:09 dalek ecosystem: Merge pull request #36 from jpve/master
12:09 dalek ecosystem:
12:09 dalek ecosystem: META.list: Add Net::Packet and Net::Pcap
12:09 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/9d6fc354f6
12:09 timotimo FROGGS: what's the status WRT :auth<github:timo> and stuff for modules and classes and stuff?
12:09 timotimo oooh, dalek is back
12:11 bjz joined #perl6
12:12 jpve Want to check if my META.info's are correct by doing a build-project-list.pl in modules.perl6.org
12:12 jpve But github just won't check public_repos on my API token ...
12:12 jpve Which is apperently needed to build the list
12:13 FROGGS timotimo: can we talk about that this evening?
12:15 tadzik jpve: you can ask panda to try to install it from a local directory
12:15 tadzik it'll read and verify meta.info
12:15 jpve Ah ok, thanks for the pointer, thats much simpler indeed :)
12:18 timotimo sure
12:18 * timotimo will be driving the car around for a big chunk of $day
12:18 FROGGS timotimo: or in short: panda does not work yet with CUR::Installation, its PERL6LIB is wrong IIRC
12:19 timotimo that's good enough for me :)
12:22 vendethiel joined #perl6
12:25 dalek rakudo/nom: 553e633 | (Elizabeth Mattijsen)++ | docs/announce/2014.11.md:
12:25 dalek rakudo/nom: Initial version 2014.11 release announcement
12:25 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/553e633d7d
12:33 kaare_ joined #perl6
12:41 Ven joined #perl6
12:41 Ven lizmat++
12:41 Ven "Force calling method for <.foo> even if sub foo exists" not sure I get that?
12:42 Ven m: sub foo($a:){0}; class A{method foo {1}}; say A.new.foo
12:42 camelia rakudo-moar dfa0d2: OUTPUT«1␤»
12:43 lizmat Ven: https://github.com/rakudo/ra​kudo/commit/7bb36563ad10cb26
12:43 Ven ooh! thanks :)
12:43 * Ven has been mostly working on a monolithic rails app lately, not much toying with perl6 at $work
12:45 * Ven not only wants his computer to commit suicide, but would appreciate some commits on his suicide as well :P
12:46 lizmat :-)
12:51 FROGGS lizmat: when do you think you'll finally cut the release?
12:51 FROGGS we probably still have to fix panda on windows (path issues)
12:51 FROGGS brb
12:52 * Ven should try to compile rakudo on windows at some point...
12:53 Ven Oh wait, I don't have to anymore :-)
12:53 sqirrel_ joined #perl6
12:54 lizmat FROGGS: is this about leaking some of the work that is now in the newio branch into nom?
12:54 lizmat or is this something else
12:55 lizmat anyway, I'm now starting testing on moar=master, nqp=master
12:55 Ven (though if I can help without having to install visual studio,I'll gladly do so)
12:59 FROGGS lizmat: I am not sure what the cause is... on windows it helped for panda (file::find) to canonicalize the paths in chdir and friends, but this produces spectest fails on linux
13:00 FROGGS lizmat: you can test with the moar revision that's specified in nqp, since that already points to 2014.11
13:00 lizmat do you have a paste with Win32 errors?
13:00 lizmat ah, so NQP is already at release level ?
13:00 FROGGS (not that moar HEAD makes any difference, but still :o)
13:01 FROGGS yes, I bumped moar revision and parrot revision to current releases
13:01 jfredett joined #perl6
13:01 lizmat FROGGS++  :-)
13:02 FROGGS lizmat: http://irclog.perlgeek.de/​perl6/2014-11-15#i_9667282
13:03 FROGGS lizmat: I'll be quite busy for the next five or six hours... but then I will have time for panda@win32, if that's not too late
13:04 dalek rakudo/nom: a50bb2e | (Elizabeth Mattijsen)++ | docs/announce/2014.11.md:
13:04 dalek rakudo/nom: Add paragraph about problems on OS X in release
13:04 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a50bb2e6a7
13:04 lizmat FROGGS: that would be excellent  and not too late at all  :-)
13:05 FROGGS what a relief :o)
13:14 vendethiel joined #perl6
13:15 Ven what's going on here, vendethiel ?
13:15 rurban isnt' the moar os x problem a wrong free?
13:16 lizmat rurban: sometimes during building, you may get that, yes
13:16 lizmat actually, at a rakudo install party, one of the guys had that problem with the released version
13:17 lizmat the only difference was that he was not on the latest Mavericks
13:17 rurban I'm a bit too busy now, but hope to look into it later
13:17 lizmat well, maybe you can help anyway:
13:18 lizmat does this ring a bell?   note: passing argument to parameter 'buffer' here
13:18 rurban I found parrot gc problems also, with non-standard gc's, which are faster, but broken
13:19 guru joined #perl6
13:37 lizmat ok, this is weird
13:37 lizmat if I just compile MoarVM from its own repo, I don't get any warnings *at all*
13:38 lizmat oops, mambm
13:38 FROGGS mambm?
13:38 lizmat (I didn't look back far enough :-(
13:38 lizmat me and my big mouth
13:38 FROGGS ahh :o)
13:38 FROGGS hehe
13:39 Ven ETOOMUCHACRONYMS :)
13:40 dalek rakudo/nom: bcdf988 | (Elizabeth Mattijsen)++ | docs/announce/2014.11.md:
13:40 dalek rakudo/nom: s/Octover/November/   woolfy++
13:40 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/bcdf988751
13:42 FROGGS Ven: ETMA?
13:42 Ven *g*
13:53 masak ooh, a release is brewing?
13:54 masak amazing that Helsinki wasn't taken. lizmat++
13:54 Ven yep :-)
13:56 woolfy Helsinki offered us a nice hackathon (where 7 people installed MoarVM/NQP/MoarVM during a session with lizmat++ and pnu++), Finnish & Swedish whisky, an alt-party on a boat, lots of cd-shops and much more fun.
13:56 woolfy Therefore Helsinki.  :-)
13:56 Ven woolfy: I guess you liked the whisky the best :P
13:56 brrt joined #perl6
13:57 woolfy (I didn't mention the Danish whisky that we bought in the tax-free shop in Copenhagen, which was excellent)
13:58 woolfy Ven: the Finnish whisky was very nice, the Swedish whisky is more something for cocktails...
14:01 dalek rakudo/nom: 61f3d44 | (Lucas Buchala)++ | Configure.pl:
14:01 dalek rakudo/nom: Align Configure.pl options in help text
14:01 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/61f3d4459a
14:01 dalek rakudo/nom: b8246f1 | lizmat++ | Configure.pl:
14:01 dalek rakudo/nom: Merge pull request #331 from lucasbuchala/configure-help
14:01 dalek rakudo/nom:
14:01 dalek rakudo/nom: Align Configure.pl options in help text
14:01 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b8246f1ec0
14:08 wtw joined #perl6
14:13 perltricks joined #perl6
14:15 perltricks hey everyone in case you missed it, I've just published an introduction to Perl 6 one liners on perltricks.com: http://perltricks.com/article/136/2014/1​1/20/Get-started-with-Perl-6-one-liners
14:16 ClarusCogitatio joined #perl6
14:16 perltricks And if you feel like helping promote it, I'm @perltricks on twitter. thanks
14:16 moritz perltricks++
14:16 perltricks one other thing that might be of interest: Sinan's article on compiling Perl 6 with Visual Studio http://perltricks.com/article/135/2014/11/​18/Building-Perl-6-with-Visual-Studio-2013
14:17 masak ooh
14:17 masak perltricks++
14:17 perltricks moritz: thanks. Planning to ramp up the Rakudo
14:17 perltricks !
14:18 masak perltricks: `for (lines) { say $_ }` doesn't look idiomatic to me. I'd prefer it as `for lines() { say $_ }`
14:18 masak perltricks: I think it creates more confusion that it saves to put the parens around `lines` a la Perl 5.
14:18 perltricks masak: noted, good point thanks
14:18 perltricks also, just want to say thanks to everyone who contributed to the open source book: https://github.com/sillymoose/Perl6-One-Liners the book will stay on FreeBSD license, so if it can be re-purposed into a 'official' docs or whatever
14:19 perltricks I'm still polishing it, and now working on WWW one liners.
14:19 masak perltricks++ # again
14:19 [Coke] I like how the "build perl 6 with visual studio" didn't really have anything specific to use visual studio, just the standard config line.
14:19 [Coke] (actually like, not sarcastic like. :)
14:19 perltricks if you're listed as a contributor and want to change your name / handle and or include a link on your name, just let me know
14:20 FROGGS perltricks++
14:20 lizmat perltricks++  :-)
14:20 perltricks perl6 community++
14:21 anaeem1 joined #perl6
14:21 perltricks [Coke]: yeah kind of great that it "just works"
14:23 [Coke] I blame jnthn :)
14:25 ClarusCogitatio joined #perl6
14:27 hoelzro joined #perl6
14:27 Possum joined #perl6
14:28 TuxCM joined #perl6
14:29 Ven "PL expressiveness is in what it lets you forbid as well as what it allows to do."
14:32 masak Ven: do you have an example? or is it just a general statement, which may or may not be inhabited?
14:32 PerlJam perltricks++ because you can never have too much karma  :)
14:32 Ven masak: very simple example
14:32 * masak enjoys the very simple
14:33 Ven m: sub f(::T $a --> Array[T]) { $a, 1, 2, 3 }; f("a");
14:33 camelia rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Array[T]' but got 'Parcel'␤  in any return_error at src/vm/moar/Perl6/Ops.nqp:649␤  in sub f at /tmp/4AnlWK2XBI:1␤  in block <unit> at /tmp/4AnlWK2XBI:1␤␤»
14:33 Ven the example still stands.
14:34 Ven can I forbid it to have elements with a different type than the collection's? (while still retaining the ability to have hetero-collections if I need to)
14:34 JimmyZ joined #perl6
14:35 Ven masak: you can also take jnthn's thingie that used macros to forbid invalid states
14:35 Ven (which usually means you need ADTs to model the different states your state machine has)
14:35 masak I don't think Perl 6's typing is static enough to forbid things such as the above. that is, Perl 6 doesn't really do any type inference that has more than one step in it.
14:36 Ven this one doesn't have any inference in
14:37 masak sure it does. you have to infer things between "a", Str, ::T, $a, and Array[T]
14:38 Ven I don't see any inference here. You might argue there's type "computation", but certainly no inference
14:38 PerlJam m: sub f(Str $a --> Array[Str]) { Array[Str].new($a, $a, $a) }; f("hi");
14:38 camelia rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Array[Str]' but got 'Array[Str]'␤  in any return_error at src/vm/moar/Perl6/Ops.nqp:649␤  in block <unit> at /tmp/ZtdoCDycoB:1␤␤»
14:39 Ven that's a pretty well-known bug
14:39 masak Ven: whatever *name* you choose to give to it, I don't think Perl 6 does it.
14:39 Ven I certainly hope perl6 will be able to hold those invariants in 2/3 years:)
14:39 PerlJam yeah, it just makes me a little giddy that it tells me that it got what it expected, but failed anyway
14:40 Ven masak: I'm not the one naming things. It's like saying java has type inference because "a.b().c()" works. That's like C#'s var.
14:40 masak Ven: in particular, I've never ever seen any plans to have a list of stuff without a declared type be inferred/computed as a particular nominal type.
14:40 masak Ven: it's not in the spec. it doesn't have a champion. I'm not sure it *can* work.
14:40 Ven masak: not sure what you mean. I don't know of a language with generics that doesn't allow me to `List<T> fn(T elem)` to typecheck
14:41 PerlJam or, put another way ... even C++ does that ;)
14:41 Ven but, yeah, I guess you can argue it's not an "array". maybe that should be "List"
14:41 Ven might also be problem because of the way typed lists are implemented.
14:41 masak no, you're misunderstanding the fundamental missing piece here. but nevermind.
14:41 Ven PerlJam: C++ has... somewhat of a type inference, I guess. It doesn't just look at the return type
14:42 Ven masak: No, I understand that I'm returning "a list"
14:42 masak m: sub foo(--> Array[Int]) { [1, 2, 3] }; say foo
14:42 camelia rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Array[Int]' but got 'Array'␤  in any return_error at src/vm/moar/Perl6/Ops.nqp:649␤  in sub foo at /tmp/ySXALfdFvZ:1␤  in block <unit> at /tmp/ySXALfdFvZ:1␤␤»
14:42 masak Ven: does that help?
14:42 Ven I consider that to be an implementation detail :-)
14:43 masak then we fundamentally disagree, I think.
14:43 moritz Ven: the difference between C++ and Perl 6 is that in C++, the compile-time known type must satisfy a type constraint; in Perl 6, it suffices that the runtime-type satisfies a constraint
14:43 masak it's... not spec, exactly. but it's not gonna change either.
14:43 moritz so in Perl 6 it's totally valid to write  sub f($x) returns Int { 2 * $x }
14:43 masak Ven: what moritz++ said.
14:43 Ven moritz: it's not even the problem here. it doesn't fail at runtime either
14:44 moritz Ven: then we're talking about a different "here"
14:44 moritz Ven: I've seen lots of examples scroll by that do bail out at run time
14:44 Ven moritz: I'm talking about the ::T -> List[T] (or Array[T])
14:44 colomon m: sub f($x) returns Int { 2 * $x }; f(24.2)
14:44 camelia rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Int' but got 'Rat'␤  in any return_error at src/vm/moar/Perl6/Ops.nqp:649␤  in sub f at /tmp/rL5w8D5jGh:1␤  in block <unit> at /tmp/rL5w8D5jGh:1␤␤»
14:45 moritz Ven: and which example didn't fail at runtime?
14:45 Ven moritz: all those that exposed a bug in rakudo (i.e. PerlJam's)
14:45 masak Ven: I think I may see what you're saying -- you're talking specifically about generic types "scoped" under a type capture?
14:45 kaleem_ joined #perl6
14:46 masak Ven: all of which could in theory be statically checked?
14:46 Ven masak: basically, yes.
14:46 masak got it.
14:46 masak that's... an interesting idea, yes.
14:46 masak sounds like an extra opportunity to do cool inferences at compile time.
14:46 * moritz still doesn't see any example that Ven refers to
14:46 masak hadn't thought of that before.
14:47 Ven nice :-)
14:47 Ven moritz: look at PerlJam's example
14:47 moritz Ven: which one?
14:47 Ven moritz: the one that failed with identical types, for example
14:47 moritz Ven: can you please repeat it? or link to a line in the logs?
14:47 Ven m: sub f(Str $a --> Array[Str]) { Array[Str].new($a, $a, $a) }; f("hi"); # moritz
14:47 camelia rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Array[Str]' but got 'Array[Str]'␤  in any return_error at src/vm/moar/Perl6/Ops.nqp:649␤  in block <unit> at /tmp/1NHO_YRK7q:1␤␤»
14:47 moritz Ven: but that does fail at run time
14:48 Ven moritz: I definitely consider that a bug
14:48 tinyblak joined #perl6
14:48 raiph joined #perl6
14:48 moritz Ven: http://irclog.perlgeek.de/​perl6/2014-11-20#i_9693534 that's what confused me
14:48 moritz Ven: you were talking about something that doesn't fail at runtime
14:49 moritz Ven: now I'm looking for an example that doesn't fail at runtime, and you give me one that incorrectly fails at run time
14:49 * moritz thinks that he and Ven are on incompatible wave lengths today
14:49 Ven moritz: I mean – incorrectly OR doesn't fail at runtime here :) my bad
14:50 Zheglov joined #perl6
14:51 tinyblak_ joined #perl6
14:53 KCL_ joined #perl6
14:53 kjs_ joined #perl6
14:56 Ven masak: do you think this could *possibly* be done?
14:59 masak I won't say "yes" to that until I see some kind of RFC that follows through on all the details.
14:59 nanis joined #perl6
15:00 masak but since it's basically improving the error reporting by bumping some errors from runtime to compile time, I'm kind of optimistic.
15:00 masak I don't see any immediate stoppers, save SMOP.
15:01 Zheglov perl6: sub infix:«MYPLUS»(*@a) is assoc('list') {  [+] @a ; } ; sub prefix:«MYMINUS»($a) is looser(&infix:<MYPLUS>) { -$a ; } ; say (MYMINUS 1 MYPLUS 2 MYPLUS 3) ;
15:01 camelia rakudo-moar b8246f: OUTPUT«===SORRY!===␤MVMArray: Can't pop from an empty array␤»
15:01 camelia ..rakudo-parrot b8246f: OUTPUT«===SORRY!===␤QRPA: Can't pop from an empty array!␤»
15:01 nanis Hello everyone. New here. Over at Reddit, raiph suggested I might be able to help with Unicode and/or Turkish issues. I am *very* unfamiliar with the codebase. Is there a specific place I should look?
15:02 moritz nanis: is it a Perl 6 code base?
15:02 masak nanis: first off, welcome.
15:02 pecastro joined #perl6
15:03 masak Zheglov: I think something is simply NYI with `is assoc('list')`
15:07 raiph nanis++ # for "Building Perl 6 with Visual Studio 2013" (http://perltricks.com/article/135/2014/11/1​8/Building-Perl-6-with-Visual-Studio-2013)
15:07 Ven masak: Right. It's a bit of a... tyoe "promotion"?
15:07 Ven It's a bit like scala (ugh) does (allows to infer List[Any] or List[Int])
15:08 Zheglov perl6: sub prefix:«MYMINUS»($a) { -$a ; } ; sub infix:«MYPLUS»(*@a) is assoc('list') is tighter(&prefix:<MYMINUS>) { [+] @a ; } ; say (MYMINUS 1 MYPLUS 2 MYPLUS 3) ;
15:08 camelia rakudo-{parrot,moar} b8246f: OUTPUT«-6␤»
15:08 Zheglov This equivalent one works if you swap around
15:10 raiph I left a couple comments for nanis (Sinar Unur) starting at http://www.reddit.com/r/perl/comments/2mnvda/b​uilding_perl_6_with_visual_studio_2013/cm6h23u # for moritz, masak, others
15:12 PerlJam "radical grapheme-by-default approach"?  Is it really that radical?
15:13 moritz PerlJam: it is, in the sense that it's a pretty deep change, and to the best of my knowledge, nobody has done it before (not even we :-)
15:13 nwc10 I'm not aware of anyone else doing it, but I've not been looking
15:14 nwc10 it's significant, because it's O(n) if you don't do something clever (and your internal encoding is fixed width)
15:15 nwc10 and O(n**2) if your internal encoding is UTF-8
15:15 masak higher powers are better, right? :P
15:16 moritz masak: for 0 < n < 1, yes :-)
15:17 PerlJam maybe it's just that my expectations are a bit off by being here so much, but it seems to me that that's a "natural evolution" of programming languages (especially those designed by a linguist :-)
15:17 masak moritz: heh.
15:17 haroldwu joined #perl6
15:17 masak PerlJam: I have something of the same feeling -- given how sane NFG is, it's kinda weird that other languages aren't already doing it.
15:18 PerlJam masak: exactly.
15:18 moritz masak: we don't actually know how sane it is until we've tried it
15:18 PerlJam masak: The difference is probably that very few other language designers are looking at the long now.
15:20 guru joined #perl6
15:22 masak *nod*
15:22 moritz one thing I'm asking myself from time to time is how bad it'll be that Buf -> Str -> Buf won't round-trip anymore for non-NFC UTF-8
15:22 moritz I'm thinking of non-ASCII file names on OS X, for example
15:23 nanis joined #perl6
15:23 colomon …. is Str expected to automatically normalize or something?
15:24 jnthn The N in NFG stands for "normal"
15:24 PerlJam Is today release day?!?  The month went by far too quickly.
15:24 jnthn PerlJam: I know. :( I don't even know if I got a patch in this lst month...
15:24 [Coke] odd. just saw this ona bamboo build server that I'm running a work job on:
15:24 [Coke] E:\tools\Perl64 (in the path)
15:24 nanis Apologies, my network connection disappeared all of a sudden. Way to make an entrance. Catching up with what happened while I could not communicate.
15:24 lizmat PerlJam: yes, today is release day
15:24 nanis BTW, thank you raiph.
15:25 colomon jnthn: the idea that certain filenames might not be representable using Str any more is somewhat worrisome (if I'm understanding moritz correctly)
15:25 zakharyas joined #perl6
15:26 masak 'night, #perl6
15:26 PerlJam masak: sleep well!
15:27 FROGGS colomon: everything will be representable as Str, also with NFG
15:28 FROGGS it is just when you convert it back to a Buf, you cannot be sure about the ordering of the things of a grapheme cluster
15:28 FROGGS except, we make it keep an order
15:28 FROGGS moritz: that does also apply to NFC, no?
15:29 moritz FROGGS: nope
15:30 moritz FROGGS: every normalization loses the original form
15:30 nanis I know a tiny amount of Perl6, but I am OK with Perl5 and C and some Java. The easiest way from me to get my feet wet might be to look at some tests.
15:31 moritz FROGGS: and on file systems, which operate on the byte level, the conversion back to Buf doesn't necessarily reproduce the same bytes
15:31 PerlJam lizmat: I'm looking at the announcement ... the one about <.foo> is regarding grammars, right?
15:31 moritz nanis: that's how I started too
15:31 ajr joined #perl6
15:31 nanis Are there any specific parts that would benefit from a look?
15:31 lizmat PerlJam: https://github.com/rakudo/ra​kudo/commit/7bb36563ad10cb26
15:31 FROGGS nanis: tests in RT that are tagged testneeded
15:31 moritz FROGGS: so even with one base character + one modifier, NFG and NFC will produce a composed form (if exists), and conversion back to Buf will not round-trip
15:31 nanis FROGGS: Thank you.
15:32 nanis I am going to take a look.
15:32 PerlJam right, got it.
15:32 FROGGS moritz: we could keep lists of the parts of a grapheme cluster though, Justin Case
15:32 PerlJam lizmat++ thanks
15:33 FROGGS might not be the fasted what we can do though
15:33 |Tux| joined #perl6
15:33 PerlJam moritz: do they *need* to round-trip?
15:35 moritz PerlJam: if a file name is in a decomposed form, and the not-quite-round-trip produces the composed form, you'll get an ENOENT
15:35 ajr_ joined #perl6
15:35 moritz PerlJam: ... with a file name that looks *exactly* like the one that 'ls' shows you
15:36 ajr_ joined #perl6
15:37 ajr_ joined #perl6
15:38 FROGGS yeah, I also think that this can steal you a buttox
15:38 FROGGS though, if you are in such a weird situation you might just work with Bufs only
15:39 moritz and curse the stupid P6 developer that all of the IO::Path operations are Str-based, and you have to reinvent them
15:40 FROGGS exactly :o)
15:41 khisanth_ joined #perl6
15:51 arnsholt moritz: That's a very good point regarding file names
15:51 arnsholt It'll work fine on OS X (or rather, HFS+) though. It's *nix FSes that'll have trouble I think
15:52 arnsholt Since HFS+ (and NTFS I think) do their own normalisation of filenames
15:53 raiph nanis: fyi, rt shortcuts rakudo.de/needstest and rakudo.de/hastest # moritz++
15:53 smls joined #perl6
15:54 nanis raiph: Yup, I am there, browsing through right now. Thanks.
15:57 Ulti so when I use tr/// I get a StrDistance back, the before and after are populated but I get a Method distance not found when I try and get at that? is this just a NYI?
15:58 Ulti oh its private
15:59 smls m: $_ = "foo"; say +tr/o/u/
15:59 camelia rakudo-moar b8246f: OUTPUT«2␤»
15:59 Ulti ahh so its just Int that gets it for you
15:59 Ulti nice
16:00 anaeem1_ joined #perl6
16:01 anaeem1 joined #perl6
16:01 raiph nanis: S99:LTA in case you were wondering :)
16:01 synopsebot Link: http://perlcabal.org/syn/S99.html​#LTA_in_case_you_were_wondering_:)
16:02 raiph er, S99:LTA
16:02 synopsebot Link: http://perlcabal.org/syn/S99.html#LTA
16:04 nanis raiph: ;-)
16:05 Ulti smls++ for that :P I assume one day someone is going to benchmark the ++
16:07 carlin m: my $x = 18 / 0; say $x > 42000000
16:07 camelia rakudo-moar b8246f: OUTPUT«True␤»
16:07 ugexe 42000000 mannn
16:08 PerlJam m: my $x = 18 / 0; say $x
16:08 camelia rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Int' but got 'Failure'␤  in any return_error at src/vm/moar/Perl6/Ops.nqp:649␤  in method floor at src/gen/m-CORE.setting:11254␤  in method Str at src/gen/m-CORE.setting:11275␤  in method gist at src/ge…»
16:08 PerlJam huh
16:09 FROGGS Int-eresting
16:09 ajr__ joined #perl6
16:10 nanis Need to go right now, but thanks for the guidance. Will be back with questions.
16:10 Ulti its because you get a Rat rather than doing the division at that point
16:11 FROGGS ahh, delayed calculation, aye
16:11 Ulti once you do anything with it you get the exception
16:11 Ulti apart from say
16:11 Ulti *shrug*
16:11 PerlJam Ulti: not *anything* and evidenced by carlin's original code
16:11 nanis left #perl6
16:11 Ulti aye
16:12 FROGGS m: my $x = 18 / 0; say $x < 42000000
16:12 camelia rakudo-moar b8246f: OUTPUT«False␤»
16:12 FROGGS m: my $x = 18 / 0; say $x + 1
16:12 camelia rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Int' but got 'Failure'␤  in any return_error at src/vm/moar/Perl6/Ops.nqp:649␤  in method floor at src/gen/m-CORE.setting:11254␤  in method Str at src/gen/m-CORE.setting:11275␤  in method gist at src/ge…»
16:12 Ulti hmmm thats odd
16:12 FROGGS m: say Failure > 42000000
16:12 camelia rakudo-moar b8246f: OUTPUT«use of uninitialized value of type Failure in numeric context  in block <unit> at /tmp/U2YHqDLyHj:1␤␤False␤»
16:12 Ulti if you do say after getting the exception you get the full stack trace and stuff
16:12 PerlJam It's looks like it's just the comparators that have problems.
16:12 FROGGS that does not make too much sense
16:12 Ulti so the say cant be doing the calculation
16:13 TimToady it's just really odd that < isn't forcing the calculation
16:13 carlin m: my $x = 18 / 0; say $x > 9e999999999999999999999999999
16:13 camelia rakudo-moar b8246f: OUTPUT«True␤»
16:13 carlin m: my $x = 18 / 0; say $x > 9e9999999999999999999999999999
16:13 camelia rakudo-moar b8246f: OUTPUT«False␤»
16:13 moritz m: say (18/0).bridge
16:13 camelia rakudo-moar b8246f: OUTPUT«No such method 'bridge' for invocant of type 'Rat'␤  in block <unit> at /tmp/QpLDCPOYFS:1␤␤»
16:13 Ulti lol
16:13 moritz m: say (18/0).Bridge
16:13 camelia rakudo-moar b8246f: OUTPUT«Inf␤»
16:13 moritz m: say (18/0).Num
16:13 camelia rakudo-moar b8246f: OUTPUT«Inf␤»
16:13 PerlJam ah
16:13 moritz m: say (18/0).Real
16:13 camelia rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Int' but got 'Failure'␤  in any return_error at src/vm/moar/Perl6/Ops.nqp:649␤  in method floor at src/gen/m-CORE.setting:11254␤  in method Str at src/gen/m-CORE.setting:11275␤  in method gist at src/ge…»
16:13 Ulti now you know the interval where / 0 exists then
16:13 moritz .Real/.Num vs .Bridge
16:14 TimToady m: say (-18/0) < 0
16:14 camelia rakudo-moar b8246f: OUTPUT«True␤»
16:15 TimToady that's kind of assuming we approached 0 from the north side
16:15 PerlJam looks like we've got a Bridge too far
16:15 PerlJam ;)
16:16 ajr_ joined #perl6
16:17 FROGGS[mobile] joined #perl6
16:21 abraxxa joined #perl6
16:27 fhelmberger joined #perl6
16:29 treehug88 joined #perl6
16:33 Zheglov perl6: sub infix:«+»(*@a) is assoc('list') { say @a ; 1 ; } ; 1 + 2 + 3
16:33 camelia rakudo-{parrot,moar} b8246f: OUTPUT«1 2␤1 3␤»
16:34 Zheglov perl6: sub infix:«X»(*@a) is assoc('list') { say @a ; 1 ; } ; 1 X 2 X 3
16:34 camelia rakudo-{parrot,moar} b8246f: OUTPUT«1 2 3␤»
16:35 Zheglov why are they different?
16:36 vendethiel joined #perl6
16:36 TimToady perhaps because + is already defined as left assoc, while X is already defined as list assoc
16:37 TimToady try using operators that don't exist already
16:37 ptc_p6 joined #perl6
16:38 TimToady but it does look a bit like a bug that you can't override that for a local operator
16:40 FROGGS[mobile] "calling an operator" makes me think I have to watch The Matrix again
16:41 Zheglov TimToady: any pointers where to look (I'm very new to Perl)?
16:42 TimToady this might not be easy...since addition is so primitive, it might be defined in the bootstrap
16:43 TimToady why do you wish to redefine + ?
16:43 Ugator joined #perl6
16:43 TimToady it's also possible that the optimizer is assuming nobody has redefined +
16:45 Zheglov trying to make the primitive operators for my class be `assoc('list')`
16:47 FROGGS joined #perl6
16:49 TimToady operators don't really belong to classes in p6; they belong to the current lexical scope
16:50 TimToady so even if you could do that in your scope, you couldn't force someone else's operators to behave that way without them helping
16:51 TimToady also, we don't force you to overload existing operators like C++ does; we encourage people to define new operators instead, and leave the old ones with consistent semantics
16:52 PerlJam Zheglov: What is your class?  Is it some sort of numeric-ish thing, or something else?
16:52 TimToady also, I find your semicolon style rather difficult to read, but that's just an unrelated comment :)
16:53 awwaiid TimToady: I thought you could also do an infix method? I'm probably just not remembering correctly
16:54 TimToady and to add to PerlJam's question, what benefit do you see in making + into a list associative operator?
16:56 colomon (and note that if you do that, you will probably break normal uses of + )
16:57 osfameron but only within that lexical scope, so it's ok (if a bit weird) surely?
16:57 Zheglov PerlJam: Just playing around with p6
16:57 colomon osfameron: only within that scope, sure.
16:57 dalek perl6-roast-data: caacf44 | coke++ | / (5 files):
16:57 dalek perl6-roast-data: today (automated commit)
16:57 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/caacf44211
17:00 Zheglov TimToady: how to write it better?
17:01 [Coke] OSX daily runs: parrot still the only clean build. moar getting worse.
17:01 PerlJam Zheglov: give more information about what you're doing and why you're doing it :)
17:02 telex joined #perl6
17:02 TimToady I'd probably write it like this, to make clear that I'm trying to override the built-in:
17:02 TimToady m: only sub infix:<+>(*@a) is assoc('list') { say @a; 1; }; 1 + 2 + 3
17:02 camelia rakudo-moar b8246f: OUTPUT«1 2␤1 3␤»
17:02 TimToady but it still runs into the fact that it ignores the assoc trait
17:03 TimToady m: only sub infix:<plus>(*@a) is assoc('list') { say @a; 1; }; 1 plus 2 plus 3
17:03 camelia rakudo-moar b8246f: OUTPUT«1 2 3␤»
17:05 Zheglov TimToady: I see, thought you mean semicolon as in `;`
17:06 PerlJam Zheglov: I'm pretty sure he did.   Putting spaces on both sides of the semicolon is a little weird.  It kind of loses its meaning as "punctuation" and becomes more "wordy"  (at least for me)
17:09 Zheglov PerlJam: OK, got it.
17:12 Zheglov PerlJam: I'm playing with symbolic math expressions where there are many `+` operations
17:13 Zheglov In that case it would be more useful (for me) to get an operator and list of arguments
17:15 PerlJam but why overload + for it?   Seems like a recipe for strange behavior when you mix it with the normal math ops
17:15 PerlJam (and if you're never going to mix it with the normal math ops, why not give it a unique or special-purpose name anyway?)
17:19 Zheglov I suppose so. What about using multiple dispatch, so that this behaviour is only apply to certain objects?
17:19 Zheglov in conjunction with `is assoc('list')`
17:21 raydiak g'morning #perl6
17:22 TimToady multiple dispatch is a run-time activity, and cannot change the parse retroactively
17:22 TimToady at best, we know the candidate list at compile time, but if the candidates demand different kinds of parsing, we're hosed
17:27 raydiak when a project grows to a certain size and starts running in to difficult-to-diagnose rakudo failures like heisenbugs and precomp errors, is there anything that can be done to file a useful bug report without hours or days of golfing?
17:27 * colomon wants to hear the answer to raydiak's question
17:28 * lizmat too
17:28 TimToady I dunno, the traditional response is to shoot the messenger, but that seems...suboptimal...
17:30 * colomon does not want to be shot
17:30 raydiak I feel like I'm not contributing, having stuff like "print ''; # TODO reduce & report" scattered all over my project, but I'm really not up to trying to golf that kind of mystery right now, when it just spontaneously springs forth after doing nothing out of the ordinary
17:30 * raydiak does not want his laptop shot :)
17:30 lizmat is raydiak on OS X by any chance ?
17:30 PerlJam raydiak: convince one or more of the denizens of #perl6 to help?
17:31 raydiak lizmat: nope, 64-bit linux
17:31 raydiak PerlJam: heh are you volunteering to golf my multi-thousand-line mess?
17:32 lizmat hmmm... intriguing
17:32 PerlJam raydiak: not really right now, but if you could write a little bit about where your code is located, what the problem is, and how I can reproduce it, I might be inclined to look at it later
17:33 lizmat raydiak: I assume spectest is clean on your laptop ?
17:33 raydiak PerlJam: remove all the "print '';" from Math::Symbolic and watch it explode :)
17:33 raydiak lizmat: does rakudobrew run that automatically?
17:34 lizmat I actually have no idea, but I would guess not
17:34 colomon lizmat: ABC has precomp problems on 64-bit linux too.  haven't even tried it on OS X, because I need ABC to work on at least one of my machines.  (ie I'm not upgrading Rakudo there until this bug is fixed)
17:34 colomon rakudobrew does not run spectest automatically
17:34 colomon that would be slow.
17:34 lizmat indeed, that's what I thought
17:35 raydiak also there is a precomp bug (same module), which causes routines to vanish or something, gives a null something or another error
17:35 * raydiak will spectest, but has updated rakudo several times over the last few weeks with the same results
17:35 PerlJam raydiak: does removing any one of the "print ''
17:35 lizmat hmmm.... that was supposed to have been fixed
17:35 PerlJam cause it to explode?
17:35 lizmat (at the expense of a much slower startup, I might add)
17:36 colomon lizmat: what was supposed to be fixed?
17:36 raydiak PerlJam: hard to say, it's a heisenbug...I assume so?  they were all needed where they are at one point or another, but it seems like they interact
17:36 lizmat the precomp bug with vanishing subs
17:36 raydiak so having addeed ones later on, some of the earlier ones might not be needed any more
17:37 raydiak PerlJam: it'll give something like "Internal error: zeroed target thread ID in work pass" or so
17:37 colomon lizmat: if you mean hoelzro's Moar patch from about two weeks ago, that's actually what made the ABC precomp bug *start* happening
17:37 lizmat yes, *and* make rakudo siginificantly slower at startup
17:37 * raydiak wonders if the arduously-golfed Math::ThreeD precomp bug ever went away
17:38 colomon which (since his patch was very simple) I can only assume means something fairly fundamental is broken, and we're just twiddling what particular precomp errors show up
17:38 PerlJam raydiak: will it explode when running the tests?
17:38 lizmat I'm going to revert that commit and test
17:38 raydiak PerlJam: after removing the prints? I believe so
17:38 PerlJam raydiak: and does it explode every time (just in unpredictable ways)?
17:38 raydiak PerlJam: the precomp bug doesn't manifest during testing, I wanted the module to be installable
17:39 raydiak PerlJam: when the appropriate print isn't there, I *think* it only explodes when that branch runs
17:39 colomon lizmat: just to be clear, we're both talking about 05b25a6359c7bcf5ab03357b0d0093f77d28ead6 ?
17:39 lizmat yup
17:40 raydiak PerlJam: but yes when it fails, it is repeatable
17:40 * colomon 's precomp bug is 100% repeatable
17:40 PerlJam raydiak: can you give me a one-liner that I can cut-n-paste to make it explode?
17:41 raydiak PerlJam: if I could golf it to a one-liner I would have filed a bug instead of complaining here about my lack of long-term golfing tuits :)
17:41 raydiak PerlJam: oh, you mean a math::symbolic one-liner?
17:41 PerlJam raydiak: aye
17:42 PerlJam I cloned the repo, uncommented the prints, and ran the tests with no explosion
17:42 raydiak PerlJam: one sec lemme dig in my bash history
17:43 PerlJam (I'm just trying to make it explode once before I stop procrastinating on $work so that I can look at it later)
17:43 raydiak PerlJam: try "symbolic --x='Vx*t+Px' --y='Vy*t+Py' --z='Vz*t+Pz' 't²=x²+y²+z²' t"...that one failed iirc
17:44 PerlJam https://gist.github.com/per​lpilot/3777ffd262f82be0ba9e
17:44 * raydiak is trying too
17:45 raydiak just like a heisenbug, all of asudden I can't show you :P
17:45 PerlJam er, s/uncommented/commented/ above
17:45 raydiak yeah I assumed :)
17:46 PerlJam maybe it fixed itself!  ;)
17:46 raydiak not what you were asking, but for the precomp bug, "2²" is enough to trigger it
17:47 raydiak PerlJam: heh I keep hoping if I just wait another week or two the rakudo elves will make it all go away
17:48 * lizmat has been doing that for over a month now  :-(
17:48 raydiak for precomp, all the eval routines defined in Math::Symbolic::Language fail, just not the ones where it points at an external routine like &infix:<+>
17:49 * colomon extended rakudobrew to make it easier to track down exactly what rakudo/nqp/moar commit broke ABC, but that hasn't seemed to help actually get things fixed.
17:49 dalek ecosystem: f21bcbf | (Jorn van Engelen)++ | META.list:
17:49 dalek ecosystem: META.list: Added Pod::Strip.
17:49 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/f21bcbf6fe
17:49 colomon seems like maybe we need proper tools for looking at precomp issues?
17:49 raydiak yeah the print thing is weird, I can't trigger it again now, but I'll just be hacking along and all of a sudden with no obvious cause it just happens, until I try to debug w/say, then it goes away, so I just leave a print '' there
17:51 PerlJam raydiak: you've only been developing on a single machine?  OR has the heisenbug shown up on multiple machines?
17:51 FROGGS_ joined #perl6
17:52 raydiak PerlJam: only working on the single machine lately
17:56 raydiak starting spectest...vague question, but how long does this take on an average machine?
17:57 PerlJam a long time
17:57 PerlJam longer if you're using parrot or jvm
17:59 PerlJam raydiak: did you start it with TEST_JOBS=4 (or some other number) ?
17:59 PerlJam if not, it'll take *much* longer still
17:59 raydiak PerlJam: no, I don't really know much about running the test suite...it that for multicore?
18:00 lizmat colomon: just built Moar without 05b25a6359c7bcf5ab03357b0d0093f77d28ead6 and I still see flakyness
18:01 lizmat :-(
18:01 colomon lizmat: like I tried to say before, I don't think there's something fundamentally wrong with 05b25a6359c7bcf5ab03357b0d0093f77d28ead6, I think it just redistributes the flakiness.
18:01 lizmat ah, ok
18:01 PerlJam raydiak: aye, for running the tests in a parallel fashion
18:02 colomon lizmat: though it redistributed the flakiness on top of me, which I don't like.  ;)
18:02 raydiak PerlJam: thanks, restarted with both my cores being used :)
18:02 lizmat colomon: ;-(
18:02 lizmat dinner&
18:02 raydiak PerlJam: I am also still trying to trigger that bug again, I'll let you know if I succeed
18:03 cognominal joined #perl6
18:07 timotimo o/
18:07 Sqirrel joined #perl6
18:07 raydiak do I get to sue someone if my almost-literally-boiling cpu dies from the test suite? :)
18:07 raydiak \o timotimo
18:09 colomon raydiak: warning:  do not hold laptop on lap during spectest.  ;)
18:10 raydiak colomon: heh good call, I was just shifting it sideways to get the cpu area off of my leg
18:11 timotimo i collected a bit of a headache on the way home :\
18:11 timotimo maybe i'll take a quick nap
18:14 jluis joined #perl6
18:15 raydiak a wet, white, slippery headache accumulated on the ground here today, to go along with our alaskan cold front or whatever's going on
18:17 guru joined #perl6
18:20 raydiak I has spectest failures
18:21 gfldex joined #perl6
18:22 raydiak in S02-lists array, baghash, and lists
18:22 raydiak I think this is like yesterday's rakudo, or maybe the day before...should I rebuild and retest?
18:23 raydiak erm, S02-types, that is
18:24 TimToady yes, rebuild from HEAD, which the tests are reflecting
18:25 TimToady (though they are benign failures)
18:26 raydiak thanks, doing so now
18:26 TimToady it's the checking of @array[-1] at compile time instead of run time
18:27 raydiak oh right, from yesterday
18:30 raydiak PerlJam: still no luck with the heisenbug, guess I'll just have to put it in a git branch when I see it again; thank you for trying to help
18:31 * TimToady wonders if we should try supplying our own malloc with its own diagnostics
18:31 [Coke] TimToady: OSX has tons of malloc diagnostics.
18:31 TimToady might trap the freeing something not malloced thing on osx
18:32 TimToady but it doesn't give us a stacktrace, does it?
18:32 [Coke] .... which are hard to use here, because adding "FROB=1" before the invocation causes the bug to go away. :|
18:32 TimToady would be nice to know *which* free is being called
18:32 [Coke] TimToady: "If set, malloc remembers the function call stack at the time of each allocation."
18:32 [Coke] TimToady: my moar ticket answered that.
18:33 [Coke] I got a reproducable thing I could run under lldb.
18:33 TimToady okay, am not omniscient :)
18:33 [Coke] gdb[OSX]=lldb, or close enough.
18:33 [Coke] TimToady: that's not what you said before! ;)
18:33 TimToady I know.  :)
18:33 [Coke] mmhehehe
18:34 TimToady errands &
18:47 vendethiel joined #perl6
18:48 FROGGS lizmat: will now have time to care about panda@windows
18:58 [Coke] m: my $a = "this\tthat"; say $a.split(' ').perl;
18:58 camelia rakudo-moar b8246f: OUTPUT«("this\tthat",).list␤»
18:59 [Coke] so, that's words or comb now; no easy way to get p5's "split ' ', 2" ?
18:59 lizmat FROGGS: I'm back
18:59 lizmat what would you want me to do
19:00 FROGGS lizmat: just be patient :o)
19:00 [Coke] m: my $a = "this\tthat"; say $a.words(2).perl;
19:00 camelia rakudo-moar b8246f: OUTPUT«("this", "that")␤»
19:00 [Coke] ah, that easy way. :)
19:00 lizmat you doctor, me patient
19:00 FROGGS :P
19:01 raydiak spectest was clean...so when I do have these impractical-to-golf bugs, is there anything useful I can do with like strace or valgrind or something, to put in a bug report? or is it impossible to know what other information would be useful without talking to a rakudo dev about the specific error?
19:01 lizmat valgrind would be helpful, afaik
19:02 [Coke] m: my $a = "this\tthat #icu"; say $a.words(2).perl;
19:02 camelia rakudo-moar b8246f: OUTPUT«("this", "that")␤»
19:03 [Coke] ... ah. not that easy. the limit isn't doing what the limit in p5's split does.
19:03 [Coke] Note: limit is used in the sig, but not defined in http://perlcabal.org/syn/S32/Str.html 's comb.
19:04 raydiak thanks lizmat, that at least gives me something I can say about "mysterious error" to report these things in rt when I don't know what else to do
19:07 hoelzro lizmat, colomon: I think there's just something wrong deeper in precomp code, but I can't figure out what it is
19:07 hoelzro my diamond test case triggers it with lazily deserialization, and ABC triggers it without
19:08 colomon hoelzro: right, I'm sure the overall problem is not the fault of that patch of yours.
19:08 colomon lizmat: hints on running with valgrind?  if moarvm works with it, that's certainly something I can do here.
19:08 hoelzro I would love to help fix it; I just don't even know where to start
19:09 colomon hoelzro: like I said earlier, my notion is that step one may be figuring out how to get meaningful debugging data on precomp names.  finding out when the names are disappearing would be huge, I reckon.
19:09 colomon that said, I've got no idea how to go about doing that in the code, I'm not familiar with the moar codebase in the least.
19:09 hoelzro agreed
19:10 hoelzro my stumbling block when figuring out the diamond thing was iterating over a given stash and printing out debugging info in the MoarVM codebase seemed impossible
19:14 lizmat colomon: no hints, I'm afraid
19:15 colomon afk # errands
19:17 lizmat hoelzro: looking at MoarVM code near your patch
19:18 hoelzro I'm thinking the real problem is in NQP or Rakudo, since my diamond bug is still present on the JVM
19:18 lizmat the sha1 function declares a char output[80], but a few lines down a 40 is specified
19:18 lizmat that looks fragile
19:19 lizmat hoelzro: then perhaps we *should* revert your patch, to get easier to debug breakage ?
19:20 hoelzro hmm
19:20 hoelzro that's a good point
19:20 hoelzro I'm not really doing anything with Perl 6 lately, so it doesn't really hurt me
19:21 hoelzro btw, when looking at ABC, I noticed that omitting 'use Test;' fixed the disappearing keys
19:21 hoelzro I wanted to try and golf it down to something I could file a ticket with, but time has not been on my side lately =/
19:22 lizmat just for the sake of the argument, could you remove the Test.pm.moarvm file and see if it still happens if you add back the 'use Test' ?
19:22 hoelzro hmm
19:22 hoelzro I don't konw
19:22 hoelzro that's a good question
19:24 hoelzro nope, the same result
19:24 lizmat ah?  then it *isn't* precomp related, I would say
19:24 raydiak idk how related this is, but #121319 is an old precomp bug I first had under jvm and just confirmed still exists under modern moar
19:24 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=121319
19:24 * lizmat tries to run spectest with a Test.pm from source
19:24 xinming joined #perl6
19:25 hoelzro lizmat: but when ABC isn't precomp'd, it works
19:30 hoelzro lizmat: reducing Test.pm to just variables "fixes" the problem
19:30 lizmat ??  what do you mean by that ?
19:30 lizmat just variables?
19:30 hoelzro however, if the variables have an initial value (my $var = '' rather than just my $var;), it breaks again
19:31 hoelzro lizmat: I stripped out all of the actual test code and am just doing .say for ABC::.keys
19:31 lizmat aahhhh
19:31 hoelzro when I say "break", I mean that the keys listing is incomplete
19:31 hoelzro sorry, didn't mean to freak you out =)
19:31 lizmat now, *that* rings a bell with the various problems I've seen with making @*INC initialization lazy
19:32 FROGGS lizmat: okay, so dir() needs to return forward slashes, or, "C:\\foo\\bar" ~~ 'C:/foo/bar'.path should be true
19:33 * lizmat checks on the current state of dir()
19:33 FROGGS I'd favour the latter fwiw
19:33 lizmat oooh wow: ===(   24142;135   8/11   8/17   5/17  0/?  0/?  1/5  0/?  0/? )========Can't use an undefined value as an ARRAY reference at /usr/local/lib/perl5/5.20.0​/TAP/Parser/Multiplexer.pm line 138.
19:34 lizmat sorry, squirrel
19:36 * lizmat tries something
19:36 virtualsue joined #perl6
19:36 FROGGS leont patched that TAP::Parser just recently, right?
19:37 FROGGS I am testing that now btw:
19:37 FROGGS multi method ACCEPTS(IO::Path:D: Mu \that) {
19:37 FROGGS -        nqp::p6bool(nqp::iseq_s($!path,nqp::​unbox_s(IO::Path.new(|that).path)));
19:37 FROGGS +        nqp::p6bool(nqp::iseq_s($!path.abspath,nqp::​unbox_s(IO::Path.new(|that).path.abspath)));
19:37 FROGGS }
19:37 FROGGS ohh, that's not quite right
19:37 KCL_ joined #perl6
19:41 lizmat nqp::p6bool(nqp::iseq_s($!path.abspath,nqp​::unbox_s(IO::Path.new(|that).abspath)));
19:41 lizmat eh....
19:41 FROGGS nqp::p6bool(nqp::iseq_s($.abspath,nqp::​unbox_s(IO::Path.new(|that).abspath)));
19:44 FROGGS lizmat: that seems to make panda work: https://gist.github.com/FR​OGGS/3f7f5444d867055e946a
19:45 * lizmat doublechecks
19:46 FROGGS yeah, need to spectest it on linux and windows before comitting that :o)
19:46 guru joined #perl6
19:46 FROGGS though the approach might not be too bad
19:46 lizmat Linux is a bit of pb for me, OS X I *can* test
19:46 FROGGS I can test linux luckily
19:47 jdv79 now, with an action class attached, my p6 version of a p5 parser for a simple lang is now taking 100ms vs p5's 300ns.  somehow the actions are 66% of the runtime.
19:47 smls Someone started working on Perl 6 syntax highlighting for Kate, right? What became of that?
19:47 FROGGS jdv79: compiletime*
19:48 jdv79 sure
19:48 lizmat FROGGS: panda installs ok with that patch
19:48 lizmat still running spectest
19:48 FROGGS nice
19:48 raiph joined #perl6
19:49 TimToady at some point we should figure out how to attach action routines directly to the corresponding parse routine so we don't do a second method dispatch
19:49 TimToady at least, not more than once
19:50 moritz jdv79: do the action methods do any list iteration, by chance?
19:50 lizmat FROGGS: checking flappers
19:50 FROGGS TimToady: true, I guess we do the .^can several times
19:51 TimToady just have to make sure you recalculate when you derive a new language
19:51 FROGGS we already have another cache that gets invalidated when you mix into a class
19:51 FROGGS so, infrastructure is in place
19:51 TimToady but our whole compile process does a lot more hash lookups than is healthy
19:51 FROGGS I just forgat what the other cache was about
19:52 TimToady a hash cache is still a hash
19:52 moritz FROGGS: method cache?
19:52 FROGGS moritz: I dunno... I just know I fixed the invalidation like two years ago
19:52 TimToady but that's not something to work on today...
19:53 FROGGS :o)
19:53 FROGGS at least not in nom
19:53 lizmat ok, all spectests seem ok (except the diamond one, need to revert my MoarVM change)
19:53 timotimo i tried to get the cat to cuddle with me during my nap by accumulating a bit of strangury, but it didn't work, because someone was cooking dinner in the kitchen
19:53 FROGGS lizmat: you're using 2014.11 for moarvm anyway
19:54 * TimToady is still trying to get longlits right on alternations, though they seem to work right on protoregexes
19:54 FROGGS lizmat: so you don't need to revert something for the rakudo release
19:54 timotimo is strangury a word people would use in a normal conversation?
19:54 lizmat true, but I do need to revert it locally  :-)
19:54 raydiak timotimo: I have no idea what it means :)
19:54 lizmat .oO( Confuse A Cat Ltd. )
19:54 timotimo raydiak: my dictionary suggests it's a shorter version of "desire to urinate"
19:55 raydiak timotimo: heh I see
19:55 * TimToady has never seen that word
19:55 timotimo okay :)
19:56 dalek rakudo/nom: 8af3ebe | (Elizabeth Mattijsen)++ | src/core/IO/Path.pm:
19:56 dalek rakudo/nom: Fix for Panda breakage on Win32, FROGGS++
19:56 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8af3ebef9c
19:56 timotimo i know that cats can sense when someone needs to go to the toilet soon and they then get on that person's lap or something
19:56 TimToady the weird thing is that it seems like alternations are building the NFA twice, according to my debug output
19:56 jdv79 moritz: of course
19:57 TimToady so maybe there are some cheap cycles to cut out there
19:58 timotimo do we actually spend a noticable time building NFAs? that only happens during compilation and the NFAs then get serialized, right?
20:00 Mso150 joined #perl6
20:01 TimToady presumably
20:02 moritz jdv79: list iteration is very slow right now :(
20:02 kaleem joined #perl6
20:05 lizmat unless somebody has a very urgent issue, I will start the actual release process in about 15 mins
20:06 FROGGS lizmat: +1
20:10 beastd joined #perl6
20:11 FROGGS TimToady: that was the commit I was talking about: https://github.com/rakudo/rakudo/commit/​90094405e880179b7ae4379e78f28d0994823ff3
20:13 ptc_p6 joined #perl6
20:14 timotimo lizmat: looking forward to it :)
20:14 timotimo thanks for taking the time
20:16 dalek rakudo/nom: 294d5ab | (Elizabeth Mattijsen)++ | docs/release_guide.pod:
20:16 dalek rakudo/nom: Move release into place in release_guide
20:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/294d5abe88
20:17 rurban joined #perl6
20:20 dalek nqp: f36a441 | (Elizabeth Mattijsen)++ | VERSION:
20:20 dalek nqp: bump VERSION to 2014.11
20:20 dalek nqp: review: https://github.com/perl6/nqp/commit/f36a441809
20:23 jdv79 it not complete but here's what i'm talking about: http://nopaste.info/80d1ca6277.html
20:24 vendethiel .tell hoelzro https://github.com/github/linguist/issues/1680
20:24 yoleaux vendethiel: I'll pass your message to hoelzro.
20:25 hoelzro vendethiel: great =/
20:25 yoleaux 20:24Z <vendethiel> hoelzro: https://github.com/github/linguist/issues/1680
20:25 hoelzro thanks for letting me know
20:25 hoelzro I knew they were switching, but I didn't expect it to be so quick
20:25 vendethiel hoelzro: github is doing a shit job at this linguist thing.
20:26 hoelzro vendethiel: what would you say is shitty about it?
20:26 vendethiel hoelzro: the people around it.
20:26 hoelzro I have my own opinions, but I would like to hear yours first =)
20:26 vendethiel It literally required somebody to blog about this damn mess so that they could get the >1 year old PR out of the way
20:26 lizmat grr.... can't build nqp on parrot  :-(
20:26 hoelzro vendethiel: there was a blog entry?
20:27 vendethiel yea, somebody complained about github doing utter shit about linguist, so they fixed it
20:27 lizmat Undefined symbols for architecture x86_64:
20:27 lizmat "_Parrot_longopt_get", referenced from:
20:27 lizmat _main in main.o
20:27 lizmat ld: symbol(s) not found for architecture x86_64
20:27 lizmat does that ring a bell with anybody?
20:27 vendethiel but before, they were more than 100 pull requests opened, and nobody answering them. > 1 year "queue time"
20:27 hoelzro vendethiel: oh, *that* one
20:27 hoelzro I remember nodding my head so much when reading it
20:27 vendethiel well, there were 2 follow ups (by other people) around that
20:28 hoelzro but I don't think they fixed anything after that
20:28 vendethiel well, it's processing faster now.
20:28 hoelzro my PR for Perl 6 fixes has been sitting there for 10 months
20:28 hoelzro just saying "hey, these files are also valid Perl 6"
20:28 vendethiel It took me like 6 months to get my PR into pygments accepted
20:28 hoelzro pygments, or pygments.rb?
20:28 vendethiel pygments.
20:28 hoelzro really?
20:28 hoelzro they were super fast for me
20:28 vendethiel it's on bitbucket and the maintainer does NOTHING about this project
20:28 hoelzro like a few days
20:29 hoelzro including review
20:29 hoelzro and fixes on my part
20:29 vendethiel then 8 months to get it into github
20:29 vendethiel complete mess
20:29 hoelzro yeah, pygments.rb + linguist are a mess
20:29 vendethiel maybe it was pygments.rb, can't remember
20:29 hoelzro but someone files a PR for Swift? merged in 15 minutes
20:29 vendethiel but think it was python
20:29 hoelzro pygments.rb is almost completely ignored by its "maintainers"
20:29 hoelzro I found pygments to be quite active
20:30 timotimo http://devassistant.org/ - seems kinda cute
20:30 timotimo i shall have a look at building a perl6 script for that
20:30 vendethiel maybe it was .rb then :) whichever github used
20:30 vendethiel so might be .rb
20:30 hoelzro probably
20:33 FROGGS lizmat: about nqp-p@osx... I had similar issues on linux and win32, and rurban fixed it just in time...
20:34 FROGGS lizmat: no luck for osx user I'd say
20:34 lizmat well, could be that building 3 backends at the same time gives the problem
20:34 lizmat now building seperate backends
20:35 FROGGS lizmat: I'd thought about declaring parrot experimental on windows in case it would have been broken on win32 for the release
20:35 FROGGS lizmat: no, don't think that will help
20:35 lizmat well, then maybe revert to an earlier parrot version ?
20:35 moritz is star-m still considered experimental?
20:35 FROGGS he's just a one man army without a group of testers
20:35 FROGGS moritz: no, it is our flagship
20:37 [Coke] lizmat: on OSX, I always build separate backends, if that helps.
20:39 FROGGS lizmat: that will break other stuff
20:41 lizmat FROGGS: building separately will break other stuff ??
20:41 FROGGS lizmat: no, reverting to 2014.08
20:41 lizmat ah, ok
20:41 lizmat well, separate build for parrot built ok and tested ok
20:41 FROGGS O.o
20:42 FROGGS that is really weird
20:42 kaleem joined #perl6
20:43 lizmat I'm getting used to weird  :-(
20:43 FROGGS yeah, sadly
20:43 moritz lizmat: when you have separate builds on different backends, could you please do a 'git clean -xdn' (the -n tells it not to remove anything) in each build, and record the output for me?
20:43 moritz maybe there are some files overlapping due to platform-specific stuff
20:43 spider-mario joined #perl6
20:44 lizmat moritz: will do later, for now I'm buidling in 3 different clones, one for each backend
20:44 lizmat precisely to prevent any interaction :-)
20:44 moritz lizmat: ok, no hurry
20:45 moritz (it's a shot in the dark, really)
20:45 FROGGS you can run his command in these clones later, no?
20:45 moritz lizmat: oh, and please do it in nqp too
20:45 moritz yes
20:46 dalek nqp: 4230e03 | (Elizabeth Mattijsen)++ | docs/release_guide.pod:
20:46 dalek nqp: Mention building separately for different backends
20:46 dalek nqp: review: https://github.com/perl6/nqp/commit/4230e03005
20:47 arnsholt What's the lexotic op in NQP for, apart from returning stuff?
20:47 * moritz notices that the rakudo-m build on linux produces a dynext/container.o and a dynext/perl6-ops.o, both of which don't have any 'moar' or 'm-' in the name
20:49 moritz arnsholt: seems to be about lexically restricted exception handlers
20:49 moritz arnsholt: does that make any sense to you? :-)
20:54 lizmat $ make release VERSION-2014.11
20:54 lizmat make: *** No rule to make target `release'.  Stop.
20:54 lizmat huh?
20:55 FROGGS s/-/=/
20:55 lizmat $ make release VERSION=2014.11
20:55 lizmat make: *** No rule to make target `release'.  Stop.
20:55 FROGGS grep release Makefile ?
20:56 lizmat nothing  :-(
20:56 FROGGS yeah, on my box too
20:57 FROGGS lizmat: it is only in the Makefile-Parrot.in :o)
20:57 lizmat aha!
20:59 lizmat testing nqp tarball noq
20:59 lizmat now
20:59 lizmat I don't think I can upload it though
20:59 FROGGS I can
21:00 lizmat kewl
21:01 dalek nqp: bef19e0 | (Elizabeth Mattijsen)++ | docs/release_guide.pod:
21:01 dalek nqp: Mention FROGGS++ as one of the people to upload
21:01 dalek nqp: review: https://github.com/perl6/nqp/commit/bef19e01c0
21:03 PerlJam lizmat: are you liz@LizyPro?
21:03 vendethiel Lizy Pro (TM)
21:03 PerlJam from the authorized_keys file, it looks like Coke, timotimo, and sergot (and lizmat if that's her) can also upload
21:04 timotimo o/
21:04 timotimo maybe
21:04 timotimo is that timo@schmetterling? also, what host is that?
21:04 PerlJam timotimo: aye.   rakudo.org
21:05 tony-o snap
21:05 timotimo let me see
21:05 lizmat PerlJam: for some reason I'm at LizyPro-2
21:05 timotimo ah, yes indeed
21:05 tony-o PerlJam: check this out for sql :: https://github.com/tony-o/perl6-s​lang-sql/blob/master/t/01_basic.t
21:06 PerlJam tony-o: whoa!  That's nice.
21:06 PerlJam tony-o: now all you have to do is get rid of the placeholders by making variable interpolation Do The Right Thing  ;)
21:07 tony-o get rid of which placeholders ?
21:07 PerlJam all of them!
21:07 PerlJam make "exec select * from stuff where id > $blah" Just Work
21:08 arnsholt moritz: More or less. Thanks!
21:08 PerlJam (I don't have a clue how hard that would be, but I can dream a little bit, I think)
21:08 tony-o PerlJam: ahh, yea that might be iteration 2, that is probably not that hard - find variables pop them onto an array and replace with '?'
21:09 dalek nqp: 14905e2 | (Elizabeth Mattijsen)++ | docs/release_guide.pod:
21:09 dalek nqp: Mention 'make release' only for parrot Makefile
21:09 dalek nqp: review: https://github.com/perl6/nqp/commit/14905e296a
21:11 PerlJam tony-o: Where did you come up with the "exec ... with" syntax from?   (I would guess one of the embedded SQL flavors)
21:11 tony-o i'm sure it exists somewhere but it seemed more natural than what i started with
21:12 tony-o i originally had perform (vars) <sql> <block>
21:14 tony-o the only language i've used with inline sql is ABAP and that starts off with just your sql
21:16 moritz abap? isn't that the SAP thingy?
21:17 tony-o yea, i think it exists outside of SAP but i use it related to SAP and data warehouse
21:18 tony-o PerlJam: did you have suggestions?
21:19 PerlJam tony-o: um ... keep up the good work?  :-)
21:19 PerlJam tony-o++
21:19 tony-o i meant for syntax :/
21:19 tony-o :p
21:20 PerlJam no, not right off.  What you have looks nice as a first cut.
21:20 * timotimo upgrades to fedora 21 beta
21:20 timotimo yays
21:21 PerlJam tony-o: that it's also familiar-ish because of its resemblance to embedded SQL dialects is a plus too.
21:30 PerlJam tony-o: actually, after thinking about it a little more, you /might/ want to s/exec/SQL/ to make it super clear about which universe is impinging upon the Perl 6 code.  Or at least something other than "exec" as that's kind of generic as far as terms go.
21:32 * raydiak was thinking about 'sql' instead of 'exec' too
21:38 dalek rakudo/nom: fd96de9 | (Elizabeth Mattijsen)++ | tools/build/NQP_REVISION:
21:38 dalek rakudo/nom: [2014.11] bump NQP revision
21:38 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fd96de99ea
21:39 tony-o PerlJam: raydiak: i'll change it so it's clear when reading
21:40 dalek rakudo/nom: f195135 | (Elizabeth Mattijsen)++ | VERSION:
21:40 dalek rakudo/nom: [2014.11] bump VERSION
21:40 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f195135352
21:41 PerlJam tony-o: do you have to export the perform sub in order for it to be called?  That seems like an implementation detail that shouldn't necessarily be part of the interface.
21:41 tony-o PerlJam: i'm trying to figure that part out before i release it
21:42 tony-o i don't like having the sub floating around either
21:42 ugexe tony-o: i dont think you can use placeholders everywhere in a sql query
21:43 PerlJam ugexe: yeah, usually you can't use it for the table name for instance.
21:45 PerlJam ugexe: though that
21:46 PerlJam ugexe: though that's one thing tony-o could abstract away from the user such that it magically Just Works and the user doesn't need to know *how*
21:46 tony-o yea it would take some fiddle
21:46 ugexe yeah, i was just pointing out it wouldnt be just s///
21:47 raydiak is there a way to replace a method on a built-in type from user code? I'd like to hack on Mu.perl without recompiling rakudo over and over; or is there some other common approach to doing this?
21:47 tony-o once i figure out the sub thing though, i'm going to unleash this thing
21:48 PerlJam raydiak: use MONKEY_TYPING; augment class Mu { ... }
21:48 PerlJam raydiak: it might be MONKEY_PATCHING instead ... I haven't done this in a while.
21:49 PerlJam nope, looks like I was right the first time.
21:50 raydiak PerlJam: thanks! is there a way to replace the method instead of adding a multi?
21:50 Ulti tony-o that's really cool can't you just have the select|insert|drop|create replace the 'exec' though?
21:52 PerlJam Ulti: I bet he could, with a little work, but I think it's "friendlier" to give the programmer a heads-up about what just happened to the syntax.
21:53 Ulti I dunno I like the magic >:3 perhaps enforce uppercase to make it more obvious?
21:54 jdv79 is there anyone working on fixing "pretty printing"
21:55 jdv79 i imagine that would be a gist/perl type option, right?
21:57 tony-o Ulti: i was thinking about that, i was concerned that i might run into a scenario that wasn't covered by one of those ^ though I couldn't think of one
21:57 PerlJam Ulti: maybe.
21:59 PerlJam jdv79: I seem to recall that there was once a .pretty just like .gist (only prettier :), but that was long ago (or I imagined it ;)
21:59 Ulti tony-o well MySQL has LOAD and it ends up being specific to each version of SQL I guess
21:59 itz joined #perl6
21:59 tony-o Ulti: i guess i could just cover basic CRUD statements that apply to *most* SQLs and then just sql as the backup
22:04 Ulti yeah it wouldnt be impossible to just get all the primary statements for the things DBIsh covers either... MySQL at least provide a grammar of their implementation
22:04 jdv79 the docs for gist seems to describe output that is pretty by default to me
22:05 jdv79 or does .gist vary that much from .perl that its not well suited
22:06 grep0r joined #perl6
22:13 kjs_ joined #perl6
22:14 kurahaupo joined #perl6
22:22 dalek rakudo/nom: 7191e49 | (Elizabeth Mattijsen)++ | docs/release_guide.pod:
22:22 dalek rakudo/nom: Mention FROGGS++ as one of the uploaders
22:22 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7191e4937e
22:22 raydiak my main complaint with .gist is that it's often not pretty enough for output to users, and not detailed enough for debug output for developers, so it's good for...what?
22:22 lizmat to give you a gist ?
22:23 raydiak if it at least preserved brackets and list separators, I'd get a gist...as it is, I often don't get the gist from .gist
22:23 lizmat "the substance or general meaning of a speech or text"
22:24 FROGGS raydiak: can you report unhelpful gists when you hit them?
22:24 lizmat then it would be more like .perl
22:24 raydiak ish
22:24 raydiak FROGGS: I think it's more of an opinion thing than a bug
22:24 lizmat well, the other day .gist lost the difference between @() and [] somewhere, which was confusing
22:25 PerlJam raydiak: you want .perl, but way prettier, right?  (i.e. complete information, presented in an easy-for-humans-to-read manner)
22:25 lizmat forget what it was exactly
22:25 lizmat .oO( the old braincells are fading :-)
22:25 jdv79 that's what i want - a readable dump
22:25 jdv79 with no loss of structure
22:25 rurban joined #perl6
22:26 raydiak PerlJam: not from .gist, but yeah I want something like that in core
22:26 lizmat wrt to the 2014.11 release process: tarball ok for Moar, testing parrot and JVM now
22:26 lizmat (this takes a little longer)
22:26 PerlJam aye, sounds like you, jdv79 and me all want that thing (Whatever it is)
22:26 raydiak thinking .gist would be a ton better just with linebreaks and indentation, even sans brackets, comma, and so forth
22:27 PerlJam raydiak: except that .gist will sometimes give you things like   ( 1, 2, ... )  instead of all the numbers
22:27 lizmat 100 elements, it is even specced
22:27 lizmat well, as a guideline
22:28 jdv79 .pretty - whatever.  but basically it would just be .perl methods that take an indent at its simplest, right?
22:29 raydiak PerlJam: yep, that'd be fine too, I just want something in between ".gist tells me nearly nothing about structure" and "can't read .perl's puntuation-laden single-line verbosity"
22:29 raydiak oh, doc appt, better go or I'll be stuck in the snow...back in a little bit o/
22:29 PerlJam All we have to do is convince garu that he needs to make a P6 version of Data::Printer  ;)
22:32 FROGGS well, the internal to-json can be of interest then
22:33 FROGGS m: say to-json [[^3],4]
22:33 camelia rakudo-moar f19513: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/WCyzMyiSly�Unable to parse expression in bracketed infix; couldn't find final ']' �at /tmp/WCyzMyiSly:1�------> [32msay to-json [[^[33m�[31m3],4][0m�»
22:33 FROGGS m: say to-json [[ ^3 ],4]
22:33 camelia rakudo-moar f19513: OUTPUT«[␤  [␤    0,␤    1,␤    2␤  ],␤  4␤]␤»
22:33 FROGGS m: say (to-json [[ ^3 ],4]).subst(' ', '.')
22:33 camelia rakudo-moar f19513: OUTPUT«[␤. [␤    0,␤    1,␤    2␤  ],␤  4␤]␤»
22:33 FROGGS m: say (to-json [[ ^3 ],4]).subst(' ', '.', :g)
22:33 camelia rakudo-moar f19513: OUTPUT«[␤..[␤....0,␤....1,␤....2␤..],␤..4␤]␤»
22:40 tony-o FROGGS: do you know of a way to make the following sub callable (from line 61) without the 'export' bit?  https://github.com/tony-o/perl6-slang​-sql/blob/master/lib/Slang/SQL.pm6#L3
22:41 FROGGS tony: you could call it as &Slang::SQL::sql here: https://github.com/tony-o/perl6-slang-​sql/blob/master/lib/Slang/SQL.pm6#L63
22:42 tony-o ahh, duh
22:42 FROGGS at least I think it should work
22:43 FROGGS might need to our scope the sub though
22:43 PerlJam tony-o: you'd have to add a "module Slang::SQL;" to the top of that file and say  "our sub perform ... "
22:44 FROGGS EXPORT needs to stay in UNIT though AFAIK
22:44 FROGGS so, the module declaration needs to happen after the EXPORT sub
22:44 tony-o i used curlies on it
22:44 tony-o now i get a weird error
22:47 tony-o if i do module declaration at the end then i get 'too late for semicolon form of module definition', if i curly the module then i get 'cannot find method 'orig''
22:47 tony-o hold on, i'll push
22:48 tony-o https://github.com/tony-o/perl6-slang​-sql/blob/master/lib/Slang/SQL.pm6#L3
22:48 espadrine_ joined #perl6
22:49 PerlJam tony-o: the "too late for semicolon form" error is because module declarations of that form have to be the first thing in the file.
22:54 tony-o PerlJam: yea that's why i curlied it, i don't understand the Cannot find method 'orig' error tho
22:55 PerlJam you could eliminate all of this by writing the sql sub as QAST  :)
22:55 tony-o haha
22:56 tony-o true
22:58 mtk joined #perl6
22:59 lizmat tarball checked out ok for parrot, doing jvm now
23:00 kjs_ joined #perl6
23:00 lizmat hmmm....
23:00 lizmat t/spec/S11-modules/export.rakudo.jvm (Wstat: 0 Tests: 36 Failed: 22)
23:00 lizmat Failed tests:  3-20, 22-25
23:01 lizmat [Coke]: does that look familiar ?
23:02 lucas_ joined #perl6
23:05 lucas_ Hi there!
23:05 lucas_ I know nothing about the release process. The tarball already is on rakudo.org, but there is no git tag for rakudo?
23:05 Ulti tony-o perhaps you can include a connect string in the SQL keyword and keep a hash of those handles and open one if it doesnt exist
23:05 lizmat lucas_: shhhh
23:06 lucas_ lizmat: oh, sorry. lizmat++
23:07 lizmat only need to test the tarball for jvm...
23:07 Ulti tony-o so like SQL<SQLite:database.sql>
23:07 lizmat that will take ~1 hour, no need for FROGGS to stay up for that  :-)
23:08 * Ulti is excited about a SQL slang, would make a lot of my research code look a lot slicker
23:08 kjs_ joined #perl6
23:08 ugexe is there an easy way of getting a script's getopt commands, or do i need to inspect all the MAIN method captures? For instance: like how 'git' will suggest what you might have meant with a misspelt argument
23:13 jack_rabbit joined #perl6
23:16 lizmat ugexe: this is a dirty hack that's used in the settings:
23:16 lizmat $ 6 '.say for nqp::atkey(%*COMPILING, "%?OPTIONS")'
23:16 lizmat "encoding" => "utf8"
23:16 lizmat "transcode" => "ascii iso-8859-1"
23:16 lizmat "e" => ".say for nqp::atkey(\%*COMPILING, \"\%?OPTIONS\")"
23:16 lizmat note the "e"
23:16 lizmat m: .say for nqp::atkey(%*COMPILING, "%?OPTIONS")
23:16 camelia rakudo-moar f19513: OUTPUT«"encoding" => "utf8"␤"transcode" => "ascii iso-8859-1"␤"setting" => "RESTRICTED"␤»
23:17 ugexe lizmat: perfect
23:18 lizmat we probably need a better interface for this somehow
23:19 lizmat ugexe: forget it
23:20 lizmat it only has the parameters that Perl6 itself understands  :-(
23:22 kurahaupo1 joined #perl6
23:23 prime joined #perl6
23:24 prime moritz: I'm interested in implementing ilbot, but HINRIK/Bot-BasicBot-0.81.tar.gz seems outdated as 0.82 is all that backpan.perl.org seems to offer. Is there a reason you used that version?
23:27 dalek roast: cc95f52 | (Elizabeth Mattijsen)++ | S11-modules/export.t:
23:27 dalek roast: Fix failing export tests for JVM backend
23:27 dalek roast:
23:27 dalek roast: I'm not sure whether the tests are bogus or not, but an exported sub in the
23:27 dalek roast: EXPORT::ALL namespace has a different .WHICH from the original on the JVM.
23:27 dalek roast: The exports themselves appear to be working as expected, from cursory testing.
23:27 dalek roast: review: https://github.com/perl6/roast/commit/cc95f52636
23:33 vendethiel joined #perl6
23:34 telex joined #perl6
23:40 lizmat Helsinki has been released!
23:40 woolfy lizmat++
23:40 woolfy Woohoooo!!!
23:41 woolfy (so now we can finally go to sleep?)
23:41 lizmat yes
23:41 lizmat good night, #perl6!
23:42 dalek Heuristic branch merge: pushed 32 commits to rakudo/newio by lizmat
23:44 lucas_ Thanks for the release. Helsinki is a nice name.

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

Perl 6 | Reference Documentation | Rakudo