Camelia, the Perl 6 bug

IRC log for #perl6, 2012-08-28

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs

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

All times shown according to UTC.

Time Nick Message
00:03 cjbot joined #perl6
00:27 dayangkun joined #perl6
01:00 FROGGS_ joined #perl6
01:11 scott__ joined #perl6
01:19 silug joined #perl6
01:33 popl joined #perl6
01:38 MikeFair joined #perl6
01:42 replore_ joined #perl6
01:48 cjbot joined #perl6
01:50 cjbot @ryanbriones tweeted '@garybernhardt I didn’t realize you’d been working on Perl 6 this whole time… :trollface:'
01:59 cognominal joined #perl6
02:00 FROGGS__ joined #perl6
02:27 alvis joined #perl6
02:27 diakopter cjbot: usocool
02:31 * diakopter found a trove of interesting papers on language implementation optimization
02:36 diakopter I can't tell whether ryanbriones' tweet is sarcastic, even after reading the gist to which he was replying
02:37 cjbot joined #perl6
02:40 benabik diakopter: I know.  I'm not sure if I'm annoyed or amused that I can't tell.
02:42 diakopter on second thought, I'm guessing sarcastic
02:44 Circlepuller joined #perl6
02:45 diakopter maybe someone can help me with my data structures problem
02:45 sorear did someone say data structures?
02:46 sorear I will attempt to help with all data structures problems
02:47 sorear * I reserve the right to go no-true-scotsman-ing on what constitutes a data structures problem
02:47 diakopter I need to represent records whose fields are either retrieved by following a chain of parents to find where it's set, or to use what's set in that record
02:48 sorear prototype OO?  disjoint set forest?
02:48 diakopter if I had JavaScript it would be a piece of cack
02:49 diakopter *cake
02:49 diakopter but I just have C
02:49 sorear are you implementing javascript?
02:49 diakopter heh no
02:49 diakopter and they're not lexical closures either
02:49 diakopter :D
02:50 MikeFair You mean like you have to find the node in the linked list that has your property set?
02:50 sorear I'd be curious to know more about your problem, especially as it impacts the operation ratios
02:50 MikeFair Or to use the one on the node you got?
02:51 diakopter It's not a real problem; I'm imagining how I might do type flow analysis
02:51 diakopter it's not a real problem in the sense that I don't *have* to do it
02:51 diakopter it's really just an exercise
02:52 MikeFair I asume your musing about ways to make that analysis "fast"
02:52 diakopter my idea was to represent each position in the program as an array of type-unions
02:52 diakopter and just propagate them all through every branch until homeostasis is reached
02:53 sorear right, that's the standard approach
02:53 sorear kleene fixed points
02:53 diakopter oh goody, glad to see I reinvented the wheel
02:53 sorear is that sarcasm?  it sholdn't be
02:54 diakopter light-hearted :)
02:54 * diakopter looks up kleene fixed points
02:54 diakopter MikeFair: yep trying to make the analysis fast and not use gigabytes of space for a medium-sized program
02:55 sorear bleh, the [[w:Kleene fixed-point theorem]] is pretty much useless
02:58 diakopter for routines with hundreds of locals, probably hashtables would be most space efficient. but surely I can do better with 0-40 locals
02:58 diakopter locals including intermediate resuls of expressions
02:58 jaldhar joined #perl6
03:01 sorear diakopter: don't use a hash table, replace the variable names with consequtive small integers and use an array.
03:01 diakopter right, but for hundreds of locals the array would be gigantic
03:03 MikeFair diakopter: and it would be smaller with a hash table?
03:04 diakopter yes, but it would include only entries that changed in that step
03:04 diakopter er, entry
03:04 diakopter hm
03:04 sorear diakopter: I think you maybe want a persistant map
03:05 sorear it's like a hash table, but the "set" operation nondestructively returns a new map
03:05 sorear it's possible to make these with O(log N) set performance
03:05 diakopter oh?
03:06 sorear oh? for "possible" ?
03:06 diakopter yes
03:06 diakopter ("do tell..") :)
03:06 sorear haskell's Data.Map is one.  I don't know offhand if any other languages come with them
03:07 sorear if you want to roll your own, you start with a binary or 2-3 truee
03:07 sorear s/truee/tree/
03:07 sorear then, when you want to change a leaf, clone nodes up to the root instead
03:07 diakopter but I don't want to clone, I want to reference
03:08 shachaf You only copy the ones you change.
03:08 diakopter oh
03:08 sorear if your tree has a million items, and is maximally balanced with a depth of 20, you only have to clone 20 of the nodes for a set
03:09 diakopter oh, and each of those nodes can be a bit?
03:09 shachaf I wonder whether there are any libraries that present persistent maps as mutable maps with a cheap "clone" function.
03:10 sorear diakopter: each interior node needs two pointers, a key, + GC overhead
03:10 sorear this is mostly a standard self-balancing search tree
03:11 diakopter each level can be one bit in the key, I meant
03:11 sorear yes.
03:12 sorear if you're doing this for a dense set of integers, you could just have two pointers, omit the key, and implicitly identify (left, right, left, left, right) with 0b01001 = 9
03:12 sorear if that made sense
03:13 diakopter oh, that's what I was imagining
03:13 shachaf If it's not dense you can store a prefix for each node.
03:13 diakopter except the other direction
03:13 shachaf Like a Patricia tree (that's what Haskell's Data.IntMap does).
03:14 sorear diakopter: I like to make inorder traversal of the tree correspond to numeric order on the implied map
03:15 diakopter since items will never be removed from the structure, does it need to be a tree or can each record be stored in a table
03:15 jaldhar joined #perl6
03:15 diakopter but with the same inter-references as the tree,
03:15 diakopter just using array indexes instead of pointers
03:15 sorear Sure
03:16 diakopter that would save the GC overhead
03:16 sorear That's just like saying "I'm never going to free these, so I'll make a custom GC with 0 memory overhead"
03:17 sorear Also you can make the indexes smaller than pointers would be, especially on 64-bit
03:18 [Coke] sorear: parrot has that GC plugin!
03:18 [Coke] ... except it probably also has overhead. nevermind.
03:18 diakopter orly
03:19 shachaf Inserting into a persistent tree leaves you with nodes that might be unused, of course.
03:20 * shachaf isn't sure of the context here.
03:21 diakopter how would I enumerate the values at one level (not of the tree), of the inheritance chain
03:21 MikeFair (I just finished building from GIT, I'm sure everyone will be happy know that the make test result says "PASS")
03:22 sorear diakopter: with this approach there is no inheritance chain.
03:22 sorear you can, however, efficiently enumerate the changes between an arbitrary pair of versions
03:23 diakopter how would I enumerate the values of one version
03:24 sorear Recursively.
03:24 sorear It's a tree.
03:24 sorear if (leaf) { value! } else { enum_left(); enum_right(); }
03:27 diakopter I'm having trouble seeing the effective inheritance chain
03:27 sorear There is no inheritance chain.
03:28 diakopter right, but I'm having trouble seeing how it implements the same thing.
03:28 sorear Say you have a, b, c, d
03:28 sorear node 0 = [a,b] node 1 = [c,d] node 2 = [0,1] root = 2
03:29 sorear Now you change the d to an e
03:29 sorear two new nodes are created, node 3 = [c,e] node 4 = [0,3]
03:29 sorear The new root is 4
03:29 sorear node 0 is unchanged and did not have to be copied, so 33% of the memory was shared with the old version
03:29 sorear In a deeper tree the ratio would be much better
03:30 diakopter ah.
03:30 diakopter good explanation.
03:31 sorear It might also help to think that this is very close to how git's blob and tree objects work
03:32 thou joined #perl6
03:34 MikeFair Is there any reason Java couldn't be treated as CPU architecture for PIR?
03:35 diakopter all the PMCs would need implemented somehow
03:35 MikeFair diakopter: Right just like on x86, arm, etc
03:35 diakopter well, that compiles from C
03:36 diakopter but can you compile C to JVM?
03:36 MikeFair http://en.wikipedia.org/wiki/Java_vir​tual_machine#C_to_bytecode_compilers
03:39 MikeFair The LLJVM one seems interesting
03:42 diakopter last update 2 years ago
03:42 diakopter none of the others looks maintained either or looks suitable
03:43 diakopter s/or/and/
03:44 diakopter win32 only, mobile only, last updated years ago, bought by private company
03:44 diakopter incopmlete
03:45 MikeFair I didn't see the "bought by private company"
03:45 * MikeFair didn't click all the links either.
03:45 diakopter ampc
03:46 MikeFair Oh, the one that seemed the most complete (even targetted mobile devices)
03:46 MikeFair Though I don't think for this purpose, targetted a mobile device would be bad would it?
03:46 diakopter no
03:47 diakopter ampc looked the best but wasn't the one to j2me
03:49 rsimoes joined #perl6
03:49 MikeFair Do you see a license on C2J, they say win32 because they wrote it originally in C.  But they go on to say that since C2J spits out java code, they simply used the Win32 compiler to produce a Java version of C2J (which runs everywhere java runs)
03:49 MikeFair It's free to download, but I don't immediately see source or license.
03:51 MikeFair Beta versions of C2J are under GNU license.
03:52 MikeFair (Successfully created java versions of PGP and YACC -- Standard ANSI C runtime library fully supported. -- ANSI C and K&R C fully supported
03:52 MikeFair )
03:53 MikeFair I'm not a C expert but that seems like a fairly decent festureset
03:53 MikeFair err featureset
03:53 * MikeFair disappears to put kids to bed.
03:53 MikeFair bbiab
04:00 cjbot @Kharec tweeted 'En revanche, j'ai essayé deux-trois fois, j'suis pas trop #Perl6. J'pense que je m'y mettrais que quand #perl n'existera plus. #PasDeSuite'
04:00 bonsaikitten haha
04:05 sorear troll?
04:07 sorear [Coke]: what does cjbot listen for?  is #p6p5 on the list?
04:07 diakopter there's only one tweet ever with that tag
04:08 diakopter er, 2.
04:08 sorear diakopter: twitter is lying to you.
04:09 sorear https://twitter.com/nogoodnick​left/status/237270282656698368
04:09 diakopter sure enough
04:10 sorear I think the all-time total for #p6p5 tweets is closer to 5
04:10 diakopter yeah, google seems to think so
04:15 [Coke] sorear: yes.
04:16 [Coke] but it's possible tweets come in while cj is getting disconnected and reconnecting, and he's too stupid to remember the last thing he saw, so he just drops anything that happens in between connections right now.
04:16 cjbot joined #perl6
04:16 sorear does cjbot respond to pongs?
04:16 sorear pings
04:21 telex joined #perl6
04:22 [Coke] cjbot: help
04:22 cjbot Run by Coke, I relay tweets about Perl 6.
04:23 diakopter cjbot: do you take crack or snow
04:29 sorear WHAT.
04:29 diakopter two forms of coke?
04:29 sorear github redirects https://github.com/downloads​/sorear/niecza/niecza-19.zip to http://cloud.github.com/downloa​ds/sorear/niecza/niecza-19.zip
04:30 sorear I think this is a grave bug!
04:30 diakopter well, if you can't trust the same dns server that got you to the https one...
04:31 shachaf What does it have to do with DNS?
04:31 sorear https doesn't require you to trust dns
04:31 sorear because server certificates
04:32 diakopter what's wrong with the redirect?
04:32 sorear it's redirecting https to http
04:32 sorear after the redirect, an adversary can tamper with the traffic
04:37 telex joined #perl6
04:44 cjbot @itimesupuc tweeted 'Perl 6 Now: The Core Ideas Illustrated With Perl 5 (Expert's Voice in Open Source) (Paperback) http://t.co/6AJW8Zki'
04:45 cjbot @uhyreni tweeted 'Perl 6 Essentials (Paperback): Perl 6 Essentials is a sneak-preview of Perl 6, the widely-anticipated rewrite of... http://t.co/0hrxMEdj'
04:45 dalek rakudo/nom: 5836fd5 | moritz++ | src/core/Cool.pm:
04:45 dalek rakudo/nom: add Str:D and str variants of &chars
04:45 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5836fd5da9
04:47 moritz good morning
04:48 diakopter cjbot needs some spambot detection
04:54 aloha joined #perl6
04:59 sorear morning moritz
05:00 moritz good *, sorear
05:05 dalek roast: 025504e | moritz++ | S03-operators/buf.t:
05:05 dalek roast: test ~ on Buf
05:05 dalek roast: review: https://github.com/perl6/roast/commit/025504e5b9
05:06 cjbot joined #perl6
05:10 replore_ joined #perl6
05:26 pmichaud good morning, #perl6
05:32 dalek niecza: e78d613 | sorear++ | docs/announce.v21:
05:32 dalek niecza: Draft v21 announce
05:32 dalek niecza: review: https://github.com/sorear/niecza/commit/e78d613ed2
05:32 sorear good morning pmichaud.
05:32 pmichaud sorear!  \o/
05:32 pmichaud good morning.
05:34 dalek star/build2: a16dda6 | pmichaud++ | win32/rakudo. (2 files):
05:34 dalek star/build2: Remove obsolete win32 stuff.
05:34 dalek star/build2: review: https://github.com/rakudo/star/commit/a16dda69a8
05:39 bonsaikitten sorear: bonus points for providing proper tags for all releases
05:39 masak good morning, #perl6.
05:39 pmichaud masak!  \o/
05:39 sorear bonsaikitten: proper tags?  is that intended to be a reference to how I didn't get v20 tagged properly? :|
05:39 * masak is off for another day of teaching
05:40 bonsaikitten sorear: yes, that mildly irritated me :)
05:45 dalek niecza: a8aa70b | sorear++ | / (2 files):
05:45 dalek niecza: Update bootstrap to v21
05:45 dalek niecza: review: https://github.com/sorear/niecza/commit/a8aa70bd08
05:47 sorear release done I think
05:47 sorear n: 2
05:47 p6eval niecza v19-44-g55e895a:  ( no output )
05:49 masak sorear++ # release
05:49 masak &
05:52 bonsaikitten excellent
05:57 wtw joined #perl6
06:05 dalek star/build3: c012d8b | pmichaud++ | / (53 files):
06:05 dalek star/build3: Move skel/ into top-level directory, to try building directly from the repo.
06:05 dalek star/build3: review: https://github.com/rakudo/star/commit/c012d8b882
06:05 dalek star/build3: a8079a0 | pmichaud++ | / (12 files):
06:05 dalek star/build3: Move build/binary/darwin_dmg to ports/ .
06:05 dalek star/build3: review: https://github.com/rakudo/star/commit/a8079a0a66
06:05 dalek star/build3: af09f22 | pmichaud++ | / (28 files):
06:05 dalek star/build3: Add some submodules.
06:05 dalek star/build3: review: https://github.com/rakudo/star/commit/af09f22d71
06:05 dalek star/build3: 06aa30a | pmichaud++ | win32/rakudo. (2 files):
06:05 dalek star/build3: Remove obsolete win32 building stuff.
06:05 dalek star/build3: review: https://github.com/rakudo/star/commit/06aa30a95e
06:05 dalek star/build3: aa6fe69 | pmichaud++ | modules/MODULES.txt:
06:05 dalek star/build3: Add MODULES.txt index file.
06:05 dalek star/build3: review: https://github.com/rakudo/star/commit/aa6fe6940a
06:05 dalek star/build3: f9f2df3 | pmichaud++ | Configure.pl:
06:05 dalek star/build3: De-template Configure.pl.
06:05 dalek star/build3: review: https://github.com/rakudo/star/commit/f9f2df311a
06:05 dalek star/build3: 048c88e | pmichaud++ | template-skel/Configure.pl:
06:05 dalek star/build3: De-template Configure.pl.
06:05 dalek star/build3: review: https://github.com/rakudo/star/commit/048c88e49b
06:07 preflex_ joined #perl6
06:09 marmay joined #perl6
06:10 dalek star/build3: 9f56672 | pmichaud++ | / (2 files):
06:10 dalek star/build3: Move star-level Makefile out of the way.
06:10 dalek star/build3: review: https://github.com/rakudo/star/commit/9f56672077
06:13 dalek star/build3: bb733c2 | pmichaud++ | build/ (4 files):
06:13 dalek star/build3: Remove obsolete build/ directory.
06:13 dalek star/build3: review: https://github.com/rakudo/star/commit/bb733c2f7b
06:16 kaleem joined #perl6
06:21 cjbot joined #perl6
06:25 SamuraiJack joined #perl6
06:26 dalek star/build3: 251ada7 | pmichaud++ | Configure.pl:
06:26 dalek star/build3: Block Configure.pl from running from a git checkout and display a helpful message.
06:26 dalek star/build3: review: https://github.com/rakudo/star/commit/251ada7d7f
06:31 lateau joined #perl6
06:33 sorear > { my class A {}; my class B { }; my class C is B is A {}; multi f(A) { "A" }; multi f(B) { "B" }; sub g(A $x) { say f($x) }; g(C.new); }
06:33 sorear A
06:33 sorear > { my class A {}; my class B { }; my class C is B is A {}; multi f(A) { "A" }; multi f(B) { "B" }; sub g(B $x) { say f($x) }; g(C.new); }
06:33 sorear B
06:33 sorear I want to call this a bug
06:33 sorear rakudo
06:33 SamuraiJack joined #perl6
06:34 sorear your optimizer is making unfounded assumptions that are false even at compile time
06:37 moritz so at some point the optimizer confuses constraint type with actual type?
06:38 * moritz submits rakudobug
06:38 simcop2387 joined #perl6
06:39 lestrrat joined #perl6
06:39 cjbot joined #perl6
06:39 lorn joined #perl6
06:41 sorear moritz: what I think is going on here is that rakudo sees "B" and assumes "not A".
06:41 sorear but our types don't actually express any kind of exclusionary constraint
06:41 moritz sorear: I just started the bug report with "Just because it's an A doesn't mean it can't be a B" before I saw what you wrote here
06:42 sorear I think that BEGIN-time multiple dispatch optization is fundamentally incompatible with MI
06:42 moritz that's a pity, because it's very useful :(
06:43 sorear CHECK-time could work because then we would know which pairs of classes are never found in the same MRO
06:43 moritz well, it is done at CHECK time
06:43 moritz but it doesn't check for known subclasses that do MI
06:44 moritz and even then a new class at runtime would need to invalidate it
06:44 moritz or require a 'use final;' or so to declare that you aren't going to do it
06:53 simcop2387 joined #perl6
07:01 bonsaikitten sorear: eh, why does niecza-21 try to write to /root/.local during bootstrap?! :(
07:02 bonsaikitten (and why is the v20 tag not source but binary??)
07:06 SamuraiJack joined #perl6
07:09 bonsaikitten ah, I see ... need to override the guessing of $HOME :)
07:10 sorear /root probably not the best idea, I have no clue how some of that code works :D
07:10 xinming joined #perl6
07:12 bonsaikitten well, where is it defined / how do I crudely override it?
07:12 bonsaikitten it's a bug that has affected gtk apps for over a decade, using $HOME is always wrong ;)
07:16 GlitchMr joined #perl6
07:18 pmichaud sorear++  # v21
07:18 shachaf Isn't sorear v22 coming out in November?
07:18 kresike joined #perl6
07:19 sorear dude, not cool shachaf
07:19 kresike good morning all you happy perl6 people
07:19 shachaf sorear: ?
07:19 sorear that is PERSONAL INFORMATION
07:19 shachaf Oh. Sorry! I've seen it mentioned in the channel before.
07:19 sorear yes, and anyone who mentions it again will be told off and/or kicked
07:20 * shachaf didn't realize. OK.
07:21 TimToady anyone who wants to know my birthday can just look it up :)
07:21 pmichaud ...gosh, is it almost that time again?
07:22 * TimToady suspects sorear++ will be that famous someday too :)
07:22 sorear yeah, I'm really regretting not doing more under psuedonyms now
07:22 shachaf Ugh. I didn't mean to start anything. :-(
07:23 pmichaud sometimes it's best to just accept the fame (or infamy) as gracefully as possible, I think.
07:23 pmichaud not that I'd know, of course.
07:23 TimToady well, nobody's tried to steal my identity yet (that I know of)
07:23 pmichaud although at dinner the other night, woolfy was saying "I know so-and-so from conference, and so-and-so from another conference, and pmichaud because he's famous."  :-)
07:26 moritz pmichaud, sorear: you are both famous enough to have been cold-call^Wemailed with a sponsored workshop invitation :-)
07:26 pmichaud That's not always fame... sometimes it's just "who you know"  :-)
07:26 sorear I know.  wtf.
07:27 TimToady moritz: is there still an api to delete stuff from the ir clog?
07:27 cosimo joined #perl6
07:28 moritz TimToady: if by API you mean 'delete from irclog where id = ?', then yes
07:29 moritz and if sorear++ wants it, I can delete the offensive line above (though reluctantly, because then the rest of the discussion doesn't make much sense anymore)
07:29 cjbot joined #perl6
07:29 sorear I'm not going to press this
07:30 sorear I mostly just want to keep shachaf on this side of the slippery slope
07:31 sorear I'm worried he's going to eventually leak my parents' medical records or something
07:31 shachaf ?
07:31 TimToady heh, well, we all have to live somewhere on the slippery slope
07:32 bonsaikitten hrrhrr. This is a hilarious puzzle
07:32 * TimToady was raised as a religious fundamentalist, and hence has grown (over)sensitive to slippery slope arguments, which are usually used to justify an extreme positoin
07:32 bonsaikitten whoever thought about a "portable" way to guess $HOME should be punished with Windows ME for two years
07:33 * bonsaikitten hands TimToady some soap to make it more slippery
07:33 TimToady now where did I put my skis...
07:33 sorear niecza on mono on unix shouldn't be guessing $HOME at all, because it uses the value from the environment
07:33 sorear niecza on windows won't be using $HOME because it uses the Local Application Data folder
07:34 sorear what OS are you on?
07:34 sorear not either of those I guess
07:34 GlitchMr Would the portable way be something like $ENV{HOME} // $ENV{LOGDIR} // $ENV{'SYS$LOGIN'}?
07:34 sorear I'll do my best to support it, but mono itself is rather unportable in that regard
07:35 GlitchMr (any idea what ENV variables or random backticks I can add to make this more portable?)
07:35 TimToady Quoth Gloria: "I'm in favor of defending people's rights, including the right to privacy, but when people spend too much energy defending their rights, it tends to get in the way of what they really want to do."
07:35 FROGGS joined #perl6
07:36 moritz gloria++
07:36 sorear bonsaikitten: niecza-on-mono-on-unix uses --obj-dir, $XDG_DATA_HOME, and $HOME/.local/share in that order
07:36 sorear you will notice I've dropped this
07:36 GlitchMr What is $XDG_DATA_HOME?
07:36 GlitchMr Sounds interesting
07:37 bonsaikitten sorear: I think there's one line in Makefile that is missing --obj-dir, let me try to verify
07:37 TimToady sorear: yes, sorry I'm still carrying the lady across the river.  :)
07:37 bonsaikitten GlitchMr: freedesktop.org spec
07:37 GlitchMr Well, I don't have this ENV variable on my system for some reason
07:37 sorear bonsaikitten: ah, are you trying to build the tag or the HEAD?
07:37 bonsaikitten sorear: tag
07:37 bonsaikitten that's what they are there for, reproducable builds :)
07:38 sorear there _is_ one line missing --obj-dir in the tag
07:38 bonsaikitten nope. that didn't do it :\
07:38 * bonsaikitten tries forcing XDG_DATA_HOME since HOME is ignored
07:38 sorear are you just trying to build or are you going through the whole reboot procedure?
07:39 GlitchMr I remember my "sandbox" which uses /tmp as home directory
07:40 moritz ways to shoot yourself in the foot
07:40 bonsaikitten sorear: trying to build, but with some sandboxing to avoid modifications to live filesystem
07:40 sorear which command triggers the stray write
07:41 bonsaikitten NIECZA_KEEP_IL=1 mono boot/run/Niecza.exe -C CORE JSYNC
07:41 GlitchMr > sprintf('%vd', 'AB\u0100')
07:41 GlitchMr '65.66.256'
07:41 bonsaikitten ok, setting HOME has no effect, it's not taken from env ... but XDG_DATA_HOME is honoured
07:41 GlitchMr Is it just me, or I've written second implementation of sprintf() which supports vectors?
07:42 sorear bonsaikitten: that's rather weird, what's the highest numbered file in boot/docs/announce.*
07:42 bonsaikitten sorear: v21
07:43 sorear bonsaikitten: I think you have a dirty build
07:43 sorear the v21 tag requests https://github.com/downloads​/sorear/niecza/niecza-19.zip
07:43 bonsaikitten unlikely as it is unpacked from tarball
07:43 bonsaikitten ah, I had to override that madness
07:44 bonsaikitten no fetching :)
07:44 sorear v21 won't build on itself.
07:44 sorear the next patch after v21 fixes building on v21
07:44 sorear but v21 is only intended to be built using v19
07:45 bonsaikitten it does now
07:45 bonsaikitten :D
07:52 bonsaikitten so there. gentoo is all up to date with perl6 again.
07:53 Liz_ joined #perl6
07:53 tadzik \o/
07:53 tadzik bonsaikitten++
07:53 moritz \o/
07:53 krunen_ joined #perl6
07:53 tadzik bonsaikitten: do you have this gentoo magic to make perl point to perl6? :>
07:53 bonsaikitten rakudo is easier to package than niecza - it just works every single time
07:53 bonsaikitten tadzik: hrm, I don't know if that's a good idea to do globally
07:53 tadzik probably not
07:54 tadzik I remember the thrill when I made my perl6 executable point to nom
07:56 bonsaikitten # file /usr/bin/perl
07:56 bonsaikitten /usr/bin/perl: symbolic link to `perl5.16.0'
07:56 bonsaikitten so, in theory, if I were crazy, I could just bend that symlink away
07:56 tadzik that would be almost as funny as in those distros that make 'python' point to 'python3'
07:56 bonsaikitten you mean arch? they are really funny
07:56 tadzik like: "future. NOW!"
07:57 tadzik AT ALL COST
07:57 bonsaikitten yeah, upstream says change
07:57 bonsaikitten so change! systemd! /usr move! python3!
07:57 tadzik Arch devs are hilarous sometimes
07:57 tadzik <loudmouth bug story>
07:57 bonsaikitten they make gentoo look good ;)
07:57 tadzik haha
07:57 tadzik gentoo has clean hands imho
07:58 tadzik "things break? Oh, you're using ~arch, don't you? Well, don't be surprised then" ;)
07:58 bonsaikitten well, ~arch is so stable now that people complain *if* anything breaks
07:58 tadzik yep
07:58 bonsaikitten we're at ~98% stuff compiling OOTB, like debian
07:58 tadzik community level-up, as they say
07:59 bonsaikitten the biggest effort to improve that was a simple set of 2 scripts with combined 12 lines of code
07:59 tadzik I'm not on gentoo for around 2 years now, but things rarely break there from something else than users' fault
07:59 tadzik as I remember it
07:59 bonsaikitten there's been some ugly stuff like udev upstream going crazy
08:00 bonsaikitten so now udevd is systemd-udevd and moved from /sbin to /usr/libexec
08:00 moritz wtf?
08:00 bonsaikitten (note: this fucks up separate /usr permanently and thus defines separate /usr as unsupported)
08:00 bonsaikitten reasoning: separate /usr didn't work (well, it did, so let's create facts)
08:03 bonsaikitten so, uhm RedHat / Fedora are moving things around because they can, and all other distros get to either revert their changes and create huge patchsets or watch things fail in hilarious ways
08:03 bonsaikitten ... /sbin/ip has been in the same place for so long that it's hardcoded in many places. SIGH.
08:07 birdwindupbird joined #perl6
08:10 leont joined #perl6
08:11 fhelmberger joined #perl6
08:17 dalek zavolaj/list-assignment: 77c4bd1 | moritz++ | / (2 files):
08:17 dalek zavolaj/list-assignment: allow list assignment to CArray[int].new and CArray[num].new
08:17 dalek zavolaj/list-assignment: review: https://github.com/jnthn/zavolaj/commit/77c4bd1bef
08:18 arnsholt moritz: Emptying the array won't be possible in the general case if the array comes from C
08:19 moritz arnsholt: oh, is that why list assignment isn't supported?
08:19 Psyche^ joined #perl6
08:19 arnsholt Dunno if jnthn has thought about it
08:20 arnsholt I just hadn't thought about implementing that particular feature
08:20 moritz still it's very convenient for initialization
08:20 arnsholt Yup
08:20 arnsholt It's a good feature
08:20 moritz should I just make it die if it has more elements than elements in the initializer list?
08:21 moritz oh, and I want to support it for CArray[Str] too
08:21 moritz how do I do that?
08:21 moritz there's no specialization role for Str
08:21 moritz so I have no idea how it even works in the first place (which at_pos is it using?)
08:22 arnsholt Do we have tests using CArray[Str]?
08:22 moritz yes
08:22 arnsholt Right, so it works, at least =)
08:22 moritz I need that for git@github.com:jnthn/zavolaj.git
08:23 moritz erm, pastefail
08:23 moritz for PQconnectdbParams
08:23 arnsholt Oh, the Str case goes through the bind_pos_boxed code path
08:23 arnsholt Numbers go through bind_pos_ref, that might be why they're special cased
08:25 dalek star/build3: 186a632 | pmichaud++ | .gitignore:
08:25 dalek star/build3: Update .gitignore.
08:25 dalek star/build3: review: https://github.com/rakudo/star/commit/186a6326e8
08:25 dalek star/build3: a127aa7 | pmichaud++ | tools/star/ (2 files):
08:25 dalek star/build3: Initial build makefile and script to prefix input lines.
08:25 dalek star/build3: review: https://github.com/rakudo/star/commit/a127aa7a02
08:25 dalek star/build3: bba776e | pmichaud++ | .gitignore:
08:25 dalek star/build3: More .gitignore entries.
08:25 dalek star/build3: review: https://github.com/rakudo/star/commit/bba776e246
08:25 arnsholt moritz: Line 239 in your branch
08:25 arnsholt Str goes through the TypedCArray role
08:26 moritz arnsholt: thanks
08:26 bonsaikitten moritz: hmm, using rakudo as /usr/bin/perl seems to be nontrivial, I'll play around with it some more if I get bored
08:27 moritz bonsaikitten: it wasn't me who suggested that :-)
08:27 tadzik I have a feeling that there may be things that'll break after that
08:27 bonsaikitten oh right, sorry
08:27 tadzik yes, I suggested that :P
08:27 bonsaikitten tadzik: indeed, for one all installed perl modules "disappear"
08:27 tadzik hahaah
08:27 tadzik well
08:28 arnsholt It'll probably break all the things, since Perl scripts tend to crop up all over the place =)
08:28 bonsaikitten yup
08:28 bonsaikitten kills autotools directly *g*
08:28 bonsaikitten but still a fun little experiment
08:28 tadzik aren't the 54 modules we have working enough for everybody? :P
08:30 bonsaikitten heh
08:30 bonsaikitten want bug reports for everything that I can make fail?
08:31 bonsaikitten (hint: say no)
08:31 moritz no
08:32 bonsaikitten when I did a build-test for perl 5.16 I ended up with ~1750 pkgs to build, and only about a dozen failed
08:32 bonsaikitten imagine the amount of bugs I could throw in your direction!
08:34 lorn joined #perl6
08:35 moritz arnsholt: oh, there's no r_elems opcode
08:35 moritz arnsholt: so I don't know how to make it die if $elems > @init.elems
08:35 simcop2387 joined #perl6
08:36 lestrrat joined #perl6
08:38 arnsholt moritz: Really? That's odd
08:38 arnsholt There's a function for it in the indexing REPR ops API at least
08:40 tadzik FEED ME BUGS
08:41 moritz arnsholt: oh, maybe I just need nqp::elems
08:41 arnsholt Might be, yeah
08:46 moritz hm, no :(
08:46 moritz elements() not implemented in class 'CArray+{NumTypedCArray}'
08:46 moritz that went through the vtable, not the REPR
08:47 moritz arnsholt: there's a static INTVAL elems(PARROT_INTERP, STable *st, void *data) {
08:47 moritz in CArray.c
08:47 moritz how would I expose that to NQP land?
08:51 pmichaud I'm very consistently getting the segfault when trying to compile nqpmo within my star repo :-(
08:51 pmichaud like, retyping 'make' doesn't cause it to continue.
08:52 pmichaud there it worked, on the fifth try.
08:52 moritz :(
08:52 pmichaud ...that's a real issue that we need to iron out.  I didn't realize it got into the releases that way.
08:52 tadzik pmichaud: pararell build maybe?
08:52 tadzik but well, segfault :/
08:53 pmichaud tadzik: parallel build?
08:53 tadzik pmichaud: are you doing make -jN? That may cause it to sometimes fail and sometimes not
08:53 pmichaud no, I'm not doing -jN
08:53 pmichaud plain 'make'.
08:54 tadzik and no MAKEFLAGS set in env?
08:54 pmichaud no MAKEFLAGS set
08:55 bonsaikitten MAKEOPTS
08:55 bonsaikitten (gnu make)
08:55 pmichaud I wonder if it has to do with parrot 4.6.0 versus 4.4.0
08:55 tadzik I think only Gentoo uses MAKEOPTS
08:55 tadzik I've seen MAKEFLAGS everywhere else
08:55 dalek zavolaj/list-assignment: e2eea9c | moritz++ | / (2 files):
08:55 dalek zavolaj/list-assignment: list assignment for non-int/num cases
08:55 dalek zavolaj/list-assignment: review: https://github.com/jnthn/zavolaj/commit/e2eea9c320
08:56 pmichaud since normally I've been building off of 4.4.0 (the one specified in PARROT_REVISION), whereas the star release is using 4.6.0
08:56 xinming joined #perl6
08:57 moritz why is star using 4.6.0?
08:58 bonsaikitten tadzik: MAKEFLAGS appears to be an internal var, MAKEOPTS is what you should use
08:58 tadzik oh, TIL
09:01 arnsholt moritz: It already is exposed. Line 465
09:02 moritz arnsholt: but how do I access it from NQP?
09:03 arnsholt Dunno. No go with nqp::elems?
09:03 moritz nope, that goes through the vtable
09:03 arnsholt Hmm
09:03 moritz I'm now experimenting with adding an nqp::r_elems
09:05 arnsholt Hmm. Looks like that particular op isn't there, yeah
09:09 MayDaniel joined #perl6
09:10 dalek star/build3: b9187e6 | pmichaud++ | Configure.pl:
09:10 dalek star/build3: Add --force option to Configure.pl to force configuration even
09:10 dalek star/build3: if in a .git repository.
09:10 dalek star/build3: review: https://github.com/rakudo/star/commit/b9187e6ca4
09:10 preflex_ joined #perl6
09:10 moritz jnthn: ping
09:10 _jaldhar joined #perl6
09:10 simcop2387_ joined #perl6
09:11 dalek star/build3: 1697e20 | pmichaud++ | .gitignore:
09:11 dalek star/build3: Add config.status to .gitignore.
09:11 dalek star/build3: review: https://github.com/rakudo/star/commit/1697e20c92
09:15 dayangkun_ joined #perl6
09:16 lorn_ joined #perl6
09:19 moritz do I have to rebootstrap to make new nqp:: ops available?
09:21 daxim joined #perl6
09:22 arnsholt Don't think so
09:22 Coleoid joined #perl6
09:22 leont joined #perl6
09:23 krunen_ joined #perl6
09:24 GlitchMr joined #perl6
09:26 moritz then I'm simply not competent enough :(
09:27 moritz http://moritz.faui2k3.org/tmp/0001-ad​d-repr_elems-op-and-nqp-r_elems.patch
09:27 moritz after recompilation, I still get "unrecognized nqp:: op"
09:29 arnsholt Or maybe you do need to. Come to think of it, I had some weirdness when adding an op as well
09:30 moritz even a bootstrap didn't help :(
09:32 FROGGS maybe make clean doesn't  clean up the right files?
09:34 moritz unlikely
09:35 FROGGS is the QAST.pbc made from src/QAST/* ?
09:35 moritz yes
09:35 Ultali joined #perl6
09:36 FROGGS its not getting deleted when doing make clean
09:36 moritz that should be fixed
09:36 Ultali is anyone working on a MacPort for Rakudo?
09:36 moritz but it's still not the root of my problem (I didn't even run 'make clean')
09:37 * moritz isn't aware of any macport work
09:38 Ulti k k
09:38 Ulti I might have a go then
09:39 Ulti is there a "latest" tar ball somewhere I should work from?
09:39 moritz the latest compiler release in 2012.08
09:40 moritz the corresponding star distribution hasn't been released yet
09:40 Ulti I meant more is there a web location that is static but always the latest release?
09:40 moritz I don't think so
09:42 bonsaikitten Ulti: you can programatically deduce the current newest version
09:44 Ulti I can programatically deduce when the NOAA-12 satellite will be over head of the data centre where the source is stored too...
09:44 cjbot joined #perl6
09:46 bonsaikitten I've not yet had to care enough about that to demand a "latest" symlink
09:46 Ulti its fine a port should be a static version anyway, its just I could also make a "bleed" version that is just the most current at time of install
09:46 bonsaikitten that's what git is there for
09:46 bonsaikitten reminds me, I should package that too :)
09:46 dalek nqp/toqast: c318942 | jonathan++ | src/QAST/PIRT.nqp:
09:46 dalek nqp/toqast: A few PIRT updates.
09:46 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/c318942dff
09:46 dalek nqp/toqast: bac6e6e | jonathan++ | src/core/NQPMu.pm:
09:46 dalek nqp/toqast: NQPMu should be able to Intify also.
09:46 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/bac6e6e75c
09:46 dalek nqp/toqast: d653ec4 | jonathan++ | src/QRegex/Cursor.nqp:
09:46 dalek nqp/toqast: Update the way we look for hashes.
09:46 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/d653ec4667
09:46 dalek nqp/toqast: 0ada719 | jonathan++ | src/core/NQPMu.pm:
09:46 dalek nqp/toqast: NQPMu really needs to stringify to the empty string, since it replaces the role Undef played.
09:46 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/0ada7195c4
09:46 FROGGS if somebody would add a tag like relase it would be https://github.com/rakudo/star/tarball/release
09:46 Ulti if only git came as default
09:47 Ulti dont really want a portfile that pulls in git and everything else just to build
09:47 jnthn moritz: pong
09:47 tadzik Ulti: you'll have to do that anyway
09:47 bonsaikitten Ulti: first world problems ;)
09:47 Ulti hur
09:47 moritz jnthn: for the native call stuff I need access to the repr_elems
09:47 tadzik Ulti: rakudo needs to pull nqp and parrot from git anyway
09:47 moritz jnthn: what's the best way to do that?
09:47 Ulti orly
09:47 Ulti heh ok then
09:48 Ulti I cant really imagine the sort of person who would want rakudo installed and doesn't want git tbqh
09:48 tadzik hehe
09:48 tadzik next step: panda :)
09:48 moritz jnthn: I've tried http://moritz.faui2k3.org/tmp/0001-ad​d-repr_elems-op-and-nqp-r_elems.patch but it still complains that it can't find the op, and I have no idea if the approach is right at all
09:49 Ulti I already own a portfile on MacPorts so hopefully it wont take a year to get this one in
09:49 bonsaikitten tadzik: well, you could be lame and just use release tarballs
09:49 Ulti s/lame/awesome/
09:49 bonsaikitten <-- lazy gentoo person
09:49 jnthn moritz: That OBJ_SC_WRITE_BARRIER($1); is wrong for one thing
09:49 jnthn (should not be there)
09:49 tadzik bonsaikitten: hm, true that
09:50 moritz jnthn: oh, copy/past-o
09:50 jnthn moritz: You don't do anyting with the result also
09:50 jnthn REPR(obj)->idx_funcs->elems(interp, STABLE(obj), OBJECT_BODY(obj));
09:50 jnthn That line evaluates to the elements
09:50 jnthn Oh
09:50 jnthn the op is rong too
09:50 jnthn +inline op repr_elems(invar PMC) :base_core {
09:50 jnthn wants to be
09:50 jnthn +inline op repr_elems(out INT, invar PMC) :base_core {
09:50 moritz oh, right
09:50 jnthn So
09:50 jnthn +    PMC *obj = decontainerize(interp, $1);
09:50 jnthn Wants $2
09:50 jnthn And you assign the result into $1
09:50 moritz allright
09:51 jnthn (tht is, $1 = REPR(obj)...
09:51 jnthn )
09:51 moritz but is the general approach correct?
09:53 jnthn yes
09:53 moritz ok, I'll do a second attempt later
09:56 zhutingting joined #perl6
09:57 jnthn moritz++
09:57 moritz oh, more fun
09:58 moritz there's a function in the postgresql C API for connecting, which doesn't require escaping of strings
09:58 moritz but it's not present in the lib on the machine I'm testing it
09:58 moritz so, it seems to be new. Yukk.
09:59 moritz added between 8.4 and 9.0, it seems
10:06 dalek DBIish/pg-connect-params: 4cd506b | moritz++ | lib/DBDish/Pg.pm6:
10:06 dalek DBIish/pg-connect-params: [WIP] try to connect with PQconnectdbParams
10:06 dalek DBIish/pg-connect-params: review: https://github.com/perl6/DBIish/commit/4cd506bc0d
10:09 moritz r: my %h = a => 1, b => 2; $_ *= 2 for %h.values; say %h.perl
10:09 p6eval rakudo 5836fd: OUTPUT«("a" => 1, "b" => 2).hash␤»
10:13 dalek DBIish/pg-connect-escape: c3ef1ca | moritz++ | lib/DBDish/Pg.pm6:
10:13 dalek DBIish/pg-connect-escape: [Pg] escape connection params
10:13 dalek DBIish/pg-connect-escape: review: https://github.com/perl6/DBIish/commit/c3ef1ca852
10:14 moritz phenny: ask ChoHag to please test the DBIish/pg-connect-escape branch with a space in the password, and report the success or failure to me. Thanks.
10:14 phenny moritz: I'll pass that on when ChoHag is around.
10:18 xinming joined #perl6
10:20 ChoHag Oh.
10:20 phenny ChoHag: 10:14Z <moritz> ask ChoHag to please test the DBIish/pg-connect-escape branch with a space in the password, and report the success or failure to me. Thanks.
10:20 ChoHag I hacked in a very un-perl-6-like use of PQConnectdbParams.
10:21 ChoHag Then I got upset because I realised I have to change my plans from a threading model to a polling model and went to bed.
10:22 moritz ChoHag: the machine I'm currently on doesn't have PQConnectdbParams (pg client libs too old), so I guess I can't make it the default
10:22 ChoHag Got rid of the default options too, which libpq doesn't need.
10:22 moritz ChoHag: anyway, testing would be very welcome
10:23 ChoHag I will.
10:23 moritz thanks
10:23 moritz ++ChoHag
10:24 ChoHag How old does libpq have to be to not support pqconnectdbparams?
10:24 moritz jnthn: fwiw my revised patch still dies with "Unrecognized nqp:: opcode 'nqp::r_elems'"
10:25 moritz it seems the QAST part also has problems
10:27 moritz do I need to bootstrap?
10:30 wamba joined #perl6
10:32 cjbot joined #perl6
10:36 wamba left #perl6
10:37 wamba joined #perl6
10:52 cjbot @ajbrowe tweeted 'RT @perlbuzz: Starting again with Rakudo Perl 6 http://t.co/UhFAG4RL'
10:53 jnthn moritz: No, but where are you using the op from? Rakudo or NQP?
10:53 jnthn moritz: Remember NQP doesn't yet use QAST
10:53 * jnthn is working on that ;-)
11:03 REPLeffect joined #perl6
11:04 cognominal joined #perl6
11:06 cognominal joined #perl6
11:24 moritz jnthn: oh, right. Hm :-)
11:24 lizmat joined #perl6
11:25 JimmyZ joined #perl6
11:26 dalek star/build3: 180c590 | pmichaud++ | tools/build/ (2 files):
11:26 dalek star/build3: Convert module-install to read modules from MODULES.txt .
11:26 dalek star/build3: review: https://github.com/rakudo/star/commit/180c590798
11:34 ObseLeTe joined #perl6
11:49 imarcusthis joined #perl6
11:49 dalek nqp: 384d3c3 | moritz++ | src/ (3 files):
11:49 dalek nqp: add repr_elems op and nqp::r_elems
11:49 dalek nqp: review: https://github.com/perl6/nqp/commit/384d3c3107
11:49 dalek nqp: 143a6d0 | moritz++ | tools/build/PARROT_REVISION:
11:49 dalek nqp: bump PARROT_REVISION to get socket.read_bytes with optional minimal size argument
11:49 dalek nqp: review: https://github.com/perl6/nqp/commit/143a6d0756
11:51 dalek rakudo/nom: f3d2b53 | moritz++ | tools/build/NQP_REVISION:
11:51 dalek rakudo/nom: bump NQP revision
11:51 dalek rakudo/nom:
11:51 dalek rakudo/nom: this gives us nqp::r_elems (needed for nativecall stuff)
11:51 dalek rakudo/nom: and a newer parrot for improved binary socket handling
11:51 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f3d2b53e99
11:52 dalek zavolaj/list-assignment: 1c3d64e | moritz++ | lib/NativeCall.pm6:
11:52 dalek zavolaj/list-assignment: [CArray] guard against partial overwriting in list asignment
11:52 dalek zavolaj/list-assignment: review: https://github.com/jnthn/zavolaj/commit/1c3d64ec5f
11:56 dalek zavolaj/list-assignment: 9d8de5e | moritz++ | t/05-arrays.t:
11:56 dalek zavolaj/list-assignment: test for the bounds check in CArray.STORE
11:56 dalek zavolaj/list-assignment: review: https://github.com/jnthn/zavolaj/commit/9d8de5ef9d
11:56 moritz arnsholt: and with that I consider the branch mergable, if you don't have any objections
11:57 moritz pmichaud: I think R* should ship zavolaj commit 3228da6deef132df61500fb1382a99c14595786d. Later commits depend on newer NQP features, afaict
12:00 GlitchMr perl6: print +(0.1, 0.3 ... 1)
12:00 p6eval rakudo 5836fd, niecza v21-1-ga8aa70b: OUTPUT«(timeout)»
12:02 lizmat joined #perl6
12:17 REPLeffect joined #perl6
12:20 stuckdownawell joined #perl6
12:25 daxim http://axisofeval.blogspot.co​.at/search/label/thispltlife    # scroll down for Perl 6
12:26 odoacre joined #perl6
12:28 jnthn I blug: http://6guts.wordpress.com/2​012/08/28/a-rakudo-debugger/
12:28 imarcusthis joined #perl6
12:35 imarcusthis joined #perl6
12:37 FROGGS jnthn++
12:38 cjbot joined #perl6
12:38 lizmat indeed, jnthn++
12:39 dayangkun joined #perl6
12:39 FROGGS as the u.s. americans would say: "its just like wow"
12:39 colomon jnthn++ # need to play with that thing...
12:39 lizmat soon in a place near you with Rakudo * !
12:44 pmichaud moritz: (zavolaj commit)   okay, I guess I'll go ahead and put the commit-level stuff in place.
12:44 pmichaud I'm getting various failures when testing modules; should I be trying to figure out what's going on there?
12:44 pmichaud (i.e., running the modules' test suites)
12:45 pmichaud or is that something we should focus on for the next R* release?
12:46 tadzik pmichaud: any particular modules?
12:47 tadzik anything much different from http://tjs.azalayah.net/new.html ?
12:47 tadzik (which may be a bit outdated too, though :/)
12:48 pmichaud tadzik: checking
12:49 pmichaud tadzik: Bailador has failing tests
12:49 tadzik oh
12:50 pmichaud DBIish passes
12:50 tadzik I'll try to run it here now and see what happens there
12:52 FROGGS emmentaler... interesting
12:54 Pleiades` joined #perl6
12:55 Coleoid_aside joined #perl6
12:55 pmichaud https://gist.github.com/3497770   # failures in t/02-response-status.t
12:56 pmichaud I get lots of failures in perl6-lwp-simple about pir::load_bytecode missing a signature
12:57 tadzik we may want to s/cosimo/ronaldxs/ there
12:58 pmichaud anyway, I think this is something we'll want to address for next month's release :/
12:58 tadzik when do you plan to cut the release?
12:58 pmichaud well, I'm hoping to do it today or tomorrow.
12:58 pmichaud today preferred, but I'll wait until tomorrow if there's a strong reason.
12:58 pmichaud after tomorrow, I can't cut the release until next week.
12:59 tadzik LWP::Simple in ronaldxs' fork works fine and passes tests
12:59 pmichaud so I should switch to that one?
12:59 tadzik as for Bailador, I'll try taking a quick look at it soon; if not, I'll prefer it to not be in Star than to be there broken
12:59 tadzik I think so
12:59 pmichaud well, removing something that used to be there is kind of anti-social
13:00 tadzik in the worst case I'll fix it today on 18-ish
13:00 pmichaud I can wait that long.
13:00 tadzik ok cool
13:01 pmichaud although modules.perl6.org still lists cosimo for the LWP::Simple module :-/
13:01 tadzik yep
13:01 tadzik I think there's a pull request awaiting there
13:02 tadzik nope, there's none
13:02 tadzik seen UncleFester6
13:02 aloha UncleFester6 was last seen in #perl6 8 days 14 hours ago leaving the channel.
13:02 cosimo tadzik: I have updated my lwp::simple guys
13:03 cosimo pmichaud: ^^
13:03 pmichaud looking.
13:03 tadzik oh, indeed, it's merged
13:04 cosimo should be the latest and greatest
13:04 cosimo and I tested it with latest rakudo
13:06 cosimo basically all ronaldxs work is in, and it passes same test suite as before + more (chunked transfers \o/)
13:06 [Coke] msg diakopter: that'd be spiffy. right now I'm just retweeting everything that matches the various search criteria. on github at coke/cjbot
13:06 dalek nqp: ba96247 | (Elizabeth Mattijsen)++ | src/QAST/Compiler.nqp:
13:06 dalek nqp: pir::join now eradicated from live code: use nqp::join instead
13:06 dalek nqp: review: https://github.com/perl6/nqp/commit/ba962475ef
13:06 pmichaud cosimo: I think i'm using 79944c6 and getting the errors
13:07 pmichaud I just checked it out a few hours ago.
13:10 cosimo pmichaud: do you have a log of the errors?
13:11 pmichaud https://gist.github.com/3497841
13:11 c1sung joined #perl6
13:12 cosimo pmichaud: ah, I get it, that is MIME::Base64
13:12 [Coke] phenny: tell diakopter (spamchecking) that'd be spiffy. right now I'm just retweeting everything that matches the various search criteria. on github at coke/cjbot
13:12 phenny [Coke]: I'll pass that on when diakopter is around.
13:12 cosimo on which LWP::Simple depends
13:12 pmichaud yes... just got that far myself.
13:12 [Coke] pmichaud: I pushed the very little work so far on partcl-nqp. having less time for hacking than I thought this wee at the conference. ;)
13:12 cosimo pmichaud: I had just fixed it manually myself, now I remember
13:12 pmichaud [Coke]: okay, no problem; I've been pretty swamped with R* release and hackathon stuff anyway
13:13 pmichaud why did pir::load_bytecode stop working, ooc?
13:13 jnthn pmichaud: All pir::blah must have an explicit signature these days
13:14 [Coke] pmichaud: I didn't add in the NQPHLL stuff yet. I also want to switch over the remaining PIR to NQP. some of the PIR there is really old from when it was much harder to do that from nqp
13:15 tokuhiro_ joined #perl6
13:18 pmichaud [Coke]: noted
13:21 dalek star/build3: 8ef7e15 | pmichaud++ | / (3 files):
13:21 dalek star/build3: Remove out-of-date Perl6-MIME-Base64 (step 1 of 2).
13:21 dalek star/build3: review: https://github.com/rakudo/star/commit/8ef7e15671
13:22 fernandocorrea joined #perl6
13:22 dalek nqp: b6b527d | (Elizabeth Mattijsen)++ | src/QAST/ (2 files):
13:22 dalek nqp: Eradicated pir::die, replaced by nqp::die
13:22 dalek nqp: review: https://github.com/perl6/nqp/commit/b6b527d167
13:23 cognominal joined #perl6
13:25 dalek star/build3: 7cc1862 | pmichaud++ | modules/Perl6-MIME-Base64:
13:25 dalek star/build3: Remove modules/Perl6-MIME-Base64 (part 1.5 of 2).
13:25 dalek star/build3: review: https://github.com/rakudo/star/commit/7cc18620f4
13:26 dalek star/build3: b57fbc5 | pmichaud++ | .gitignore:
13:26 dalek star/build3: Some .gitignore updates.
13:26 dalek star/build3: review: https://github.com/rakudo/star/commit/b57fbc5125
13:27 tadzik bah, seems that HTTP::Easy is broken for similar reasons that LWP::Simple was
13:27 tadzik it dies on "Invalid operation on binary string" when I try to run some Bailador application
13:28 odoacre joined #perl6
13:28 tadzik seen supernovus
13:28 aloha supernovus was last seen in #perl6 19 days 10 hours ago saying "Anyway, enough for tonight. Hope someone finds the library useful. I need to expand the documentation, as currently you need to read the WWW::App documentation in addition to the WWW::App::Easy to figure out all of the different
13:28 aloha ..features.".
13:29 tadzik so Bailador is broken alright :(
13:29 tadzik the tests don't rely on the HTTP server though, so it's broken on at least 2 abstraction layers :)
13:29 daxim yesterday I asked <daxim> re: http://blogs.perl.org/users/perl_6_reports/2012/​08/perl6-summary-for-week-ending-2012-08-25.html , what's Math::Polynomial about?
13:29 daxim but warnocked
13:29 pmichaud daxim: is there a readme?  maybe find the author at modules.perl6.org and ask there.  (I don't know what it's about.)
13:30 dalek nqp: 904ecde | (Elizabeth Mattijsen)++ | src/HLL/Compiler.pm:
13:30 dalek nqp: Eradicated pir::can, replaced by nqp::can
13:30 dalek nqp: review: https://github.com/perl6/nqp/commit/904ecdeee9
13:30 skids joined #perl6
13:31 daxim yes, it exists and has that info; this answers my question
13:36 stuckdownawell left #perl6
13:37 zhutingting joined #perl6
13:38 FROGGS joined #perl6
13:40 odoacre_ joined #perl6
13:42 SHODAN joined #perl6
13:46 asogani joined #perl6
13:49 asogani left #perl6
13:52 plobsing joined #perl6
13:54 dalek star/build3: 9b37c6c | pmichaud++ | .gitmodules:
13:54 dalek star/build3: Update .gitmodules with new location of Perl6-MIME-Base64.
13:54 dalek star/build3: review: https://github.com/rakudo/star/commit/9b37c6ca74
13:55 [Coke] pmichaud: is "use NQPHLL;" only needed in the Compiler classes?
13:55 [Coke] (I'm actually really close here, I think.)
13:57 jnthn [Coke]: What do you mean by "compiler classes"?
13:57 jnthn [Coke]: It supplies HLL::Compiler and the other HLL:: things.
13:59 [Coke] jnthn: partcl-nqp has, e.g. Partcl::Grammar, Partcl::Compiler, Partcl::Actions - each is compiled into its own .pir file. which ones of these need "use NQPHLL;" to work.
13:59 stopbit joined #perl6
13:59 [Coke] all 3, it sounds, since they all extend something in HLL::
14:01 jnthn All 3.
14:02 arnsholt moritz: Thanks for the branch! I'll look over it soon-ish
14:02 GlitchMr Just wondering, why »+« is operator and >>+« isn't?
14:04 colomon conistency
14:05 GlitchMr Hmmm... I guess that if q[blah> would work I would complain too...
14:05 colomon exactly
14:07 ismaele joined #perl6
14:08 dalek star/build3: 306310f | pmichaud++ | .gitmodules:
14:08 dalek star/build3: Re-sync .gitmodules.
14:08 dalek star/build3: review: https://github.com/rakudo/star/commit/306310f911
14:08 ismaele I'm new on perl6
14:08 colomon welcome!
14:09 ismaele I want to generate a PIR file from a PERL6 script
14:09 ismaele I do: perl6 --target=PIR hello.pl6 > hello.pir
14:09 dalek star/build3: 33f95bb | pmichaud++ | / (2 files):
14:09 dalek star/build3: Add moritz/Perl6-MIME-Base64 repository.
14:09 dalek star/build3: review: https://github.com/rakudo/star/commit/33f95bb9ea
14:09 jnthn ismaele: That only works for modules so far, not for scripts.
14:09 ismaele but the pir file generated do not works as: parrot hello.pir
14:10 ismaele How can I corvert a perl6 script to pbc ?
14:12 jnthn ismaele: You have to be able to get it to PIR first, and that only works for modules at present, not for scripts. There's no way to do it (short of working out why it doesn't work and fixing it). There's an RT ticket for it.
14:12 geekosaur I was under the impression that was known broken at the moment, and there are higher priorities ... that
14:13 jnthn Right, there's more pressing things.
14:13 jnthn It'd be nice to have.
14:13 [Coke] https://gist.github.com/3498370 - I'm using this class in another .pm file. when I run that file, I get this error on the given line.
14:15 ismaele I have installed Rakudo/Parrot beacuse I think that was supported the converting for perl6 script to binary, this functionality is broker on Win platforms?
14:16 JimmyZ ismaele: what jnthn++ said :)
14:16 diakopter [Coke]: I don't have any good ideas on how to detect twitter spambots that happen to tweet about things relating to Perl 6
14:16 phenny diakopter: 13:12Z <[Coke]> tell diakopter (spamchecking) that'd be spiffy. right now I'm just retweeting everything that matches the various search criteria. on github at coke/cjbot
14:17 masak morning, #perl6
14:17 masak welcome, ismaele!
14:18 ismaele I hope that this will be fixed soon!!!
14:18 ismaele ;)
14:18 geekosaur contributions (and new contributors) welcome
14:18 GlitchMr perl6: ($*OUT ~~ :w).perl.say
14:18 p6eval rakudo f3d2b5, niecza v21-1-ga8aa70b: OUTPUT«Bool::False␤»
14:18 * geekosaur still not in position to contribute effectively, *grumble*
14:18 GlitchMr So, how can I check if filehandle is writeable?
14:19 GlitchMr Or readable?
14:19 * diakopter still not in position to contribute effectively, *grumble*
14:19 geekosaur althoguh if it compiles modules, it occurs to me a workaround is to rephrase your script as a module, compile it, then invoke it from a stub main script
14:19 flussence GlitchMr: write or read from it, catch the exception if it fails. Anything else is a race condition.
14:19 GlitchMr oh, ok
14:20 geekosaur mm?  once you have the handle, its r/w state is immutable
14:20 flussence that relies on the assumption the underlying filesystem r/w state is also immutable :)
14:27 cjbot joined #perl6
14:28 stealthii joined #perl6
14:28 kaare_ joined #perl6
14:29 [Coke] for that gist with the method-that-returns-a-new-instance-but-isn't-new- ... is that supported anymore?
14:29 araujo joined #perl6
14:29 stealthii left #perl6
14:30 jnthn [Coke]: any method can be a constructor
14:30 jnthn It just needs to call bless or something
14:34 ismaele doesn't works either with modules, as: perl6 --target=PIR hello.pm > hello.pir
14:35 ismaele or were you mean something else?
14:36 immortal joined #perl6
14:36 immortal joined #perl6
14:36 cjbot joined #perl6
14:37 flussence what happens when you run   perl6 --target=PIR -e ''   ?
14:38 tadzik ismaele: I'm quite sure it works well with modules
14:39 orafu joined #perl6
14:39 jnthn ismaele: That should work just fine, though you must load the module with a "use" statement.
14:40 * [Coke] looks for an example of how to use bless. Class.bless(Class.CREATE(), ?); ?
14:40 flussence using "*" for the first arg works IIRC
14:41 thou joined #perl6
14:41 flussence and then I think the rest is passed to BUILD()?
14:41 masak r: class A { has $.x; method new { self.bless(*, :x(42)) } }; say A.new.x
14:41 p6eval rakudo f3d2b5: OUTPUT«42␤»
14:41 ismaele @flussence: https://gist.github.com/3498602
14:42 [Coke] what if I don't have anything else to pass?
14:42 flussence ismaele: everything looks as it should there.
14:42 [Coke] (bless seems to require 2 args)
14:43 ismaele but doesn't work as: parrot test.pir
14:44 tadzik yes, you can't compile & run scripts
14:44 tadzik you can precompile modules and load them from perl 6 code
14:45 tadzik so perl6 --target=pir --output=Foo.pir Foo.pm; perl6 -e 'use Foo;'
14:45 tadzik that'll load Foo.pir, not Foo.pm
14:45 tadzik the speed gain is significant
14:45 [Coke] it's self.bless, not ClassName.bless?
14:46 tadzik [Coke]: it'll be the same thing, I think
14:46 tadzik when you call .new you call it on a type object
14:47 flussence [Coke]: here you go, example code - https://github.com/flussence/perl6-XM​MS2/blob/master/lib/XMMS2/Client.pm6
14:47 [Coke] https://gist.github.com/3498659 - any pointers on this error?
14:48 ismaele thank you
14:49 tadzik [Coke]: self.bless returns a new object, not modifies self
14:49 tadzik so you can just return its result
14:49 tadzik as for the parsefail, no idea
14:49 [Coke] ok. still doesn't compile.
14:49 cjbot @trochee tweeted '@arthaey ... Objects &amp; namespaces as bolted-on afterthought, 1- &amp; 2-char built-in fns, perl 6 (15 years of "almost ready"!)...'
14:50 [Coke] ah, there's a cjbot bug.
14:50 [Coke] ooh, is it a troll?
14:50 tadzik seems so
14:51 masak some people just don't appreciate the Perl 5 object model enough :)
14:51 masak or the versatility of a well-placed s/// or tr[][]
14:53 flussence I often wonder how these perl-bashers would survive in their own language if they had libpcre taken away :)
14:54 [Coke] ok. error is on this line:        self.bless(*, :outer($outerP), :depth($depthP));
14:54 masak I'm starting to find language-bashing almost provocatively boring.
14:54 pmichaud ...15 years?  really?
14:55 PerlJam [Coke]: Are you sure the error isn't actually before that line?
14:55 * pmichaud would like to tweet back something about opinions coming from people who can't do math.  :-)
14:55 [Coke] yes. ah. the problem is that nqp doesn't like bless(*, )
14:55 PerlJam pmichaud: if you start counting from Chip's Topaz project, it's maybe 15 years :)
14:55 cjbot @blasgordon tweeted 'RT @PerlWeekly: perl6.announce: ANNOUNCE: Niecza Perl 6 v21 by Stefan O'Rear http://t.co/v7Ap88zZ'
14:55 masak phenny: en et "honey, harvest"?
14:55 phenny masak: "mesi , saagi" (en to et, translate.google.com)
14:56 * [Coke] switches it to self.bless(self.CREATE(), ...) and it compiles.
14:56 [Coke] Can only use repr_get_attr_obj on a SixModelObject
14:56 [Coke] at least I'm rapidly cycling through errors here. ;)
14:57 fhelmberger joined #perl6
14:59 thou joined #perl6
15:05 * [Coke] pushes to partcl-nqp:nqp
15:06 [Coke] you can see the error I'm seeing if you run "nqp src/init.pm", which I mention mainly for pmichaud ;)
15:13 dalek nqp: d786460 | (Elizabeth Mattijsen)++ | docs/nqp-opcode.txt:
15:13 dalek nqp: Added missing nqp::push_s reference to opcode list
15:13 dalek nqp: review: https://github.com/perl6/nqp/commit/d786460c00
15:14 tadzik pmichaud: I'm not going to be able to fix Bailador today, and possibly not tomorrow either
15:14 tadzik so there's both Bailador and HTTP::Easy broken in Star
15:15 tadzik I think I'd sooner have them removed than broken
15:15 [Coke] are they in the previous star?
15:15 [Coke] star: use Bailador;
15:16 p6eval star 2012.07:  ( no output )
15:16 [Coke] star: use HTTP::Easy;
15:16 p6eval star 2012.07:  ( no output )
15:16 [Coke] I think we should hold the release if they're broken.
15:16 [Coke] unless I misunderstand how stable star is supposed to be .
15:16 masak +1
15:17 tadzik HTTP::Easy breakage looks like some Buf/Str mess. As for Bailador, the bug there is not obvious to me
15:17 tadzik I need to dedicate some time to it, and it's possible that my next tuits will be available on thursday evening
15:17 PacoAir joined #perl6
15:17 JimmyZ joined #perl6
15:18 tadzik or wednesday night
15:18 tadzik if someone feels like taking a look at it, that'd be awesome too :)
15:18 FROGGS well, I can give it a try
15:18 tadzik awesome :) ++FROGGS
15:19 FROGGS just pull latest star repo and do [...] make test
15:19 tadzik its tests do not depend on HTTP server, luckily
15:19 FROGGS ?
15:19 tadzik just grab the latest rakudo, I think
15:19 tadzik then panda install Bailador will fail
15:19 FROGGS k
15:19 tadzik but all the dependencies should go in
15:20 tadzik the problem is that for some reason the dispatcher doesn't find the routes it's looking for
15:20 tadzik but it has them there, 01-route-existence is passing
15:20 FROGGS k
15:21 tadzik I don't remember it working after toqast merge, so it may be that something regex-related got screwed
15:21 tadzik which will indeed break everything, because internally every route gets compiled to a regex
15:21 tadzik so my guess is that something inside Bailador::App::find_route or near is borked
15:22 pmichaud realize that "hold the release" means we might not have a release until 2012.09.01
15:22 tadzik but again, I didn't have time to look at it too carefully
15:22 tadzik okay, so in the worst case I'll sacrifice a few hours of sleeps today
15:23 pmichaud there's a reasonable chance I would be able to get a release done on 2012.08.31.... but there's also a possibility that I won't.
15:23 * tadzik decomutees, bbat ~22-23
15:24 kresike bye all
15:24 pmichaud I'm open for consensus opinion on this one:  (1) release tomorrow with buggy Bailador, (2) release tomorrow without Bailador, (3) release Friday no matter what, (4) hold release until Bailador is ready.
15:25 pmichaud where option #3 might end up not being possible but I won't know until Friday.
15:25 pmichaud fwiw, all other modules pass their tests now... Bailador is the only failing one.
15:26 pmichaud I'm testing a tarball (created with new build system) now.
15:26 wamba joined #perl6
15:27 [Coke] pmichaud: http::easy is ok too?
15:28 pmichaud checking.
15:28 masak pmichaud: does releasing with a buggy Bailador break any promises that we made wrt R* stability?
15:28 pmichaud perhaps I missed that
15:28 pmichaud http::easy doesn't have a test suite.
15:28 pmichaud so I can't really know if it works or not.
15:29 pmichaud no-test-suite makes me kinda want to remove it from R* until it gets one.  :-/
15:29 [Coke] ugh. we should have a rule, don't include anything without a test suite. I'd be ok dropping http:easy from the distro with a note to that effect. ;)
15:29 [Coke] pmichaud++
15:29 pmichaud masak: I don't know that removing Bailador breaks any promises in a big way, or how long it's been included in R*.
15:29 pmichaud checking.
15:30 pmichaud looks like 2012.04
15:34 Exodist joined #perl6
15:35 pmichaud actually, come to think of it, a release today isn't likely because I still have to integrate rakudo-debugger into the build :-/
15:35 pmichaud so it's either tomorrow, friday, or after that.
16:16 masak 's all good. pmichaud++
16:19 dalek nqp/toqast: 0450eaa | jonathan++ | src/QAST/PIRT.nqp:
16:19 dalek nqp/toqast: Switch a for loop for a while loop for a bit (need to debug why this is needed).
16:19 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/0450eaa706
16:19 dalek nqp/toqast: a96116e | jonathan++ | src/QAST/Operations.nqp:
16:19 dalek nqp/toqast: Some tweaks to for loop code-gen (though doesn't fix the issue).
16:19 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/a96116e3b9
16:19 dalek nqp/toqast: 8c23a0a | jonathan++ | src/QAST/Compiler.nqp:
16:19 dalek nqp/toqast: A couple of minor compiler tweaks.
16:19 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/8c23a0a23a
16:19 dalek nqp/toqast: f786fd4 | jonathan++ | src/QAST/Compiler.nqp:
16:19 dalek nqp/toqast: Fix a register allocation overlap bug.
16:19 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/f786fd466c
16:19 dalek nqp/toqast: a9e13ea | jonathan++ | src/QRegex/Cursor.nqp:
16:19 dalek nqp/toqast: Tweak CAPHASH.
16:19 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/a9e13ea83c
16:22 cjbot joined #perl6
16:24 leont joined #perl6
16:24 flussence .oO( we could include Bailador as a demo for rakudo-debugger )
16:28 uvtc joined #perl6
16:29 cjbot joined #perl6
16:30 uvtc I changed the perl6/reports such that each file should contain news from the week prior. Thought I'd mention it here in case anyone had any automation running regarding those reports.
16:30 pmichaud uvtc: any particular reason for the change, ooc?
16:31 pmichaud normally I think "Week of August 25" instead of "Week ending August 31".
16:31 uvtc pmichaud: Well, I figured they're *reports*, so they're reporting on what's happened in the previous week.
16:31 uvtc Also, http://blogs.perl.org/users/perl_6_reports/2012/​08/perl6-summary-for-week-ending-2012-08-25.html had "week ending" in the title, and I thought that made sense.
16:32 pmichaud the files should definitely match the blog post titles; I agree fully with that.
16:33 uvtc I thought "for week ending" was more common than "for the week starting with".
16:33 pmichaud works for me then.
16:35 PerlJam uvtc: you're responsible for the reports?
16:35 * [Coke] wonders if he can sneak 5m of nqp help.
16:35 pmichaud raiph did the reports, I believe.
16:35 uvtc No. I just poke my head in once in a while.
16:35 PerlJam oh
16:35 PerlJam Well, uvtc++ anyway  then  :)
16:35 PerlJam and raiph++ for sure  :)
16:36 pmichaud [Coke]: sure, I've got 15 mins
16:39 * pmichaud looks for a git repository to clone
16:39 [Coke] pmichaud: whee.
16:40 [Coke] sorry, on phone with wife, who I'm away from for several days over my anniversary, had to chat! ;)
16:40 pmichaud found it
16:40 [Coke] so, if you clone partcl-nqp, nqp branch, build, and run "nqp src/init.pm", that's my current failure.
16:41 [Coke] I'm going to switch over src/Partcl.pir to src/Partcl.pm, but this is the current blocker.
16:41 [Coke] you had actually got a great start on this a few months ago.
16:44 pmichaud what does the "build" step require?
16:44 [Coke] perl Configure.pl; make
16:44 [Coke] needs nqp in your path something.
16:44 [Coke] *somewhere.
16:44 pmichaud yeah, okay.
16:44 [Coke] (there's no --gen-parrot, I don't think.)
16:46 [Coke] oh! there is a --gen-parrot, but I doubt it's been updated to build nqp instead of just parrot
16:48 pmichaud okay, I can do nqp src/init.pm and I get the failure... but I'm not sure why that failure is important/interesting.
16:49 pmichaud looking.
16:50 [Coke] init.pm is run as part of the startup. so I get that failure on startup.
16:50 pmichaud hmmm
16:50 pmichaud I'm getting a different failure when I try to run partcl
16:51 [Coke] partcl is still using all the pir. I wasn't expecting that to work yet.
16:51 [Coke] perhaps I'm putting the cart before the horse though.
16:52 pmichaud pir::load_bytecode('P6object.pir');
16:52 pmichaud not sure what's going to happen there;  NQP doesn't necessarily like dealing with P6object.
16:52 jnthn P6object?
16:52 [Coke] leftover from the old version, probably.
16:52 jnthn oh my :)
16:52 * jnthn forgot about that :)
16:53 [Coke] I seem to get a lot of "missing or wrong version" of when recompiling individual .pm to .pir
16:53 uvtc left #perl6
16:53 pmichaud they all have to be compiled in dependency order
16:54 pmichaud i.e., if A uses B, and you recompile B, you also have to recompile A
16:54 leont left #perl6
16:55 [Coke] ah. so, bad makefile.
16:56 pmichaud all of the P6object related stuff in init.pm worries me more than a bit.
16:56 pmichaud I'm not sure how well nqp will be able to cope with it.  In some sense, it should be able to cope okay, because it was able to do PAST handling.
16:56 pmichaud (and PAST is all P6object based)
16:57 jnthn It'll sorta-ish cope
16:57 pmichaud we're being called to dinner here.  :-/
16:57 jnthn If you re-write your .WHAT to ."WHAT" for example
16:57 [Coke] ok, I'm being summoned back to the conference. no worries.
16:58 [Coke] thanks for poking, we'll catch up later.
16:58 pmichaud afk, dinner
17:00 Khisanth joined #perl6
17:00 FROGGS how do I get panda? I thought its shipped with rakudo
17:02 erkan joined #perl6
17:02 erkan joined #perl6
17:02 sorear good * #perl6
17:03 sorear FROGGS: it ships with rakudo _star_
17:03 colomon \o
17:04 sorear FROGGS: so either ditch rakudo and get Star, or https://github.com/tadzik/panda
17:04 sorear star = rakudo + everything you're likely to use
17:05 sorear the perl6 ecosystem is small enough now that we can ship the whole thing as one tarball
17:08 fhelmberger joined #perl6
17:15 cjbot joined #perl6
17:17 telex joined #perl6
17:56 wamba joined #perl6
17:59 dalek Perlito: 6d1b90e | (Flavio S. Glock)++ | / (2 files):
17:59 dalek Perlito: Perlito5 - parser: add special-variable globs
17:59 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/6d1b90e0a0
18:00 DarthGandalf joined #perl6
18:02 sirrobert joined #perl6
18:08 GlitchMr https://github.com/perl6/doc/issues/8
18:08 GlitchMr http://dl.dropbox.com/u/639​13412/stringyiscolorful.png
18:09 GlitchMr I don't know why, but I don't like those colors
18:09 masak which colors?
18:09 GlitchMr Those in issue #8
18:09 GlitchMr Of Perl6 doc
18:09 GlitchMr <pre> block
18:09 wamba left #perl6
18:09 wamba joined #perl6
18:10 GlitchMr Those seem.... blue?
18:10 moritz better than what we have know, which is no design at all
18:10 masak hm. on my screen, the bright grey against the #fff white creates a bit of glare. might this be what you are experiencing?
18:10 masak moritz: agree.
18:10 GlitchMr Hmmm, yeah
18:10 GlitchMr I would like to have syntax highlighting in Perl 6 doc.
18:10 wamba left #perl6
18:10 masak I'd make the background of the page be something like what that bright grey is. and the bright grey greyer.
18:11 GlitchMr That probably would involve JavaScript, but well...
18:11 uvtc joined #perl6
18:11 wamba joined #perl6
18:11 masak GlitchMr: not necessarily. processing at generation-time is entirely doable.
18:11 uvtc I just picked those colors out of .... out of the blue.
18:11 moritz :-)
18:11 uvtc They looked ok on my lcd flatscreen.
18:11 moritz uvtc++
18:11 GlitchMr It's possibily my LED screen...
18:12 wamba left #perl6
18:12 GlitchMr Most people use LCD screens anyways
18:12 uvtc I was going to create a feature-request there for blocks to eventually get syntax highlighting ... though maybe that's still a ways off yet.
18:13 GlitchMr Well, I would like to see syntax highlighting - but I want it to support Perl 6 grammars ;)
18:13 moritz sombody could investigate porting Text::VimColor to p6
18:14 GlitchMr And written either in Perl 6 or JavaScript
18:14 moritz fwiw I'm firmly against substantial functionality in client-side JS
18:14 GlitchMr Hmmm, I guess it makes sense
18:15 moritz oh, and I don't want every code block to be highlighted, just those with actual Perl 6 code
18:15 GlitchMr That too
18:15 GlitchMr Do we have code blocks without Perl 6 code?
18:15 moritz it's a valid long-term TODO
18:15 GlitchMr Oh, I see
18:15 moritz GlitchMr: sure, with output for example
18:15 GlitchMr http://doc.perl6.org/type/Str
18:15 GlitchMr %   a literal percent sign
18:15 GlitchMr But this shouldn't use code block, I think
18:16 GlitchMr And as far I can see, usually output is in comments
18:16 sirrobert hi all...  I have a script that fails depending on the order of use statements.  The libs each just define a simple class.  Any ideas?
18:16 sirrobert it's kind of a blocker for me right now...
18:16 moritz sirrobert: are any of those dependencies precompiled?
18:16 sirrobert I'm doing a "make clean && ufo && make test" each time
18:16 moritz sirrobert: and are you precompiling the code in question?
18:17 moritz ok
18:17 sirrobert (to try to eliminate that as a problem)
18:17 moritz sirrobert: just for testing, do it without precompilation once
18:17 GlitchMr Actually, I may have fun making syntax highlighter in Perl 6
18:17 sirrobert ok
18:17 sirrobert moritz: one sec
18:17 GlitchMr Text::VimColor?
18:17 moritz just perl6 -Ilib lib/Failing/Module.pm
18:19 uvtc Does Perl 6 Pod supply any way to mark or annotate a code block ? (That is, so you could mark it "highlight" or "don't-highlight".)
18:19 moritz yes, there are ways
18:19 sirrobert moritz: so, that module loads fine either precompiled or not.  It fails when I run my tests.
18:19 GlitchMr I hope that vim is installed on feather ;)
18:20 moritz sirrobert: what if you run your tests without precompilation?
18:20 sirrobert moritz: checking if the tests fail without precompiling...
18:20 GlitchMr (don't tell me now I've to install vim)
18:21 sirrobert moritz: successful when I don't recompile
18:21 dalek doc: b041329 | moritz++ | lib/Str.pod:
18:21 dalek doc: [Str] mark tables as tables
18:21 dalek doc: review: https://github.com/perl6/doc/commit/b0413295b1
18:21 sirrobert moritz:  does that mean it's a Parrot issue or ?
18:21 moritz sirrobert: no, most likely a rakudo bug
18:21 sirrobert (the issue is that it can't find some symbols, depending on the use order)
18:21 dalek Perlito: 5ec800c | (Flavio S. Glock)++ | / (3 files):
18:21 dalek Perlito: Perlito5 - add encoding.pm placeholder
18:21 dalek Perlito: review: https://github.com/fglock/​Perlito/commit/5ec800cec8
18:21 sirrobert ok, what's the best way to report it without sending all my code? =)
18:22 sirrobert I can try to pare back the code to the point of breaking ...
18:22 moritz it might already be reported, let me dig something up for you
18:22 sirrobert ok, thanks
18:22 sirrobert right now the work-around is just don't precompile?
18:22 sirrobert (and if so, can I modify ufo to take that into account?)
18:23 moritz if you don't want to precompile, why would you use ufo at all?
18:23 sirrobert touche =)
18:24 * masak .oO( is "touche" the new spelling of "d'oh!"? ) :P
18:28 immortal joined #perl6
18:28 immortal joined #perl6
18:35 FROGGS hmmm, in rakudo star the following test failed:
18:35 FROGGS t/spec/S02-types/version.t ................................ Failed 6/35 subtests
18:36 FROGGS is that normal?
18:38 [Coke] nqp: say(nqp:p6box_n(3));
18:38 p6eval nqp: OUTPUT«Method 'value' not found for invocant of class 'PAST;Want'␤current instr.: 'nqp;NQP;Actions;colonpair_str' pc 111964 (src/stage2/gen/NQP.pir:42249) (src/stage2/gen/NQP.pm:1455)␤»
18:38 [Coke] nqp: say(nqp::p6box_n(3));
18:38 p6eval nqp: OUTPUT«Unrecognized nqp:: opcode 'nqp::p6box_n' at line 2, near ");"␤current instr.: 'nqp;HLL;Grammar;panic' pc 21408 (src/stage2/gen/NQPHLL.pir:8190) (src/stage2/gen/NQPHLL.pm:326)␤»
18:39 [Coke] how do you box something in nqp sans rakudo?
18:42 GlitchMr I'm going to make Text::VimColor for Perl 6, ok?
18:43 masak you don't need our permission to make modules ;)
18:44 masak er, I mean "ok! do it!" :P
18:45 pmichaud back from dinner
18:45 pmichaud good evening, #perl6
18:46 colomon o/
18:46 lizmat joined #perl6
18:47 moritz sirrobert: https://rt.perl.org/rt3/Tic​ket/Display.html?id=112626
18:50 GlitchMr What is "!UNIT_MARKER()"?
18:51 [Coke] if I want to use bless with multiple named arguments, what's the syntax? self.bless(self.CREATE(), :one($one), two($two)); that works, but the missing colon seems wrong. (but if I add the colon, it fails to compile.
18:51 moritz huh? should work with the colon
18:51 [Coke] s/works/compiles/
18:52 moritz also you can abbreviate :one($one) to :$one
18:52 moritz r: class A { has $.a; has $b; method new( self.bless(*, :a(1), :b(2) } }; say A.new.b
18:52 p6eval rakudo f3d2b5: OUTPUT«===SORRY!===␤Invalid typename in parameter declaration at line 2, near ".bless(*, "␤»
18:52 moritz r: class A { has $.a; has $b; method new() { self.bless(*, :a(1), :b(2) } }; say A.new.b
18:52 p6eval rakudo f3d2b5: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 2, near "} }; say A"␤»
18:52 moritz r: class A { has $.a; has $b; method new() { self.bless(*, :a(1), :b(2)) } }; say A.new.b
18:52 p6eval rakudo f3d2b5: OUTPUT«No such method 'b' for invocant of type 'A'␤  in block  at /tmp/wq2rgtFU5k:1␤␤»
18:53 sirrobert moritz: thanks
18:53 moritz r: class A { has $.a; has $.b; method new() { self.bless(*, :a(1), :b(2)) } }; say A.new.b
18:53 p6eval rakudo f3d2b5: OUTPUT«2␤»
18:53 [Coke] moritz: this is nqp, not rakudo.
18:54 [Coke] nqp: class A { has $.a; has $.b; method new() { self.bless(self.CREATE(), :a(1), :b(2)) } } ; say A.new.b
18:54 p6eval nqp: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 2, near "has $.a; h"␤current instr.: 'nqp;HLL;Grammar;panic' pc 21408 (src/stage2/gen/NQPHLL.pir:8190) (src/stage2/gen/NQPHLL.pm:326)␤»
18:55 moritz nqp needs () around the argument list of say
18:55 [Coke] nqp: class A { has $.a; has $.b; method new() { self.bless(self.CREATE(), :a(1), :b(2)) } } ; say(A.new.b);
18:55 p6eval nqp: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 2, near "has $.a; h"␤current instr.: 'nqp;HLL;Grammar;panic' pc 21408 (src/stage2/gen/NQPHLL.pir:8190) (src/stage2/gen/NQPHLL.pm:326)␤»
18:56 sirrobert moritz: my error is a little different, but it could be the same bug
18:56 moritz oh, NQP might not have apubblic attributes
18:56 moritz *public
18:56 [Coke] nqp: class A { has $!a; has $!b; method new() { self.bless(self.CREATE(), :a(1), :b(2)) } } ; say(A.new.b);
18:56 p6eval nqp: OUTPUT«too many positional arguments: 2 passed, 1 expected␤current instr.: 'bless' pc 4878 (src/stage2/gen/NQPCORE.setting.pir:2204) (src/stage2/NQPCORE.setting:94)␤»
18:56 [Coke] there you go, there's my error. ;)
18:56 [Coke] moritz++;
18:57 moritz nqp needs () around the argument list of saynqp: class A { has $!a; has $!b; method new() {  self.bless(:a(1), :b(2)) }; say(A.new.b)
18:57 moritz nqp: class A { has $!a; has $!b; method new() {  self.bless(:a(1), :b(2)) }; say(A.new.b)
18:57 p6eval nqp: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 2, near ""␤current instr.: 'nqp;HLL;Grammar;panic' pc 21408 (src/stage2/gen/NQPHLL.pir:8190) (src/stage2/gen/NQPHLL.pm:326)␤»
18:57 sirrobert are there any ORMs under development?
18:58 moritz nqp: class A { has $!a; has $!b; method new() { self.bless( :a(1), :b(2)) } } ; say(A.new.b);
18:58 p6eval nqp: OUTPUT«Method 'b' not found for invocant of class 'A'␤current instr.: '_block1000' pc 58 ((file unknown):45) (/tmp/WOf6ZnI29U:1)␤»
18:58 moritz that's better
18:58 moritz nqp: class A { has $!a; has $!b; method new() { self.bless( :a(1), :b(2)) }; method b() { $!b } } ; say(A.new.b);
18:58 p6eval nqp: OUTPUT«2␤»
18:58 GlitchMr Just wondering, can I have something like "share" directory?
18:58 moritz [Coke]: there you go. NQP's bless doesn't expect the candidate
18:58 moritz sirrobert: not that I'm aware of
18:58 [Coke] moritz: O_o
18:58 [Coke] moritz++
18:58 sirrobert moritz: ok, thanks
18:59 GlitchMr Text::VimColor has "share" directory which contains vim script to help doing stuff
19:00 moritz GlitchMr: I don't think we have support for that yet
19:00 moritz GlitchMr: but it's a good opportunity to carve the way for such stuff
19:02 [Coke] nqp: class A { has $!a; has $!b; method newthing() { self.bless(  :a(1), :b(2)) }; method b() { $!b } }; say (A.newthing.B);
19:02 p6eval nqp: OUTPUT«Confused at line 2, near "say (A.new"␤current instr.: 'nqp;HLL;Grammar;panic' pc 21408 (src/stage2/gen/NQPHLL.pir:8190) (src/stage2/gen/NQPHLL.pm:326)␤»
19:02 [Coke] nqp: class A { has $!a; has $!b; method newthing() { self.bless(  :a(1), :b(2)) }; method b() { $!b } }; say(A.newthing.B);
19:02 p6eval nqp: OUTPUT«Method 'B' not found for invocant of class 'A'␤current instr.: '_block1000' pc 58 ((file unknown):152248953) (/tmp/d7tN1ZU7Ic:1)␤»
19:02 [Coke] nqp: class A { has $!a; has $!b; method newthing() { self.bless(  :a(1), :b(2)) }; method b() { $!b } }; say(A.newthing.b);
19:02 p6eval nqp: OUTPUT«2␤»
19:02 [Coke] nqp: class A { has $!a; has $!b; method newthing() { self.bless(  :a(1), :b(2)) }; method b() { $!b } method a() {$!a} }; say(A.newthing.b);
19:02 p6eval nqp: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 2, near "method b()"␤current instr.: 'nqp;HLL;Grammar;panic' pc 21408 (src/stage2/gen/NQPHLL.pir:8190) (src/stage2/gen/NQPHLL.pm:326)␤»
19:03 [Coke] nqp: class A { has $!a; has $!b; method newthing() { self.bless(  :a(1), :b(2)) }; method b() { $!b } ; method a() {$!a} }; say(A.newthing.b);
19:03 p6eval nqp: OUTPUT«2␤»
19:04 cosimo joined #perl6
19:04 masak joined #perl6
19:05 [Coke] moritz: http://feather.perl6.nl/~coke/TclLexPad.pm
19:06 [Coke] that eventually dies with: too many named arguments: 2 passed, 0 used
19:06 [Coke] (when calling new)
19:06 [Coke] I don't know why that new is there; commenting it out to get the default is no help.
19:07 [Coke] any suggestions appreciated.
19:07 moritz [Coke]: how do you call .new?
19:08 dalek star/build3: ac2620b | pmichaud++ | modules/MODULES.txt:
19:08 dalek star/build3: Correct error in module name.
19:08 dalek star/build3: review: https://github.com/rakudo/star/commit/ac2620b1f3
19:08 dalek star/build3: ecdf8b2 | pmichaud++ | tools/star/Makefile:
19:08 dalek star/build3: Improve building of MANIFEST.
19:08 dalek star/build3: review: https://github.com/rakudo/star/commit/ecdf8b2dd7
19:08 dalek star/build3: ce08ad2 | pmichaud++ | tools/star/Makefile:
19:08 dalek star/build3: Add "make release" for star.
19:08 dalek star/build3: review: https://github.com/rakudo/star/commit/ce08ad29e3
19:08 dalek star/build3: b3bd9d6 | pmichaud++ | / (2 files):
19:08 dalek star/build3: Move rakudo-debugger into modules (I hope).
19:08 dalek star/build3: review: https://github.com/rakudo/star/commit/b3bd9d6343
19:09 kaare__ joined #perl6
19:09 dalek star/build3: 8ba25b1 | pmichaud++ | modules/MODULES.txt:
19:09 dalek star/build3: Update MODULES.txt with rakudo-debugger.
19:09 dalek star/build3: review: https://github.com/rakudo/star/commit/8ba25b1ec8
19:09 [Coke] looks like it's coming from the bless.
19:10 moritz nqp: class A { method b() { } }; A.b(:foo)
19:10 p6eval nqp: OUTPUT«too many named arguments: 1 passed, 0 used␤current instr.: 'nqp;A;b' pc 318 ((file unknown):211) (/tmp/W3rrXalUDA:1)␤»
19:10 moritz [Coke]: try to give method BUILD a signature of *%a
19:10 pmichaud nqp: class A { method b() { } };  A.b();
19:10 p6eval nqp:  ( no output )
19:11 pmichaud nqp: class A { method b(*%other) { } };  A.b(:foo);
19:11 p6eval nqp:  ( no output )
19:11 pmichaud I don't know if nqp defaults the slurpy hash.
19:11 fibo joined #perl6
19:11 pmichaud (there are good performance reasons not to do so.)
19:13 [Coke] moritz: ... that did something, as I'm now getting a completely different error. ;)
19:13 [Coke] (in a different file, even.)
19:13 Psyche^ joined #perl6
19:13 moritz "and now for something completely different ...!"
19:15 jnthn pmichaud: it doesn't
19:15 pmichaud I should add that to my list of differences between p6 and nqp
19:15 [Coke] pmichaud: is "bless's first arg" on the list?
19:18 GlitchMr perl6: print BEGIN { my $BEGIN = BEGIN { BEGIN {2} + BEGIN {2} }}
19:18 p6eval rakudo f3d2b5: OUTPUT«4»
19:18 p6eval ..niecza v21-1-ga8aa70b: OUTPUT«Potential difficulties:â�¤  $BEGIN is declared but not used at /tmp/4gXNb8W1BZ line 1:â�¤------> [32mprint BEGIN { my [33mâ��[31m$BEGIN = BEGIN { BEGIN {2} + BEGIN {2} }[0mâ�¤â�¤4»
19:19 pmichaud [Coke]: I'll add it, but I don't know why NQP's bless doesn't have a candidate arg.  :-P
19:19 [Coke] ok, moritz, you've unblocked me, now I'm getting issues with classes in nqp not defining various vtables. (and when I add them, I am told the underlying pmcs don't implement them. bother.)
19:19 [Coke] pmichaud: ... performance? ;)
19:20 moritz [Coke]: \o/
19:21 [Coke] classes /defined/ in nqp, not nqp classes.
19:21 * [Coke] wanders to the next talk
19:21 dalek nqp/toqast: dac7c49 | jonathan++ | src/QAST/Operations.nqp:
19:21 dalek nqp/toqast: Fix for compilation bug.
19:21 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/dac7c49399
19:21 dalek nqp/toqast: 102fc0f | jonathan++ | src/QAST/PIRT.nqp:
19:21 dalek nqp/toqast: Undo while hack now that for is fixed.
19:21 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/102fc0f89a
19:21 dalek nqp/toqast: f4baa7c | jonathan++ | src/how/NQPClassHOW.pm:
19:21 dalek nqp/toqast: Fix mixin handling.
19:21 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/f4baa7c1ae
19:21 dalek nqp/toqast: 0742204 | jonathan++ | src/ (2 files):
19:21 dalek nqp/toqast: Fix the segfault at termination.
19:21 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/07422043c0
19:21 dalek nqp/toqast: 8689070 | jonathan++ | / (5 files):
19:21 dalek nqp/toqast: Switch over to using NQP on QAST for the standard NQP build (just in the toqast branch for now). Just five failing tests to triage, plus the P5Regex build.
19:21 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/8689070110
19:22 fernandocorrea_ joined #perl6
19:25 dalek doc: 38b1209 | moritz++ | html (2 files):
19:25 dalek doc: add some basic CSS. Closes #8
19:25 dalek doc: review: https://github.com/perl6/doc/commit/38b12096de
19:33 birdwindupbird joined #perl6
19:38 stopbit joined #perl6
19:40 [Coke] nqp: class A { method joe is parrot_vtable_handler('set_pmc_keyed') { } }
19:40 p6eval nqp: OUTPUT«Routine declaration requires a signature at line 2, near "is parrot_"␤current instr.: 'nqp;HLL;Grammar;panic' pc 21408 (src/stage2/gen/NQPHLL.pir:8190) (src/stage2/gen/NQPHLL.pm:326)␤»
19:40 [Coke] nqp: class A { method joe($str) is parrot_vtable_handler('set_pmc_keyed') { } }
19:40 p6eval nqp: OUTPUT«Null attribute map for P6opaque in class 'A'␤current instr.: 'nqp;NQPClassHOW;publish_par​rot_vtablee_handler_mapping' pc 17654 (src/stage2/gen/nqp-mo.pir:8410) (src/stage2/gen/nqp-mo.pm:1012)␤»
19:41 stopbit joined #perl6
19:41 jnthn [Coke]: is parrot_vtable
19:42 jnthn [Coke]: See src/core/NQPMu for examples
19:42 [Coke] jnthn++
19:47 cjbot joined #perl6
19:48 crab2313 joined #perl6
19:56 [Coke] Serialization Error: could not locate static code ref for closure 'after'
19:56 [Coke] that's new. ;)
19:57 masak [Coke]: what code triggers that error?
19:57 [Coke] rebuilding. one moment.
19:58 [Coke] current instr.: 'nqp;HLL;World;serialize_and_​produce_deserialization_past' pc 46343 (src/stage2/gen/NQPHLL.pir:20355) (src/stage2/gen/NQPHLL.pm:2289)
19:58 uvtc left #perl6
19:58 sivoais joined #perl6
19:59 Psyche^ joined #perl6
20:01 eiro hello all
20:04 [Coke] masak: I pushed the latest code to partcl-nqp that triggers it.
20:06 [Coke] (nqp branch)
20:11 masak [Coke]: do you think golfing the code would be possible or useful?
20:12 moritz maybe just try a $*W.add_object(&after)
20:12 moritz or so
20:15 dalek nqp/toqast: dae24c6 | jonathan++ | src/QAST/CompUnit.nqp:
20:15 dalek nqp/toqast: Avoid null PMC access in BEGIN-time compilation.
20:15 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/dae24c69ea
20:15 dalek nqp/toqast: 72485de | jonathan++ | / (6 files):
20:15 dalek nqp/toqast: Rip out the NQPQ directory and build, now we've switched over to it.
20:15 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/72485def08
20:15 dalek nqp/toqast: 71b2e9a | jonathan++ | src/NQP/Actions.pm:
20:15 dalek nqp/toqast: Fix sub installation/call to always have & before the sub name.
20:15 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/71b2e9a0fc
20:15 dalek nqp/toqast: 5745da8 | jonathan++ | t/nqp/11-sub.t:
20:15 dalek nqp/toqast: Update sub tests.
20:15 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/5745da858d
20:16 [Coke] moritz: I don't know what you mean.
20:17 thou joined #perl6
20:17 birdwindupbird joined #perl6
20:18 cjbot joined #perl6
20:18 cognominal joined #perl6
20:24 masak [Coke]: that's the way to register objects with the serialization context.
20:24 masak [Coke]: the error seems to indicate that's what's missing.
20:26 jnthn But you tend to have to opt in ot having one of those.
20:26 [Coke] I don't know what "after" is in this context, except perhaps the first tcl command.
20:30 sirrobert is there something like Data::Dumper for pretty-printing p6?
20:31 [Coke] though it looks like nqp itself has an "after", though.
20:31 [Coke] r: my @a=1,2,3;say @a.perl;
20:31 p6eval rakudo f3d2b5: OUTPUT«Array.new(1, 2, 3)␤»
20:32 jnthn sirrobert: .perl
20:32 jnthn r: [1, a => 2].perl.say
20:32 sirrobert hoping for a slightly prettier print ;)
20:32 p6eval rakudo f3d2b5: OUTPUT«[1, "a" => 2]␤»
20:33 sirrobert nested hashes, indenting, what not
20:33 jnthn ah
20:33 sirrobert more for deep, structured data.  I'll whip up a module and stick it in Masquerade
20:33 jnthn yeah, not sure I've seen a module for that
20:34 sorear [Coke]: are your tcl commands NCI subs?
20:35 cognominal joined #perl6
20:35 [Coke] sorear: no. nqp all the way down. (except where it's pir)
20:36 [Coke] sorear: e.g. https://github.com/partcl/partcl-nqp/bl​ob/master/src/Partcl/commands/after.pm
20:37 [Coke] so, how can I track down what that error message is telling me?
20:38 jnthn [Coke]: Does it go away if you remove the "our"?
20:38 [Coke] http://feather.perl6.nl/~coke/err.txt
20:39 [Coke] jnthn: hah!
20:40 [Coke] yes, then it complains about "append", which is the next one.
20:40 jnthn ok...
20:40 * [Coke] wonders what the our was doing in parrot-nqp that it is hurting now.
20:41 * jnthn suspects it shoulda worked with the "our" anyway
20:42 * [Coke] will be happy to compile again at this point. :(
20:43 [Coke] jnthn: removed all the ours. now I get: Serialization Error: could not locate static code ref for closure '_block1005'
20:43 * [Coke] cries a bit.
20:44 [Coke] block1005 appears in 16 pir files.
20:44 smash joined #perl6
20:45 breakEM joined #perl6
20:45 dalek nqp/toqast: fc90164 | jonathan++ | src/QAST/Compiler.nqp:
20:45 dalek nqp/toqast: Fix subrule compilation bug, which nails the last t/nqp regression.
20:45 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/fc901642ed
20:45 * sorear starts writing a reply to p6u Marc Chantreux
20:45 sirrobert r: class A { my $foo = 'bar'; method foo () {$foo); } say A.new.foo;
20:45 p6eval rakudo f3d2b5: OUTPUT«===SORRY!===␤Unable to parse blockoid, couldn't find final '}' at line 2, near "); } say A"␤»
20:45 sirrobert r: class A { my $foo = 'bar'; method foo () {$foo}; } say A.new.foo;
20:45 p6eval rakudo f3d2b5: OUTPUT«===SORRY!===␤Confused␤at /tmp/CRGsSs1TJC:1␤»
20:45 sorear I am _not_ going to reply to his Parrot question because I'm not even an unbiased observer
20:46 moritz "on top of rakudo"
20:46 moritz that's easy to answer: no, unless you count JSON as a language
20:46 sorear I suspect that was a typo, considering the subject line
20:46 moritz mebby
20:47 sorear rakudo doesn't (currently) sell itself as a multilanguage platform, parrot does
20:47 moritz and I guess NQP will, eventually
20:47 pmichaud should I answer?
20:47 pmichaud or I can wait for sorear++'s answer :)
20:48 * moritz also wants to write one
20:48 sorear More answers is good, though it might be good to space them out in time to avoid overlapping content
20:48 pmichaud I'll let you two write responses then, and I'll only respond if I think something was missed.
20:48 sirrobert (nevermind, was missing a semicolon...whug =)
20:48 sorear mine is short and I'll send it quite soon
20:48 dalek nqp: 54544b6 | (Elizabeth Mattijsen)++ | src/QAST/ (3 files):
20:48 dalek nqp: Fix some commentary spelling errors while going through the source
20:48 dalek nqp: review: https://github.com/perl6/nqp/commit/54544b6f96
20:48 [Coke] pmichaud: should I push a commit removing the 'our's from the individual partcl command subs?
20:48 pmichaud [Coke]: wfm
20:48 benabik joined #perl6
20:49 * diakopter probably should subscribe to that
20:49 masak 'night, #perl6
20:49 sirrobert nice
20:49 sirrobert er night
20:51 sorear sent
20:51 moritz good night masak, dream of hygienic macros
20:51 masak :)
20:51 * masak will
20:52 [Coke] pushed. now down the the block error.
20:52 eiro is it true to say that rakudo is "the official implementation" of perl6 ?
20:52 sorear No.
20:52 moritz eiro: no
20:52 moritz eiro: unless you also count niecza and pugs as "the official implementation"
20:53 moritz where "the official implementation" means "the Perl 6 hackers are happy it exists" :-)
20:53 sorear The authoritative definition of Perl 6 is roast.  Anything which passes all of roast can call itself an official implementation.
20:53 [Coke] and perlito!
20:53 sorear Since roast itself is incomplete, this cannot be satisfied by anything yet
20:53 sorear :D
20:53 moritz [Coke]: aye
20:53 eiro ok so. it's the recommended implementation for beginners ?
20:53 moritz and yapsi!
20:54 moritz eiro: some recommend it. Others recommend niecza
20:54 eiro yapsi, crap! i forgot it :)
20:54 sorear Hard to say, there are different classes of beginner
20:54 sorear Rakudo is generally the most complete and least buggy
20:55 sorear Niecza has official binary packages
20:56 sorear Perlito runs in a browser
20:56 moritz https://gist.github.com/3406172 # my totally biased attempt at a rakudo-vs-niecza summary
20:57 sorear moritz: I think that's pretty fair
20:57 [Coke] pugs ... is written in haskell.
20:57 moritz \o/
20:57 [Coke] it's also pretty fast for the stuff it does.
20:57 moritz [Coke]: right, just wanted to say that
20:57 moritz curiously it got much faster after au++ mostly stopped hacking on it
20:58 moritz (temporal "after", not causal "after", I think)
20:58 diakopter ghc got better?
20:59 moritz I dunno if that#s the main reason
20:59 TimToady eval: use v5.14;␤say <<"OUTER";␤hello @{[ <<"INNER" ]} world␤insidestuff␤INNER␤more stuff␤OUTER
20:59 buubot_backup TimToady: ERROR: Unrecognized character \x{2424}; marked by <-- HERE after use v5.14;<-- HERE near column 49 at (eval 20) line 1.
21:00 TimToady hah
21:00 TimToady sorear: anyway, Perl 6 will not be the first language to support nested heredocs :)
21:02 sorear eval: "use v5.14;\nsay <<\"OUTER\";\nhello \@{[ <<\"INNER\" ]} world\ninsidestuff\nINNER\nmore stuff\nOUTER\n"
21:02 buubot_backup sorear: use v5.14; say <<"OUTER"; hello @{[ <<"INNER" ]} world insidestuff INNER more stuff OUTER
21:02 moritz sorear++ # I like your answer on p6u
21:02 sorear eval: eval "use v5.14;\nsay <<\"OUTER\";\nhello \@{[ <<\"INNER\" ]} world\ninsidestuff\nINNER\nmore stuff\nOUTER\n"
21:02 buubot_backup sorear: hello insidestuff  world more stuff  1
21:03 gongyiliao joined #perl6
21:04 sorear .oO( there documents )
21:09 moritz it's quite scary that the vim syntax hilighting for nested heredocs is mostly correct
21:11 eiro ok so is it true to say that there are more active contributors on rakudo than on others (it's my guess, maybe it's wrong)
21:11 sorear absolutely
21:12 sorear niecza and perlito are mostly one-man projects
21:12 sorear perlito moreso lately, colomon++
21:12 moritz and [Coke]++ supplies everything with spectests :-)
21:13 fernandocorrea_ joined #perl6
21:14 cjbot joined #perl6
21:16 eiro sorear, moritz, i read your answers on perl6-users: thank you guys
21:21 eiro will mod-parrot be uppdated ?
21:22 TimToady you'd have to ask the parrotfolk that, I suspect
21:23 eiro ok.
21:24 eiro it seems the 2 articles i promised will turn into "a serie of articles"
21:24 moritz even better :-)
21:25 eiro well ... i have to admit i prefer coding than writting articles
21:25 moritz me too
21:25 eiro but this job has to be done!
21:26 moritz which is why I prefer it that *you* write the articles, not me :-)
21:26 eiro haha ... you'll have to translate :)
21:26 moritz pas de probleme :-)
21:27 moritz well, maybe it'll be a problem. We'll see.
21:27 eiro \o/ so you'll be part of proofread too ? :)
21:27 moritz erm. I can try :-)
21:29 eiro actually: i'll be ok to translate but i will need some backup there because my english is ... well ... i remember a translation of mine proofreaded by mdk: he made a lot of modifications
21:29 eiro but also said that it's way easier to start from a "almost english" than from french :)
21:30 eiro my father used to use "Onusien" for "almost english", reference to ONU (NATO), where everyone speaks "almost english"
21:31 sorear I also volunteer to proofread/copyedit
21:33 eiro cool!
21:34 benabik joined #perl6
21:39 eiro AFAIR, there where an implementation of perl6 targetting a lisp langage, right ?
21:39 sorear there may have been more than one
21:39 dalek nqp/toqast: 0456425 | jonathan++ | src/NQP/Actions.pm:
21:39 dalek nqp/toqast: One for & related fix for subs.
21:39 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/0456425203
21:39 dalek nqp/toqast: e99463f | jonathan++ | src/Q (2 files):
21:39 dalek nqp/toqast: A couple of fixes that eliminate many of the failures in t/qregex.
21:39 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/e99463fc3f
21:39 dalek nqp/toqast: 7dd6f87 | jonathan++ | src/QRegex/Cursor.nqp:
21:39 dalek nqp/toqast: Check actions for nullness.
21:39 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/7dd6f87cd5
21:40 sorear pmurias wrote a common lisp backend for niecza a year or so ago as part of his studies
21:40 jnthn And with that, NQP on QAST passes t/qregex as well as t/nqp
21:40 diakopter \o/
21:40 jnthn Amongst others
21:40 sorear jnthn: \o/!
21:40 jnthn The demise of PAST is, hopefully, not far away. ;)
21:41 japhb Yay!
21:41 japhb jnthn++
21:51 jnthn hmm, fails once I make bootstrap-files though
21:54 kurahaupo joined #perl6
21:59 pmichaud time for sleep here... bbt
22:00 jnthn Anyways, now looks very likely we'll have PAST eliminated in the next Rakudo release :D
22:02 sorear jnthn: YES :D :D :D
22:07 dalek star/build3: 1c45e98 | pmichaud++ | tools/star/Makefile:
22:07 dalek star/build3: Remove temp MANIFEST.1 file when done.
22:07 dalek star/build3: review: https://github.com/rakudo/star/commit/1c45e985ab
22:07 dalek star/build3: 770e8d0 | pmichaud++ | tools/star/MANIFEST.exclude:
22:07 dalek star/build3: Add MANIFEST.exclude, identifying files to be excluded from the MANIFEST (and thus the tarball).
22:07 dalek star/build3: review: https://github.com/rakudo/star/commit/770e8d06d6
22:07 dalek star/build3: e63d1d7 | pmichaud++ | modules/rakudo-debugger:
22:07 dalek star/build3: Add rakudo-debugger as a module.
22:07 dalek star/build3: review: https://github.com/rakudo/star/commit/e63d1d7a2d
22:07 dalek star/build3: e9aacc4 | pmichaud++ | tools/build/Makefile.in:
22:07 dalek star/build3: Add rules for building/installing perl6-debug .
22:07 dalek star/build3: review: https://github.com/rakudo/star/commit/e9aacc4806
22:07 jnthn pmichaud++ # getting le debugger into the Star build \o.
22:09 eiro sorear, https://github.com/sorear/niecza < official page ?
22:09 sorear eiro: for now
22:09 kurahaupo joined #perl6
22:09 eiro ok. tell me if it changes
22:11 dalek nqp/toqast: 8e9590d | jonathan++ | tools/build/Makefile.in:
22:11 dalek nqp/toqast: Fix up install target.
22:11 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/8e9590d895
22:13 whiteknight joined #perl6
22:13 eiro official NQP doc ? tutorial ?
22:13 jnthn ENOTYET
22:14 jnthn I believe pmichaud++ is planning to work on an NQP tutorial in the near-ish future, though
22:15 eiro so where is NQP ?
22:15 jnthn github.com/perl6/nqp
22:16 eiro is it worth to talk about viv for now ?
22:16 eiro thx jnthn
22:17 dalek star/build3: 429c9d7 | pmichaud++ | tools/build/Makefile.in:
22:17 dalek star/build3: Fix modules-install target.
22:17 dalek star/build3: review: https://github.com/rakudo/star/commit/429c9d7aca
22:17 sorear a substantial number of people are working in Stavanger on fleshing out the NQP ecosystem
22:17 jnthn s/in/near/ ;-)
22:17 jnthn We're in the middle of nowhere. It's awesome :)
22:18 diakopter hello nowhere
22:18 japhb .oO( What is the edge of nowhere like? )
22:19 jnthn japhb: Rather like the edge of somewhere.
22:19 eiro :)
22:20 japhb jnthn, But presumably with opposite sign ....
22:20 cognominal eiro, I would say that rakudo will be in the long run the most portable perl6 implementation, meaning portable to other vm than parrot. jnthn and pmichaud have done a lot of work these last few months to segregate the part specific to parrot.
22:21 dalek star/build3: 7a5d72c | pmichaud++ | tools/build/Makefile.in:
22:21 dalek star/build3: Be sure to correctly chmod the perl6-debug executable.
22:21 dalek star/build3: review: https://github.com/rakudo/star/commit/7a5d72cedd
22:21 cognominal eiro, nqp is there to bootstrap rakudo, so it is of little interest to the end user.
22:21 eiro cognominal, please help me to write those articles :)
22:22 eiro cognominal, yep but i want to mention it as it can be refered in documentations
22:22 diakopter (nqp would have to be just as portable)
22:26 tadzik o/
22:28 sorear o/ tadzik
22:28 eiro hmm .. the undergoing work to make rakudo portable is related to NQP. NQP is about writting PIR code. so where is the layer of compatibility ?
22:28 eiro o/ tadzik
22:28 jnthn NQP isn't about writing PIR code. NQP is about writing NQP code. :)
22:29 diakopter I'm sure eiro meant emitting
22:29 jnthn Ah
22:29 jnthn Yeah, the code-gen is platform specific
22:29 pmichaud even there, NQP isn't about emitting PIR anymore.
22:29 jnthn But that's one part of NQP
22:29 pmichaud NQP is about providing a perl6-like syntax for building compilers on top of virtual machines.
22:30 pmichaud parrot just happens to be the first virtual machine we're targeting.
22:30 eiro diakopter, thanks :)
22:30 diakopter eiro: one would write something that compiles QAST to whatever
22:31 eiro so https://github.com/perl6/nqp must be updated
22:31 diakopter the README yeah
22:31 sorear This is "Not Quite Perl" -- a compiler for quickly generating PIR
22:31 sorear routines from Perl6-like code.
22:32 jnthn hm :)
22:32 eiro QAST ?
22:32 cognominal the sucessor of PAST
22:32 cognominal P++
22:32 sorear would anyone object to renaming README to README.pod for the benefit of github's formatter?
22:33 cognominal I don't think so
22:33 eiro to be sure i understand: if i want perl6 to run on JVM, i have to write an jvm NQP emitter
22:34 pmichaud I thought we had already updated the README>
22:34 diakopter eiro: no, you'd write a compiler in NQP that took QAST objects and emitted JVM bytecode
22:34 sorear pmichaud: it's partially updated
22:34 eiro cognominal, isn't it what you want for v8 ?
22:34 pmichaud note that the rest of the readme talks explicitly about creating things for virtual machines (plural)
22:35 cognominal my understanding is the goal of QAST is to have an abstract syntax tree that is more independant from parrot.
22:36 eiro cognominal, how about nqp -> cdent ?
22:36 pmichaud cognominal: that's pretty close.  More precise is that QAST is itself written in nqp, unlike PAST which was written in PIR.
22:36 sorear reason 1: PAST is written in PIR and so cannnot be portable
22:36 cognominal now the AST is translated to pir using https://github.com/perl6/nqp/​blob/master/src/QAST/PIRT.nqp ?
22:36 pmichaud beyond that, QAST incorporates several new design improvements that we couldn't easily get into PAST without running afoul of Parrot's deprecation policies
22:37 sorear reason 2: PAST uses native Parrot objects, which are more extensible than 6model objects and so PAST pays a substantial memory price for a feature it mostly doesn't use
22:37 sorear (actually it's worse than that, it uses Capture as the base type)
22:38 eiro are you aware of cdent project ? http://cdent.org/
22:38 skids joined #perl6
22:38 dalek nqp: 13b550b | pmichaud++ | README:
22:38 dalek nqp: Update README to eliminate "for quickly generating PIR routines".
22:38 dalek nqp: review: https://github.com/perl6/nqp/commit/13b550b0b2
22:38 dalek nqp: 41b003e | pmichaud++ | / (10 files):
22:38 dalek nqp: Merge branch 'master' of github.com:perl6/nqp
22:38 dalek nqp: review: https://github.com/perl6/nqp/commit/41b003e3d3
22:39 diakopter ingy: someone mentioned cdent
22:39 eiro haha ingy is on this chan too :)
22:40 pmichaud okay, I'm off to bed.  be back tomorrow
22:40 pmichaud tadzik: hope you're able to get Bailador working :-)
22:41 cognominal eiro, I think that acmeism is minimalist (biggest common denominator so pretty small) while perl6 is maximalist. So there is an impedance mismatch
22:43 eiro good night pmichaud
22:43 jnthn Think I'm gonna sleep also
22:43 eiro cognominal, right
22:44 eiro ok... to bed too!  thanks everyone for answers
22:44 thou joined #perl6
22:52 ingy cognominal: acmeism is a critical part of perl6 though
22:52 FROGGS tadzik: I cant find the error, in Bailador::App the %.routes gets reinitialized after the GET and the POST is pushed to it.
22:53 ingy when cdent compiles to perl6 and perl5 I'll be writing all my perl modules in a coffeescript variant
22:53 ingy not my perl6 *code*, my perl6 *modules*
22:53 FROGGS tadzik: need to go to bed now, sorry that I couldnt fix it yet
22:54 ingy anywhoots, back to #cdent :)
22:54 ingy hi eiro :)
23:07 colomon ingy++
23:07 wamba joined #perl6
23:09 thou o/
23:21 Exodist joined #perl6
23:53 erkan joined #perl6
23:53 erkan joined #perl6
23:58 Exodist joined #perl6

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

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs