»ö« 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:07 proller_ left 00:12 proller joined 00:19 snearch left
sorear "prefix or term" is a major offender with 12201 00:28
now, "prefix or term" only needs enough syntax to tell whether it's looking at a prefix or at a term ... but it has enough LTM info to parse the *entire* term 00:29
in many cases
00:32 shinobicl___ left 00:53 Trashlord left 00:58 plutoid joined, leprevost left
colomon sorear: Does "having changed the behavior, STD is quite completely broken. This is not an easy fix." mean that you know that your latest patches lead to about 20 failing test files in spectest? 01:03
sorear which latest patches? I've had to revert everything I've tried so far 01:08
sorear screams in fury
I want to just abandon the project... I've lost almost all hope that it will ever be usable 01:11
maybe you mean my changes yesterday - which files are having trouble? 01:12
01:14 leprevost joined
sorear is tempted to abandon STD and write a faster parser from scratch 01:15
this experiment in combining the parser with the lexer using a LTM engine is a complete failure 01:18
01:18 scott_ joined 01:19 scott_ is now known as Guest5869 01:22 noam__ left, noam__ joined 01:25 thou joined 01:28 whiteknight left, whiteknight joined
TimToady creeps back into the room and hopes nobody notices him... 01:42
phenny TimToady: 19 Feb 23:24Z <sorear> tell TimToady I would like explicit confirmation that in [ <a> || <b> ], <a> is supposed to be visible to LTM.
TimToady oops
busted by phenny
I believe STD's current semantics depend on <a> being visible 01:43
TimToady thinks about ways to reduce the state space... 01:44
cat we figure out what percentage of the tokens start with identifiers?
it seems there's some way there that, having run the top-level lexer, you shouldn't have to build an sublexers that are a part of it 01:46
the fates were a partial attempt to do that, but I'm not sure it actually prevented the sublexers from building
just from running 01:47
what are the possibilities that a more compact and/or lazy representation of the state space might help? 01:49
how much of the lexer for "standard" STD can be precomputed
would it help sorear++'s sanity if we bought em a supercomputer so ey can think about this in eir hindbrane for a while? :) 01:51
TimToady hopes there are paths forward from the 999th light bulb to the 1000th... 01:52
mikemol I just got a slick Fermi-based video card with over 300 cores, and nothing to run on it. Would that count? 01:53
Just give me a good reasoning engine I can throw at it. >.>
colomon sorear: sorry for disappearing on you there. I pulled the latest niecza before dinner and spectest it. You've not pushed any changes since. Give me a minute and I'll try to get a closer look at what is happening.
sorear: t/spec/integration/error-reporting.t .. Unhandled exception: Unable to locate module Test::Util in @path 01:55
01:55 whiteknight left 02:00 lestrrat left
colomon sorear: looks like we're having problems loading modules? 02:01
at least, that's every error I've looked into so far, not just Test::Util
02:02 lestrrat joined
colomon or, it might be that BEGIN isn't working properly? 02:07
02:09 Chillance left 02:15 am0c joined
colomon ade397a9fa95cf8fd3ca83b54bb110e0a2aa91d1 is the commit which introduced the problem 02:21
TimToady taking someone near and dear to the airport to visit daughters... & 02:31
03:08 woosley joined 03:29 orafu left, orafu joined 03:34 Bucciarati joined 03:36 thou left 03:37 preflex joined 03:40 thou joined 03:41 thou left 03:56 thou joined 04:00 araujo left 04:05 att_ left 04:17 etneg joined
TimToady Heh. "In science, if you know what you are doing, you should not be doing it. In engineering, if you do not know what you are doing, you should not be doing it. Of course, you seldom, if ever, see either pure state." —Richard Hamming, The Art of Doing Science and Engineering 04:17
especially here... 04:20
05:04 mucker joined, kaleem joined 05:06 mucker left, mucker joined 05:07 birdwindupbird joined 05:39 plutoid left
Teratogen Meanwhile, in Finland: 05:52
i.imgur.com/0ORNp.jpg
06:00 araujo joined, araujo left, araujo joined 06:07 lestrrat left 06:08 lestrrat joined 06:35 ribayr left 06:37 dbr joined 06:59 JimmyZ_ joined 07:02 jferrero left 07:19 lestrrat left 07:20 plutoid joined 07:21 lestrrat joined 07:27 MayDaniel joined 07:28 MayDaniel left
dalek ecza: 3474558 | sorear++ | / (3 files):
Redo @*INC handling in a slightly more sane way that is compatible with parse tree pruning
07:37
07:42 proller left 07:45 tarch joined 07:56 JimmyZ_ left 08:07 noam__ left, noam__ joined
sorear heh, it seems that DFA caching is broken in niecza 08:08
maximum number of NFA nodes resident after a full collection: 351596 08:09
maximum number of DFA nodes resident after a full collection: 3834 08:10
I am now thinking intently about NFA representations using shared substructure (since most of that 351596 is just copies of the <term> protoregex lexer) 08:14
au that's what Colm does, apparently 08:15
sorear Colm?
au (direct substructure sharing instead of tree hashing)
sorear
.oO( not Köln )
au www.complang.org/colm/ www.complang.org/colm/thurston-phdthesis.pdf
similar to rules engine, with autobuilt state rollback on backtracking 08:16
sorear It sounds like ey reinvented Prolog.
Universal state rollback on backtracking is a very cool feature
au ey also claims it's rather fast and memory efficient, though.
(as compared to traditional nondet) 08:17
from the paper looks like a simple copy-on-write sharing to me
(it's been a while since I looked at colm's code, not exactly sure about implementation details.)
sorear this is a rather big break for me because it means that one of the most constraining optimizations was totally premature 08:19
also, o/ au
au /o 08:20
08:27 c1sung joined 08:34 roland333 joined
roland333 Evening everyone. 08:35
sorear Hello (and welcome?) roland333.
roland333 Beginning my perl journey and heard about this channel from the web.
Whats everybody's proficiency level? 08:36
thats a confirm on the welcome sorear. This is my first time here, as you've gathered(I assume?).
sorear Sometimes I fail to remember people. :) 08:37
This is the channel where a bunch of young'uns work on developing the language that will carry the flag of "Perl" for the next 20 years.
roland333 Ahh, could you recommend a channel for beginning users? Maybe i'll come back to this channel in a year or so. 08:38
sorear I would not say this is a bad place for *beginners*.
roland333 Good! 08:39
sorear It's more a question of your goals - are they located in the present, or the medium future?
roland333 medium
I'm trying to find my calling and I have a friend who is a master(no hyperbole) perl programmer who convinced me to dive in. 08:40
i'm planning on devoting as much of my free time as possible to the art. To cultivate an obsession if you will. 08:41
08:41 bacek joined
sorear I've been part of the Perl 6 effort for about two years now 08:41
roland333 Let me ask you this, I have Perl 5 installed on my macbook, is it worth installing Perl 6?
08:42 mj41 joined
roland333 If only for experience working with terminal and getting used to fucking around in the deep. 08:42
Teratogen is waiting patiently for perl 6.0.0
sorear Perl 6 is not an upgrade to Perl 5
roland333 haha
sorear It was supposed to be, once
roland333 What is the purpose then? 08:43
to be an addendum?
sorear It will carry the flag of Perl for the next 20 years
roland333 Why couldn't Perl 5 carry the flag of Perl for the next 20 years?
Teratogen Perl 5 is being developed ferociously
sorear Because Perl 5 has major design problems and it was collectively decided in 2001 that it would be better to attempt a redesign 08:44
Teratogen sorear, that is not stopping the Perl 5 development team from plopping out new versions.
sorear Unfortunately, Larry and Patrick both had major life crises, which has slowed down Perl 6 a lot
roland333 Ahh, okay. SO let me understand you right.
Perl 6 is not an upgrade, its a re-design. from the ground up? 08:45
sorear sometime around 2006 a group of people gave up waiting and forked Perl 5
Yes.
Teratogen: I don't blame #p5p for doing the most practical thing
so at this point we have two teams working in parallel under the name "Perl" 08:46
roland333 So does it make any difference if I learn to code in 5 or 6? I'm assuming the function and syntax will be identical?
*functions
sorear the folks in #p5p are working on the same 'ol codebase from 1987 08:47
cognominal___ sorear, I did not know there was a new perl 5 fork.
roland333 I really have the most rudimentary understanding of the most basic programming concepts as you can tell.
sorear roland333: Syntax is not identical, but they're close enough that you can switch between them without much effort
roland333 Okay, cool. 08:48
HI szabgag. Thanks for the video!
Teratogen nom: say 1+1
p6eval nom ac5d99: OUTPUT«2␤»
Teratogen it works!
sorear There's a general conception in Perl 5 circles that we're a bunch of idealists who will never amount to anything 08:49
They may be right
roland333 haha.
Isn't idealism one of the main tenets of Perl? 08:50
sorear If you want to throw a lot of your time at an extremely friendly community, in a setting that's still wet enough for you to make a significant impression, then #perl6 is the right place for you
roland333 thats the idea I got from my buddy, but he may be guilty of transferrence
sorear might be good to look at some of TimToady's talks. whipitupitude, manuplexity...
roland333 was that @ me? 08:51
sorear yes
roland333 Alright, i'll bookmark that.
sorear you've probably heard of the Three Virtues of Programmers already
roland333 nope
my friend is unorthodox. 08:52
and has no discernable virtue.
to the orthodox eye at least.
thankfully neither of mine are.
or none I should say, considering the third eye.
jnthn morning, #perl6 08:53
au /o jnthn
sorear the Three Virtues of Programmers, as found in the Llama Book and probably other sources, are Lazyness, Impatience, and Hubris 08:54
I guess idealism falls under Hubris.
roland333 haha
sorear o/ jnthn
roland333 I think he did mention that actually. Friday night. I was drunk and high and he was massively sideways.
Timtoady is larry wall, just to confirm? 08:55
sorear Yep
roland333 I watched his talk on his linguistics background.
LOVED the joke about how english borrows from etc, etc, and japanese, "a skosh". 08:56
sorear Although if you ask him, he will twist words to make you think he is denying it.
roland333 haha
08:56 noam__ left
roland333 I like jokes that test your intelligence and that was one of the best examples i've heard. 08:56
08:56 noam__ joined 08:57 thou left
sorear was quite suprised to learn that "tycoon" and "typhoon" are actually from Japanese, although if they were borrowed post-Hepburn they would be spelled taifun and taikun 08:57
roland333 I was similarly amazed to discover the same of "skosh"
Teratogen sorear, what parts of Perl 6 are you working on? 08:58
you've piqued my curiosity.
roland333 How rude. I hope it was decent.
sorear Teratogen: I created niecza? 08:59
Teratogen cool
sorear maybe I have not been advertizing this fact enough.
roland333 never forget hubris
sorear yeah, I'm going on way too much deeply-ingrained modesty 09:00
roland333 Would you recommend learning perl or beginning perl as a starter book for a beginner?
Timbus laughed
which parts? all the parts
sorear although I seem to have impatience down pat; I worked myself into a crying fit last night over repeatedly failing to make niecza any faster 09:01
roland333: which one has a llama on the front? that's the only one I've read
roland333 thats learning.
au ..."[Lazyness, Impatience, and Hubris] are virtues of passion. They are also virtues of an individual. They are not, however, virtues of community. The virtues of community sound like their opposites: diligence, patience, and humility." 09:02
Timbus i keep getting this dumb urge to try putting nqp on llvm
roland333 thats the one my friend recommended. They both look good so I suppose i'll read both.
sorear in Perl circles the main books are universally known as the Llama Book, the Camel Book, and the Alpaca(?) Book
Timbus i just want to know how much faster it could get
roland333 Yeah, i'm savvy.
sorear which one is "beginning"?
I don't think I've ever heard of "Beginning Perl"
roland333 I get the sense that they're both well written but beginning is the one featured for free on perl.org 09:03
au sorear: it's Simon Cozens's take
roland333 learn.perl.org/books/beginning-perl/
au, do you have an opinion?
au similar to scope to chromatic's take "Modern Perl"
roland333 a bit of context, i'm very new. No pubes inexperienced. 09:04
sorear roland333: I recommend you /whois everybody
roland333 ahh! thanks.
au roland333: I'd recommend Modern Perl, if only because it has a PDF version. onyxneon.com/books/modern_perl/mode...erl_a4.pdf
sorear "Modern Perl" is kind of sort of the name adopted by the community that rebooted Perl 5 09:05
au but if you like paper version, a new edition is at www.amazon.com/gp/product/0977920178
Timbus here is a site made recently: perl-tutorial.org/
sorear roland333: au and jnthn you may know of under other names
Timbus it was made because googling 'perl tutorial' would get you tutes written before 2000 09:06
09:06 zby_home left
roland333 hey...does anyone know scottie D? 09:06
sorear roland333: stupid question, how much do you know about programming in general?
who?
roland333 deindorfer?
sorear phenny: "deindorfer"? 09:07
phenny sorear: "your dorf" (de to en, translate.google.com)
sorear phenny: "dorf"?
roland333 haha
phenny sorear: "village" (de to en, translate.google.com)
roland333 thats amazing
sorear what about my village? 09:08
au Timbus: wow, thx for the link, didn't know of that before. it also contains a link to the PDF version of the new edition. modernperlbooks.com/drafts/modern_p..._draft.pdf
roland333 The reason I mention your village is he is the friend who is getting me into programming
Teratogen my only claim to fame:
www.users.qwest.net/~intertwingled/hooters/
picturs of me and Randal Schwartz having lunch at H@@TERS
sorear blinks 09:09
Timbus ahaha
roland333 He's friends with some notorious python(I think) programmers in england.
Timbus thank you internet
roland333 But anyhow to answer your question, I learned a little basic and pascal in high school like 10 years ago.
Teratogen there is a great story about that waitress
moritz Teratogen: if there's no immediate connection to Perl 6, it might not be on topic here (hint, hint) 09:10
Teratogen well, it's still a pretty good story
but ok!
sorear I would not have expected hooters to be mentioned here. It seems to be quite incongruous on the gender-politics axis.
Teratogen Randal loves H@@TERS 09:11
roland333 haha. I need to invite my friend into this chat, he would love the way you speak sorear.
colomon sorear++: spectests are fine now. thank you!
roland333 although, i think gender politics axes would be a better term. 09:12
sorear is 21, a little directionless in life 09:13
probably my biggest claim to fame is having been a founding developer of xmonad. Irrationally, I am irked at dons for doing as much as he did to make xmonad universally known 09:14
roland333 i find that difficult to believe, at least for in the same sense i am directionless.
au sorear: “The essential thing "in heaven and earth" is . . . that there should be long obedience in the same directionlessness; there thereby results, and has always resulted in the long run, something which has made life worth living.”
roland333 source? 09:15
au Nietzsche, quoted by TimToday, 2nd State of the Onion ("-lessness" mine)
*TimToady
roland333 i think the -lessness improves the thing 09:16
au :)
roland333 let me ask this to all europeans. Hows the market for perl programmers where you are? 09:17
sorear yeah, I'm just not thrilled with being as tied down and meansless as I am
I keep having to turn down invitations to Norway
roland333 WHY WOULD YOU DO THAT?
oh, you're in sweden
nvm mind 09:18
sorear No, I'm in California
roland333 Im in america.
alright, the comment stands
question i mean
sorear Servers don't have anything to do with geography, they're handed out randomly
roland333 ahh
thats interesting. 09:19
moritz accepts invitations to Norway
roland333 im surprised at that fact
sorear You've been assigned the CO server, but your IP resolves to Windber PA
roland333 how'd you find out where my ip resolves to?
sorear 1. /whois roland333 09:20
2. 01:18 [freenode] -!- roland333 [62dba5dd@gateway/web/freenode/ip.98.219.165.221]
3. www.ip2location.com/98.219.165.221
roland333 okay experimenting.....
sorear It won't work on me because my local ISP sucks and I'm forwarding my connection through a colo in the East 09:21
(I'm in San Diego btw)
roland333 still. for the experience.
brb
Teratogen San Diego!
That's Ron Burgundy country!
roland333 Hooters!
ha 09:22
sorear trouble is, I don't know thing one about travelling on my own :|
09:22 woosley left
moritz sorear: time to start gathering experience :-) 09:22
Teratogen sorear: go shunpiking
roland333 +1
to moritzs comment 09:23
sorear and I have been strongly advised that I should not make my first trip be trans-Atlantic
moritz sorear: then sign up for this year's YAPC::NA, or visit colomon++ or so :-) 09:24
roland333 fuck that noise
sorear (the last time this came up, YAPC::EU was in Latvia and it came with a side order of "Also, I don't like former Soviet republics.". People...)
arnsholt sorear: Traveling on your own isn't too hard
Can be quite relaxing in fact
roland333 depends on your personality. 09:25
sorear I'm one of those losers who has never not lived with parents nor held a job in eir life.
roland333 sorear: why did i get this location back from ip2location: UNITED STATES, DISTRICT OF COLUMBIA, WASHINGTON ?
Teratogen join the Air Force
roland333 ugh
i say again fuck that noise.
sorear roland333: quality of information in geoip databases varies widely 09:26
au recommends Bose QuietComfort 3 noise-cancellation earphone for that purpose.
sorear I've never seen the country be wrong, but anything below that is uncertain
moritz for me, traveling always has cycles of stress (getting to the next means of transport) and relaxation (waiting for said means of transport, or waiting for it to arrive)
au (where "that purpose" means long distance traveling. (any other earphones with noise cancellation will do, really.)) 09:27
roland333 well, i skipped step 2
and just cp'd your ip.
au, i disagree. 09:28
best to experience the sights and sounds fully.
but to each their own.
au *nod*
sorear roland333: what, then, did you mean by "fuck that noise"?
roland333: try 72.207.121.125 09:29
roland333 haha, an expression that basically means I disagree with everything about that idea, event, situation.
au oh. the irc equivalent would be /ignore :)
sorear roland333: the ip you have from freenode is the ip for a VPS provided by appflux.net
roland333 how would i divine that information without you telling me?
btw, that gave me poway as your location. 09:30
sorear I guess you could make a fake court order for connection logs and send it off to AppFlux
roland333 riding cox's cable.
lol.
sorear poway, close enough 09:31
roland333 yeah, looked close to me on gmaps.
sorear I'm in a suburb in eastern SD county
not the city proper
(not Poway. I won't tell you which one)
roland333 haha, i'm not worried about that.
Teratogen We used to travel from Phoenix to San Diego to vacation when I was a kid, we made the obligatory pit stops at Yuma and El Centro. 09:32
09:33 dakkar joined, grondilu joined, JimmyZ_ joined
grondilu couldn't compile rakudo :( 09:33
masak good antenoon, #perl6
roland333 'ello 'ello
sorear g'day masak.
roland333 So did anyone have any other input about the job market for perl programmers where they are? Especially people in Europe? 09:34
au masak
roland333 parabola forward slash? What is the meaning of that
JimmyZ_ good afternoon, masak!
jnthn o/ masak
sorear I misread that as づ
au roland333: it's one-half of the full ⟈⟉ gesture. :)
jnthn masak: Is the meaning of "antenoon" something like "I got up late and don't want to admit it's almost afternoon"? :) 09:35
roland333 still no idea of the meaning au.
au roland333: ok. if you see \o/ around here, the \ / parts are arms and "o" is head.
sorear I think au is trying to tell us that she has a very wide head. 09:36
roland333 yeap, got that.
au so o/ means, roughly, waving hello (or goodbye, depending on rtl/ltr'ness).
roland333 so o/ is going up for a high five?
ahh.
close, gives you an insight to my mentality.
au :)
roland333 and rtl/ltr?
09:36 tarch_ joined
sorear don't worry, we're all a little mental. 09:36
roland333 haha
sorear lefttoright
masak jnthn: sir, you know me too well. :)
roland333 ahhh.
My friend scott would fit right in too. 09:37
Completely mental.
sorear roland333: masak and jnthn are in Sweden
09:37 tarch left
masak that's mental in itself. 09:37
roland333 Swedes! Do you need perl programmers here?
sorear for values of "in" that may not include "right now"
roland333 *there?
sorear you lost me. 09:38
meaning they're travelling?
masak well, I can't speak for all of Sweden, but the more Perl programmers, the better.
masak is in Sweden *right now*
roland333 haha
sorear the eurozone has no internal borders. it's very common for people to make trips across national lines for purposes like shopping or going to work
roland333 Gotcha. Knew that but couldn't make the connection clearly. 09:39
09:39 jerome_ joined
sorear I happen to know that masak and jnthn are currently employed in Sweden, but this gives me incomplete information about where they live or currently are 09:39
although I admit it's unlikely masak lives in Portugal.
roland333 masak, seriously though, if I turned myself into a rip-ass perl programmer do you think I could get a job in sweden/europe?
sorear wonders if they have a rail tunnel through the Pyrennes yet 09:40
roland333 two wise perlheads told me to go learn python but i'm stubborn.
sorear I haven't bothered to learn Python yet.
roland333 If i can earn enough to feed myself and have a roof over my head doing something interesting i'm happy.
sorear I can get away with this because I know more languages than I can easily count.
roland333 haha
how many fingers do you have? 09:41
sorear 10
roland333 well shit, i'm impressed.
is perl your favorite?
sorear semantically difficult, that is. Should I count mc68000 assembly and x86 assembly as different languages?
roland333 incomplete data. 09:42
$sorear:
sorear I don't really have a "favorite" as such.
I've been using Perl, C#, and C a lot lately.
roland333 Wait, didn't you say you've never had a job?
moritz somehow that reminds of bacek++, who says that English is his fourth language, after Russion, rude Russian and very rude Russian :-)
sorear Yes.
roland333 lol
why aren't you making money with you skill? 09:43
sorear Once you've mastered the fundamentals of programming, picking up additional languages is no big deal.
J took me four days, and that's about as exotic a language as you can get without getting into deliberately-obfuscated territory. 09:44
Learning at least one assembly language helps a lot and I recommend it to anyone. 09:45
jnthn sorear: Note, Sweden ain't in the eurozone. It is in the EU though. (Eurozone is that slightly hosed single currency thing.) 09:46
And yes, I can freely live/work in any EU country. :)
sorear ah, right
I'm thinking of the Maastrict treaty maybe? this is what I get for trying to talk about a place I don't live in at 2am 09:47
roland333 Dutch dutch dutch.
So, sorear. Why no make the money? 09:48
arnsholt sorear: Schengen (modulo spelling), probably
masak roland333: I think you could get a job in Sweden. I also think you should learn Perl really well. start now.
roland333 Masak. THank you sir. I take your meaning and had the same thought. I will be back later. 09:49
arnsholt Schengen is the one that establishes passport-free travel and such
masak roland333: but the two may or may not have any causal relation. I wouldn't say there are extremely many Perl jobs here, compared to, say .NET jobs.
there aren't 0 Perl jobs either. but you have to look around a bit.
sorear arnsholt: yes, looked it up and that's definitely what I mean
jnthn There's more .Net jobs than decent .net developers here :)
roland333 Masak, i'm gonna go study perl for awhile.
jnthn Though I can't say the jobs are always decent. ;) 09:50
roland333 I'll be back tomorrow hopefully.
sorear I wonder if I count as a decent .net developer.
grondilu compiling rakudo: Unrecognized nqp:: opcode 'nqp::div_In' at line 6640, near ");\n }\n "
sorear My use of the placeform is certainly unorthodox.
roland333 Night all, Thanks for being so interesting and personable. See ya!
sorear bye roland333.
roland333 "goodbye, world"
sorear I, too, require the zees.
dmr :( 09:51
roland333 *"goodbye, world/n";
:)
09:51 roland333 left
sorear out 09:51
jnthn 'night, sorear
Teratogen sleep? just take more caffeine! 09:52
moritz grondilu: that means your NQP is too old
grondilu so what should I do?
--gen-nqp?
au --gen-parrot ? 09:53
grondilu tries perl Configure.pl --gen-parrot --gen-nqp
jnthn That should do it 09:55
grondilu had totally forgotten that this should be done from times to times
arnsholt If you skim the list of changed files when you pull, and NQP_REVISION is updated, you have to redo NQP 09:56
moritz erm
arnsholt Or perhaps not?
moritz doesn't the build even complain if NQP is too old?
but yes, when NQP_REVISION changes, you have to rebuild nqp 09:57
09:57 _dbr joined
arnsholt Configure complains, IIRC 09:57
grondilu I had no compaint whatsoever :/
moritz ah, I think it only complains if Makefile is out of date
arnsholt But if you just git pull && make it'll chug along I think
grondilu I did git pull && make and no complain :/
09:59 dbr left
moritz grondilu: are you building in parallel (ie MAKE_OPTIONS contains a -j flag or so)? 10:00
10:00 kaleem_ joined
moritz thing is, when I locally change my NQP_REVISION, I get 10:02
10:02 kaleem left
moritz $ make 10:02
NQP 2012.01-10-g7f521e3 is too old (2012.01-165-g790fc9a required), run something like
...
grondilu moritz: I doubt so, but I would have to check the makefile to make sure
10:03 plutoid left
moritz grondilu: don't check the makefile, it's either in your environment, or not at all 10:03
10:04 PerlPilot joined, dakkar left, orafu left, pothos left, PerlJam left
grondilu then no. 10:04
10:04 dakkar joined, yves joined 10:05 jfried joined 10:06 pothos joined
moritz then I don't understand what's wrong :( 10:06
but I've seen lots of build fail due to this particular NQP revision bump, much more than with any other single one before 10:07
grondilu I'm still waiting for the second attempt to end anyway. Maybe it'll work fine with the new NQP
moritz hm, curious, the new NQP revision is 10 commits after the last NQP tag
if some function compares it lexicographically instead of as a number, that might explain it... 10:08
masak sounds like a decent guess.
10:09 orafu joined
grondilu AHHH it still failed :( 10:09
moritz but cmp_rev uses <=>, not cmp 10:10
grondilu full error log: s0.barwen.ch/~grondilu/err-rakudo 10:12
moritz grondilu: what does ./install/bin/nqp -v report as nqp version? 10:13
grondilu This is nqp version 2012.01-10-g2246b9d built on parrot 4.0.0 revision RELEASE_4_0_0-85-g8a1265a 10:14
hum not as new as expected, right?
moritz oh wtf 10:15
git log 2012.01-10-g2246b9d reports as first commit 2246b9dd83c89d06e9fee678b226562fec08eaa0 Fix preclim handling in operator precedence parser 10:16
but
$ git describe origin/master 10:17
2012.01-10-g7f521e3
grondilu actualy when I do perl Configure --gen-parrot --gen-nqp I get only a short message. It doesn't seem to be compiling anything.
moritz note that it's a different short sha1
10:17 fsergot left
grondilu git describe origin/master => ZA-1975-gb2cd763 10:17
moritz grondilu: in nqp, not in rakudo 10:18
so, there are two different commits that describe themselves as 2012.01-10-something
grondilu 2012.01-10-g2246b9d
moritz even though they appear in the same branch
grondilu I did a 'git pull' inside nqp and I got a weird message about branches 10:19
moritz yes, because you're not a branch yet
grondilu is confused 10:20
moritz git checkout master
git pull
should help
oh, I guess I know what's happening 10:21
jnthn++ cherry-picked a commit from master to another branch, where it then got a higher commit count since the last tag 10:22
grondilu ./install/bin/nqp -v still tells me 2012.01-10-g2246b9d
dalek p: bcde9c4 | moritz++ | README:
bump copyright year in README
10:23
grondilu any other idea?
moritz grondilu: just a sec
dalek kudo/nom: c1243d6 | moritz++ | tools/build/NQP_REVISION:
bump NQP revision, in the hope that this fixes the build
10:24
moritz grondilu: try to git pull rakudo, and then try again to perl Configure.pl --gen-nqp
grondilu ok now it seems that nqp is actually getting compiled :) 10:25
so I guess that should help 10:26
thanks
unfortunately I'm running out of battery power so I won't be able to tell you today if it finally worked out. 10:30
moritz no hurry; though I do think it'll work out fine 10:31
and for the release we make a new nqp tag, so that won't go wrong
grondilu is trying to compile rakudo now despite his low battery status 10:35
10:38 Trashlord joined, daxim joined 10:40 kaleem_ left, kaleem joined 10:42 pernatiy left
jnthn Guess next release is only a few days away. :) 10:42
moritz yes. We should really find a release manager 10:43
jnthn Yes.
moritz I've done the last two releases, and while I might be able to chime in, I'd rather not be *the* release manager :-)
jnthn Aye 10:44
Would be good to spread the load here
jnthn is happy to do the Star one this month 10:45
Would be good to spred that one too of course
tadzik I can probably make a release 10:50
Teratogen please release Perl 6.0.0 10:51
tadzik We could name it 6.0.0 if you wish, but I don't think that'd help anything
Teratogen ok =( 10:52
10:56 fsergot joined
fsergot o/ 10:58
10:58 lateau__ joined
tadzik \o 10:59
jnthn hi, fsergot
grondilu ok, compilation succeeded. Thanks.
gotta go now 11:00
moritz \o
11:00 grondilu left 11:13 Guest5869 left 11:18 mucker left 11:20 _dbr left
lateau__ perl6: -+-+1 11:25
p6eval pugs b927740, rakudo c1243d, niecza v14-51-g3474558: ( no output )
11:25 retupmoca left 11:26 soimort joined 11:28 soimort left
lateau__ perl6: ++1 11:28
p6eval rakudo c1243d: OUTPUT«Cannot assign to a non-container␤ in sub prefix:<++> at src/gen/CORE.setting:2553␤ in block <anon> at /tmp/oHSrEWM60_:1␤␤» 11:29
..pugs b927740: OUTPUT«*** Can't modify constant item: VInt 1␤ at /tmp/PPld51YZjX line 1, column 1 - line 2, column 1␤»
..niecza v14-51-g3474558: OUTPUT«Unhandled exception: Writing to readonly scalar␤ at /tmp/AmZRBCCdT3 line 0 (mainline @ 1) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3783 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3784 (module-CORE @ 65) ␤ at /home/p6eval/niecza/lib…
lateau__ perl6: say -(-(1));
p6eval pugs b927740, rakudo c1243d, niecza v14-51-g3474558: OUTPUT«1␤»
11:30 soimort joined, soimort left
moritz note that the longest prefix is supposed to win, which is why ++$i parses as prefix:<++>($i) and not as +(+($i)) 11:31
LTM++ 11:32
fsergot perl6: say - -1;
p6eval pugs b927740, rakudo c1243d, niecza v14-51-g3474558: OUTPUT«1␤»
11:33 lestrrat left
fsergot :) 11:33
flussence perl6: say +\+1
p6eval pugs b927740, rakudo c1243d: OUTPUT«1␤»
..niecza v14-51-g3474558: OUTPUT«Unhandled exception: Cannot use value like Capture as a number␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /home/p6eval/niecza/lib/CORE.setting line 255 (Any.Numeric @ 5) ␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /tmp/98HEC5vlG4 line 1 (mainline @ 2…
flussence perl6: say +\ +1
p6eval pugs b927740, niecza v14-51-g3474558: OUTPUT«1␤»
..rakudo c1243d: OUTPUT«===SORRY!===␤You can't backslash that at line 1, near " +1"␤»
flussence yes I can :(
11:34 lestrrat joined
lateau__ :) 11:34
fsergot hmm
moritz
.oO( but I won't parse you if you do )
11:35
fsergot nom: - \-0
p6eval nom c1243d: ( no output )
fsergot nom: say - \-0
p6eval nom c1243d: OUTPUT«-1␤»
fsergot -1 :)
?
moritz WAT?
nom: say \-0
p6eval nom c1243d: OUTPUT«0␤»
moritz perl6: say - \-0 11:36
p6eval niecza v14-51-g3474558: OUTPUT«Unhandled exception: Cannot use value like Capture as a number␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /home/p6eval/niecza/lib/CORE.setting line 255 (Any.Numeric @ 5) ␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /tmp/ld6qURXNU7 line 1 (mainline @ 2…
..rakudo c1243d: OUTPUT«-1␤»
..pugs b927740: OUTPUT«0␤»
fsergot rakudo's bug?
moritz nom: say (\-0).WHAT
p6eval nom c1243d: OUTPUT«Capture()␤»
moritz fsergot: no, might be legit
fsergot: prefix \ creates a capture, with value 0
and prefix:<-> then numifies it
which evaluates the the number of elements 11:37
which is 1
and then that 1 is negated
fsergot What is legit?
masak "legitimate"
means about the same as "allowed", "correct".
moritz legit, I, mate!
fsergot masak++ thanks. 11:38
masak the word stems from Latin lēgitimāre, "to make lawful"
fsergot nom: -say \- -4
p6eval nom c1243d: OUTPUT«4␤»
fsergot nom: say - \- -4
p6eval nom c1243d: OUTPUT«-1␤»
fsergot It will be always -1? :) 11:40
11:40 retupmoca joined
fsergot nom: say (\-100).WHAT; 11:41
p6eval nom c1243d: OUTPUT«Capture()␤»
11:45 domidumont joined
fsergot perl6: say- 1; 11:55
p6eval niecza v14-51-g3474558: OUTPUT«===SORRY!===␤␤Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /tmp/AEdyEzBzZx line 1:␤------> say⏏- 1;␤␤Unhandled exception: Check failed␤␤ at /home/… 11:56
..pugs b927740, rakudo c1243d: OUTPUT«␤»
fsergot nom: say+ 1;
p6eval nom c1243d: OUTPUT«␤»
fsergot It should return an error, shouldn't it? :) 11:58
12:04 dbr joined
JimmyZ_ fsergot: I don't think so 12:04
fsergot JimmyZ_: why? :) 12:05
JimmyZ_ nom: say (say+ 1); say (say- 1);
p6eval nom c1243d: OUTPUT«␤2␤␤0␤»
JimmyZ_ nom: say (say); say +(say); 12:06
p6eval nom c1243d: OUTPUT«␤True␤␤1␤»
fsergot Oh, right. 12:07
I didn't think about it.
JimmyZ_++
moritz nom: say (\-1).perl 12:08
p6eval nom c1243d: OUTPUT«Capture.new()␤»
moritz tries to come up with a better Capture.perl 12:13
fsergot nom: say ().perl
p6eval nom c1243d: OUTPUT«()␤»
12:14 dbr left 12:15 Trashlord left 12:26 dbr joined, dbr left 12:28 pernatiy joined 12:36 sisar joined
moritz nom: say Capture.new(:list<a b c>) 12:46
p6eval nom c1243d: OUTPUT«get_iter() not implemented in class 'Parcel'␤ in method gist at src/gen/CORE.setting:3972␤ in sub say at src/gen/CORE.setting:6065␤ in block <anon> at /tmp/Cke7sM8_Do:1␤␤»
jnthn That's probably a bug in Capture.new 12:49
moritz yes
jnthn Or a NYI Capture.new
moritz well, Capture as a submethod BUILD
but it doesn't account for the fact that :list will be a perl 6 list, while it internally uses an RPA 12:50
jnthn ah
yeah, it'll need to figger that out
moritz tries
jnthn swears lots at $dayjob 12:51
moritz jnthn: is there an easy way to fail a match that has already succeeded (for :exhaustive)
jnthn This thingy compiles sufficiently slowly that it makes Rakduo's CORE.setting compilation feel nippy... 12:52
moritz woah
jnthn moritz: Not sure sure what you mean by "already suceeded"
moritz consider m:exhaustive/.+/ 12:53
I thought the appraoch would be to have simply match once
collect the Match object
and then force the engine to backtrack
ah, "force to backtrack" is probably what I meant by "fail" 12:54
jnthn $match.CURSOR.'!cursor_next'() should do that, iirc
moritz oh
I'll try that
jnthn nom: my $m = 'abc' ~~ /.+/; say $m; my $m2 = $m.CURSOR.'!cursor_next'().MATCH; say $m2 12:55
p6eval nom c1243d: OUTPUT«=> <abc>␤␤=> <ab>␤␤»
moritz \o/
then I'll try to hack in :exhaustive
jnthn moritz: How hard is <~~> ooc? 12:56
moritz: You may find <( and )> quite accessible too
12:58 tokuhirom joined
moritz yes, I thought about <( and )> too 12:59
13:00 jferrero joined
moritz iirc <~~> requires the step from Match object to the part of the regex that produced it 13:01
13:02 xinming left
dalek kudo/nom: 92aeec2 | moritz++ | docs/ROADMAP:
add :exhaustive to ROADMAP
13:05
kudo/nom: 4130f6f | moritz++ | src/core/Capture.pm:
Capture.perl and fix Capture.BUILD
13:05 shinobicl_ joined 13:08 xinming joined 13:13 bbkr joined 13:19 skids left
moritz gist.github.com/1869161 # exhaustive regex matching, as prototyped outside the setting 13:22
nom: gist.github.com/1869161 13:23
p6eval nom c1243d: OUTPUT«abracadabbra␤abracada␤abraca␤abra␤ acadabbra␤ acada␤ aca␤ adabbra␤ ada␤ abbra␤»
masak nice!
moritz that's another example why I just love Perl 6 :-) 13:25
jnthn moritz++ 13:32
moritz I just fear that integrating it with Str.match is going to be pain
because there are so many cases to consider when various adverbs interact 13:34
I think the best possible approach to implementing Str.match properly is 3-layered 13:37
lowest level abstracts away matching of regexes vs. matching of strings
one level above handles :g, :ov, :ex
and the highest level then handles :x, :nth and all that fun 13:38
13:47 tarch__ joined
dalek ecs: 96bd7e5 | moritz++ | S09-data.pod:
[S09] standard hashes coerce the keys to Str

They don't type check against Str
13:50
ecs: 208eabf | moritz++ | S05-regex.pod:
[S05] be a bit more precise in :nth wording
13:51 tarch_ left 13:57 sftp left
masak both those spec commits look like feedback into the spec from implementing bits of it :) 14:00
moritz yes-ish 14:01
(partially just pondering how to implement it) 14:02
masak ah. 14:05
14:05 sftp joined 14:09 tokuhirom left
masak niecza: my $s = 'foo'; substr($s, 2, 1) = '!'; say $s 14:09
p6eval niecza v14-51-g3474558: OUTPUT«fo!␤»
masak \o/
nom: my $s = 'foo'; substr($s, 2, 1) = '!'; say $s
p6eval nom 4130f6: OUTPUT«Cannot assign to a non-container␤ in block <anon> at /tmp/YSOMy8l_ep:1␤␤»
masak I'm a bit surprised that people are not asking more often for this feature. 14:10
it's totally horrible, and a special case, and ugly, but it's very convenient when you need it.
moritz it's easy enough to do with four-arg substr, no?
masak nom: my $s = 'foo'; substr($s, 2, 1, '!'); say $s
p6eval nom 4130f6: OUTPUT«Too many positional parameters passed; got 4 but expected between 2 and 3␤ in sub substr at src/gen/CORE.setting:1896␤ in block <anon> at /tmp/BHbvQsKsPJ:1␤␤»
moritz hm
masak grins
moritz maybe not :-)
jnthn It's most horrible because you don't know when you're going to need it, so have to always pessimize.
I guess we can multi-dispatch on rw-ness or something...maybe. 14:11
moritz but shouldn't be too hard to implement in the four-arg way
14:11 xinming left, xinming joined 14:14 kranius left
masak jnthn: would it help to make it syntactical? so we only allow the 'substr($s, 2, 1) =' form, but not passing it around as a portable lvalue? 14:15
if that helps, I still think that covers 99% of all the needs.
moritz is pretty sure it would help 14:16
felher moritz: about your ex-gist: whats that '!cursor_next'()?
moritz we could dispatch it to a separate lvalue-substr routine
felher: it's part of the low level API of the regex engine
felher: a way to force it backtrace
felher moritz: ah, okay, thanks :)
moritz syntactically it's a method call with a non-identifer 14:17
nom: my $to-call = <sin, sqrt>.pick; say 4."$to-call"()
p6eval nom 4130f6: OUTPUT«Method 'sin,' not found for invocant of class 'Int'␤ in block <anon> at /tmp/eElo6BP7fx:1␤␤»
moritz nom: my $to-call = <sin sqrt>.pick; say 4."$to-call"()
p6eval nom 4130f6: OUTPUT«2␤»
moritz nom: my $to-call = <sin sqrt>.pick; say 4."$to-call"()
p6eval nom 4130f6: OUTPUT«2␤»
moritz nom: my $to-call = <sin sqrt>.pick; say 4."$to-call"()
p6eval nom 4130f6: OUTPUT«2␤»
moritz nom: my $to-call = <sin sqrt>.pick; say 4."$to-call"()
p6eval nom 4130f6: OUTPUT«-0.756802495307928␤»
jnthn Took a while to be random... :) 14:18
felher moritz: does the '!' has anything to do with 'private'. Or is the whole '!cursor_next' just a name? 14:19
flussence I can sort of picture in my head how substr can work... return an lvalue sub that also does .Str
I've no idea how hard actually doing that is, mind you 14:20
(that also has the advantage of making it lazy :)
moritz felher: the whole thing is just a name, but the ! indicates private-by-convention 14:21
14:22 JimmyZ_ is now known as JimmyZ 14:26 plutoid joined 14:27 plutoid left
felher moritz: how would i declare such a method? Do i need to go meta for that? 14:27
masak nom: class A {}; A.^add_method('!foo', sub { say "OH HAI" }); A.'!foo'() 14:28
p6eval nom 4130f6: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤ in sub <anon> at /tmp/RlwV0JFN62:1␤ in block <anon> at /tmp/RlwV0JFN62:1␤␤»
masak nom: class A {}; A.^add_method('!foo', sub -> $self { say "OH HAI" }); A.'!foo'() 14:29
p6eval nom 4130f6: OUTPUT«===SORRY!===␤Malformed block at line 1, near "-> $self {"␤»
masak nom: class A {}; A.^add_method('!foo', sub ($self) { say "OH HAI" }); A.'!foo'()
p6eval nom 4130f6: OUTPUT«OH HAI␤»
moritz felher: yes, go meta, or do it in NQP :-)
felher Okay, meta it isl
moritz++, masak++: Thanks folks :)
masak phenny: sv en "gå och meta"? 14:30
phenny masak: "go meta" (sv to en, translate.google.com)
masak really means "go fishing".
felher :D
14:32 skids joined
fsergot will be later. o/ 14:35
14:35 fsergot left
JimmyZ looks like 'method !foo() { ... } ' works in nqp, but not in rakudo 14:35
moritz huh? 14:36
jnthn JimmyZ: It works *properly* in Rakudo.
JimmyZ: NQP has a cheating version.
moritz nom: class A { method !foo() { say 'in !foo' }; method x { self!foo } }; A.new.x 14:37
p6eval nom 4130f6: OUTPUT«in !foo␤»
moritz seems to work just fine
JimmyZ sorry, misunderstand 14:38
14:38 att_ joined 14:40 shinobicl_ left
moritz std: sub f(:x(:$y)) { } 14:45
p6eval std 52f3895: OUTPUT«ok 00:01 109m␤»
moritz std: sub f(:$x(:$y)) { }
p6eval std 52f3895: OUTPUT«ok 00:01 109m␤»
moritz should that really parse?
perl6: sub f(:$x(:$y)) { }
14:45 PacoAir joined
p6eval pugs b927740: OUTPUT«*** ␤ Unexpected "(:$"␤ expecting word character, "?", "!", trait, "=", default value, "-->" or ")"␤ at /tmp/7zrpYE03OB line 1, column 10␤» 14:45
..niecza v14-51-g3474558: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/FVOhpT8Ra4 line 1:␤------> sub f(:⏏$x(:$y)) { }␤ $y is declared but not used at /tmp/FVOhpT8Ra4 line 1:␤------> sub f(:$x(:⏏$y)) { }␤ &f is declared but n…
..rakudo 4130f6: ( no output )
masak no idea.
moritz or is that parsed as a subsignature?
masak maybe. 14:46
14:46 lestrrat left, lestrrat joined 14:47 lestrrat left
moritz 14:47
14:48 lestrrat joined 14:50 tarch__ left 14:51 kaleem left
moritz just had an awesome idea 14:58
you know, recompiling the setting always takes ages on my machine 14:59
so I prototype stuff outside the setting
but then I have trouble running tests
so, the solution is to put the prototype stuff in SAFE.setting
and hack the harness to run ./perl6 --setting=SAFE
now i can use 'make spectest' and 'make localtest' AND have faster compilation cycles 15:00
jnthn :)
15:01 ascrazy joined 15:06 birdwindupbird left
moritz nom: my @a := 1..*; @a := @a[1, 3 ... *].list 15:06
p6eval nom 4130f6: OUTPUT«Method 'gimme' not found for invocant of class 'Range'␤ in method postcircumfix:<[ ]> at src/gen/CORE.setting:1159␤ in block <anon> at /tmp/dJ08aEvIzI:1␤␤»
moritz nom: my @a = 1..*; @a := @a[1, 3 ... *].list
p6eval nom 4130f6: OUTPUT«(timeout)»
moritz nom: say Range ~~ Positional 15:07
p6eval nom 4130f6: OUTPUT«True␤»
moritz well, then the binding should work
nom: my @a := 1..3
p6eval nom 4130f6: ( no output )
moritz nom: my @a = 1...*; @a := @a[1, 3 ... *].list
nom: my @a := 1...*; @a := @a[1, 3 ... *].list 15:08
p6eval nom 4130f6: OUTPUT«(timeout)»
moritz nom: my @a := 1...*; @a := @a[1, 3 ... *]
p6eval nom 4130f6: OUTPUT«(timeout)»
moritz nom: my @a := 1...*; @a := @a[1, 3 ... 11].list; say @a.perl
p6eval nom 4130f6: OUTPUT«(2, 4, 6, 8, 10, 12).list␤»
jnthn wonders if indexing is lazy. 15:09
moritz nom: say (1..3)[1, 3 ... 11].perl
p6eval nom 4130f6: OUTPUT«(2,)␤»
jnthn oh, but maybe the * there should be treated differently
moritz submits rakudobug for the gimme not found error earlier 15:10
masak moritz++
jnthn nom: say (1..3)[1] 15:11
p6eval nom 4130f6: OUTPUT«2␤»
moritz yes, that's the weird thing. It works, unless bound to a @-variable first
jnthn nom: my @a := 1..3; say @a[1]
p6eval nom 4130f6: OUTPUT«2␤»
jnthn Not that simple :) 15:12
moritz nom: my @a := 1..3; say @a[1, 2]
p6eval nom 4130f6: OUTPUT«2 3␤»
15:12 lestrrat left
jnthn nom: my @a := 1..*; say @a[1] 15:13
p6eval nom 4130f6: OUTPUT«2␤»
jnthn nom: my @a := 1..*; say @a[1...*]
p6eval nom 4130f6: OUTPUT«Method 'gimme' not found for invocant of class 'Range'␤ in method postcircumfix:<[ ]> at src/gen/CORE.setting:1159␤ in block <anon> at /tmp/6GKqkBGBmp:1␤␤»
jnthn nom: say (1..3)[1...*]
p6eval nom 4130f6: OUTPUT«Method 'gimme' not found for invocant of class 'Range'␤ in method postcircumfix:<[ ]> at src/gen/CORE.setting:1159␤ in block <anon> at /tmp/dnb73Jt93d:1␤␤»
jnthn Doesn't need binding after all.
nom: say (1, 2, 3)[1...*]
p6eval nom 4130f6: OUTPUT«2 3␤»
15:13 lestrrat joined
jnthn nom: say (1..3)[1..*] 15:14
p6eval nom 4130f6: OUTPUT«Method 'gimme' not found for invocant of class 'Range'␤ in method postcircumfix:<[ ]> at src/gen/CORE.setting:1159␤ in block <anon> at /tmp/biKNhuOQid:1␤␤»
jnthn nom: say (1..3)[1]
p6eval nom 4130f6: OUTPUT«2␤»
jnthn nom: say (1..3)[1,2]
p6eval nom 4130f6: OUTPUT«2 3␤»
jnthn nom: say (1..3)[*]
p6eval nom 4130f6: OUTPUT«1 2 3␤»
jnthn nom: say (1..3)[]
p6eval nom 4130f6: OUTPUT«1 2 3␤»
jnthn Hm.
moritz ah 15:15
needs infinite in the index
15:25 leprevost left
masak nom: say (1..3)[Inf] 15:25
p6eval nom 4130f6: OUTPUT«No applicable candidates found to dispatch to for 'Numeric'. Available candidates are:␤:(Mu:U \$v, Mu %_!)␤␤ in method Numeric at src/gen/CORE.setting:657␤ in sub infix:<+> at src/gen/CORE.setting:2249␤ in method exists at src/gen/CORE.setting:4797␤ in method at_p…
15:25 lestrrat left
masak nom: say (1..3)[1..Inf] 15:25
p6eval nom 4130f6: OUTPUT«Method 'gimme' not found for invocant of class 'Range'␤ in method postcircumfix:<[ ]> at src/gen/CORE.setting:1159␤ in block <anon> at /tmp/A0qqMpQbnp:1␤␤»
15:26 kaare_ joined, lestrrat joined
moritz nom: say nqp::list() ~~ Positional 15:41
p6eval nom 4130f6: OUTPUT«(signal SEGV)»
moritz ouch
jnthn Well, that's just asking for it.
nqp::list is making an RPA.
arnsholt Heh. I don't think that's supposed to happen ^_^
jnthn Not a Perl 6 list.
arnsholt: I'm not particularly surprised it does. 15:42
arnsholt Yeah, when you say it's an RPA I'm less surprised
moritz well, if you use nqp:: opcodes, you 15:43
're on your own
arnsholt Reaching in and touching C-ish guts tend to do weird stuff
jnthn Yeah. SEGV is a bit harsh.
masak nom: say nqp::list().^methods
p6eval nom 4130f6: OUTPUT«Method 'dispatch:<.^>' not found for invocant of class 'ResizablePMCArray'␤ in block <anon> at /tmp/H1obtRwkL0:1␤␤»
masak nom: say nqp::list().WHAT
p6eval nom 4130f6: OUTPUT«Can only use get_what on a SixModelObject␤ in block <anon> at /tmp/AUR2kaZzwr:1␤␤»
jnthn But nothing good comes from breaking the type system.
masak nom: say nqp::list()
p6eval nom 4130f6: OUTPUT«Method 'gist' not found for invocant of class 'ResizablePMCArray'␤ in sub say at src/gen/CORE.setting:6078␤ in block <anon> at /tmp/CJCkCk3qdi:1␤␤»
masak nom: say nqp::list() + 2
p6eval nom 4130f6: OUTPUT«(signal SEGV)»
moritz wants a .[] that can deal with infinite series 15:44
15:45 Patterner left
jnthn moritz: Trouble is that we expect .[] to return a Parcel. 15:46
masak wants c2.com/cgi/wiki?PimcPiflPire
jnthn iirc anyway
moritz jnthn: I know. But it means I have to re-implement slicing for :nth 15:47
jnthn ah. 15:48
jnthn can kinda see the utility of it
(generally, not just for :nth)
moritz I wouldn't mind a List.lazy-monotonic-slice method or so 15:49
jnthn masak: Patches welcome ;)
15:49 Psyche^ joined, Psyche^ is now known as Patterner
jnthn masak: Or maybe it's be better in a module :P 15:49
arnsholt masak: Oooh, now I want it too =) 15:50
jnthn didn't know those existed. Curious even if impossible :)
arnsholt But hyper can be used to do pmc (if not pimc =) at least 15:51
15:51 lestrrat left
jnthn Something that can crack any crypto system in instantly would be a great killer app though. I'm sure if we did that, Perl 6 would get instant adoption from governments worldwide :) 15:52
15:52 lestrrat joined
masak yes. I've always loved how those three (pire possibly excluded) are tantalizingly close to being possible. :) 15:53
(in a "maybe in a parallel universe" sense)
arnsholt Yeah, pimc and pifl can be sort-ofed with lazy collections, but pire really hinges on the whole "parallel infinite" thing in a different way 15:55
15:55 lestrrat left 15:56 lestrrat joined, lestrrat left
masak right. 15:57
sort of makes me feel like there are Cantorian cardinalities of impossibility :)
15:57 lestrrat joined
masak iota_0, iota_1, iota_2... 15:58
oh wait. wrong alphabet. 15:59
yodh_0, yodh_1, yodh_2...
moritz d'oh^1, d'oh^2, d'oh^3 16:01
16:02 JimmyZ left 16:04 JimmyZ joined
masak :P 16:06
arnsholt masak: IIRC there are actually classes of different trans-Turing computability classes 16:09
16:10 thou joined
masak arnsholt: yes. I wish I knew more about computability classes. 16:11
16:13 MayDaniel joined, zipf joined, zipf left 16:17 tarch__ joined
masak decommutes 16:23
jnthn also 16:24
TimToady suspects backlogging involves one of those cardinalities of impossibility; you guys say too many interesting things while I'm asleep... 16:28
16:40 sisar left 16:41 am0c left
pmichaud good mroning, #perl6 16:52
*morning 16:53
TimToady lots of good moroning last night too :) 16:54
JimmyZ morning, pmichaud 17:03
17:05 JimmyZ left 17:08 GlitchMr joined
dalek ast: 247a066 | coke++ | S (6 files):
niecza (auto)unfudge
17:08
17:18 birdwindupbird joined 17:19 pernatiy left
[Coke] pmichaud: hio. 17:20
ascrazy hello, in perl6 i can bind Callable object to some context? 17:21
such as bind in javascript or ruby
17:23 birdwindupbird left
TimToady perl6: sub foo (&doit,$toit) { doit $toit }; say foo &cos, pi 17:26
p6eval pugs b927740, rakudo 4130f6, niecza v14-51-g3474558: OUTPUT«-1␤»
TimToady do you mean like that?
or are you talking about fake dynamic scopes of some sort? 17:27
the word "context" is very, very overloaded in the realm of language design 17:29
so we'll need an example of what you mean
like a rosettacode page or something
17:30 lestrrat left 17:31 lestrrat joined
ascrazy in ruby 17:32
class A; attr_accessor :name; end;
a = A.new; a.name = "Hello';
Proc.new{ print self.name }.bind(a).call #=> "Hello"
this block called in context 'a' 17:33
TimToady looks like an anonymous method to me
17:36 birdwindupbird joined
ascrazy i can not found it in perlcabal.org/syn/ 17:37
if you know where to look, please help me
TimToady perl6: class A { has $.name is rw }; my A $a .= new; $a.name = "Hello"; (method () { say $.name }).assuming($a).()
p6eval rakudo 4130f6, niecza v14-51-g3474558: OUTPUT«Hello␤»
..pugs b927740: OUTPUT«*** ␤ Unexpected "{"␤ expecting operator, ":", "," or ")"␤ at /tmp/gP6R3kPU3X line 1, column 77␤»
TimToady there you go 17:38
pretty much an exact equivalent, I think
we don't default attributes to rw, and methods are really just functions that treat their first argument as the object, so normal partial application is used for your "bind" 17:39
and there's no call method, you just call it :)
in other words, postcircumfix:<( )> is the call method 17:40
ascrazy great, thanks 17:41
17:42 am0c joined
TimToady pugs: class A { has $.name is rw }; my A $a .= new; $a.name = "Hello"; (method foo () { say $.name }).assuming($a).() 17:47
p6eval pugs b927740: OUTPUT«*** ␤ Unexpected "{"␤ expecting operator, ":", "," or ")"␤ at /tmp/ulOt6_tEsN line 1, column 81␤»
17:47 kaleem joined
TimToady I guess pugs doesn't grok method declarators there 17:47
pugs: class A { has $.name is rw }; my A $a .= new; $a.name = "Hello"; do { method foo () { say $.name } }.assuming($a).() 17:48
p6eval pugs b927740: OUTPUT«pugs: Missing invocant parameters in '&foo': 0 received, 1 missing␤»
TimToady now it's just messing up on the .assuming
moritz: yes, sub f(:$x(:$y)) { } is parsing as a subsignature; it's the parses-line-noise problem people keep complaining about in Perl :) 17:54
jnthn: the main point of lol is to have lists of lazy lists for subscripting; we can't get far on S09 without that 17:59
17:59 simcop2387 left
TimToady this also feels related to the problem of why we can't define recursive arrays like @hamming 18:00
perl6: my @foo; @foo := 1, @foo; say @foo[2] 18:01
p6eval rakudo 4130f6: OUTPUT«Nil␤»
..niecza v14-51-g3474558: OUTPUT«Any()␤»
..pugs b927740: OUTPUT«␤»
18:01 simcop2387 joined
TimToady well, TimToady was gonna recaulk his shower today, and he's still in his pajamas... 18:03
laters & 18:04
18:04 dakkar left 18:13 ksi joined 18:19 MayDaniel left 18:22 mj41 left 18:31 birdwindupbird left 18:33 fridim_ joined, birdwindupbird joined 18:38 kaleem left 18:52 mj41 joined 19:05 gv joined 19:18 PacoAir left
skids nom: Capture.^roles.say; 19:20
p6eval nom 4130f6: OUTPUT«␤»
19:23 GlitchMr left 19:29 tarch__ left 19:47 Vlavv` joined 19:50 MayDaniel joined 19:59 PacoAir joined 20:01 daxim left 20:17 ribayr joined, ribayr left, ribayr joined 20:23 MayDaniel left
TimToady perl6: constant @factorial = 1, [\*] 1 ... *; say @factorial[1]; 20:32
p6eval niecza v14-51-g3474558: OUTPUT«(timeout)»
..pugs b927740: OUTPUT«*** ␤ Unexpected "@factorial"␤ expecting "=", context, ":" or "("␤ at /tmp/webLGgGwFX line 1, column 10␤»
..rakudo 4130f6: OUTPUT«===SORRY!===␤Cannot handle constant @factorial with non-literal value yet at line 1, near "; say @fac"␤»
TimToady sorear: ^^ nieczabug
20:33 pernatiy joined, localhost left
TimToady nom: my @factorial := 1, [\*] 1 ... *; say @factorial[1]; 20:34
p6eval nom 4130f6: OUTPUT«1␤»
TimToady nom: my @factorial := 1, [\*] 1 ... *; say @factorial[5];
p6eval nom 4130f6: OUTPUT«120␤»
TimToady niecza: my @factorial := 1, [\*] 1 ... *; say @factorial[5];
p6eval niecza v14-51-g3474558: OUTPUT«Any()␤»
TimToady pugs: my @factorial := 1, [\*] 1 ... *; say @factorial[5];
p6eval pugs b927740: OUTPUT«*** ␤ Unexpected " say"␤ at /tmp/djW2iOUnfS line 1, column 34␤»
20:34 localhost joined
TimToady pugs: my @factorial := 1, [\*](1 ... *); say @factorial[5]; 20:35
p6eval pugs b927740: OUTPUT«*** ␤ Unexpected ";"␤ at /tmp/WP1XGTLhPa line 1, column 34␤»
TimToady pugs: my @factorial := (1, [\*] 1 ... *); say @factorial[5];
p6eval pugs b927740: OUTPUT«*** ␤ Unexpected ";"␤ at /tmp/zPWrL4zG76 line 1, column 35␤»
TimToady pugs: my (@factorial) := (1, [\*] 1 ... *); say @factorial[5]; 20:36
p6eval pugs b927740: OUTPUT«*** ␤ Unexpected ";"␤ at /tmp/qtEBbcoUaS line 1, column 37␤»
TimToady well, enough spam
20:44 birdwindupbird left, GlitchMr joined
TimToady perl6: my (*@factorial) ::= 1, [\*] 1 ... *; say @factorial[5]; 20:47
p6eval rakudo 4130f6: OUTPUT«===SORRY!===␤Cannot use bind operator with this left-hand side␤at /tmp/BNaePvnVLO:1␤»
..niecza v14-51-g3474558: OUTPUT«===SORRY!===␤␤Cannot use bind operator with this LHS at /tmp/Kb6OAQw4LQ line 1:␤------> my (*@factorial) ::= 1, [\*] 1 ... *⏏; say @factorial[5];␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/COR…
..pugs b927740: OUTPUT«*** ␤ Unexpected " say"␤ at /tmp/ZJkTrREChV line 1, column 38␤»
20:47 PerlPilot left
TimToady whyever not? 20:47
20:48 PerlJam joined
skids does rakudo do signatures in declarations yet? I thought that was NYI? 20:50
21:02 GlitchMr left 21:04 am0c left 21:06 bkolera joined
tadzik 'evening #perl6 21:08
moritz \o 21:16
tadzik oh, moritz moritz
I got an email from someone of GPW, and I don't know what it says, and google translate doesn't make much sense :) 21:17
moritz an invoice?
tadzik no idea :) privmsg-ing you now
awwaiid skids, what sort of signature/declarations do you mean? 21:19
21:22 proller_ joined, gv left
[Coke] gpw? 21:23
moritz German perl Workshop 21:24
[Coke] ah.
21:25 PacoAir left 21:29 proller_ left 21:30 proller_ joined 21:32 PacoAir joined 21:38 lestrrat left 21:39 lestrrat joined
skids awwaiid: I was answering TimToady's "whyever not?" WRT my (*@factorial) ::= 21:52
awwaiid ah 21:53
21:55 jferrero left 21:57 lestrrat left 21:58 lestrrat joined 22:00 jferrero joined
sorear good * #perl6 22:08
22:09 PacoAir left 22:21 skids left 22:23 kaare_ left
sorear niecza: ([\*] 1 ... *)[5] 22:28
p6eval niecza v14-51-g3474558: ( no output )
sorear niecza: say ([\*] 1 ... *)[5]
p6eval niecza v14-51-g3474558: OUTPUT«720␤»
sorear niecza: say @(1, ([\*] 1 ... *))[5]
p6eval niecza v14-51-g3474558: OUTPUT«Any()␤»
masak evenin', #perl6
sorear niecza: say (@(1, ([\*] 1 ... *)))[5]
p6eval niecza v14-51-g3474558: OUTPUT«Any()␤»
sorear o/ masak
sorear wonders if roland333 will wait a week to come back 22:29
ascrazy nom: ([\*] 1, 1, 2, 3...*)[5] 22:31
p6eval nom 4130f6: ( no output )
ascrazy nom: ([\*] 1, 1, 2, 3...*)[5].sat 22:32
p6eval nom 4130f6: OUTPUT«Method 'sat' not found for invocant of class 'Int'␤ in block <anon> at /tmp/BZBipQds0o:1␤␤»
ascrazy nom: ([\*] 1, 1, 2, 3...*)[5].say
p6eval nom 4130f6: OUTPUT«120␤»
masak sorear: because studying Perl takes one week? :) 22:33
ascrazy nom: (1, [\*] 1 ...*)[5]
p6eval nom 4130f6: ( no output )
ascrazy nom: (1, [\*] 1 ...*)[5].say
p6eval nom 4130f6: OUTPUT«120␤»
22:37 bkolera left
jnthn evening, #perl6 22:37
tadzik 'evening jnthn 22:38
jnthn TimToady: When I mentioned Parcel I was talking about what's returned from a slicing operation.
hi tadzik
o/ pmichaud, if you're still about :) 22:39
sorear o/ jnthn 22:41
jnthn hi sorear 22:43
22:46 fsergot joined
fsergot o/ 22:46
masak fsergot! \o/ 22:49
22:53 lue joined
lue blag post! rdstar.wordpress.com/2012/02/20/tw...of-perl-6/ 22:53
And hello #perl6 ! o/
sorear o/ fsergot 22:55
o/ lue
masak lue! \o/ 22:56
nice post. 22:58
lue++
au o/ lue++ welcome back to this interactive non-fiction!
lue :) hello masak, sorear, and au o/
sorear o/ ao!
au rather 22:59
au /o
sorear hopes au is not too ao
masak lue: a single page is easier to Ctrl+F than paginated lists with 10 per page. 23:01
lue: and it's not like browsers are running out of vertical space :)
fsergot lue++ :-) 23:03
sorear oh, oops, ao is a kun thing
lue masak: ah, all true. 23:04
masak "a kun thing"?
jnthn Rakudo Death Star :D
fsergot all modules on one page suits me :-)
masak set phasers to death!
"I find your lack of speed... disappointing." -- "gggghrk!" 23:05
TimToady 青い read as 日本語, I presume
masak ah.
lue in retrospect, I've found CPAN quite annoying to use before (or at least, not super-simple)
masak lue: you should try metacpan. 23:06
lue looks
masak lue: nowadays I mostly interact with metacpan through DuckDuckGo.
I just go '!cpan YAML' in the address field, and it magically finds stuff for me.
sorear cpanminus?
lue not that I've used CPAN more than a couple of times (aside from when I'm linked to a module's page there)
masak sorear: different axis :)
metacpan is the improved online presence, cpanminus is the improved module install client. 23:07
lue will remember !cpan the next time he needs it
masak well, it works in Chrome after I set ddg as the default search engine. 23:08
sorear TimToady: are you still using ibus + anthy?
TimToady はい!
masak the bang syntax is particular to DuckDuckGo.
lue I've been using DuckDuckGo for a while now :) [not perfect, but great] 23:09
sorear TimToady: what do you do to enter » ?
TimToady Compose > >
sorear funny.
on my system, Compose doesn't work if I have ibus running. 23:10
23:10 jferrero left
sorear I have to kill ibus for compose to wrok again 23:10
TimToady works fine here
23:10 jferrero joined
TimToady I do have "Input method off" though 23:10
I don't think that kills ibus 23:11
lue I use uim. Uim and X's compose key work great together everywhere for me, except emacs :/ (since I use compose way more often, I use env when starting emacs)
TimToady since the little keyboard is still there
sorear "little keyboard"? 23:13
TimToady sorear: the widget in the top bar
if I look in preferences/advanced there, I have checked "Use system keyboard layout"
maybe you need that to get Compose? (as well as having the compose key set up elsewhere) 23:14
IBus 1.3.9, running under Gnome 23:15
sorear hmm, interesting
Compose works in gnome-terminal but stopped working in urxvt
TimToady I'm in gnome-terminal 23:16
sorear maybe I'll switch then. 23:17
TimToady has been putting off upgrading his laptop to the latest Ubuntu, after the fiasco with the server...
sorear oww, black on white 23:18
23:18 colomon left
TimToady not for me 23:18
sorear 青 » :>
TimToady there's a white-on-black you can pick
\ö/ 23:19
23:26 lateau__ left 23:27 tarch__ joined 23:28 tarch__ is now known as tarch, ksi left, ascrazy left 23:36 colomon joined 23:40 whiteknight joined
dalek p/bs: 69ccfc7 | jnthn++ | src/ (2 files):
Stubs need a fresh LexInfo for closure serialization to work. Gets us a little further with role serialization.
23:42
23:44 sisar joined 23:47 mj41 left 23:48 rsimoes11 left 23:52 betterworld joined
masak 'night, #perl6 23:55
jnthn 'night o/
23:58 rsimoes1 joined, tarch left