Perl 6 - the future is here, just unevenly distributed

IRC log for #phasers, 2010-07-13

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

All times shown according to UTC.

Time Nick Message
02:35 eternaleye joined #phasers
12:56 [particle] joined #phasers
16:13 eternaleye joined #phasers
17:42 mberends_ joined #phasers
18:57 pmurias joined #phasers
18:57 colomon joined #phasers
18:57 lue joined #phasers
18:58 supernovus joined #phasers
19:00 sorear hello
19:00 colomon o/
19:00 mberends_ \o
19:01 jnthn oh hai
19:02 PerlJam greetings
19:02 pmichaud aloha!
19:02 jnthn Seems we're masak-less and moritz-less.
19:02 colomon :(
19:02 lue hello o/
19:03 supernovus hi (I'm just a humble observer)
19:04 * moritz_ is here now
19:04 jnthn \o/
19:04 moritz_ supernovus: btw I plan to apply your DateTime patch tonight
19:04 supernovus moritz_: Yay! That will make Kodi happy, he has a huge patch coming up :-)
19:05 moritz_ so, phasers
19:05 jnthn Aye
19:05 moritz_ pmichaud: do you want to start?
19:05 pmichaud skip me for a moment
19:05 moritz_ ok
19:05 moritz_ jnthn?
19:06 jnthn This Week
19:06 jnthn * ETOOHOT :-/ Had to concentrate on much.
19:06 jnthn * Wrote a wrong patch to fix an exceptions problem
19:06 jnthn * Ripped out the non-syntactic case of *.foo and it broke nothing \o/
19:06 jnthn (hard to concentrate...)
19:07 jnthn In the next week
19:07 jnthn * Half way through fixing .wrap, will commit soon I hope
19:07 jnthn * More S12/S14 triage
19:07 jnthn * Will file mid-term report on masak++'s GSOC project, which I'm tormentoring, today or tomorrow
19:07 jnthn * Will either get pls to work on Windows myself, or work with @other on that
19:07 jnthn Future
19:07 jnthn * Filed a grant application for what I intend to focus on post-R*. R* is a step along the journey, not a destination, and I'm very keen to hit the ground running. http://news.perlfoundation.org/2010/07/hague-grant-application-meta-m.html
19:07 jnthn }
19:08 colomon \o/
19:08 moritz_ colomon: want to report something?
19:09 [Coke] ~~
19:09 colomon moritz_: was just celebrating post-R* plans, but I do have a small report to make when people are ready.
19:09 pmichaud (my report is ready)
19:10 moritz_ then I'd say pmichaud first
19:10 colomon +1
19:10 pmichaud * http://picasaweb.google.com/lh/photo/8S7i4DucuijdmQwEjHzhiQ?feat=directlink  #phasers in paradise
19:10 pmichaud * REPL now remembers lexical declarations
19:10 pmichaud * Fixed autovivification of arrays and hashes
19:10 pmichaud * Applied lue++'s binding patches
19:10 pmichaud * Refactored code startup
19:10 pmichaud * Eliminated IN_EVAL(), $*IN_EVAL
19:10 pmichaud * Worked on conversions to use .Stringy
19:10 pmichaud this week: more paradise, following up on other smallish bugs, writing emails
19:11 pmichaud writing blog posts
19:11 pmichaud EOR
19:11 pmichaud (yes, the photo is where I'm sitting right now :-)
19:11 jnthn EENVY
19:11 jnthn :_)
19:11 * moritz_ too
19:11 jnthn It looks almost too nice. :-D
19:12 jnthn moritz_: Anything to report?
19:12 moritz_ * managed to come up with a weekly challenge today
19:12 moritz_ * inspired by szabgab++ I'm pondering a Hage Grant application
19:13 moritz_ (about systemizing and speccing error messages)
19:13 pmichaud +1
19:13 moritz_ * now working on Mu.perl
19:13 moritz_ * did all those 100 small items I'm always doing... :-)
19:14 moritz_ * try to get the book up and running. pronik++ and lucs++ are working on hard on a proper layout
19:14 moritz_ there's a branch (layout-basic) which doesn't build on my machine yet...
19:14 moritz_ .EOR
19:15 moritz_ colomon: anything new, except all-day fishing? :-)
19:16 colomon http://harmonyware.com/pictures/DSCN4421.JPG
19:16 colomon that's last Monday, but pretty typical of that week.  :)
19:16 colomon when I wasn't fishing, I was working on the trig test overhaul.
19:16 colomon it now works, but the generate-tests.pl code is pretty ugly.
19:17 moritz_ (which one is you?)
19:17 colomon moritz_: middle
19:17 moritz_ thought so
19:17 colomon (my father-in-law is on the left, my dad on the right.)
19:17 colomon I needed workarounds for the gather / take bug and .eval bug.
19:17 colomon though I guess I should rewrite the latter in terms of eval()
19:18 colomon I may check it all in anyway, as the generated tests are fairly nice at the moment.
19:18 moritz_ (wfm if it's only the generating script that's ugly, not the tests themselves)
19:18 colomon I think the tests are reasonably okay, and if not, feedback is always good anyway.
19:19 colomon at any rate, I think this eliminates something like 10,000 tests from the test suite, while testing a bunch of cases that were missed previously.
19:19 colomon I found two new trig bugs in the process.
19:19 moritz_ \o/
19:20 jnthn colomon++
19:20 jnthn Nice
19:20 colomon I also starting working on implementing the latest hyper spec changes, but I'm hitting ENOTCLEVERENOUGH at the moment.
19:20 * jnthn is looking forward to the faster test runs already
19:20 colomon or possibly ESPECISTOOMAGICAL
19:20 jnthn The latter is entirely possible.
19:21 colomon basic issue is how do you handle 1 ... * <<op>> 1 ... 10 ?
19:22 colomon when either side might be infinite?
19:22 colomon I'm planning on writing a blog post about it.
19:22 pmichaud colomon: note that TimToady and I speculate there's something beneath .elems
19:22 pmichaud i.e., there's a lazy form of .elems
19:23 colomon pmichaud: that might help, I suppose.
19:23 colomon My current experimental implementation doesn't use .elems at all, but then it doesn't know what side should be dwimmy there.
19:24 moritz_ uhm... potentially both?
19:24 pmichaud but even without .elems, you should be able to work with the two lists and then figure out which is the dwimmy side when one list is exhausted.
19:24 moritz_ when one side is exhausted, you go back to the start
19:24 pmichaud exactly.
19:24 moritz_ if both are exhausted, you stop
19:24 colomon but that means 1 ... * <<op>> 1 ... 10 is infinite.
19:24 moritz_ when none is exhausted, you keep going happily and possibly infinite
19:24 moritz_ colomon: yes.
19:25 moritz_ isn't that what the spec implies?
19:25 moritz_ or does it expect some kind of magic for one-sided infinite lists?
19:25 pmichaud moritz_: not if hyper is eager
19:25 moritz_ uh. There's that.
19:25 colomon it expects some kind of magic for one-sided infinite lists.
19:25 colomon but maybe not that particular magic
19:25 pmichaud for ranges, it's possible to check for infinite lists
19:26 moritz_ I guess the non-infinite version would be 1 ... * «op« 1...10, no?
19:26 pmichaud for series it may also be possible -- just haven't done it yet.
19:26 * moritz_ should actually read the spec some time
19:27 pmichaud colomon: I suggest writing the case that makes sense for non-infinite lists and then we'll figure out how to block the infinities a bit later on
19:27 pmichaud I suspect that infinite-ness is a transitive property on lists
19:27 colomon pmichaud: okay
19:27 colomon anyway, EOR
19:27 pmichaud rakudo has some support for it already (with range iterators), but we can come up with better
19:31 jnthn Anything more?
19:31 lue [ ENOREPORT, caused by ENOTHINGINTERESTING :) ]
19:32 moritz_ lue++ implemented binding. YAY!
19:32 mberends_ aye
19:32 moritz_ did anybody twitter it?
19:32 moritz_ mberends_: anything new from the database front?
19:32 lue Hopefully, as I continue my project, I keep on breaking rakudo and implementing stuff I (want|need)! :)
19:33 mberends_ MiniDBD::Pg is passing 75% of current tests, thanks to cxreg++
19:33 mberends_ it's already usable for R*
19:34 pmichaud tweated.
19:34 pmichaud tweeted.
19:34 pmichaud (lue's := patch)
19:34 mberends_ on another topic, is binary file I/O going according to plan?
19:34 * sorear is doing interesting but not for R*
19:34 jnthn mberends_: I know masak++ has some basic stuff working
19:34 jnthn mberends_: Sadly he's not here right now with da details.
19:35 mberends_ I tried an open($name, :bin); that worked but the read($n) didn't :(
19:36 mberends_ (working on favicon.ico files in HTTP::Daemon)
19:37 jnthn ah :-(
19:37 jnthn ask masak ;-)
19:37 mberends_ ok
19:37 mberends_ oh yes, a local HTTP::Server::Simple is working, the biggest step towards HTTP::Server::Simple::PSGI, which is the foundation of Dancer.
19:38 jnthn Also nice :-)
19:39 lue I also plan on documenting all the stuff in the src/ folder of Rakudo. Let's see if I actually get to it :)
19:40 mberends_ lue: every little helps :)
19:41 PerlJam lue: I always make plans, but life has a way of making you choose different plans from the ones you wanted.
19:42 * lue takes Life hostage and demands he stop messing up my plans
19:47 PerlJam lue: life isn't a man silly; life is *female* and thus the cause random plan changes :)
19:50 Tene Yay sexism!
19:50 moritz_ general question: the ROADMAP says TODO: basic Buf and binary IO (or so)
19:50 moritz_ can we move that to DONE?
19:52 mberends_ only if appropriate tests are being passed
19:52 moritz_ fair point
19:52 jnthn moritz_: Let's get masak's opinion on that.
19:52 jnthn moritz_: I think we must be close.
19:52 jnthn moritz_: At least on Buf
19:54 PerlJam given the proximity to release, are there any items denoted with a 1 or a 2 that we know we *won't* have?
19:54 PerlJam (on the ROADMAP)
19:55 moritz_ 1 **    improved error messages and failure modes (B, all)
19:55 moritz_ we've done a lot to improve those
19:55 moritz_ though some parsing error messages are still very bad
19:55 moritz_ it's a very unspecific item - when have we reached it?
19:55 jnthn Yeah, I've already commented on that one's difficult to know if we're there.
19:55 jnthn We're a *lot* better than we used to be.
19:55 moritz_ 1 ***   get the Advent examples running again (all)
19:55 moritz_ we have tests for those
19:56 jnthn Yes
19:56 jnthn Need to check which we don't pass yet.
19:56 PerlJam What are our attention grabbing examples?  (these should be highlighted in the release announcement I think)
19:56 jnthn The only day we don't run in spectest.data is day21
19:56 pmichaud drafting release announcement is high on my to-do list.
19:57 pmichaud I'll do it in the next ~24h
19:57 moritz_ btw I've added a very crude skeleton announcement to the star/ repo
19:57 pmichaud moritz_++
19:57 Tene Sure, the only one we don't run is mine. :P
19:57 jnthn heredocs, temp variables and BigNum are likely misses.
19:58 moritz_ attention-grabbing examples: maybe we could link to (or include) my phyiscal modelling blog post
19:58 moritz_ it's nice because it has visual output
19:58 PerlJam moritz_++  I liked that one  :)
19:58 jnthn pmichaud:
19:58 jnthn 3 ***   array/hash element vivification via WHENCE (pmichaud, jnthn)
19:59 jnthn pmichaud: Isn't that done now?
19:59 pmichaud I thought I already moved it.
19:59 pmichaud looking.
19:59 * jnthn does a git pull just in case
19:59 moritz_ only thing that's left is things like sub form, and :U methods
19:59 moritz_ my %h; %h<a>.push: 5
19:59 pmichaud oh, that one.
19:59 pmichaud we still don't have a true WHENCE
19:59 jnthn Oh
19:59 jnthn OK
19:59 jnthn I thought you'd done them with WHENCE
19:59 pmichaud we have a cheating .butWHENCE :-)
20:00 pmichaud getting WHENCE to work is going to require some syntactic changes that weren't horribly important for R*
20:00 pmichaud and there are some other places that we do have "WHENCE" that need to be considered.
20:00 pmichaud so I went with "works for now and cleanups later" since I'm on a bit of a time budget.
20:00 moritz_ commit 2b2f69c0997a5536a83bd1b33cd649773ae6dcdc
20:00 moritz_ Author: pmichaud <pmichaud@pobox.com>
20:00 moritz_ Date:   Tue Jul 6 14:08:56 2010 -0500
20:00 moritz_ Update ROADMAP with completed closures/autoviv items.
20:00 pmichaud right, I updated
20:01 pmichaud - array/hash vivification (done)
20:01 jnthn OK, got it.
20:01 pmichaud it does work using something very WHENCE-like, just not the real WHENCE. :-)
20:02 pmichaud if someone thinks that  %h<a>.push autoviv is really important, add it to the ROADMAP :-)
20:02 pmichaud or give it a ticket
20:02 pmichaud or both
20:02 pmichaud :-)
20:02 jnthn 1 **    operator overloading -- infix:, prefix:, postfix: (almost there, problems with pre-comp)
20:02 pmichaud I can add it w/o too much trouble.
20:02 jnthn ^ I intend to re-visit that one this week.
20:02 moritz_ pmichaud: I'll open a ticket
20:02 jnthn And sort it out
20:02 jnthn I need to fix BEGIN to use the phasers impl first.
20:02 lue you can't define circumfix operators, though
20:02 moritz_ that's OK-ish, IMHO
20:02 jnthn lue: Patches welcome. ;-)
20:03 pmichaud jnthn: +1 to having add_phaser automatically !fire_phasers if the bank is 'BEGIN'
20:03 pmichaud (I'd been holding off on this to think about it more... I've since thought about it more and I'm happy with that outcome for now)
20:03 pmichaud then BEGIN phasers are just another instance of adding a phaser.
20:03 jnthn pmichaud: OK
20:04 jnthn pmichaud: Need to check if the current phasers implementation keeps return values from the phasers around to
20:04 jnthn *too
20:04 pmichaud it doesn't, but that's very doable.
20:04 pmichaud (and also +1)
20:04 pmichaud just have it store the value in the hash that keeps track of which phasers have been fired.
20:04 jnthn *nod*
20:04 jnthn Yeah, it's mostly a SMOP that I need to get around to.
20:04 pmichaud and provide an api to get to those values, if needed.
20:05 jnthn lue: I always may accidentally implement circumfix and postcircumfix though. ;)
20:05 jnthn (custom ones)
20:05 jnthn :-)
20:05 jnthn pmichaud: Yes, probably needs that too.
20:06 jnthn On
20:06 moritz_ (filed ticket for autoviv of invocant)
20:06 jnthn 1 **    improved error messages and failure modes (B, all)
20:06 lue It'd be fun to program implicit multiplication :)
20:06 moritz_ lue: no. It will ruin good error message if we ever get them :-)
20:07 jnthn I suggest that in the next week, if anyone finds a failure they feel is bad enough that we really really should fix it, then annotate the roadmap entry with a ticket number.
20:07 jnthn (That is, pre-R*)
20:07 jnthn Otherwise, next week, we mark that as done.
20:07 moritz_ +1
20:07 pmichaud main error message / failure mode I think needs fixing is "Unable to parse blockoid"
20:07 lue .oO(So, it might will destroy error messages...)
20:08 pmichaud (and yes, I plan to fix that, time permitting)
20:09 * sorear has started playing the improving parse error messages game, it's fun
20:09 pmichaud agreed.
20:10 lue .oO(where are all my DON'T PANIC stickers?)
20:10 jnthn There's one runtime error ticket that implies beer to the fixer.
20:10 jnthn Sadly I didn't work out an easy way to improve it yet. :-)
20:10 lue someone's offering you /dev/drink.h ?
20:11 jnthn Gah, I can't find the ticket now!
20:11 jnthn Maybe I dreamed it.
20:13 lue rakudo: jnthn.dreams.say
20:13 jnthn BEER BEER UKRAINE BEER
20:14 jnthn ...is it normal to dream in uppercase?
20:14 pmichaud jnthn: NO
20:14 jnthn :P
20:14 lue .oO(EnOtCaMeLcAsE)
20:15 pmichaud afk for a while # beach time
20:15 PerlJam If you're dreaming about COBOL or VMS it is
20:15 jnthn pmichaud: enjoy
20:15 moritz_ it seems our #phaser meeting slowly phases out
20:15 jnthn <rimshot>
20:15 jnthn Let's get shot of it.
20:15 lue you know the topic for #phasers says 'IR clogs at ...', right?
20:16 * lue wants a pair!
20:16 moritz_ guess who set the topic :-)
20:16 jnthn lue: It seemed like a bright idea at the time... ;-)
20:16 moritz_ lue: it gives you an URL
20:16 moritz_ jnthn: s/bright/cute/ please :-)
20:16 PerlJam oh, so *that* pun was too much?
20:16 jnthn moritz_: I'm sure infrared is bright to those who can see it. ;-)
20:16 lue ...but you couldn't find the shoes after painting them, right?
20:17 * jnthn reaches for the gavel
20:18 lue I need to go to an eye doctor and demand that my DNA be changed so I start producing cones to see IR/UV
20:19 lue (I'll have to avoid the kitchen at the 'I can see microwaves' stage though...)
20:21 Tene lue: the human retina can see farther into UV than the human lens allows through.  So if you get your lenses replaced, you'll be able to see a bit more UV than unmodified humans.
20:22 lue "Why yes sir, I want you to remove my lenses. And replace them with Plexiglas or something."
20:23 Tene lue: There are various medical conditions that can require lens replacement.
20:23 moritz_ and most artifical replacements aren't very transparent to UV
20:23 Tene http://en.wikipedia.org/wiki/Intraocular_lens
20:23 moritz_ normal glass isn't - which is why you don't get a sun burn behind a window
20:24 lue moritz_: well, that's only because their typical goal is to give you what you would normally have, not what is genetically inevitable!
20:25 lue [there's got to be one person in the world who sees UV...]
20:34 eternaleye joined #phasers
21:20 supernovus joined #phasers
21:30 ascent_ joined #phasers
21:31 masak joined #phasers
21:33 masak missed #phasers, here's a post-report:
21:34 jnthn post it!
21:34 masak implemented binary IO read/write methods.
21:34 masak (see http://use.perl.org/~masak/journal/40440 )
21:34 masak they "work", but they emit the wrong stoff somewhere along the line.
21:35 masak I'd like to pair up with someone (likely jnthn) too try to brain out what's wrong right now.
21:35 masak it's something with encodings.
21:35 masak .eor
21:36 masak oh, and I haven't submitted my midterm report yet, but I will within 24h.
21:52 masak re the ROADMAP item; yeah, we're there with Buf and almost there with file I/O.
22:33 masak left #phasers

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