Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-08-08

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:01 TimToady_ timotimo: I've now changed it to ow(in) x .print  :)
00:04 timotimo not exactly sure why that works the way it should :|
00:04 TimToady_ but if we had a C-style comma operator we could use R, to get the reversed version
00:04 TimToady_ .print always returns 1
00:05 TimToady_ well, True, but that's 1 numerically
00:05 TimToady_ ordinarily I'd use the ()[0] trick, but for this particular problem one wants to avoid the appearance of using arrays
00:06 TimToady_ one version I had: first *, ow(in), .print;
00:06 TimToady_ [//] ow(in), .print; works in rakudo but not in niecza
00:08 timotimo why is [//] ow(in), .print; different from ow(in) // .print?
00:08 TimToady_ reduction form doesn't short-circuit the right side
00:08 timotimo or i should say "favourable"
00:08 timotimo oh, good to know
00:08 timotimo is that specced to always be the case?
00:08 TimToady_ I think so
00:09 timotimo that's good
00:09 TimToady_ S03:4585
00:10 TimToady_ but the x is cool because even with something like a list operator it gives the appearance of using a composite structure to reorder values
00:10 TimToady_ (it doesn't, it's just changing the order of execution, but still...)
00:11 felher "This is still quite useful for performance, especially if the list could be infinite." :D
00:11 TimToady_ well, technically, it's picking what you return
00:12 tokuhiro_ joined #perl6
00:22 benabik_ joined #perl6
00:22 cognominal__ joined #perl6
00:29 diakopter pmichaud: you around?
00:30 diakopter nm; figured it out
00:31 cognominal__ joined #perl6
00:36 spider-mario_ joined #perl6
00:38 cognominal__ joined #perl6
00:40 cognominal_ joined #perl6
00:41 colomon joined #perl6
00:49 skids joined #perl6
00:55 whiteknight joined #perl6
00:56 cognominal__ joined #perl6
01:05 curiosity joined #perl6
01:06 curiosity hi~ perl6! nqp compile error!need a toturial for that.
01:07 diakopter hi. first, what's your build environment?  OS, compiler?
01:08 curiosity linux 32 ,gcc
01:08 diakopter could you paste the error somewhere (not here)?
01:09 curiosity like ...invoke not implement...
01:11 curiosity many people has this problem .....
01:11 sorear There's very little we can do without knowing the full error and everything you did to get it
01:12 TimToady_ it's also going to be difficult to diagonise this, what with the light-speed lag to curiosity...
01:12 curiosity invoke() not implemented in class '2025589745'...that's my error
01:13 TimToady_ *diagnose, yow
01:14 sorear curiosity: the full errror should be a dozen lines or more.  Do you know how to work a pastebin?
01:14 curiosity hello TimToady! help me!
01:14 sorear Help me help you.
01:14 * TimToady_ knows nothing about nqp
01:15 curiosity that's bad
01:15 TimToady joined #perl6
01:15 diakopter curiosity: go here and paste your error messages: http://pastebin.com/
01:15 benabik "invoke() not implemented" is a Parrot error about a missing viable.  Means it tried to run something not runnable.
01:15 sorear TimToady cares more about the language design, not NQP
01:15 sorear but until curiousity gets back to us with...
01:15 mucker joined #perl6
01:16 sorear 1. what version of NQP were you trying to build?
01:16 sorear 2. what version of Parrot do you have?
01:16 curiosity newest!
01:16 sorear 3. what kind of computer are you on?
01:16 curiosity all newest!
01:16 TimToady do you have an old one installed out there somewhere?
01:16 benabik Newest release or newest from git?
01:16 sorear Or newest from the RHEL 5 repository?
01:17 diakopter 4. are you trying to compile NQP as part of compiling rakudo?  or by itself?
01:17 curiosity uninstall taht  all!
01:17 curiosity my system is arch...........
01:18 diakopter -. -.
01:18 curiosity *.*
01:18 sorear which version of arch?
01:18 diakopter curiosity: please answer the above question #4 :)
01:18 curiosity newest
01:18 sorear for the sake of people who readthe logs in 5 years, it would be nice to have numbers for all this
01:19 sorear (also, it allows us to check and make sure there isn't a newer version)
01:19 diakopter Obscurity by Posterity
01:19 curiosity what's question #4 ? read english not so fast..
01:20 diakopter are you compiling Rakudo?
01:20 curiosity no.i must compile nqp before compile rakudo.
01:21 diakopter ok. did you tell nqp to build its own parrot?
01:21 diakopter or are you using an installed parrot?
01:21 sorear Are you compiling manually, or ./configure --gen-nqp ?
01:22 curiosity I compile parrot first.it'sok.no error.next...compile nqp...than got errot.
01:24 curiosity compiling manually
01:24 sorear Where did you get NQP from?
01:24 curiosity git
01:24 sorear What commands did you run to build it?
01:24 sorear WHich git?
01:24 curiosity perl Configure.pl.
01:25 ivan`` joined #perl6
01:25 curiosity git://github.com/perl6/nqp.git"
01:25 [Coke] you might have better luck starting with latest rakudo and then using that to build nqp & parrot (it will grab known working versions)
01:25 [Coke] (assuming the goal is to eventually build rakudo)
01:26 curiosity coke: give me an instrution please.
01:26 [Coke] when you build parrot, did you install it?
01:27 [Coke] curiosity: sure. Try this:
01:27 curiosity yes!
01:27 [Coke] git clone git@github.com:rakudo/rakudo.git ; cd rakudo ; perl Configure.pl --gen-parrot
01:28 [Coke] that will ignore any installed versions, grab nqp and parrot, install them inside the rakudo directory, and then build rakudo using those versions.
01:28 curiosity coke:thanks!I'll try that!
01:28 [Coke] good luck.
01:28 TimToady well, and then a "make install"
01:28 [Coke] we have a lot of linux/gcc users here, so it should work ok.
01:29 [Coke] TimToady: that's not necessary if you're happy running ./perl6
01:29 [Coke] (if you do want to install rakudo, you might want to add a --prefix=/path/to/install to the Configure.pl invocation.
01:29 curiosity thanks! everybody!
01:30 TimToady I install in a subdir
01:30 [Coke] otherwise, the install directory is in the same local install directory (which will work fine, but might be an unusual place if you're doing anything long term.)
01:30 TimToady a symlink to that works fine
01:50 gongyiliao joined #perl6
01:52 gongyiliao joined #perl6
02:14 jeffreykegler joined #perl6
02:38 Psyche^ joined #perl6
03:00 [Coke] http://search.cpan.org/dist/Regex​p-Debugger/lib/Regexp/Debugger.pm ... wow.
03:01 [Coke] damian++
03:16 localhost joined #perl6
03:47 sivoais joined #perl6
04:12 benabik joined #perl6
04:16 Khisanth joined #perl6
04:22 revdiablo joined #perl6
04:37 jeffreykegler joined #perl6
05:13 TimToady a :$ parameter does not have a name of ''
05:13 TimToady it should simply be anonymous, just as a positional $ is
05:14 birdwindupbird joined #perl6
05:16 Woodi joined #perl6
05:25 Woodi hallo today :)
05:25 Woodi do we have getop-module for v6 ?
05:28 sorear do you need something compatible with getopt_long(3)?
05:29 sorear there is GetOpt::Long in the Niecza source repo, which could probably be turned into a standalone module without much work
05:30 Woodi k, thanx :)
05:30 sorear there is also the standard 'MAIN' routine, which is easy to set up but a bit idiosyncratic
05:53 wtw joined #perl6
06:18 jaldhar joined #perl6
06:18 SamuraiJack joined #perl6
06:25 jdrab joined #perl6
06:45 kaleem joined #perl6
06:50 jnthn morning
06:51 mathw morning
06:52 crab2313 joined #perl6
07:03 fhelmberger joined #perl6
07:09 brrt joined #perl6
07:13 GlitchMr joined #perl6
07:37 Woodi hallo mathw :)
07:45 fgomez joined #perl6
07:48 jaldhar joined #perl6
08:00 awwaiid joined #perl6
08:04 thelazydeveloper joined #perl6
08:05 jaldhar joined #perl6
08:11 bruges joined #perl6
08:16 mucker joined #perl6
08:18 jdrab joined #perl6
08:19 moritz \o
08:20 jnthn hi moritz
08:23 Woodi o/
08:24 sorear o/ moritz
08:24 arnsholt o/
08:29 diakopter o wait
08:30 diakopter I already did altseq
08:30 diakopter er, ww
08:49 SamuraiJack joined #perl6
08:49 GlitchMr joined #perl6
08:53 moritz phenny: tell TimToady http://www.wall.org/~larry/perl.html is a 404
08:53 phenny moritz: I'll pass that on when TimToady is around.
08:53 diakopter moritz: but where is it linked from
08:54 moritz diakopter: many places. Including http://www.wall.org/~larry/
08:57 Woodi wow, installing Rakudo installs CPAN6, nice :)
08:57 moritz Woodi: erm, what?
08:57 Woodi moritz: modules are bundled now :)
08:59 masak top of the antenoon, #perl6
08:59 masak Woodi: modules are bundled with Rakudo *Star*, yes.
08:59 moritz Woodi: they have always been bundled with Rakudo Star
08:59 GlitchMr Last time I've lots of links on ~larry page are down
08:59 moritz that's the point of having a distribution, versus just having a compiler
08:59 GlitchMr For example "1st State of the Onion, 1997 Perl Conference."
09:00 GlitchMr But perhaps lots wasn't that much I thought when I've viewed this site
09:02 Woodi moritz: I thinked panda was responsible for module management...
09:02 moritz Woodi: it is. I just didn't know you meant "panda" when you said "CPAN6"
09:03 Woodi but, let say, I installed parrot to /opt, then I have /opt/lib/language dir... it is strange.
09:04 Woodi * /opt/lib/languages dir
09:05 Woodi /opt/lib/parrot/languages it should be ?
09:07 daniel-s joined #perl6
09:08 daxim joined #perl6
09:13 Celelibi joined #perl6
09:13 * moritz doesn't see the logic in either of those
09:25 GlitchMr perl: /[^a-z]/
09:25 GlitchMr perl6: /[^a-z]/
09:25 p6eval niecza v19-15-g051783d: OUTPUT«[31m===[0mSORRY![31m===[0m��Invalid regex metacharacter (must be quoted to match literally) at /tmp/vIrcpaNJxi line 1:�------> [32m/[^a-[33m�[31mz]/[0m��Action method metachar:sym<-> not yet implemented at /tmp/vIrcpaNJxi line 1:�------> [32m/[^a-…
09:25 p6eval ..rakudo 34e8d4: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter [ (must be quoted to match literally) at line 2, near "^a-z]/"␤»
09:25 GlitchMr std: /[^a-z]/
09:25 p6eval std f43a358: OUTPUT«Can't use string ("1") as a HASH ref while "strict refs" in use at CursorBase.pm line 881.␤FAILED 00:00 41m␤»
09:28 GlitchMr This error is rather helpful...
09:29 GlitchMr What about saying to use <-[a..z]> instead?
09:30 sorear stdbug
09:31 moritz it's an internal error in STD
09:41 MayDaniel joined #perl6
09:44 HUUB0118408 joined #perl6
09:48 crab2313 joined #perl6
10:02 gfldex joined #perl6
10:10 moritz http://act.yapc.eu/ye2012/schedule?day=2012-08-22 masak++'s talk on macros is parallel to "A MOP for Perl 5" by stevan++
10:11 masak aww, can someone else hold my talk so I can go listen to stevan++? :/
10:12 tadzik aww
10:12 buubot_backup joined #perl6
10:12 tadzik what do :S
10:13 cognominal joined #perl6
10:14 moritz couldn't they have made stevan's talk a keynote?
10:15 tadzik the collisions wouldn't be _that_ bad if one was sure that there'll be a video afterwards
10:15 tadzik great, all 3 of those talks wed morning I have starred :/
10:19 mikemol joined #perl6
10:19 felher joined #perl6
10:24 masak realizing while frantically writing on the proceedings for my macros talk:
10:24 masak AST objects are not *like* closures. they *are* closures.
10:24 masak they represent runnable code. they refer to variables outside of themselves.
10:25 masak the more clearly I see this, the more convinced I am that we should not allow AST.new() in user code. it does not make any sense.
10:26 tadzik less evil available
10:26 moritz I think a good way to manipulate ASTs is to clone them, and change some stuff while cloning
10:26 masak the only thing that would make sense is something like AST.new(:outer<here>). but we have no first-class way of talking about lexpads.
10:26 masak yeah, cloning is fine.
10:27 masak anything which preserves the 'outer' attribute.
10:27 masak splicing an AST and plucking out a small bit of it should be fine too.
10:27 masak in fact, that's probably the primitive operation here, since that's what macros do all the time.
10:28 masak moving AST fragments around and inserting them in each other.
10:30 masak adding AST nodes to an existing AST is fine, too.
10:34 moritz we do have a way to talk about lexpads though
10:34 moritz MY:: for example
10:34 moritz OUTER::, CALLER:: etc.
10:34 masak hm, maybe I'm being to strict here.
10:34 masak maybe "no outer" just means that the AST is not a closure.
10:37 masak and maybe synthetic ASTs could be inserted into bigger ones in such a way that they "inherit" the $!outer of their mother AST.
10:37 masak though how hygienic that would be I don't know.
10:41 jnthn masak: (MOP talk) I guess there'll be new stuff in it, but didn't we see a version of that talk in London? :)
10:41 * jnthn checks the schedule to see when he is talking
10:42 jnthn eek, I'm on when MST is
10:42 jnthn But I saw that talk in France. :)
10:42 jnthn Also my talk is on day 1 :)
10:53 masak jnthn: troo. but by the same logic, I've seen my talk twice :P
10:54 jnthn Oh, *that's* why you always have a mirror on the speakers desk...
10:55 masak :P
10:55 * masak just took a self portrait with his phone, and feels kinda bad about that now :P
10:56 jdrab joined #perl6
10:57 masak jdrab: hi.
10:57 masak oh, that was a rejoin :)
10:58 jdrab masak: hi :)
10:58 masak :)
10:58 masak jdrab: welcome. haven't seen you around before, methinks.
10:59 jnthn Hm, .sk :)
10:59 jnthn Dobry den, jdrab :)
10:59 jdrab nope i wasn't here for a long time.. hmm ..never :D
11:00 masak vitajte, jdrab .
11:02 jdrab jnthn: hi
11:09 JimmyZ joined #perl6
11:11 JimmyZ good evening
11:13 fridim_ joined #perl6
11:15 masak JimmyZ: 晚上好
11:15 JimmyZ masak: 下午好
11:16 * masak .oO( why are we using each other's time zones? ) :P
11:17 * JimmyZ .oO(out of courtesy? o_O)
11:17 tadzik just UGT I guess
11:19 masak heh, TIL: UGT.
11:19 masak http://www.geekality.net/2010/05​/14/universal-greeting-time-ugt/
11:20 masak I will so adopt this immediately.
11:23 masak for my macro proceedings paper, I've identified *five* stages of macro: parsing of the macro, parsing of the call, running of the macro, inserting of the AST, and running of the inserted code.
11:24 masak though to be fair, an ordinary sub call has four of those stages.
11:35 masak TimToady: I think macros should be powerful enough to define classes with parameterized names. do you agree? how will we do that?
11:38 tokuhiro_ joined #perl6
11:39 moritz .oO( universal parsing fallback mechanism to replace any part of a grammar rule with a template )
11:39 moritz Perl6::Metamodel::ClassHOW.new(:$name)
11:52 daxim http://act.yapc.eu/ye2012/schedule?day=2012-08-20
11:55 jnthn r: constant foo = "lolclass"; class ::(foo) { }; say lolclass
11:55 p6eval rakudo 34e8d4: OUTPUT«===SORRY!===␤multi_dis​patch_over_lexical_candidates was unable to find a candidate list␤»
11:55 jnthn o.O
11:55 jnthn star: constant foo = "lolclass"; class ::(foo) { }; say lolclass
11:55 p6eval star 2012.07: OUTPUT«Capture[0xa7c9890]()␤»
11:55 jnthn Hmm.
11:55 jnthn That should work.
11:55 * jnthn leaves masak to do the honors
12:08 moritz that... should work? really?
12:12 arnsholt Heehee. "Now, instead of spending time figuring out what time of day is it for every member of the channel, we spend time explaining newcomers benefits of UGT."
12:13 jnthn moritz: Did work at one point, even, iirc.
12:14 moritz I don't remember even seeing that working
12:18 * masak submits rakudobug
12:20 masak jnthn: if that worked, it would be a really good start.
12:33 SamuraiJack joined #perl6
12:44 moritz would that also work for subs?
12:44 moritz r: constant name = 'foo'; sub ::(name) () { 42 }; say foo()
12:44 p6eval rakudo 34e8d4: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&foo' called (line 1)␤»
12:45 jnthn r: constant name = 'foo'; say (sub ::(name) () { 42 }).name
12:45 p6eval rakudo 34e8d4: OUTPUT«::(name)␤»
12:45 jnthn fel!
12:45 * masak submits rakudobug
12:47 masak is there any way to call a sub called '::(name)'? :)
12:49 * mhasch has just found the yapc::eu schedule.  4-way parallel sessions, geez.
12:49 jnthn ::('::(name)')()
12:50 jnthn uh
12:50 jnthn ::('^::(name)')() # more likely
12:51 masak r: constant name = 'foo'; sub ::(name) () { 42 }; say ::('^::(name)')
12:51 p6eval rakudo 34e8d4: OUTPUT«Symbol '^::(name)' not found␤  in method gist at src/gen/CORE.setting:9659␤  in sub say at src/gen/CORE.setting:7046␤  in block  at /tmp/u60wVQicIq:1␤␤»
12:51 masak r: constant name = 'foo'; sub ::(name) () { 42 }; say ::('^::(name)')()
12:51 p6eval rakudo 34e8d4: OUTPUT«Symbol '^::(name)' not found␤  in method <anon> at src/gen/CORE.setting:9664␤  in <anon> at src/gen/Metamodel.pm:2304␤  in any find_method_fallback at src/gen/Metamodel.pm:2302␤  in any find_method at src/gen/Metamodel.pm:843␤  in <anon> at src/gen/BOOTSTRAP.pm:824…
12:51 masak r: constant name = 'foo'; sub ::(name) () { 42 }; say ::('::(name)')()
12:51 p6eval rakudo 34e8d4: OUTPUT«Start of substr out of range. Is: 1, should be in 0..0␤  in method Str at src/gen/CORE.setting:9658␤  in method Stringy at src/gen/CORE.setting:726␤  in sub infix:<eq> at src/gen/CORE.setting:1038␤  in sub INDIRECT_NAME_LOOKUP at src/gen/CORE.setting:11643␤  in blo…
12:51 masak oh wow.
12:51 masak jnthn: what does the '^' mean?
12:51 masak r: say ::('::(name)')()
12:51 p6eval rakudo 34e8d4: OUTPUT«Start of substr out of range. Is: 1, should be in 0..0␤  in method Str at src/gen/CORE.setting:9658␤  in method Stringy at src/gen/CORE.setting:726␤  in sub infix:<eq> at src/gen/CORE.setting:1038␤  in sub INDIRECT_NAME_LOOKUP at src/gen/CORE.setting:11643␤  in blo…
12:52 masak r: ::('::(name)')
12:52 p6eval rakudo 34e8d4: OUTPUT«Start of substr out of range. Is: 1, should be in 0..0␤  in method Str at src/gen/CORE.setting:9658␤  in method Stringy at src/gen/CORE.setting:726␤  in sub infix:<eq> at src/gen/CORE.setting:1038␤  in sub INDIRECT_NAME_LOOKUP at src/gen/CORE.setting:11643␤  in blo…
12:52 masak r: ::('::()')
12:52 p6eval rakudo 34e8d4: OUTPUT«Start of substr out of range. Is: 1, should be in 0..0␤  in method Str at src/gen/CORE.setting:9658␤  in method Stringy at src/gen/CORE.setting:726␤  in sub infix:<eq> at src/gen/CORE.setting:1038␤  in sub INDIRECT_NAME_LOOKUP at src/gen/CORE.setting:11643␤  in blo…
12:52 masak r: ::('::')
12:52 p6eval rakudo 34e8d4: OUTPUT«Start of substr out of range. Is: 1, should be in 0..0␤  in method Str at src/gen/CORE.setting:9658␤  in method Stringy at src/gen/CORE.setting:726␤  in sub infix:<eq> at src/gen/CORE.setting:1038␤  in sub INDIRECT_NAME_LOOKUP at src/gen/CORE.setting:11643␤  in blo…
12:52 masak r: ::('')
12:52 p6eval rakudo 34e8d4: OUTPUT«Start of substr out of range. Is: 1, should be in 0..0␤  in method Str at src/gen/CORE.setting:9658␤  in method Stringy at src/gen/CORE.setting:726␤  in sub infix:<eq> at src/gen/CORE.setting:1038␤  in method exists at src/gen/CORE.setting:6497␤  in sub INDIRECT_NA…
12:52 * masak submits rakudobug
12:52 jnthn er, I meant &, not ^
12:53 masak hah!
12:53 masak also, "phew" :)
12:53 jnthn oh, duh
12:53 mhasch masak++: boiled down to 6 characters, neat.
12:53 jnthn ::('...') pays attention to ::s
12:53 masak r: constant name = 'foo'; sub ::(name) () { 42 }; say ::('&::(name)')()
12:53 p6eval rakudo 34e8d4: OUTPUT«Symbol '&::(name)' not found␤  in method <anon> at src/gen/CORE.setting:9664␤  in <anon> at src/gen/Metamodel.pm:2304␤  in any find_method_fallback at src/gen/Metamodel.pm:2302␤  in any find_method at src/gen/Metamodel.pm:843␤  in <anon> at src/gen/BOOTSTRAP.pm:824…
12:53 jnthn So it will try to split on them
12:53 jnthn I wanted ::{'&::(name)'}()
12:54 masak mhasch: thanks, but this is really nothing out of the ordinary :) golfing is standard procedure.
12:54 masak r: constant name = 'foo'; sub ::(name) () { 42 }; say ::{'&::(name)'}()
12:54 p6eval rakudo 34e8d4: OUTPUT«42␤»
12:54 masak \o/
12:54 jnthn But yes, the error for giving something wrong to interpolation is LTA there.
12:55 masak this all goes into the ticket.
12:55 jnthn If you're going to file that substr thing it is a separate ticket.
12:55 jnthn (to implemeting indirect method name support)
12:57 masak that's the one I'm filing.
12:57 masak I already filed a separate 'class ::(const)' one and a separate 'sub ::(const)' one.
12:57 masak today is a good day for rakudobugs :)
12:58 mhasch them little buggers seem to grow like mushrooms after a summer rain :-)
12:58 masak no. they were there all the time :)
12:59 jnthn like flowers in the dessert, they only grow when the rain comes :)
13:01 jnthn uh, desert
13:01 mhasch they might have been there, only hidden from masak's laser beam.  I wonder what that mars robot will stirr up.
13:06 mhasch right now I could use a clone of me or two.  Threading support in Parrot, e.q. is scheduled in a parallel track to Asynchronous Programming.
13:06 mhasch All about parallelism, figures.
13:07 mhasch Good thing they intend to do video recordings.
13:08 masak they do? neat.
13:11 xinming_ joined #perl6
13:25 skids joined #perl6
13:33 atrodo joined #perl6
13:37 mucker joined #perl6
13:40 bluescreen10 joined #perl6
13:48 tadzik they did that in Riga too :/
13:53 orafu joined #perl6
13:54 tadzik mhasch: I just complained to The Guys about it, and it "seems fixable"
13:58 kaare_ joined #perl6
13:59 drbean joined #perl6
14:05 felher r: https://gist.github.com/3295244
14:05 p6eval rakudo 34e8d4: OUTPUT«sub say-it() { ... }␤»
14:06 felher r: https://gist.github.com/3295275
14:06 p6eval rakudo 34e8d4: OUTPUT«hi␤33␤»
14:06 felher The only difference between those two gists is the ';' at the end of line one?
14:06 felher Is that a bug?
14:07 crab2313 joined #perl6
14:08 felher &brb
14:09 masak felher: https://rt.perl.org/rt3/Ti​cket/Display.html?id=76432
14:16 colomon n: https://gist.github.com/3295244
14:16 p6eval niecza v19-15-g051783d: OUTPUT«sub say-it() { ... }␤»
14:16 colomon n: https://gist.github.com/3295275
14:16 p6eval niecza v19-15-g051783d: OUTPUT«sub say-it() { ... }␤»
14:18 masak std: repeat { say "OH HAI" }
14:18 p6eval std f43a358: OUTPUT«[31m===[0mSORRY![31m===[0m�Undeclared routine:� 'repeat' used at line 1�Check failed�FAILED 00:00 41m�»
14:18 masak hm.
14:19 jnthn did you mean loop?
14:19 felher masak: oh, thanks. Sorry for the noise :)
14:19 masak felher: don't be sorry. it's a real problem.
14:19 masak jnthn: no, I meant to check what happens if I do 'repeat' without the 'until' or 'while' after the block.
14:20 masak std: repeat { say "OH HAI" } while True
14:20 p6eval std f43a358: OUTPUT«ok 00:00 41m␤»
14:20 masak I'm surprised it parses as a listop when the 'while' is not there.
14:21 jnthn Hmmmm.
14:21 jnthn Surely it doesn't backtrack there...
14:21 masak right.
14:21 jnthn std: repeat { my $x; say "OH HAI" }
14:21 p6eval std f43a358: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared routine:â�¤ 'repeat' used at line 1â�¤Potential difficulties:â�¤  $x is declared but not used at /tmp/uVJxqUWmAt line 1:â�¤------> [32mrepeat { my $x[33mâ��[31m; say "OH HAI" }[0mâ�¤Check failedâ�¤FAILED 00:00 42mâ�¤Â»
14:22 jnthn r: repeat { say "OH HAI" } # curious
14:22 p6eval rakudo 34e8d4: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&repeat' called (line 1)␤»
14:22 PerlJam That could make for some interesting code.
14:23 jnthn r: repeat { BEGIN { say "here" }; say "OH HAI" } # curious
14:23 p6eval rakudo 34e8d4: OUTPUT«here␤here␤===SORRY!===␤CHECK FAILED:␤Undefined routine '&repeat' called (line 1)␤»
14:23 PerlJam r: sub repeat { $^a.() }; repeat { say "hi" }
14:23 jnthn Wow!
14:23 p6eval rakudo 34e8d4: OUTPUT«hi␤»
14:23 PerlJam r:  sub repeat { $^a.() }; repeat { say "hi" }; my $i = 0; repeat { say "foo" } while $i++ < 3;
14:23 p6eval rakudo 34e8d4: OUTPUT«hi␤foo␤foo␤foo␤foo␤»
14:23 PerlJam good for obfuscation I guess
14:23 masak was gonna say.
14:24 masak I feel 'repeat' is a badly chosen name for that sub :P
14:24 jnthn I think the parser is gonna need to commit after seeing repeat, fwiw
14:25 * masak submits stdbug
14:25 * masak submits rakudobug
14:25 masak n: repeat { say "OH HAI" }
14:25 p6eval niecza v19-15-g051783d: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared routine:â�¤     'repeat' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1402 (die @ 5) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37) â�¤  at /h…
14:25 * masak submits nieczabug
14:25 * jnthn will wait for an STD fix and steal that
14:29 SatoAmbush joined #perl6
14:29 moritz r: for <a b c> <-> { .say }
14:29 p6eval rakudo 34e8d4: OUTPUT«===SORRY!===␤Missing block␤at /tmp/giT_v0kyy6:1␤»
14:30 moritz back in the days people said that LTM was missing to parse RW lambdas properly
14:30 moritz and now we have LTM
14:30 moritz so, what's missing? :-)
14:30 jnthn I dunno, check out the grammar and try a --parse-trace or something :)
14:31 jnthn b: for <a b c> <-> { .say }
14:31 p6eval b 922500: OUTPUT«===SORRY!===␤Missing block at line 22, near ""␤»
14:31 jnthn Hm, same error.
14:32 jnthn std: for <a b c> <-> { .say }
14:32 p6eval std f43a358: OUTPUT«ok 00:00 42m␤»
14:32 PerlJam Weird.   I thought rakudo parsed <-> at one time.
14:33 PerlJam (parsed it, but treated it as -> )
14:34 GlitchMr I'm confused.
14:34 GlitchMr Why this isn't syntax error?
14:34 GlitchMr Is it some weird Perl 6 feature?
14:35 PerlJam .oO( What Perl 6 features *aren't* weird?  ;-)
14:35 GlitchMr What is <-> anyways?
14:35 masak GlitchMr: it's some weird Perl 6 feature.
14:36 PerlJam GlitchMr: it makes the parameters rw
14:36 GlitchMr Oh, ok
14:36 GlitchMr Why <a b c> would be read write?
14:38 PerlJam GlitchMr: -> $a, $b { ... }   # $a and $b are the parameters
14:39 masak r: for <a b c> -> { say 1 }; say "alive"
14:39 p6eval rakudo 34e8d4: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤  in block  at /tmp/clZxY8Y8n4:1␤␤»
14:40 * masak thought so
14:42 jnthn Urgh, somebody looked at one of my Perl 6 scripts at $dayjob today, didn't recognize the language (it's a .Net shop), and asked, "Is that PHP?!"
14:42 tadzik eww
14:42 tadzik well, dollar signs
14:42 arnsholt Sad panda, indeed
14:42 brrt .... :-o
14:42 brrt hugme: hug jnthn
14:42 * hugme hugs jnthn
14:43 jnthn Happily, they were fairly impressed with what the script actually produced. :)
14:43 alester joined #perl6
14:44 flussence this week I'm slowly becoming convinced dhcpd.conf's syntax is worse than PHP...
14:44 pmichaud before LTM, the problem with <-> was that it would parse as a less-than operator, followed by a -> term.
14:45 pmichaud one could do various things to the grammar to try to prevent it, but that just pushed the problems elsewhere.
14:45 GlitchMr Actually, I think that PHP is better than Malborge
14:46 GlitchMr Malbolge*
14:47 pmichaud anyway, with LTM in place, I think we just need some tweaks to the grammar to get it to parse properly.
14:48 PerlJam Hmm.  Line 606 of Grammar.pm says:  token lambda { '->' | '<->' }
14:48 PerlJam (that's probably why I thought it already parsed <-> )
14:49 Chillance joined #perl6
14:50 GlitchMr https://gist.github.com/3295609
14:50 GlitchMr I have problems with compiling Rakudo
14:50 GlitchMr (or rather, NQP)
14:55 masak someone else did not so long ago.
14:56 sftp joined #perl6
15:02 jeffreykegler joined #perl6
15:08 jnthn klockan decommute \o/
15:10 masak \o/
15:13 sjohnson masak.snuggle
15:14 masak <3
15:20 Chillance joined #perl6
15:25 * masak smiles while re-reading http://strangelyconsistent.org/b​log/how-perl-6-just-sells-itself for the Nth time
15:28 bbkr joined #perl6
15:28 bbkr perl6: my $x is readonly = 3; $x = 6;
15:28 p6eval rakudo 34e8d4:  ( no output )
15:28 p6eval ..niecza v19-15-g051783d: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Trait readonly not available on variables at /tmp/JIBaQU1ih_ line 1:â�¤------> [32mmy $x is readonly [33mâ��[31m= 3; $x = 6;[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1402 (di…
15:28 bbkr std: my $x is readonly = 3; $x = 6;
15:28 p6eval std f43a358: OUTPUT«ok 00:00 42m␤»
15:31 tadzik r: my $zebra is striped;
15:31 p6eval rakudo 34e8d4:  ( no output )
15:31 tadzik std: my $zebra is striped;
15:31 p6eval std f43a358: OUTPUT«ok 00:00 41m␤»
15:32 masak b: my $x is readonly = 3; $x = 6; say "alive"
15:33 p6eval b 922500: OUTPUT«Cannot modify readonly value␤  in '&infix:<=>' at line 1:src/metamodel/RoleToInstanceApplier.nqp␤  in main program body at line 22:/tmp/dvjZcbMChs␤»
15:33 masak we used to have it.
15:34 bbkr yes, there is ticket https://rt.perl.org/rt3/Ti​cket/Display.html?id=71356 about it and I was curious if it's still a bug
15:35 masak ok.
15:37 bbkr was this trait renamed or just dropped from spec?
15:38 masak S06:2290
15:40 bbkr so the answer is: regression
15:42 bbkr std: class A { has $!b is readonly = "foo";}
15:42 p6eval std f43a358: OUTPUT«ok 00:00 42m␤»
15:42 masak std: class A { has $!b is rhubarb = "foo"; }
15:42 p6eval std f43a358: OUTPUT«ok 00:00 42m␤»
15:43 masak std: class A { has $!b is slinky_toy = "foo"; }
15:43 p6eval std f43a358: OUTPUT«ok 00:00 42m␤»
15:43 masak std: class A { has $!b is Mr_President = "foo"; }
15:43 p6eval std f43a358: OUTPUT«ok 00:00 42m␤»
15:43 bbkr ok, I get it :)
15:43 masak :)
15:45 ingy joined #perl6
15:45 jeffreykegler joined #perl6
15:46 bbkr is there a way to check later in the code if $b had slinky_toy trait applied?
15:47 brrt bbkr: i goes with does?
15:48 bbkr what do you mean?
15:52 moritz traits are just subroutines with funny names that get executed at compile time
15:52 moritz if they mix in a role, you can check if an object does the role
15:52 moritz if they do nothing, then you can't check for the trait
15:54 moritz currently it seems that traits on attributes are not yet implemented, with 'is rw' just being special-cased
15:56 jnthn Traits on attributes are implemented.
15:56 jnthn It's traits on variables that are not in Rakudo.
15:56 moritz oh, that was std, not rakudo
15:57 moritz never mind then
15:59 bbkr thanks for explanation
16:01 brrt left #perl6
16:04 moritz r: role Confused { }; multi trait_mod:<is>(&f, :$incomprehensible!) { &f does Confused }; sub lk is incomprehensible { }; say &lk ~~ Confused
16:04 p6eval rakudo 34e8d4: OUTPUT«True␤»
16:06 bbkr awesome, just what I need to introduce notifications in JSON::RPC without introducing variables of special meaning to method params!
16:09 masak bbkr: please show this use case when you have written it. I'm curious.
16:12 bbkr sure
16:12 Ex left #perl6
16:20 benabik joined #perl6
16:20 * masak is suddenly reminded of http://www.nntp.perl.org/group/perl.​perl6.language/2004/12/msg18764.html where it was attempted to think up new, better names for push/pop/unshift/shift
16:20 masak some things just run too deep to be changed, methinks.
16:20 flussence joined #perl6
16:31 SamuraiJack joined #perl6
16:32 [particle]1 joined #perl6
16:32 birdwindupbird joined #perl6
16:33 moritz p6l at its best
16:33 Colby` joined #perl6
16:34 charsbar_____ joined #perl6
16:34 bbkr "pull" and "put" were considered? well, "shift" is much better, it suggests that elements have to be shifted to make space for new one. unshift sounds horrible due to lack of natural opposition word to shift . but "pull" and "put" do not give any information about which side of list they operate on.
16:34 kaare_ joined #perl6
16:34 buubot_backup joined #perl6
16:34 rhr_ joined #perl6
16:34 pjcj joined #perl6
16:34 ranguard joined #perl6
16:34 PerlJam joined #perl6
16:34 Tene joined #perl6
16:34 SamuraiJack joined #perl6
16:38 TimToady unshift is correctly huffmanized :)
16:38 phenny TimToady: 08:53Z <moritz> tell TimToady http://www.wall.org/~larry/perl.html is a 404
16:39 geekosaur agreed about huffmanization
16:39 moritz push-to-front, pop-from-front
16:39 moritz :-)
16:40 masak &unshift is often the most expensive one in terms of what must be done memory-wise.
16:40 TimToady unshift is often a code smell
16:40 masak anyway, it is too late now. pop/push/shift/unshift are all in JavaScript, so they will never go away.
16:41 TimToady well, one could have said the same for P5 regexes
16:41 TimToady and it is true that they'll never go away...
16:41 masak moritz: re 'p6l at its best'. in some sense I'm very grateful that discussion took place. and p6l is the natural place for it.
16:42 masak if Perl 6 didn't have that trait of rethinking everything that needs rethinking, I probably wouldn't find the language as interesting. I probably wouldn't be here.
16:42 masak sometimes it just happens that after rethinking something, you decide not to change anything ;)
16:43 masak TimToady: right. P5 regexes will never go away. the best they can hope for is completely supplanting sed and awk and vim and Java and PHP regexes ;)
16:43 masak but they won't do that either.
16:44 masak the best P6 regexes can hope for is to be favorably compared to P5 regexes.
16:44 PerlPilot joined #perl6
16:44 masak (even though, technically, they are clearly better)
16:45 kaare_ joined #perl6
16:45 buubot_backup joined #perl6
16:45 rhr_ joined #perl6
16:45 pjcj joined #perl6
16:45 ranguard joined #perl6
16:45 Tene joined #perl6
16:45 moritz note that while niecza and rakudo have good-ish grammar engines, they are rather bad regex engines
16:45 moritz mostly missing lots of optimizations
16:46 masak aye, point.
16:58 sorear good * #perl6
16:59 diakopter hi
17:01 moritz good (UGT) morning sorear, diakopter
17:05 diakopter heh
17:06 benabik joined #perl6
17:07 masak good (UGT) morning, good fellows on the west coast of the world.
17:08 sorear huh, I thought this was only the west coast of the USA!
17:08 sorear o/ masak
17:08 sorear I live on the east coast of the Northern Pacific...
17:09 masak :P
17:09 flussence .oO( should probably stay away from the west coast of the world, you might fall off )
17:09 moritz Universal greeting time is Universal :-)
17:10 moritz flussence: no worries, we've never had any first-hand reports from people who fell off
17:13 sorear we do, however, have the geographic region of West Antarctica.
17:13 diakopter also North Antarctica
17:14 benabik North Antarctica?  You mean the coast?
17:16 masak moritz: oh, sure -- just because we never heard back from anyone who fell off, that means there must be no edge of the world, right? with that kind of reasoning you could probably prove that the Earth revolves around the sun rather than vice versa!
17:17 moritz masak: only if one way or another might produce victims :-)
17:18 masak victims who never write back.
17:18 moritz correct
17:21 thou joined #perl6
17:29 [Coke] aloha, ugt?
17:29 moritz aloha: ugt is Univeral Greeting TIme
17:30 moritz aloha: ugt?
17:30 moritz seems that feature is disabled
17:30 moritz can't say I'll weep for it
17:30 TimToady masak: re http://irclog.perlgeek.de/​perl6/2012-08-08#i_5884009 I'd say, no, macros should be *more* powerful than that :)
17:30 TimToady the use of ::() is a code smell that you're trying to treat a grammar element as a term when it isn't :)
17:31 benabik moritz: seems disabled here, but works in #parrot
17:31 TimToady s/you're/jnthn is/
17:33 masak TimToady: so, you agree. good. how will we do that?
17:34 BooK joined #perl6
17:34 mucker_ joined #perl6
17:34 masak that is, what's the syntax for saying "define a class with the name provided as a parameter to the macro"?
17:34 nebuchadnezzar joined #perl6
17:34 TimToady we talked about that some time ago; we need better ways to parse, and better ways to stitch in non-term quasi-unquotes
17:34 masak what's the type of such a parameter? Str?
17:34 masak yeah. we need that.
17:35 TimToady ¤ and all that
17:35 masak right.
17:35 masak I brought this up because it seems to me this is a more pressing problem than the ones we/you tried to solve in that discussion.
17:35 TimToady to me it's the same problem I was trying to solve then
17:36 masak that is, I felt at the time, and still feel, that we attacked too much of the problem at once and got unsolvable consequences that we weren't prepared for.
17:38 sjn joined #perl6
17:40 TimToady and that is different from the rest of Perl 6 how?  :)
17:42 fhelmberger joined #perl6
17:44 Telgalizer joined #perl6
17:44 masak point taken.
17:44 sorear masak: fwiw, niecza uses circular buffers to implement lists so unshfit and push are exactly equal in speed
17:44 masak still, we're missing something here, and I'm suggesting we might discovering by not focusing on the bigger picture.
17:44 masak sorear: ooh, nice.
17:44 Shozan joined #perl6
17:46 sorear moritz: i've spent a little bit of time thinking about the requirements of regexes versus grammars ...
17:47 sorear it seems to me that one of the most important things to do is to recognize freestanding regexes and add an internal .*? to them
17:47 diakopter masak: also, unshift==push speed in Pm's qlist in NQP (and thus rakudo, I think)
17:47 masak huh.
17:48 sorear with *handwaving* to handle the case of .match( pos )
17:49 sorear once the .*? is inside the regex the existing regex optimization machinery can be deployed to optimize .*? camel into <.BM('camel')>
17:49 TimToady some fbm after .*? would not be out of order
17:49 TimToady grammars of course do very little .*?
17:50 * masak puts on his TODO list to compose a list of possible optimizations for regex/grammar engines
17:50 sorear another thing to look into is to recognize feature-poor regexes and turn them into data objects / use specialized code for ACCEPTS
17:50 sorear the most obvious case being something like /foo/
17:50 TimToady and even when it does something like that in the nibbler, it's looking for single-char matches, so BM need not apply
17:51 sorear $text ~~ /foo/, IndexRegex.new('foo').ACCEPTS($text)
17:51 TimToady sorear: more generally, not collecting regex match data that we can determine won't be sued
17:51 TimToady or used, even :)
17:52 sorear statically determining that seems extremely difficult, so I'd prefer not to try
17:52 TimToady well, but we could change the default on something like .caps if it turns out to be expensive
17:53 TimToady we should be alert for sawampersandish penalties
17:54 sorear I am thinking that the main point of PL_sawampersand is that the original string has to be copied into offside storage?
17:54 sorear particularly $', because that part wouldn't otherwise be touched at all
17:54 TimToady well, and that it applied globally
17:54 phenny joined #perl6
17:55 sorear $` and $& have to be scanned anyway to make the regex work
17:55 TimToady since we could not determine which regex set it
17:57 sorear anyway the regex feature I am a liiitle concerned about is .from'
17:57 GlitchMr eval 'a' =~ /a/; ${'&'}
17:57 buubot_backup GlitchMr: No output.
17:57 sorear or is that .pos
17:57 GlitchMr eval 'a' =~ /a/; ${&}
17:57 buubot_backup GlitchMr: a
17:57 charsbar_____ joined #perl6
17:57 felher joined #perl6
17:57 kcwu joined #perl6
17:57 moritz joined #perl6
17:57 smash joined #perl6
17:57 Gesh joined #perl6
17:57 pochi joined #perl6
17:57 yeltzooo7 joined #perl6
17:58 GlitchMr It's probably known bug, I know :)
17:58 sorear because it interferes a bit with replacing regexes with DFAs
17:58 PerlJam masak: I'm more interested in: what's the syntax for saying "define the sub with the name and signature provided as parameters to the macro"
17:58 sorear another thing which troubles me is requiring ropes to get decent append performance in p6
17:58 diakopter sorear: a regex could start out not not creating matches, but when it is requested, the match is run again to get the match, and then matches are collected for that regex for all subsequent runs
17:59 sorear diakopter: doesn't work for regexes with embedded code
17:59 diakopter k, so don't do it for them :)
18:00 diakopter s/not not/not/
18:00 masak PerlJam: yes, that's important too.
18:03 tadzik seems that we're the "Dont's", by whoever's definition: http://140stitches.com/2012/8/2/ner​ds-its-time-to-up-your-fashion-game
18:03 masak GlitchMr: even if it's not known... this is #perl6.
18:03 PerlJam tadzik: uh ... wow
18:04 sorear working as designed.
18:04 masak tadzik: I find that post slightly offensive.
18:04 flussence ah, another site that breaks hilariously with noscript...
18:05 flussence (or is it looking as intended?)
18:05 masak tadzik: besides, I think you look very trendy in that t-shirt. it suits you!
18:06 masak tadzik: how... how did you find that post?
18:06 jnthn :/
18:06 * tadzik is formulating a response
18:06 tadzik masak: hacker news
18:06 masak hah!
18:06 tadzik actually a friend of mine
18:06 mhasch joined #perl6
18:06 tadzik "hey, is that you? Found on HN"
18:07 tadzik me: "haha, yes, that's me :D... wait, wtf"
18:07 masak "The guys who you can't have a conversation with without getting lost in the first 10 seconds." -- the post isn't made better by generalizations such as this. :(
18:08 PerlJam decrying "hackathon shirts" with images of guys taken *from a hackathon* is really wrong too.
18:08 masak oh, right. I forgot to say that.
18:08 masak there's a time and place for everything.
18:08 PerlJam s:2nd/hackathon/hackathon-like-activity/
18:08 masak it was *a hackathon*.
18:08 masak in Oslo.
18:09 masak though I'm not sure what effect showing up looking like a clothes model would have, either. maybe none.
18:10 PerlJam maybe next time someone should show up in a tux with a tophat and cane  :)
18:10 masak maybe people would think it'd be weird in that setting. maybe they would unconsciously pay more attention to this obviously-alpha geek. I dunno.
18:11 masak PerlJam: I'll consider it. that sounds like fun.
18:11 tadzik "Awaiting moderation". We'll see
18:11 * masak .oO( Awaiting admiration )
18:11 tadzik https://gist.github.com/3297168 in case it'll not come to sb's liking
18:12 PerlJam or, if anyone happens to be bulging with muscles (Damian is the only hacker that immediately comes to mind though), they could walk around shirtless with a sign that reads "I'm too sexy for my shirt"
18:13 masak tadzik: angry comment. though I don't think it's over-the-top.
18:13 jnthn That was...angry?
18:13 jnthn It was quite contained, imho :)
18:13 masak it wasn't *Internet* angry, mind.
18:13 jnthn Well, quite.
18:13 masak but clearly expressing dislike and dissatisfaction.
18:13 jnthn Heh. "It's holding you back from getting the girl" - well, if it filters out ones like the author of that post, I'm very glad of it. :-)
18:14 PerlJam Hmm.
18:14 masak well, what's sad about it is that she's clearly out to help.
18:14 masak she's just being a bit of an asshat about it.
18:14 PerlJam Lots of presumption though
18:14 PerlJam lots and lots and lotgs of presumption
18:14 masak and cliches and generalization.
18:14 masak not a good start.
18:15 tadzik masak: I don't fell non-angry when being used as a Bad Example, jokingly or not
18:15 PerlJam I wonder if she polled the people in those pictures, how many are actually either married or in a relationship?
18:15 masak tadzik: quite.
18:15 diakopter I'm kindof confused why any of you is offended
18:15 PerlJam (or how many aren't because they don't want to be)
18:16 masak diakopter: ahahahah. I was waiting for this! :)
18:16 diakopter PerlJam: also, how many of them want the Guy instead of the Girl
18:16 PerlJam diakopter: exactly
18:17 diakopter the commenter who's in the photo says he's honored (not offended)
18:17 diakopter and commends the blog for an interesting idea
18:17 masak oh, there's a lot of comments there already.
18:18 PerlJam diakopter: that's just because he agrees with the underlying premise :)
18:18 masak I agree with the underlying premise to some extent too.
18:18 masak I just think the delivery was tone-deaf.
18:18 REPLeffect joined #perl6
18:18 diakopter PerlJam: I don't understand what's wrong with the underlying premise..
18:19 masak "And as some people have noted, trying to 1) insult your target demographic rather than try to raise them up and 2) using pretty low-level tricks like, "It's holding you back from getting the girl" on a crowd who you yourself acknowledge are a pretty bright bunch isn't exactly tactical." +1
18:19 PerlJam well ... since my picture isn't up there, I get to point and laugh at you guys for having no "fashion sense"   ;->
18:19 diakopter I really don't see how it's insulting
18:19 diakopter I don't see how that's a low-level trick
18:19 diakopter she's just stating an opinion.
18:20 diakopter not a lure
18:20 diakopter implying... "if you care about getting the girl, I'm here to tell you this is holding you back, if you weren't already aware"
18:21 diakopter where "the girl" means "a much larger pool of non-disgusted females"
18:21 masak diakopter: how would you dress to a hackathon, ooc?
18:22 flussence the tone of it sounds a lot like the anecdote here: http://www.reddit.com/r/linux/comments/xiy9d/for​mer_sun_ceo_jonathan_schwartz_there_are/c5mzgil
18:22 awwaiid not enough of the "if you care" preamble
18:22 diakopter same as I wear to work and wear nearly every other place other than work, loose jeans and polo with white undershirt, leather sandals with white socks.
18:22 sirrobert n
18:23 diakopter masak: it's kindof my uniform
18:24 diakopter note: I have a Girl
18:24 masak diakopter: I'm a geek. I have a girlfriend. I have a burgeoning fashion sense. improving it *interests* me. the tone of this post had an off-putting effect on me, by making assumptions that I don't recognize and don't like.
18:25 masak I'm not sure if "offended" is the right word. I didn't feel happier reading that.
18:25 diakopter hm. perhaps the difference here is how much we care about the inaccuracy of a random blogger's generalizations.
18:25 masak isn't it a fundamental rule of any writing (or speaking) that it's a bad idea to insult one's audience?
18:26 TimToady hackers are just too Lazy to try to please everyone, and smart enough to realize that pleasing a small subset is usually going to be adequate, long term
18:26 masak "no offense, but you people suck" -- I've never seen this have a net positive effect.
18:26 rjbs The small subset containing one element, $Spouse.
18:26 TimToady but I think the actual implied insult is that hackers aren't smart enough to worry about fashion while they're worrying about important things :)
18:26 awwaiid pft. clearly the "no offense" part cancels out _anything_ that follows!
18:26 diakopter masak: again, I really don't see how anything she says is insulting
18:27 diakopter or says "you suck"
18:27 masak diakopter: she says "you guys need help".
18:27 diakopter so?
18:28 diakopter how is that insulting?
18:28 * awwaiid goes back to hacking
18:28 masak that's on the same size of 0 as "you suck".
18:28 masak side*
18:28 diakopter everybody needs help.
18:28 * masak stops arguing
18:28 TimToady the intent was to insult, in my opinion
18:29 sirrobert She's not claiming helping "nerds" address a problem they know they have.  She's not even helping show them a problem they don't know they have.
18:30 sirrobert she's simply asserting the problem, which doesn't work towards a solution, it simply espresses opposition =)
18:30 sirrobert expresses
18:30 diakopter she promises to offer solutions in forthcoming posts, it seems
18:31 sirrobert yeah, but if we don't agree there's a problem (and what the problem is) then we're not interested in her solutions
18:31 TimToady solutions of the form, "think less about hacking and more about fashion"
18:31 sirrobert so it does her no good =)
18:32 masak I agree about the underlying premise. fashion isn't a prime concern at a hackathon.
18:32 diakopter I don't think it would mean spending more time thinking about fashion.
18:33 sirrobert so, I have this:   HTTP::Server::Simple.new(8080).run;
18:33 diakopter she's not talking about attending hackathons
18:33 sirrobert if I go to it in my browser, it works fine =)
18:33 sirrobert if I hit refresh twice fast, it works fine
18:33 sirrobert if I hit refresh 5+ times fast, it crashes silently.
18:33 sirrobert how do I troubleshoot that? =)
18:34 sirrobert (I'm also open to an alternative to HTTP::Server::Simple)
18:36 gv joined #perl6
18:40 masak TimToady: 'Foo' in 'class Foo' is a <longname> according to STD.pm6. unquotes are terms, so something is missing. how would a solution that allowed 'Foo' to be parameterized look?
18:41 nebuchadnezzar joined #perl6
18:42 moritz add an  | <indirect>   branch to token longname
18:42 TimToady well, ¤longname() or some such on the interpolation end, or a generic ¤() on interpolation and a longname parser attached to the parameter
18:42 sudokode joined #perl6
18:43 TimToady is parsed(/<longname>/) ain't so far off
18:43 moritz and have some sensible syntax for <indirect>
18:44 TimToady I fail to see how doctoring the grammar helps the macro know how to parse the parameter
18:44 TimToady maybe you're solving a different part of the problem from me
18:45 moritz I might be
18:45 TimToady but it seems like identifying the rule to parse the parameter with would be close to adequate
18:46 TimToady where the default is <term>, more or less
18:46 Vlavv joined #perl6
18:46 diakopter https://twitter.com/jordyncl​ee/status/233064838346207233
18:46 diakopter she replies to nearly every comment in that ycombinator thread
18:49 masak TimToady: thank you. I'll put that in my brain and let it go through some cycles to see what comes out.
18:49 TimToady the fashionistas always wage war on utilitarian garb, nothing new here...
18:50 TimToady my wife thinks there's a time and place for both, and I like someone who thinks that way :)
18:50 masak I'm considering the possibility that going to a hackathon in a conf t-shirt *is* a fashion statement.
18:51 masak or going to a conf in a conf t-shirt.
18:51 moritz was that picture from the oslo hackathon published under some creative commons license?
18:53 masak moritz: http://howcaniexplainthis.blogspot.se/2012/​04/oslopm-patterns-hackathon-pictures.html
18:53 masak I don't see a license.
18:54 TimToady and part of the (unspoken) subtext of putting that picture there is not just about clothing; it's really about the pose, or lack thereof, which reinforces the insult that "hackers just don't care enough about how they look to pose for a picture properly"
18:55 TimToady gee, they should've hired a profession photographer for the photoshoot
18:56 masak :)
18:57 TimToady or maybe it's "hackers don't care enough to take 100 pictures and pick the best one"
18:58 sirrobert I'd be interested in software that could pick the best one based on parameters =)
18:59 birdwindupbird joined #perl6
19:01 masak clearly this blogger feels a need to address geeks but doesn't quite know how to do it. she needs help. :)
19:01 sirrobert heh
19:08 moritz well, she can help me by leaving me alone :-)
19:08 moritz I know how to dress up, if that's what I want
19:08 moritz I just don't want, 99% of all days
19:08 sirrobert That's the problem with the problem =)
19:08 sirrobert It's a problem *for her*, not for you/me/us
19:09 moritz I rather think it's a business for her, not a problem
19:09 sirrobert well, businesses are about solving problems
19:09 sirrobert but it has to be your customer's problem from your customer's perspective
19:10 sirrobert if it's his problem from your perspective, your problem from yours/his, there's no sale =)
19:10 diakopter don't read her blog if you don't want to :P  "something is wrong on the ....... "
19:10 moritz no, businesses are about making money
19:11 moritz solving problems is just one way to do that
19:11 sirrobert I don't see any modules for handling socket IO.  Is there a good help resource for it right now?
19:11 moritz IO::Socket::INET is built in
19:11 masak diakopter: it just happens to be a blog post with a picture with people I know on it labeled as "Don't".
19:11 * moritz happens to be one of those people
19:12 sirrobert I was defining "problem" as "a need sufficient to part with one's money willingly for a given addressing of the need"
19:12 * diakopter has realized that 10 minutes ago
19:12 sirrobert moritz: thanks (re: Socket)
19:12 masak diakopter: "hey, don't take it personal. it's not like she's talking about *you*. oh wait."
19:12 diakopter (right)
19:15 * colomon finally looks at the article and realizes he is at this very moment wearing one of the t-shirts pictured...
19:30 moritz http://programmers.stackexchange.com/users/login has "why OpenID?" box, but I can't find the option to log in with OpenID
19:30 moritz am I stupid, or are they?
19:30 flussence you have to turn JS *off* to log in with it :D
19:31 huf O_o
19:31 moritz wtf.
19:31 huf websites can be so <3
19:31 moritz flussence++
19:31 diakopter moritz: click "show more login options"
19:32 jnthn wtf, I thought flussence was kidding!
19:32 jnthn Wow...
19:32 huf apparently he was, but i took him for serious :)
19:32 sirrobert my script is exiting (unexpectedly) with an exit code of 141.  Is there a list of codes somewhere?
19:32 jnthn Oh!
19:32 diakopter moritz: (the openid icon is the first on the left)
19:32 jnthn I took the <moritz> flussence++ as "that solved my problem" :D
19:33 moritz yes, turning off JS did solve my problem
19:33 huf well, it works better without js, apparently ;)))
19:33 moritz hense flussence++
19:33 moritz *hence
19:33 huf one less click before you go
19:33 jnthn Oh, hah :)
19:33 diakopter strange you didn't see the "show more login options" link/button
19:33 diakopter s/you didn't see/it didn't show you/
19:34 diakopter it shows in every browser I've tried
19:35 sorear sirrobert: unix shells will map signal N to exit code 128+N
19:36 sirrobert ah
19:36 sorear sirrobert: subtract 128 and look in the output of kill -l
19:36 sirrobert sorear: thanks =)
19:36 sorear HOWEVER, this is not necessarily the source
19:36 sorear because the exit() system call takes values from 0 to 255
19:37 sirrobert the code makes sense in context
19:37 sirrobert (now I have to figure out what to do with it =)
19:37 sorear n: say 141-128
19:37 p6eval niecza v19-15-g051783d: OUTPUT«13␤»
19:37 sirrobert SIGPIPE
19:37 sirrobert from HTTP::Server::Simple crashing
19:38 huf i think exit actually takes an int, but "portable" values are between 0 and 126 inclusive
19:38 huf or something horrible like that
19:40 sorear depends on which standard you ask
19:41 sorear ansi C, I think it takes an int but the only portable values are EXIT_SUCCESS and EXIT_FAILURE
19:41 sorear and 0, which is transparently mapped to EXIT_SUCCESS
19:41 sorear e.g. on VMS exit values are a full 32-bits, but the native EXIT_SUCCESS is not 0, it's like 0xC000 or something
19:42 huf yeah, the 0-126 is for unixlikes and mostly takes the shell's mangling into account
19:42 sorear when I talk about 8-bit exit() values I am referring only to traditional unix behavior
19:42 sorear exit(127) is not the best idea because the shell calls exit(127) if exec fails
19:42 huf yes, but if you're gonna run it from shell, 127 and 128+n are out
19:42 huf yeah
19:43 sorear 192 is probably safe though, I've never seen a unix with more than 64 signals :D
19:43 huf :)
19:45 pmurias joined #perl6
19:46 sorear at the level of 'union wait' there are 256+3*NSIG distinguishable statuses but for some reason I rarely see that in shells
19:47 sorear (granted, WIFSTOPPED would pretty rarely come up in a shell situation...)
19:54 geekosaur hm?  ctrl-z
19:54 geekosaur I'd think it more common than the other case it comes up (debuggers)
19:57 sorear d'oh
20:05 tokuhiro_ joined #perl6
20:06 SamuraiJack joined #perl6
20:08 dalek perl6-roast-data: 9e0aac1 | coke++ | p (2 files):
20:08 dalek perl6-roast-data: today
20:08 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/9e0aac1ab9
20:16 benabik joined #perl6
20:22 TimToady ./viv -e 'repeat { ... };'
20:22 TimToady ===SORRY!===
20:22 TimToady "repeat" is missing its "while" or "until" at (eval) line 1:
20:23 TimToady can't check in till I fix the other stuff though
20:23 masak \o/
20:25 TimToady nap &
20:25 birdwindupbird joined #perl6
20:25 masak good UGT night, TimToady.
20:26 * PerlJam predicts that will be shortened to just "good ugt" (as both a greeting and a farewell) in common usage
20:27 renormalist joined #perl6
20:29 spider-mario joined #perl6
20:29 moritz \UGT
20:31 bruges joined #perl6
20:32 alvis joined #perl6
20:34 [Coke] gugt.
20:34 [Coke] gug.
20:34 [Coke] ug.
20:34 * moritz hands [Coke] a banana
20:34 * masak hands [Coke] a glass of water
20:45 * mhasch would have thought [Coke] preferred another beverage
20:48 dalek rakudo/nom: 4acaef3 | coke++ | tools/autounfudge.pl:
20:48 dalek rakudo/nom: Allow autounfudge to use --section=1|01
20:48 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4acaef30eb
20:53 brrt joined #perl6
20:58 MayDaniel joined #perl6
21:00 dalek rakudo/nom: 038a3c7 | coke++ | tools/autounfudge.pl:
21:00 dalek rakudo/nom: allow override of autounfudge output file
21:00 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/038a3c7b9e
21:04 araujo joined #perl6
21:04 thou joined #perl6
21:11 obra joined #perl6
21:19 brrt left #perl6
21:25 moukeddar joined #perl6
21:25 benabik joined #perl6
21:27 moukeddar left #perl6
21:34 spider-mario_ joined #perl6
21:43 * masak managed to send in both proceedings articles before the deadline
21:44 Chillance joined #perl6
21:44 tadzik good job :)
21:46 jeffreykegler joined #perl6
21:47 masak I will definitely write proceedings from now on. they made me rethink the exposition of the talks.
21:48 whiteknight joined #perl6
21:52 * jnthn sent his in too
21:52 supernovus joined #perl6
22:00 supernovus A quick question. Say I have a BUILD submethod, that needs to populate object attributes based on a list of fields and a set of data for those fields. How would you get a pointer to the private attribute storage for said fields based on a variable name?  I know for attributes marked 'rw' it's a simple self."$fieldname"() = $value;  however, having to have all fields marked 'rw' may not always
22:00 supernovus be desirable? If this is not possible, don't worry about it, I'll just force the use of 'rw' attributes in this particular case.
22:02 jnthn Can you not write a method with attributive parameters and map your list of fields etc into a call to that?
22:04 jnthn I mean like a method setup(:$!foo, :$!bar) { ... }
22:04 jnthn And then if you have a hash of the ones you want to set you self.setup(|%that_hash)
22:04 fgomez joined #perl6
22:08 supernovus Hmm, I will look at that. I was hoping to find a way of doing it so that the person making the child class didn't have to do anything other than define their list of @.fields, and the rest would be done by the parent class in the background. I will play with it some more I think.
22:09 jnthn Oh
22:09 jnthn Then you're into the real of meta-programming
22:09 jnthn Use the MOP.
22:09 jnthn *realm
22:09 jnthn .^attributes gets you the attributes
22:09 TimToady you can reimplement Ruby if you want :)
22:10 jnthn And the Attribute objects provide a way to get/set the attributes.
22:10 jnthn TimToady: :P
22:18 masak awwww https://i.chzbgr.com/completestore/​12/8/5/_5Ede26HQkKw6U0SPu1baw2.png
22:19 tadzik masak: awesome :)
22:20 jeffreykegler joined #perl6
22:20 masak I knew you would like it, tadzik :)
22:20 tadzik it has Hugs and Bison. At the same time! \o/
22:21 masak jnthn++ found it :)
22:23 supernovus jnthn: thanks, the MOP method will work great.
22:28 skids joined #perl6
22:40 sirrobert supernovus:  I'm playing with WWW::App (thanks =) but having a little trouble setting it up with lighttpd.  have you used it?
22:40 sirrobert or anyone else, for that matter ;)
22:40 supernovus sirrobert: Yes, I am using it with lighttpd at the moment (in testing of WWW::App::Easy, an MVC framework for building rapid web apps.)
22:41 sirrobert cool.  I've never used scgi or psgi before.  I don't quite understand how to set up lighttpd for it.  Can you point me to an example config or something?
22:42 sirrobert I'm trying to configure to use with scgi right now
22:43 sirrobert fwiw, I'm using the example app (scgi.p6) from your SCGI module
22:43 sirrobert github
22:43 supernovus sirrobert: make sure you have enabled the scgi plugin for lighttpd: server.modules += ( "mod_scgi" )
22:43 sirrobert did that
22:44 sirrobert let me pastebin you my conf... one sec
22:44 sirrobert crud, I had just scrapped it to start over =)
22:44 supernovus I will pastebin you the one I'm using
22:44 sirrobert cool, thanks
22:47 supernovus http://pastebin.com/E63Weapt
22:48 sirrobert thanks, working on integrating that
22:48 sirrobert might bug you once or twice more if you're still around =)
22:49 supernovus No problem. lighttpd + SCGI + WWW::App makes a pretty good web framework. Once WWW::App::Easy is finished, building dynamic web apps in Perl 6 will be super easy!
22:50 sirrobert It looks promising already.  my company is building a virtual appliance and I'm working on setting this up as the api front-end initially
22:51 sirrobert (well, api/docs)
22:54 sirrobert supernovus++:  ah, great.  That got it going for me.  Thanks =)
22:56 sirrobert as I'm working, I'll see if my team or I can send some stuff upstream while we work
22:58 * [Coke] just listened to http://blip.tv/timbunce/devel-n​ytprof-v4-oscon-201007-3932242, where tim says "I'm kind of distracted with perl6 stuff at the moment."
22:59 gongyiliao joined #perl6
23:04 diakopter o_O
23:05 gongyiliao joined #perl6
23:18 benabik joined #perl6
23:18 jeffreykegler joined #perl6
23:24 * [Coke] does remember some DBIish things going on, but doesn't think it landed.
23:30 awwaiid joined #perl6
23:36 diakopter [Coke]: maybe there was a secret project at the time
23:37 diakopter (that would've never appeared, or at least is taking a very long time)
23:38 awwaiid joined #perl6
23:38 masak good nugt, #perl6.
23:38 sirrobert supernovus++ (for WWW::App and SCGI)
23:39 sirrobert masak: wave
23:44 awwaiid joined #perl6
23:52 jeffreykegler joined #perl6
23:54 raiph joined #perl6
23:56 raiph hello #perl6 # showing emily, 8, how irc chat works
23:56 tadzik hello raiph and emily :)
23:57 raiph hello
23:57 benabik joined #perl6
23:58 raiph perl6: say 1
23:58 p6eval rakudo 038a3c, niecza v19-15-g051783d: OUTPUT«1␤»

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

Perl 6 | Reference Documentation | Rakudo