»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
00:04 tyatpi left 00:09 cog_ joined 00:11 raiph left 00:12 cog__ left 00:21 PacoAir left 00:30 adu joined 00:42 thou left 00:43 tokuhirom joined 01:03 xinming left 01:05 xinming joined 01:08 cognominal joined 01:11 cog_ left 01:14 cognominal left, cognominal joined 01:23 aindilis left 01:24 jaldhar joined 01:30 mcglk left 01:39 mcglk joined 01:45 UncleFester6 left 01:58 cognominal left, cognominal joined 02:24 orafu left, orafu joined 02:28 adu left 02:41 tokuhirom left 02:42 tokuhirom joined 02:46 tokuhirom left 02:52 tyatpi joined 03:03 daemon left 03:07 mcglk left, mcglk_ joined 03:22 {Velvet} left 03:25 leprevost joined 03:32 mikemol joined 03:33 mcglk_ left 03:43 vlixes joined 03:50 kaare_ joined 04:02 stephenlb joined 04:05 vlixes left 04:13 tyatpi left 04:20 Chillance left 04:38 thou joined 05:13 sisar joined 05:21 cog_ joined, cognominal left 05:25 cog__ joined 05:28 cog_ left 05:56 leprevost left 06:33 GlitchMr joined 06:35 araujo left 06:36 Juerd left 06:37 p6eval left 06:38 hugme left, tadzik left, dalek left 06:39 pmichaud left, masak left, [Coke] left, Util left, PerlJam left 06:50 tokuhirom joined
moritz \o 06:52
06:52 thou left
moritz yesterday afternoon we were in the zoo with the small one, and this morning we read that while we were there, a small cheetah broke out :-) 06:54
r: say 1 06:57
is feather down? 06:58
sorear o/ moritz 07:05
moritz \o sorear 07:06
07:09 brrt joined 07:14 clkao_ is now known as clkao 07:21 odoacre left 07:25 Timbus left, sivoais left 07:27 Timbus joined 07:32 sivoais joined 07:43 cog__ left, cog__ joined 07:49 brrt left 07:59 Juerd joined, p6eval joined, ChanServ sets mode: +v p6eval 08:00 pmichaud joined, Util joined, dalek joined, ChanServ sets mode: +v dalek 08:01 masak joined, PerlJam joined, [Coke] joined, hugme joined, ChanServ sets mode: +v hugme 08:02 p6eval left, p6eval joined, ChanServ sets mode: +v p6eval
moritz r: say 1 08:03
p6eval rakudo 06a730: OUTPUT«1␤»
diakopter wb feather 08:04
sorear sleep& 08:10
08:14 ajs_home joined
ajs_home Having to re-build my rakudo environment at home... wow, a clean checkout does take a bit to build, don't it? 08:15
moritz it does 08:16
try a fresh gcc checkout for comparison :-)
ajs_home the identifier "stage0" is somewhat demoralizing in nqp ;-)
mortiz: ah, I remember the day. I used to kick off a gcc build on an Apollo Domain/OS box and go out for a long lunch ... at home ... and a nap 08:17
xkcd.com/303/ -- ah the heady days of mis-spent youth 08:18
08:23 brrt joined 08:25 tadzik joined 08:27 benabik left 08:28 benabik joined 08:30 araujo joined 08:36 sergot joined
sergot hi o/ 08:36
:)
ajs_home hey sergot
08:37 fgomez joined, fgomez left, fgomez joined 08:40 sporous left, sporous joined 08:48 cj left 08:56 PacoAir joined
masak morning, #perl6 09:18
diakopter halyoy 09:19
er, hello/ahoy
masak :) 09:20
masak .oO( how did the small cheetah break out? probably by bending the rules a little ) 09:21
09:22 brrt left
masak today's autopun spotting: twitter.com/codinghorror/status/216...7730018304 09:23
I hasten to add that bipolarity doesn't always merit a laugh. I know that.
masak is a little curious if Jeff Atwood actually is bipolar, or whether he was just making the joke 09:25
09:25 spider-mario joined
masak this looks interesting for our infrastructure champs: lucumr.pocoo.org/2012/6/22/hate-hat...verywhere/ news.ycombinator.com/item?id=4146847 09:27
au . o O { At the neuronal level, we're all bipolars (in more than one sense). } 09:31
09:33 birdwindupbird joined
masak au! \o/ 09:35
yeah, biprobably.
moritz biopolarity
masak is that when you polarize light through an organism? :) 09:36
au "bears for polar biopolarity" 09:37
or perhaps it's just polar bioplurality...
moritz now where did the polar bears come from, all of a sudden? 09:38
jnthn morning :-)
diakopter o/
jnthn uh-oh...there's polar bears?! 09:39
au 🐻/
moritz jnthn: biopolar plurality bears
\o diakopter, jnthn 09:40
jnthn
.oO( should not come here before coffee...too many hard words... :) )
masak .oO( bipolar polar bears are so popular! ) 09:41
moritz now don't get me started with populism
masak it's all polar bear propaganda.
diakopter I'm bipopular 09:42
masak polar bears are bipartisan.
au or bearly partisan
masak *lol* 09:43
urs, I can't bear the puns. 09:44
au but you can pun the bears just fine
09:52 birdwindupbird left 10:19 snearch joined 10:47 grondilu joined 11:01 grondilu_ joined 11:04 grondilu left
Juerd masak: Was "urs" a play on the latin word for bear? ursus, ursa. ;) 11:18
tadzik morning 11:19
moritz is pretty sure it was
masak Juerd: of curs :) 11:21
Juerd :)
11:24 cog_ joined, cog__ left
jnthn That's o so clever. 11:25
moritz clever enough for the cleaver? 11:26
masak phenny: "oso"? 11:27
phenny masak: "bear" (es to en, translate.google.com)
masak tho so
11:30 sergot left 11:31 fgomez left
tadzik aak 11:31
Juerd It's sometimes confusing when someone talks about beer in English, when there are Dutch people around. 11:33
11:47 sergot joined
masak Juerd: pardon? :P 11:48
Juerd Horses! 11:52
12:03 asperge joined
asperge hi 12:03
12:06 fgomez joined
masak asperge: oh hai 12:14
phenny: fr en "asperge"?
phenny masak: "asparagus" (fr to en, translate.google.com)
masak refrains from any asparaging remarks 12:15
asperge :)
12:25 birdwindupbird joined 12:26 birdwindupbird left, birdwindupbird joined
pmichaud good morning, #perl6 12:43
moritz \o pmichaud 12:44
jnthn o/ 12:45
tadzik good morning pmichaud
szabgab hi tadzik
tadzik hey szabgab 12:46
moritz the nqp repo's docs/release_guide.pod misses instructiong for creating a tar ball
szabgab I am looking at panda and I see a number of modules without a friendly panda face on the right
moritz which is why release managers don't create tarballs, and i have to do that after the fact when making a star release :(
szabgab it seems these are the same modules that don't have a source-url
can anyone help me understand why are some without panda and why no source-url? 12:47
moritz szabgab: the probably follow and outdated standard, or are even older than panda itself 12:48
s/the/they/
12:48 mustapha joined
moritz and since nobody has updated them, you can imagine how well maintained they are... :/ 12:48
tadzik it doesn't always mean so 12:49
GlitchMr++ recently found some my modules following the old standard, and they were quite well maintained, but I'm probably biased :)
szabgab: generally, emmentaler is probably the best way to see how well a module is maintained these days 12:50
alghough it should probably also point out if a module has no tests at all; now it just says "yeah, passes"
szabgab emmentaler? 12:51
ok, found it 12:54
tadzik where, ooc? 12:58
12:59 mtk left 13:02 mtk joined
cog_ jnthn, have created an engine to highlight any code using a json of the parse tree (ie the Match object). github.com/cognominal/codeview 13:02
The whole point of the exercise was to do that on Perl 6 files but there is no way to dump the parse tree of a Perl6 file 13:03
can you fix that?
szabgab tere used to be flag for that 13:04
that was created for padre but I could not find it now
cog_ I have yet to segragate the json dumper in a library. It is here github.com/cognominal/codeview/blo...nParseTree 13:05
13:06 grondilu_ left
cog_ Right now I parse a json file (but that could be anything that genereate a Perl 6 Match) and generate a json file, that I load using ajax in a html file. 13:06
szabgab: it has been broken for almost a year if not much. 13:07
13:07 grondilu joined
cog_ szagab: currently I am able to do classic static highlighting, and show the parse path that was used to reduce some code when I hover over the corresponding html element. 13:09
13:10 Patterner left
cog_ jnthn, I would like to show the tool for the french perl workship 13:11
13:11 whiteknight joined
moritz currently Perl6::Grammar creates NQP match objects, not Perl 6 match objects 13:11
not sure how easy that is to change 13:12
13:12 whiteknight is now known as Guest23753
cog_ moritz: the problem seem that when --target=parse is used, some stuff is not yet set up correctly to call whatever filter. 13:13
13:14 Psyche^ joined, Psyche^ is now known as Patterner
moritz oh right 13:17
jnthn, pmichaud, PerlJam: there's a small problem: nqp's VERSION is not bumped. That way non-git builds report version 2012.05, which breaks rakudo star 13:18
what should be do about it? a nqp 2012.05.1 point release with a bumped VERSION?
cog_ moritz: probably some World.pm internal
$ perl6 --target=parse -e '0' # indeed : ===SORRY!=== Could not locate compile-time value for symbol StaticLexPad 13:19
13:22 leprevost joined
pmichaud moritz: looking 13:22
dalek kudo/nom: dba6e9c | moritz++ | docs/release_guide.pod:
mention nqp VERSION bump in rakudo's release_guide.pod
13:26
pmichaud moritz: really, though, bumping VERSION should've been done as part of step 2. 13:27
13:28 cog_ is now known as cognominal
moritz pmichaud: maybe it's better to remove the overlapping information altogether 13:30
pmichaud well, step 2 is in the wrong place anyway. We shouldn't cut a nqp release immediately after parrot release; it should be immediately before rakudo release.
but I do want nqp version management held in nqp's release guide, not in rakudo's. Other than rakudo's release guide might have reminders to check certain things. 13:31
jnthn cognominal: I suspect the --target=parse issue at least for that particular case is because it's not triggering setting loading when the actions are not run. 13:32
moritz we should automate as much of that as possible
pmichaud moritz: yes, that would make sense also; perhaps the tagging step can be a makefile target 13:33
anyway, let me think about it one issue at a time for a bit... starting with what to do for the star release
13:34 PacoAir left
pmichaud the easiest thing to do for star is to simply have it fix the file coming from the tarball after it unpacks it 13:34
having distributions "patch" the upstream sources isn't unheard of.
13:35 grondilu left
pmichaud I think I'm also fine with creating a 2012.06.1 tarball for nqp/star 13:35
cognominal jnthn, I would like to be able to call my Match dumper-in-json at this stage so I could highlight Perl 6 code. 13:39
Doing it for nqp would be nice but least important to me.
pmichaud cognominal: it's almost impossible to produce a parse tree for Perl 6 using --target=parse because Perl 6 parsing _requires_ executing some of the code (which requires stages after --target=parse) 13:40
cognominal pmichaud: I don't mind being handed the parse tree after other stages have been executed.
13:41 PacoAir joined
pmichaud at one time I had a special target for that... just a sec 13:41
cognominal Anyway, sooner or later people will want to write Perl 6 highlighter.
masak basically, only a Perl 6 grammar can hand you that parse tree. 13:42
or rather, I'd like to see something that isn't a Perl 6 grammar try ;) 13:43
cognominal pmichaud: that would be cool.
13:43 Pleiades` left
cognominal My tool is very pedagogical too. Using the parse tree, it can display the parse path used to reduce any part of code. 13:44
masak PPI basically cheats in a way that's sometimes useful. Alias++ has sometimes driven by here and stated that this kind of useful cheating will be much harder for Perl 6.
because Perl 6 embraces language modding to a much greater extent. 13:45
cognominal I will soon display the used rule too. Well it will soon cheat to do so for JSON grammars.
by "used rule", I mean the rule used to reduce the code the mouse is hovering over. 13:46
pmichaud okay, I don't think the issue is with --target=parse itself, but rather with the resulting parse tree not having sufficient information/runtime loaded to display itself. 13:48
...but that's just a guess.
jnthn pmichaud: Does it attempt to dump the $!ast also? 13:49
That would probably cause issues...
pmichaud jnthn: I don't know what it's attempting to dump. But I think it's a dumping issue more than a staging issue.
by way of comparison, try ./perl6 --target=past -e 0 13:50
so, my guess is that we need to clean up dumping. There are some preliminary dumper capabilities in nqp that we should probably use; I suspect HLL::Compiler is still trying to use Parrot's Data::Dumper 13:51
13:51 snearch left
pmichaud since rakudo is now using QRegex for parsing/compilation, we ought to be able to avoid Data::Dumper altogether 13:51
jnthn Indeed
pmichaud it would also be very nice to eliminate Data::Dumper as a runtime requirement altogether 13:52
13:53 mikemol_ joined
cognominal pmichaud/jhntn: I did not want to push you before I was ready to use that dumping feature. Now that I am, I am very eager to show it at the french perl workshop. 13:53
13:54 daemon joined
pmichaud moritz: I vote we create a 2012.06.1 release of nqp to be used in star. I don't think we need a separate rakudo release or to do anything to the rakudo repo. Does that sound sane? 13:54
cognominal Also my Match json dumper is nice. I think one can reconstruct a Match from it.
I don't know about World serialization of Matches but a json serialization is nice. 13:55
moritz pmichaud: sounds sane 13:56
pmichaud: should I do it?
pmichaud: and if so, from master, or branch off from 2012.06 ?
I don't think master breaks anything, so we could it from master
13:57 birdwindupbird left
pmichaud moritz: looking. I think there have been some nqp commits since the release. 13:58
moritz r: say 1.HOW ~~ Any 14:00
p6eval rakudo 06a730: OUTPUT«True␤»
pmichaud I think I prefer from 2012.06. I don't want to have to deal with a possible variation between rakudo 2012.06 and star 2012.06 relating to the nqp changes.
I know it's unlikely; but ... *sigh*
moritz aye 14:01
I gravitated the same way
dalek p/release-2012.06.1: 8a787d6 | moritz++ | VERSION:
bump VERSION
14:02
14:02 JimmyZ joined
dalek ar: 8b15e79 | moritz++ | / (2 files):
bump NQP version to 2012.06.1

2012.06 had a wrong VERSION file
14:04
14:05 Pleiades` joined
pmichaud ...star might need 2012.06 as its version requirement, not .1 14:09
oh, nm, looks like the $(NQP) variable isn't used anyway. :) 14:11
(in skel/tools/build/Makefile.in)
I have to leave shortly; later today I will review the release_guide.doc files and make some updates. 14:12
(others are free to do the same, also :) 14:13
Juerd 14:17
14:18 Guest23753 left
pmichaud afk, meetings 14:29
14:30 mikemol_ left
Juerd Away from keyboard and meetings? 14:30
cognominal for people attending the french perl workshop, don't forget to send your id number to eiro before tuesday. That's a necessary (and moronic) condition to access the wifi at epitech 14:31
in Rome do what the romans do… 14:32
si fueris Romae, Romano vivito more; si fueris alibi, vivito sicut ibi # apparently the original quote 14:33
Juerd Do you think they'd know if you'd make something up? 14:35
tadzik that makes me consider using Tor there
Juerd I'd make me consider buying a local SIM
tadzik that too
Juerd But alas, I'm not going to the FPW at all :( 14:36
tadzik shame :/
14:36 Gesh joined 14:44 cognominal left 14:45 cognominal joined, _jaldhar joined, jaldhar left
masak I think we're living in an age where people are throwing away their privacy like it was pocked lint. 14:55
I wonder if that will just become the default (and we'll consider it the price we pay for all the useful interconnectedness), or if there'll be a pendulum swing and people will rise up against governments and Facebook.
huf both! 14:57
people will rise up but ultimately nothing will change
14:58 _jaldhar left
cognominal masak, stuff like small federated wikis (I pointed it earlier) will be way to discuss and organize and make centralized information repositories (à la fesse bouc, or G+) 14:58
… make them optionnal
ho, btw, fesse bouc is the usual French pun on Facebook. 14:59
masak oh, of course.
phenny: "la fesse bouc"?
phenny masak: "buttock goat" (fr to en, translate.google.com)
masak :P
huf oh good, everyone has some pun for facebook :) 15:00
masak phenny: sv en "fejan"?
phenny masak: "your face" (sv to en, translate.google.com)
15:00 _jaldhar joined, Pleiades` left
moritz phenny: de en "fratze"? 15:01
phenny moritz: "grimace" (de to en, translate.google.com)
15:03 leprevost left
masak r: say (1, 2 Z 3, 4).perl 15:07
p6eval rakudo dba6e9: OUTPUT«((1, 3), (2, 4)).list␤»
masak r: say (1, 2 Z, 3, 4).perl
p6eval rakudo dba6e9: OUTPUT«((1, 3), (2, 4)).list␤»
masak \o/
15:08 Chillance joined 15:12 tokuhirom left
Gesh r: say (1, 2, 3 Z, 4, 5, 6 Z, 7, 8 ,9).perl 15:12
p6eval rakudo dba6e9: OUTPUT«(((1, 4), 7), ((2, 5), 8), ((3, 6), 9)).list␤»
moritz that looks wrong 15:14
masak submits rakudobug 15:16
moritz++
er, and Gesh++
Gesh: hi, are you new here?
15:16 asperge left
Gesh masak: yep) 15:16
masak Russian?
Gesh yes
masak I'm a lucky guesser today)
Gesh huh 15:17
sisar Gesh: welcome !
masak Я немного говорю по русский, но я хотел бы говорить лучше.
flussence I'm not sure that code's wrong...
Gesh Thanks. I didn't really had an idea what i executed -.-
masak Gesh: you just found a bug, and it got reported. congratulations. 15:18
you are now part of a small but warm-hearted community of Perl 6 contributors.
Gesh Because first of all I even don't have an idea whether perl6 is reasonable to use nowdays.
moritz ((1, 4, 7), (2, 5, 8), (3, 6, 9)).list would be correct
masak depends on your definition of reason. 15:19
Gesh yep. I wanted to obtain that
masak and your definition of use.
Gesh masak: у тебя неплохо получается :)
masak me and Google Translate, we work well together ;)
sisar phenny: en "у тебя неплохо получается" ?
moritz masak: I was just about to say that (though I'd have said definition of reasonable). Stop being so disturbing :-)
masak sisar: no, not 'en', 'ru'. 15:20
sisar: and no space before the '?'
sisar phenny: ru "у тебя неплохо получается"?
phenny sisar: "you have pretty well" (ru to en, translate.google.com)
sisar masak++
flussence r: say (1..3 Z, 4..6 Z, 7..9).perl
p6eval rakudo dba6e9: OUTPUT«(((1, 4), 7), ((2, 5), 8), ((3, 6), 9)).list␤»
flussence r: say (1..3 Z, (4..6 Z, 7..9)).perl
p6eval rakudo dba6e9: OUTPUT«((1, 4), (2, 7), (3, 5)).list␤»
flussence well that's just weird.
masak moritz: when co-thinking happens, we're both equally disturbing :P 15:21
Gesh s/have/do it/
flussence r: say (1..3 Z, (4..6 Z, 7..9 , )).perl
p6eval rakudo dba6e9: OUTPUT«((1, 4), (2, 7), (3, 5)).list␤»
masak moritz: we should ride a tandem bicycle some day :)
Gesh: some people would say we try to avoid answering the question by saying "depends on your definition of..." 15:22
Gesh: let's just say many of us here would love to be able to say "yes". and we don't want to say "no", because that also doesn't cover it.
Gesh masak: That's seem to be correct anyway 15:23
masak so we say "depends", and then we try to work on the bits that don't allow us to say "yes" unreservedly.
thing is, turns out this is a big project. who knew.
Gesh Well, i have several simple scripts written in perl5 that make my work easier. Though I had some fun rewriting them in python and ruby I still prefer perl/ And i even don't know why. 15:24
masak :) 15:25
tadzik it's mostly a matter of preference, I think
masak yeah.
but just like there are cat people and dog people, it seems that there are Perl people and Python people and Ruby people.
thought the Perl/Ruby groups might be the ones that are closest to each other. 15:26
though*
Gesh So, my question should sound more like 'is perl6 stable enough?' that must be followed by questions about literature, but I think i'll just google it. I'm not going to use it for some kind of enterprice and production 15:27
masak perl6.org
if you're not using it for very fancy/demanding things, I'd say it's ready/stable enough for you.
but if I'm wrong on that point, we'd like to hear about it. 15:28
15:29 Pleiades` joined
tadzik has been pondering an idea to write a bayesian text classifier in Perl 6 15:30
sisar raiph++ #replying to rakudo.org/2012/05/23/rakudo-star-2...mment-1665 15:32
15:32 cognominal left, cognominal joined
Gesh Ok :) I'll try it. 15:32
masak the challenge in getting started is still finding the good bits of information; tutorials, blog posts, documentation. 15:40
moritz that's what perl6.org was supposed to help you with, back in the days when I started with it
masak right.
and it does help.
but we're still far from actually having something of perldoc quality. 15:41
15:44 kurahaupo left
pmichaud r: (1,2,3 Z 4,5,6 Z 7,8,9).perl.say 15:47
p6eval rakudo dba6e9: OUTPUT«((1, 4, 7), (2, 5, 8), (3, 6, 9)).list␤»
pmichaud r: (1,2,3 Z+ 4,5,6 Z+ 7,8,9).perl.say
p6eval rakudo dba6e9: OUTPUT«(12, 15, 18).list␤»
15:47 Pleiades` left
pmichaud hmmmmm 15:47
Gesh r: say (1, 2, 3 Z, 4, 5, 6 Z, 7, 8 ,9).perl 15:48
p6eval rakudo dba6e9: OUTPUT«(((1, 4), 7), ((2, 5), 8), ((3, 6), 9)).list␤»
Gesh r: say (1, 2, 3 Z 4, 5, 6 Z 7, 8 ,9).perl
p6eval rakudo dba6e9: OUTPUT«((1, 4, 7), (2, 5, 8), (3, 6, 9)).list␤»
Gesh commas 15:49
pmichaud r: say ([,] 1,2,3).perl
p6eval rakudo dba6e9: OUTPUT«(1, 2, 3)␤»
pmichaud yes, I'm trying to decide how to distinguish them.
15:49 cog_ joined
jnthn pmichaud: Is it not a little like the [|] fix you did not so long ago? 15:49
pmichaud jnthn: it might be... but I'm not sure why it's not working in the first place.... and I'm not convinced that it's wrong. 15:51
masak I got the title wrong. was 'Z', should be 'Z,'. changed now. rt.perl.org/rt3/Ticket/Display.html?id=113800 15:52
15:52 cognominal left
masak pmichaud: depends. is infix:<,> a list infix op? 15:52
if it is, then arguably infix:<Z,> should be too.
pmichaud other that the fact that S03 explicitly says that Z, should work that way. 15:53
15:53 Pleiades` joined
pmichaud infix:<,> has list associativity, yes. 15:53
masak ah. yes. that's probably what I meant. 15:54
pmichaud it's not %list_infix precedence.
masak I see from the S03 precedence table that it... right.
pmichaud %comma is tighter than %list_infix
masak nod.
pmichaud anyway, I'm at a meeting now; I'll look into it more later
(if someone doesn't beat me to it) 15:55
bbl
moritz r: say (<a b c> Z <d e f> Z <g h i>).tree.perl 15:58
p6eval rakudo dba6e9: OUTPUT«Not enough positional parameters passed; got 1 but expected between 3 and 4␤ in method new at src/gen/CORE.setting:5016␤ in method tree at src/gen/CORE.setting:5272␤ in block <anon> at /tmp/2tCaEc_m1b:1␤␤»
moritz masak: wanna submit?
r: say (<a b c> Z <d e f> Z <g h i>).lol.perl
p6eval rakudo dba6e9: OUTPUT«LoL.new(ListIter.new())␤»
moritz masak: wanna submit?
r: say .join('|') for (<a b c> Z <d e f> Z <g h i>).lol 15:59
p6eval rakudo dba6e9: OUTPUT«a|d|g|b|e|h|c|f|i␤»
moritz r: say .join('|') for (<a b c> Z <d e f> Z <g h i>).lol.map(*.item)
p6eval rakudo dba6e9: OUTPUT«a|d|g|b|e|h|c|f|i␤»
moritz r: say .join('|') for (<a b c> Z <d e f> Z <g h i>).tree(*.item)
p6eval rakudo dba6e9: OUTPUT«Not enough positional parameters passed; got 1 but expected between 3 and 4␤ in method new at src/gen/CORE.setting:5016␤ in method tree at src/gen/CORE.setting:5283␤ in block <anon> at /tmp/MNSpCE3r4I:1␤␤»
15:59 kurahaupo joined
moritz r: say (<a b c>, <d e f>, <g h i>).tree.perl 16:01
p6eval rakudo dba6e9: OUTPUT«LoL.new($("a", "b", "c"), $("d", "e", "f"), $("g", "h", "i"))␤»
moritz r: say (((1, 2), 3), 4).tree.perl
p6eval rakudo dba6e9: OUTPUT«LoL.new($((1, 2), 3), 4)␤»
moritz then I don't understand why .tree carps at the return value from Z 16:02
16:06 Pleiades` left
dalek href="https://perl6.org:">perl6.org: 9739149 | moritz++ | source/ (3 files):
general cleanup; remove links to outdated resources

also state that up-to-dateness is more important than comprehensiveness
16:12
16:16 Gesh is now known as pupoque 16:17 pupoque left 16:18 ponbiki joined 16:23 vmspb joined 16:24 pupoque joined 16:28 pupoque left 16:32 pupoque joined 16:35 _jaldhar left 16:36 _jaldhar joined
masak submits rakudobug 16:39
sorry, was out :)
r: say (<a b c> Z <d e f>).tree.perl 16:41
p6eval rakudo dba6e9: OUTPUT«Not enough positional parameters passed; got 1 but expected between 3 and 4␤ in method new at src/gen/CORE.setting:5016␤ in method tree at src/gen/CORE.setting:5272␤ in block <anon> at /tmp/9HJzWnbf7k:1␤␤»
masak r: say <d e f>.tree.perl
p6eval rakudo dba6e9: OUTPUT«LoL.new("d", "e", "f")␤»
masak r: say (1,2 Z 3,4).tree.perl 16:42
p6eval rakudo dba6e9: OUTPUT«Not enough positional parameters passed; got 1 but expected between 3 and 4␤ in method new at src/gen/CORE.setting:5016␤ in method tree at src/gen/CORE.setting:5272␤ in block <anon> at /tmp/3NFL8gcjvK:1␤␤»
masak r: say (<a b c> Z <d e f> Z <g h i>).lol.perl 16:43
p6eval rakudo dba6e9: OUTPUT«LoL.new(ListIter.new())␤»
masak moritz: what's the bug in ^
?
diakopter: when marking up some RT ticket as being a dupe of some other RT ticket, it's very helpful for those of us who can merge tickets if the id of that other ticket is provided ;) 16:45
anyway, diakopter++ for lots of RT triaging while I was away.
ajs_home so, right now, nothing calls DESTROY? 16:50
masak I assume people here on #perl6 either have seen this already, or will want to be blown away by it: xahlee.org/math/recursive_game_of_life.html
ajs_home: could you please be more specific? 16:51
ajs_home: there are several implementations of Perl 6.
ajs_home r: class A { method DESTROY { say "Gone" } }; given A.new() { }
p6eval rakudo dba6e9: ( no output )
ajs_home As part of the IO buffering change I mentioned yesterday, I'm trying to make sure that self.flush() is called when an IO goes away, but DESTROY never gets called, so I don't know how to force that to happen... 16:54
moritz r: say eval('LoL.new(ListIter.new())').perl
p6eval rakudo dba6e9: OUTPUT«LoL.new(ListIter.new())␤»
16:54 swapnil joined
moritz r: say eval('LoL.new(ListIter.new())').list 16:54
p6eval rakudo dba6e9: OUTPUT«␤»
moritz masak: the .perl output produces an empty LoL
masak it's not empty, it's just not unrolled yet.
16:54 Pleiades` joined
masak but yes, I think I agree that's wrong. 16:54
moritz what does "not unrolled yet" mean? 16:55
16:55 cog_ left
masak that the list iterator hasn't been, I dunno, .gimme'd yet. 16:56
ajs_home so, grepping for DESTROY in src shows nothing. I'm guessing that either it's been renamed or it's just NYI...
masak or something. I'm no listiter expert.
ajs_home: it's NYI, at least in Rakudo.
16:56 cognominal joined
ajs_home ok, is there any way to hook object destruction at all in the short-term, or should I just put a scary NYI comment around my DESTROY method? 16:57
masak I'd be happy to hear about your use case. I don't see how DESTROY methods can ever be practical in Perl 6. 16:59
I think your best bet is to call a destructor manually.
might as well call it .DESTROY ;)
ajs_home masak: I don't understand. Can you explain how you think it should be called manually? Currently, in my implementation, DESTROY calls self.flush to clear any buffered output. Who would manually call that? 17:01
flussence I guess you'd have to manually reference-count the object in all scopes it's used in, and have LEAVE emulate a "real" destructor in each place. 17:04
ajs_home flussence I don't really have access to user scopes from IO.pm, do I? 17:05
flussence hm, every user's going to have to do it themselves in that case 17:06
masak aye.
which is less than awesome.
the nicest solution I've seen is something like `my $fh will leave { .flush }` 17:07
but the onus is still on the end user programmer.
...and I don't know that with a GC (as opposed to refcounting), we'll ever be able to improve on that.
ajs_home yeah, i think it's a reasonable expectation that, for example, a socket that goes out of scope will flush its contents....
17:08 Pleiades` left
masak ajs_home: it's a reasonable expectation with a refcounting deallocator. 17:08
jnthn Well, apart from it may be referenced by something other than the lexical it was declared it.
ajs_home But that's a special case, in my current example this writes nothing to the file: given open("test.foo",:w) { .buffer_type(:full); .say("test") }
jnthn So end of scope isn't a sane default really.
ajs_home and that just feels wrong
masak jnthn: that's not even the problem. the problem is that collection isn't timely.
ajs_home: I agree. I would very much like to see a solution to this. I just don't know one. 17:09
jnthn masak: That doesn't contradict what I said.
17:09 cognominal left
masak jnthn: right. what you said is just an extra complication that isn't necessary to make this a hard problem. 17:09
jnthn masak: My point was that if you have non-timely collection then end of scope reached != known the thing is unused. 17:10
And no good way to know.
masak what you said is valid in a refcounting environment as well.
jnthn With a refcoutning GC you have a way to know.
masak oh, I see what you mean.
17:10 cognominal joined
masak well, the thing seems easy and "maybe we could do some clever analysis", but then one remembers threads. 17:11
jnthn So only the programmer understands the lifetime well enough to know if end of scope is a good time to do final-ish things, and the will leave... thing is a way to mark that.
ajs_home At some point, though, some piece of the infrastructure does clean up unused items, though, right? Or does A.new() allocate RAM that will only be freed when the parrot process calls a C exit(2)? 17:12
jnthn ajs_home: Something will clean up, yes. But it could be in 10 miliseconds, or 10 hours.
(if you have a process that runs that long) 17:13
ajs_home jnthn: that's less than ideal, but it would be a better time to call .DESTROY than never, wouldn't it?
masak I think cleanup is guaranteed at exit, but .DESTROY isn't. which is what makes .DESTROY particularly useless.
I could be wrong on this.
ajs_home reading whiteknight.github.com/2012/05/23/d...ot+Blog%29 17:14
jnthn ajs_home: Sure, it should get called at some point, afaik. 17:15
The real reason that DESTROY isn't implemented is because of Parrot not currently solving the ordering problem or the resurrection problem.
(Which are hard problems.) 17:16
masak what are those? curious.
a URL is fine.
ajs_home I think whiteknight.github.com/2012/05/23/d..._hard.html is a good reference which is why I linked it. 17:17
"Parrot does have destructors, of a sort, in the form of the destroy vtable. That routine is called by the GC when the object is being reclaimed, during the sweep pass."
masak ok; thank you.
jnthn Don't have one handy, but basically, resurrection means that the DESTROY could bring dead objects back to life.
And I suspect the other link explains the ordering issue
masak ok.
17:18 JimmyZ left
ajs_home heh, "Turning off GC finalization leads to the problem above where data written to the FileHandle is not not flushed before program exit. You are probably now starting to understand the bigger picture here." --- boy howdy, I wish I'd read this first 17:18
masak :) 17:19
17:23 Pleiades` joined
ajs_home Hmm... tried asking if that's been implemented on #parrot, but crickets so far... 17:27
I'll do some testing 17:28
moritz iirc they recently separated destruction vtables and actual deallocation
(or did it in a branch at least)
oh, that's what the link was talking about
never mind, I should not half-backlog and then babble about it 17:29
ajs_home yeah
heehee
Yep, that article sounds very promising (and mentions you, moritz) but it wasn't clear if it's been implemented yet
17:33 swapnil left 17:38 Pleiades` left 17:42 thou joined 17:43 thou left 17:50 vmspb left
tadzik re DESTROY and flushing buffers, Go has no destructors and seems to use defer statement, which is similar to our LEAVE 17:52
ajs_home In Python, I can take the value of foo.x where foo is an object and x is a method name. What I get is a sort of functor that knows its invocant is foo and when invoked calls the method x. 17:53
is there anything like that in Perl 6?
masak tadzik: 'defer' seems to be a LEAVE for functions.
ajs_home Obviously I can make one explicitly by defining a closure, but I was wondering if there was something simpler... it rings a bell, but I can't keep %*SPECS in my head 17:54
moritz *.method ?
masak nr: class Foo { method x { say "OH HAI" } }; my $foo = Foo.new; my &c = -> { $foo.x }; say "not called yet"; &c()
p6eval rakudo dba6e9, niecza v18-7-ga660099: OUTPUT«not called yet␤OH HAI␤»
masak \o/
ajs_home: goodenuf?
ajs_home masak, moritz, thanks! 17:55
moritz r: say <a b c>.map: *.uc
p6eval rakudo dba6e9: OUTPUT«A B C␤»
18:00 cognominal left 18:01 cognominal joined
sorear good * #perl6 18:06
18:06 Pleiades` joined
moritz \o sorear 18:09
sorear o/ moritz
moritz p6: role A { }; say A ~~ Mu
p6eval rakudo dba6e9, niecza v18-7-ga660099: OUTPUT«True␤»
masak sorear! \o/ 18:15
huh? what about Pugs? 18:16
sorear masak! \o/
masak pugs: say "you there?"
p6eval pugs: OUTPUT«you there?␤»
masak p6: say "OH HAI"
p6eval rakudo dba6e9, niecza v18-7-ga660099: OUTPUT«OH HAI␤»
masak so 'p6' and 'rn' are synonymous now?
sorear 2012.06.22.13.52.16 < dalek> evalbot: 61a54c0 | moritz++ | evalbot.pl:
2012.06.22.13.52.16 < dalek> evalbot: remove pugs from p6/perl6 targets
moritz masak: I've removed it from the 'perl6' target, because it spews errors on every regex invocation
masak ok.
moritz rnp: say 'but I am here too'
p6eval rakudo dba6e9, niecza v18-7-ga660099, pugs: OUTPUT«but I am here too␤»
ajs_home rn: every regex invocation 18:17
p6eval rakudo dba6e9: OUTPUT«===SORRY!===␤Malformed regex␤at /tmp/dl00QH_6cu:1␤»
..niecza v18-7-ga660099: OUTPUT«===SORRY!===␤␤Methods must be used in some kind of package at /tmp/hNfoeI8Idj line 1 (EOF):␤------> every regex invocation⏏<EOL>␤␤Malformed block at /tmp/hNfoeI8Idj line 1 (EOF):␤------> every regex invocation⏏…
sorear rpn: say "hi"
p6eval rakudo dba6e9, niecza v18-7-ga660099, pugs: OUTPUT«hi␤»
sorear prn: say "hi"
p6eval rakudo dba6e9, niecza v18-7-ga660099, pugs: OUTPUT«hi␤»
moritz ... and I've added all 6 permutations :-)
ajs_home seems rn has the same problem. You should fix the "every regex invocation" bug
I'm assuming it should execute all possible regexen? Or perhaps just print "go fish" to $*OUT... 18:18
tadzik :)
ajs_home OK, now I'm way off in the weeds... 18:19
masak pn: say "Pugs and Niecza! \\o/"
aww :)
ajs_home I'm trying things like: Mu.HOW.add_parrot_vtable_mapping(Mu, "destroy", ->($self){ $self.DESTROY }); Mu.HOW.publish_parrot_vtable_mapping(Mu); class A { has $.i; method DESTROY { say "Gone ", .i } } ; for 1..1 -> $i { say "Step $i"; my $tmp = A.new(:$i) }
which, btw, doesn't work
18:20 pupoque left
moritz it needs support in the 6model layer first 18:20
jnthn I suspect adding that first needs destruction vs. deallocation stuff figuring out too 18:21
ajs_home ah ok, I was hoping it was a trivial thing to rip Mu's guts out and replace them with whatever I liked... this, in retrospect, is a crazy assumption
moritz fwiw the rakudo star is now releasable; just needs an announcement, and somebody doing it
ajs_home Q:PIR { $lunch.invoke() } 18:22
masak moritz++
18:22 sftp left
jnthn (R*) I can probably find tuits for that in the next couple of days, but anybody who fancies making the release can feel free to beat me to it :) 18:22
18:22 sftp joined
dalek c: 709d140 | moritz++ | lib/Mu.pod:
add so basic Mu docs
18:24
moritz LHF: improve the wording of the 'clone' docs
18:25 kaare_ left 18:27 MayDaniel joined
sisar doing `perl Configure.pl --gen-nqp` gives me "NQP has been built and installed. ===SORRY!=== NQP revision 2012.06-11-gfcc9a23 required (currently 2012.05-203-g7176d14)." What's wrong? 18:41
moritz that's weird 18:42
sisar It seems that '--gen-nqp' is not building the latest nqp, as it is supposed to.
moritz sisar: is there an older NQP in $PATH maybe?
sisar moritz: i'll check
moritz I don't think it should matter, but maybe it does
sisar moritz: yes there is an older version, but I thought '--gen-nqp' will replace it automatically. 18:45
(found using /rakudo/install/nqp --version) 18:46
err, rakudo/install/bin/nqp --version
moritz sisar: it does, usually 18:47
sisar "usually" ? :-)
moritz "works for me" :-)
sisar "has always worked for me" ;-) 18:48
moritz sisar: I'm curious, if you call Configure.pl --gen-parrot does it rebuild nqp?
dalek p: 8a787d6 | moritz++ | VERSION:
bump VERSION
p: c7f76bc | moritz++ | VERSION:
Merge branch 'release-2012.06.1'
sisar moritz: yes it rebuilds nqp 18:50
moritz: will ^^ these commits help ?
moritz sisar: I doubt it. Talking about NQP versions just made me remember that I should have merged the release branch 18:51
sisar moritz: oh.
sisar tries --gen-parrot again 18:52
yup, same error again :| 19:01
tadzik who wants to write an urldecode implementation? :) 19:02
19:02 MayDaniel left
sisar moritz: can I just manually delete the nqp execulablt in rakudo/install/bin ? 19:02
tadzik oh, URI has one
ask, and the answer will magically turn out
flussence tadzik: does it do utf-8-encoded things properly?
tadzik flussence: I'll check 19:03
flussence: tests seem to indicate that it does
sisar moritz: if this helps, here is my build log for `perl Configure.pl --gen-parrot` gist.github.com/2979501 . The error is at the end. 19:05
flussence the url escape thing bundled in Pod::To::HTML doesn't quite do it right, if that works then maybe I'll swap it 19:06
tadzik flussence: see github.com/ihrd/uri/blob/master/t/escape.t
sisar huh, i just found out, nqp REPL too !
flussence tadzik: looks like exactly what I'm looking for :D
sisar *there is nqp REPL too !
tadzik yep 19:07
but it's a bit lta
masak rn: my @a = [1, 2, 3], [4, 5, 6]; @a.push(@a».reverse); say @a.perl 19:08
p6eval niecza v18-7-ga660099: OUTPUT«Unhandled exception: Unable to resolve method reverse in type Int␤ at /tmp/ZUtci_oCmp line 1 (ANON @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3051 (hyperunary @ 66) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3042 (hyperunary @ 36) ␤ at /hom…
..rakudo dba6e9: OUTPUT«Array.new([1, 2, 3], [4, 5, 6], [1, 2, 3], [4, 5, 6])␤»
masak submits rakudobug 19:09
r: say [1, 2, 3].reverse
p6eval rakudo dba6e9: OUTPUT«3 2 1␤»
masak oh wait. 19:10
moritz >> is hyper
and descends into arrays
masak it's not a bug, it's the crappy spec'd behavior of »
tadzik flussence: yeah, verified on Bailador
masak I shouldn't say "crappy". I just never understood what problem TimToady was solving with that spec change. 19:11
maybe if I did I would think it was great.
oh well. &map works like I want.
moritz if somebody wants to hack a bit of fun and useful Perl 6, write a script that HTMLifies the .pod files in github.com/perl6/doc/ 19:12
sorear i'm with masak here insofar as rationales are one of the most important parts of userdocs
masak r: my @a = [1, 2, 3], [4, 5, 6]; @a.push(map &reverse, @a); say @a.perl
p6eval rakudo dba6e9: OUTPUT«This type cannot unbox to a native integer␤ in method reify at src/gen/CORE.setting:5059␤ in method reify at src/gen/CORE.setting:4958␤ in method reify at src/gen/CORE.setting:4958␤ in method gimme at src/gen/CORE.setting:5342␤ in method push at src/gen/CORE.s…
masak wtf
masak submits rakudobug
moritz r: ~<a b c>.map: &reverse 19:13
p6eval rakudo dba6e9: OUTPUT«This type cannot unbox to a native integer␤ in method reify at src/gen/CORE.setting:5059␤ in method reify at src/gen/CORE.setting:4958␤ in method reify at src/gen/CORE.setting:4958␤ in method gimme at src/gen/CORE.setting:5342␤ in method eager at src/gen/CORE.…
moritz masak: long known
masak ok.
long in RT, too? :)
moritz masak: it's when you pass a callable with slurpy positional to map
yes
masak ah. 19:14
moritz it tries to unbox_i(&code.count)
which is Inf
I thought that pmichaud++'s map branch had fixed that
but maybe it was only an early version that fixed it
masak `map { [.reverse] }` does what I want. 19:15
moritz *.reverse.item might also work 19:16
19:17 brrt joined
moritz I wonder if map + slurpy should warn 19:17
or if it should act as if the .count was 1 19:18
because map + slurpy is the same as just calling the slurpy with the whole list, which means you could have left out the map altogether. If you did write the map, you likely expected something else 19:19
geekosaur warn is probably best. personally I'd expect something like a type mismatch in that case, unless it's a list of lists 19:20
moritz usually warnings are the worst solution 19:21
they stigmatize patterns that might still be useful one way or another
which is why I'm not going straight ahead and implementing or speccing a warning, but rather discuss it here :-) 19:22
19:31 birdwindupbird joined 19:33 GlitchMr left
masak I keep reimplementing perms. 19:43
rn: sub insert-everywhere($e, @a) { map { [@a[^$_], $e, @a[$_..*]] }, 0..@a }; multi perms() { [] }; multi perms($hd, *@tl) { map { insert-everywhere($hd, $_) }, perms |@tl }; say perms(1,2,3).perl 19:44
p6eval niecza v18-7-ga660099: OUTPUT«(timeout)»
..rakudo dba6e9: OUTPUT«([1, 2, 3], [2, 1, 3], [2, 3, 1], [1, 3, 2], [3, 1, 2], [3, 2, 1]).list␤»
masak this might possibly be the nicest implementation I've written so far.
Niecza seems to hiccup on that one. 19:45
r: say |[1, 2, 3, 4, 5, 6] 19:47
p6eval rakudo dba6e9: OUTPUT«123456␤»
masak r: say |(1..6)
p6eval rakudo dba6e9: OUTPUT«No such method 'FLATTENABLE_LIST' for invocant of type 'Range'␤ in block <anon> at /tmp/QoQTK6Marz:1␤␤»
masak could I request such a method in Range?
jnthn Should be pretty easy. 19:48
masak submits rakudobug
19:54 stephenlb left
flussence I'm not having much luck with perl6 lately... now panda seems to be broken for me and I can't even reinstall it :( 20:16
"resolve stage failed for panda: Dependency resolution has failed: stage test failed for File::Tools"
20:19 mj41 left
masak that's unfortunate. 20:19
are you able to debug the error in any way.
s/.$/?/ 20:20
flussence I'm getting:
t/01-file-find.t (Wstat: 0 Tests: 7 Failed: 6) Failed tests: 1-3, 5-7
I've no idea why it'd fail though
it's testing for existence of certain test files, and they *are* there... 20:22
moritz tries
same here
flussence oh! maybe it's because of the dir IO change 20:23
masak sorry about that.
20:23 mj41 joined
moritz eeks 20:23
flussence
.oO( that might also explain why my already-installed panda didn't install anything even when the output showed success... )
20:24
20:24 birdwindupbird left
masak .oO( pro tip: when making API changes to upstream, consider the downstream effects ) 20:25
masak--
flussence no need to be so hard on yourself, things have to break sometimes. :)
20:25 birdwindupbird joined
moritz masak: I guess the right lesson is just not to do it shortly before the release 20:26
spider-mario .u þ
phenny U+00FE LATIN SMALL LETTER THORN (þ)
masak moritz: right. Star hasn't been released yet, has it?
moritz masak: correct, it hasn't 20:27
masak oh phew
flussence++ # discovering
flussence I think someone else would've complained before me if it had :)
moritz masak: second lesson: note API breakages in docs/ChageLog
masak ooh, good idea. 20:28
may I do that now?
moritz sure
masak does it
20:29 vmspb joined
masak will it go under 2012.06 or 2012.07? 20:30
moritz 2012.06
masak ok
(git commit --amend)++
dalek kudo/nom: 85d88b3 | masak++ | docs/ChangeLog:
[docs/ChangeLog] &dir API changed
moritz hm, File::Tools isn't fixed by simply adding .path to the return values of dir() 20:31
20:31 brrt left
masak that would be because .path gives the full path, whereas &dir used to return only filenames. 20:32
moritz ok, how do I get only the file name from IO?
masak I didn't spec or implement that.
but one way would be .split('/')[*-1], I guess.
20:33 thou joined
moritz masak: have you patched ufo already? 20:34
masak um, no.
I can do that. 20:35
moritz it probably simplifies the code a bit
masak aye, looks like.
it needs a patch to dirwalk at the end. 20:36
I'm on it.
moritz modularization++
tadzik: moritz.faui2k3.org/tmp/0001-fix-fin...nges.patch 20:37
masak moritz++ 20:42
20:46 thou left 20:48 MayDaniel joined
moritz masak: would you please set up dalek notifications for ufo? 20:49
masak somehow I thought ufo would have them already.
where's dalek again?
hm, whiteknight's repos? 20:50
moritz the instructions are in mu
masak oki, thanks.
moritz misc/dalek-push.txt or so
jnthn: I tried to add two lines to Range.pm 20:51
+ method FLATTENABLE_LIST() { nqp::getattr(self.flat, List, '$!items') }
+ method FLATTENABLE_HASH() { nqp::hash() }
but f(|$range) gives me "flattened parameters must be a hash or array" 20:52
jnthn moritz: Does .flat actually reify the thing?
moritz nqp: say (1..5).flat.WHAT 20:53
p6eval nqp: OUTPUT«Confused at line 2, near "say (1..5)"␤current instr.: 'nqp;HLL;Grammar;panic' pc 22164 (src/stage2/gen/NQPHLL.pir:8486) (src/stage2/gen/NQPHLL.pm:326)␤»
moritz r: say (1..5).flat.WHAT
p6eval rakudo dba6e9: OUTPUT«List()␤»
moritz r: say (1..5).flat.gimme(1)
p6eval rakudo dba6e9: OUTPUT«1␤»
jnthn No :)
maybe needs .eager too
moritz ah, that's a parrot error 20:54
jnthn yes
moritz tries again, eagerly this time 20:55
dalek o: e55c146 | moritz++ | bin/ufo:
fix up installation mkdir
20:57
o: db12dc5 | moritz++ | bin/ufo:
handle installing scripts
o: c863621 | moritz++ | bin/ufo:
install .pod files
o: 45773b2 | moritz++ | bin/ufo:
handle dependencies to modules not in the current distribution (ie ignore them)
o: e889d21 | moritz++ | bin/ufo:
do not rely on the "find" executable

based on dirwalk code by not_gerd++
o: a644578 | (Carl Mäsak)++ | bin/ufo:
[bin/ufo] chased Rakudo &dir API change

A simplifying change to &dirwalk. &dir now dresses up the path as an IO object.
masak hook seems to be working.
moritz++
moritz masak: is it noremal that it reports (Carl Mäsak)++ instead of masak++? 20:58
ah, in rakudo you're "Carl Masak"
masak hrm. 20:59
dalek kudo/nom: 582c906 | moritz++ | / (2 files):
allow ranges to interpolate into argument lists
21:01
moritz remote: fatal: bad object b9c2e9529d1d17ef5158a67a65cc2bf1ef14a547 21:02
remote: aborting due to possible repository corruption on the remote side.
I got this during a rakudo 'git pull'
second one worked
but that's a scary error message :-) 21:03
Woodi good * :) there is nice bear vs newest & expensives Nikon thread. info from fredmiranda.com: www.dpreview.com/news/2012/05/21/Gr...d-Nikon-D4 21:04
21:05 thou joined
moritz was it a bipolar bear? 21:06
nr: .say for Iterable, Iterator 21:07
p6eval niecza v18-7-ga660099: OUTPUT«===SORRY!===␤␤Undeclared name:␤ 'Iterable' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1401 (die @ 5) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37) ␤ at /hom…
..rakudo dba6e9: OUTPUT«Iterable()␤Iterator()␤»
masak or did it object to the bipolar objectives in the camera?
moritz r: class A { has $.x; method succ { A.new(x => $.x + 1) } }; say (A.new(x => 3)..A.new(x => 5)).list.perl 21:10
p6eval rakudo dba6e9: OUTPUT«(A.new(x => 3),).list␤»
21:10 birdwindupbird left
Woodi ppls definitly states that that grizzli prefer Canon over Nikon or Nikon over Canon so bipolarity here :) 21:11
tadzik moritz++ # thanks, applied 21:14
ah, I need a new enough Rakudo to test it :)
21:15 thou left
moritz r: say ('a' ^.. 'f').list 21:17
p6eval rakudo 582c90: OUTPUT«b c d e f␤»
21:17 pupoque joined
masak r: say ('q' ^..^ 'q').list 21:20
p6eval rakudo 582c90: OUTPUT«␤»
szabgab how can I make a push NOT flatten the hash ? @a.push( %h ) 21:23
masak %h.item
or $%h
r: my @a; my %h = 1..4; @a.push(%h); say @a 21:24
p6eval rakudo 582c90: OUTPUT«1 2 3 4␤»
masak r: my @a; my %h = 1..4; @a.push(%h.item); say @a.perl
p6eval rakudo 582c90: OUTPUT«Array.new({"1" => 2, "3" => 4})␤»
masak r: my @a; my %h = 1..4; @a.push($%h); say @a.perl
p6eval rakudo 582c90: OUTPUT«===SORRY!===␤Invalid hard reference syntax at line 2, near "%h); say @"␤»
masak oh, forget about $%h for now :)
szabgab masak: yeah I saw that :)
thanks for the .item though 21:25
masak np
21:33 herbert_ joined
dalek c: 04c86cc | moritz++ | lib/Range.pod:
initial Range docs
21:34
masak those look like excellent docs. 21:35
I'm more inclined to jump in now that I see the standard of them. 21:36
21:40 MayDaniel left
dalek nda: b78a5a0 | tadzik++ | ext/File/Find.pm:
Update File::Find for new Rakudo
21:42
tadzik moritz: btw, did you look at the panda/p6doc issue?
my new ufo doesn't work with my new rakudo 21:49
spider-mario I just got an LTA error message
“Can not get non-existent attribute '$!ex' on class 'Exception'”
tadzik gist.github.com/2980176
"Can not"?
sergot tadzik: there are some "can_not"s. :) 21:50
tadzik: if that's what you mean. 21:51
tadzik I thought is was to be unified as "cannot" everywhere
spider-mario: code?
spider-mario I may be able to reproduce it here
r: sub test(%?faulty){}
p6eval rakudo 582c90: OUTPUT«===SORRY!===␤In signature parameter %?faulty, it is illegal to use the ? twigil␤at /tmp/oK01bLjizh:1␤»
sergot nqp/src/6model/reprs/P6opaque.c:472 - that's this error message
tadzik indeed 21:52
sergot or nqp/src/6model/reprs/CStruct.c:406
tadzik and jnthn wrote that, so I assume it's correct :) 21:53
jnthn The error is a bit of an "internal" one.
Most likely wrong use of nqp::getattr(...) somewhere. 21:54
21:54 herbert_ left 21:55 mikemol_ joined
masak good night, butterflies. 21:57
diakopter o
tadzik goonight 21:58
sergot good night :)
21:59 mikemol_ left 22:07 sergot left 22:08 pupoque left, pupoque joined
jnthn 'night, #perl6 22:14
22:56 vmspb left 23:05 am0c left 23:28 spider-mario left 23:29 PacoAir left
pmichaud good evening, #perl6 23:32
tadzik good evening pmichaud
sorear good evening pmichaud and jnthn
*tadzik 23:33
23:33 pupoque left
pmichaud r: sub xyz(*@a) { say @a.join('|'); }; my $c = 3; xyz(|$c); 23:34
p6eval rakudo 582c90: OUTPUT«No such method 'FLATTENABLE_LIST' for invocant of type 'Int'␤ in block <anon> at /tmp/7qU3SLJsLk:1␤␤»
dalek c: 58486e8 | moritz++ | lib/Range.pod:
[Range] add some examples
23:36
23:41 pupoque joined
pmichaud r: shell('ls'); 23:44
p6eval rakudo 582c90: OUTPUT«shell is disallowed in restricted setting␤ in sub restricted at src/RESTRICTED.setting:2␤ in sub shell at src/RESTRICTED.setting:7␤ in block <anon> at /tmp/Qz_TdeuUls:1␤␤»
pmichaud \o/ 23:45
skids finds himself wishing there was adverbial pair sugar like unto :adverbkey⌈This value is a string with spaces⌉ 23:52
pmichaud :adverb("This value is a string with spaces") # :-) 23:53
you need more sugar than that???
skids Need? no. but when my string contains ' and ", :x(q«...») gets clunky. 23:55
pmichaud just a sec, checking 23:56
could do: :adverb(「my string here」) 23:58
.u 」
phenny U+FF63 HALFWIDTH RIGHT CORNER BRACKET (」)
pmichaud and it wouldn't surprise me too much if :adverb「my string here」 could be made to work. 23:59
skids Well, it's probably only because :x<array of identifiers> is sitting there taunting me that I pay it any mind :-)