Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2005-04-25

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:28 justatheory has joined #perl6
00:35 sekimura has joined #perl6
00:43 jroc has quit IRC ("Leaving")
00:49 wolverian has quit IRC (Read error: 60 (Operation timed out))
00:49 justatheory has quit IRC ()
00:49 nothingmuch anyone got windows?
00:50 nothingmuch changes topic to: pugscode.org <Overview Journal Logs> | smoke/win2k (occasional): http://xrl.us/fqum (81/4418, r2232), Mac OS X (160/4483, r2216), Linux (60/4482, 2267) | pugs.kwiki.org
01:02 broquaint has quit IRC ("sleep();")
01:15 castaway_ has joined #perl6
01:29 Darren_Duncan has joined #perl6
01:31 castaway has quit IRC (Read error: 110 (Connection timed out))
01:31 theorbtwo has quit IRC (Read error: 110 (Connection timed out))
01:40 Odin-LAP has quit IRC ("What's this button do?")
01:41 Darren_Duncan yo, anyone here?
01:45 obra yes
01:45 Steve_p yes
01:49 Darren_Duncan great, I have a question
01:49 Darren_Duncan now that Pugs has matured further and has basic object support, I plan to start revisiting my ported modules ...
01:50 Darren_Duncan I plan to start off by stripping down (commenting out code) Locale::KeyedText to a simpler but functional form that would compile and run right now
01:51 Darren_Duncan mainly it would be the input checking and subtype code that would be removed, as I think those are the main not implemented parts
01:52 Darren_Duncan I would put them back in as support exists, back up to full form when it all would execute
01:52 Darren_Duncan meanwhile, everything I commit from now on would actually execute
01:52 Darren_Duncan and so that should help with integration tests
01:52 Darren_Duncan now the question ...
01:53 Darren_Duncan can I put these executing modules in Pugs' /ext once they execute, or is that still bad for some reason?
01:54 Darren_Duncan if the answer's "yes", I plan to do so for LKT this week
01:55 Darren_Duncan in time for 6.2.2 probably
01:56 Darren_Duncan if no one says anything I will assume that populating /ext is okay
01:58 stevan Darren_Duncan: the current "rules" for ext/ is that it works, additionally I think it should also have enough tests to prove that fact as well
01:59 stevan however, we don't actually have basic object support in perl6 though AFIAK
01:59 Darren_Duncan what do those t/oo/ tests do then?
01:59 stevan I think when autrijus says we have object support he means that the base types are now in Haskell OO
01:59 stevan t/oo/ is all todo tests currently
02:01 Darren_Duncan oh right, I missed that ':todo(1)' before ...
02:01 stevan :)
02:01 Darren_Duncan I'll wait some more then,...
02:01 Darren_Duncan in any event, the bare basics I need for LKT are ordinary classes and ordinary methods ...
02:02 Darren_Duncan the fancy multis or inners or roles or subtypes aren't needed for basics
02:02 wolverian has joined #perl6
02:02 stevan multi subs are actually working, although with some wrinkles
02:03 Darren_Duncan so then, presumably multi methods will work at the same time as methods?
02:03 Darren_Duncan quick different question ...
02:03 stevan I am hoping, but I really cannot say since I am still on the perl6/testing side of things
02:05 Darren_Duncan I plan for my next Perl 5 release of SQL::Routine, in progress, to involve reblessing objects into a different class after they were already blessed, possibly more than once ...
02:05 Darren_Duncan can I assume that Perl 6 can do this too?
02:05 Darren_Duncan note that both classes have the same attributes
02:05 Darren_Duncan only the methods are different
02:05 Darren_Duncan actually, a few attrs are different
02:06 Darren_Duncan but the different ones correspond to each othe
02:06 Darren_Duncan oh well, that's a concern for later
02:07 stevan Darren_Duncan: personally I avoid that type of things in Perl 5 unless absolutely nessecary because I view it as a dark crevice in Perl 5's OO model. Sure its useful, but it can get ugly if not paid the proper respect
02:07 stevan The Stratedgy pattern is maybe what you are looking for.
02:07 Darren_Duncan well, here's my reason for doing it ...
02:07 stevan as for if you can do it in perl 6, I dont know, but I would actually hope not :)
02:08 Darren_Duncan and not to say I can't change the strategy to make it unnecessary
02:08 Darren_Duncan for background, a SQL::Routine model consists of 2 main classes, the Container and the Node ...
02:08 Darren_Duncan these correspond to an XML Document and Node respectively
02:08 Darren_Duncan analagous I mean
02:09 Darren_Duncan in an effort to be helpful, although perhaps its a mis-feature, I allow Nodes to exist outside of Containers
02:09 Darren_Duncan in fact, it is normal to create a Node outside of a container, then put it in one separately
02:10 stevan sorry, not the strategy pattern, the state pattern
02:10 stevan http://www.dofactory.com/P​atterns/PatternState.aspx
02:10 Darren_Duncan currently, one class implements the Node, and certain rules concerning it are different depending on whether it is in or out
02:10 Darren_Duncan I thought of splitting these into 2 classes, which have a common base class
02:11 Darren_Duncan one reason is to reduce tests for whether a method is allowed to be executed or not
02:11 Darren_Duncan but the main reason is this ...
02:12 Darren_Duncan since version 0.59, when SRT models can be auto-destroyed like normal perl variables
02:12 Darren_Duncan there is a possible situation where a program can hold a reference to a node that was in a destroyed container, but the node isn't destroyed when the container is, due to the external ref ...
02:13 Darren_Duncan the class split was a possible way to make it easier to detect if this happened when the node is attempted to be used again
02:13 Darren_Duncan since some of its internals are different, the current code would do the wrong thing if given it
02:14 Darren_Duncan now mind you, external code shouldn't use such nodes unless they explicitly take them from the container before it is destroyed, in which case they are internally fine for reuse
02:14 Darren_Duncan I'll look at your patternstate url now
02:15 Darren_Duncan note that the possible double life of a node may have been a mis-feature
02:15 Darren_Duncan at the time I thought it would be useful, such as helping with piecemeal construction, or moving from one container for another
02:16 Darren_Duncan I suppose I could just simplify the module to make nodes only exist in containers, and then see if there's anything useful we can't do anymore as a consequence, later on
02:16 Darren_Duncan thanks for your feedback
02:18 stevan Darren_Duncan: ouch! seems like a lot of manual memory management (if I am understanding correctly)
02:19 stevan Darren_Duncan: BTW - are you planning on going to YAPC::NA this year?
02:19 Darren_Duncan fyi, the first versions of SQL::Routine didn't have a Container at all
02:19 Darren_Duncan The Container was added as an exoskeleton to make certain kinds of tasks easier
02:20 Darren_Duncan is is just a tree of Nodes at heart
02:20 stevan autrijus: I was experimenting with a new parsefail testing technique
02:20 Darren_Duncan I have no current plans to go to any conference ... can't afford to
02:20 stevan Darren_Duncan: circular refs can be a pain
02:21 stevan I have similar problems with Tree::Simple (although I have a weakened ref version in the works)
02:21 Darren_Duncan stevan, that is, I thought of going to OSCON, but haven't bought a ticket yet and won't unless I get some paid work first
02:21 stevan autrijus: basically it is this eval_ok('# $code.which(%will, @fail)');
02:21 stevan autrijus: it seems to work too :)
02:22 Darren_Duncan as for YAPC::NA, I hadn't thought about going, as it seemed too short notice, but I do plan to attend other YAPC in the future (my first ones)
02:22 Darren_Duncan when is it again?
02:22 stevan Darren_Duncan: June 27-29
02:22 Darren_Duncan while this conference is cheap, I think the flights would not be
02:22 stevan in Toronto
02:22 Darren_Duncan its in my own country at least
02:22 stevan Cross-Canada drive :)
02:22 Darren_Duncan I'm in victoria bc
02:22 Darren_Duncan I can't drive
02:23 Darren_Duncan re circular refs
02:23 Darren_Duncan they are used because I want an easy way to access related Nodes when you hold an arbitrary one
02:23 Darren_Duncan the main circular refs are child+parent
02:24 stevan child <-> parent is always the one :)
02:24 Darren_Duncan an additional circular ref is container to node and vice versa
02:24 Darren_Duncan a Container holds a hash of all its Nodes, keyed by Node id (an integer)
02:24 Darren_Duncan it also holds the virtual root of the tree
02:24 Darren_Duncan called a 'pseudo-Node'
02:25 Darren_Duncan since you can't actually get a handle on it
02:25 Darren_Duncan just now I used your suggestion and made one part of the loop a weak ref ... and you are credited for it
02:25 Darren_Duncan in 0.59
02:25 stevan :)
02:26 stevan Darren_Duncan: make sure to check your destruction behavior
02:26 stevan Test::Memory::Cycle is good for that
02:26 Darren_Duncan destruction starts at the root and carries on childwards
02:27 Darren_Duncan the leaves are the last to be destroyed
02:27 stevan and if you want to test the weakened refs too, I have a patched version of that and Devel::Cycle which can inspecct weak refs too
02:27 stevan Darren_Duncan: so you never destroy subtrees or individual nodes?
02:27 Darren_Duncan I tested that it worked by running a thousand iterations of my test suite in a single process and checking that the RAM usage stayed constant
02:28 Darren_Duncan a user can manually destroy subtrees or individuals
02:28 jabbot pugs - 2315 - updating the t/README file
02:28 Darren_Duncan I just described what happens if the container itself is destroyed
02:29 Darren_Duncan I also made sure the weakrefs were making a difference; by commenting out any one of them, RAM kept going up showing a leak
02:30 Darren_Duncan the iterations made perl use about 200M of RAM before quitting when the leak was in full force; it stayed at 20M when no leaks
02:30 stevan nice
02:31 Darren_Duncan that was 500 iterations of the test suite
02:31 stevan take a look at Test::Memory::Cycle though, it is useful if for nothing more than regression tests
02:31 Darren_Duncan which also took a minute to run
02:31 stevan memory_cycle_ok($structure)
02:31 stevan thats about all
02:31 Darren_Duncan will make a note of that
02:32 stevan and since it is more a developer test, you can just check to see if the user has the module and skip the test otherwise
02:32 Darren_Duncan fyi, I think that part of my problem here is that I'm a packrat ... I know that I put forth considerable effort to provide a feature in the past, so I hate to throw it away, hence it hangs around
02:32 stevan backwards compatibility is a good thing
02:32 Darren_Duncan by forcing nodes into containers 24/7, that's such a throw-away
02:33 Darren_Duncan stevan, true, though in this case the module's so knew, and declared alpha to boot, that I don't think it even has a user base yet
02:33 Darren_Duncan that said, it won't be much work to adjust use code to stay compatible with such a change
02:33 stevan well, feel free to email me if you want to see some of my Tree::Simple memory cycle tests since they are not out yet
02:34 Darren_Duncan all my examples put the node in a container as early as possible, so most code operates while it's already in there
02:34 stevan but I am off to watch a movie :)
02:34 Darren_Duncan stevan, okay
02:35 Darren_Duncan as for me, I'm going to back out of my current 0.60 work and make a different 0.60 that is the same as 0.59 but with the stripping, and that has simpler code
02:35 Darren_Duncan we always still have the backups of earlier releases on backpan should we want to put the functionality back in again
02:36 Darren_Duncan see you later
03:18 jabbot pugs - 2316 -
03:18 jabbot pugs - 2317 - Update debian/changelog to 6.2.1
03:30 rafl_ has quit IRC (Read error: 54 (Connection reset by peer))
03:30 rafl has joined #perl6
03:52 justatheory has joined #perl6
04:18 Darren_Duncan I am now testing rev 2317 on my Mac OS X system ... the header's about 100 revs behind for it
04:28 justatheory has quit IRC ()
04:57 elmex has joined #perl6
05:05 Jouke has joined #perl6
05:07 Jouke has left
05:10 Darren_Duncan Current Mac OS X 10.3.9, system perl 5.8.1rc3, ghc 6.4: Failed 5/222 test scripts, 97.75% okay. 5/4514 subtests failed, 99.89% okay.
05:11 Darren_Duncan I'm not sure how to edit the topic with Colloquy
05:11 Darren_Duncan this was for 2317
05:11 elmex has quit IRC ("leaving")
05:30 Khisanth /topic?
05:55 mj has joined #perl6
05:58 Darren_Duncan I mean the #perl6 topic, that appears at the top of the IRC window
05:58 Darren_Duncan it lists the current test results by platform; the Mac OS X one was 100 commits out of date
06:15 Darren_Duncan has quit IRC ()
06:16 Aankhen`` has joined #perl6
06:22 mj $line =~ s{,\s*\:todo\(1\)}{}g;    $line =~ s{force_todo[^;]+;}{}g;
06:22 mj WinXP, r2311 - 35 subtests skipped. Failed 92/222 test scripts, 58.56% okay. 889/4512 subtests failed, 80.30% okay.
06:24 autrijus 889/4512?
06:24 autrijus is that an improvement?
06:26 autrijus inplace.t is wrong -- you need adverbial block
06:26 autrijus @x .= map {...} # bad
06:26 autrijus @x .= map:{...} # good
06:27 autrijus (larry ruling)
06:27 mj r1600 - 1308/4135 subtests failed, 68.37% okay.
06:27 mj r1700 - 1166/4222 subtests failed, 72.38% okay.
06:27 mj r1800 - 1252/4214 subtests failed, 70.29% okay.
06:27 mj r1900 -  893/4240 subtests failed, 78.94% okay.
06:27 mj r2069 - 1090/4408 subtests failed, 75.27% okay.
06:27 mj r2115 - 1000/4459 subtests failed, 77.57% okay.
06:27 mj r2311 -  889/4512 subtests failed, 80.30% okay.
06:27 autrijus a definite improvement then :)
06:28 jabbot pugs - 2318 - * change inplace.t to use correct adverb
06:33 Khisanth .= ?
06:33 Khisanth autrijus: where is the method name?
06:38 autrijus map
06:38 autrijus @x .= map:{}  
06:38 autrijus same as
06:38 autrijus @x = @x.map:{}
06:41 autrijus lunch &
06:45 nothingmuch good morning
06:47 chady_ is now known as chady
06:50 Juerd 23:57 < Juerd> autrijus: I can't go into details because I have no better
06:50 Juerd          suggestion, but I think disambiguation based on lack of comma sucks.
06:50 Juerd 23:58 < Juerd> autrijus: And I'm starting to wonder why a { ... } can't just be
06:50 Juerd          a closure until used in hash context, at which point heuristics come
06:50 Juerd          into action
06:50 wilx Heuristics?
06:51 Juerd 23:59 < Juerd> autrijus: (more than one statement? runtime error)
06:52 Juerd I know the answer by now, though
06:52 autrijus oh well.
06:52 Juerd Because a closure captures variables, while in a list they are evaluated immediately.
06:53 autrijus map { $_ => $_; } @foo;
06:53 autrijus you like that as a disambiguation?
06:53 Juerd Yes and no
06:53 Juerd Yes because it's unspecial, which is good.
06:53 Juerd No because I always like to write implicit returns without semicolon :)
06:53 Juerd sub foo { return 5; }, but sub foo { 5 }
06:54 Juerd But I guess I'll just have to change that habit
06:54 autrijus sub foo { 5 }  # is fine
06:54 autrijus even {5} is fine
06:54 autrijus just not {5=>6}
06:54 Juerd Right.
06:54 autrijus larry likes
06:54 Juerd It was an example of how I leave out semicolons.
06:54 nothingmuch has quit IRC ()
06:55 autrijus map { list $_ => $_ } @foo
06:55 Juerd That's stupid imo.
06:55 Juerd That gives you the same thing as this, but in a weird way:
06:55 Juerd map sub { ... }, @foo
06:55 Juerd map hash { ... }, @foo
06:56 autrijus my %x = map { hash $_, $_ } 1,2,3
06:56 autrijus yeah.
06:56 autrijus ok, I think I'll retract my tentative new feature
06:56 Juerd There's still no way to disambiguate it from the outside.
06:56 autrijus and implement semicolon disambiguation.
06:56 autrijus it may prove to be sanest after all
06:56 Juerd That is: the "hash" keyword is a normal keyword
06:56 Juerd as is "list"
06:57 Juerd So they can't just be used as disambiguators, as that introduces special syntax, and we all know where that leads.
06:57 autrijus uh no actually
06:57 Juerd That'll mean that you can't use these keywords in a block's first statement without altering the block's semantics
06:57 autrijus they are there to defeat => as toplevel
06:57 autrijus so collapsing rule no longer apply
06:57 autrijus they are not special
06:57 autrijus any other function will do
06:57 Juerd Oh, only top level => makes {} a hash?
06:57 autrijus map { id($_ => $_) } 1,2,3
06:57 autrijus yeah
06:58 autrijus a toplevel =>, or a toplevel , with => as first arg
06:58 Juerd Bleh. I thought every single non-semicolon statement 'closure' did
06:58 autrijus bleh. you thought incorrectly
06:58 Juerd But I guess this makes more sense, as otherwise you get into ambiguous cases all the time instead of just most of the time.
06:58 Juerd :P
06:59 Juerd And now it's time for another great fun event
06:59 Juerd Bringing my car for servicing
06:59 Juerd (These things work better if they can idle.)
07:14 iblechbot has joined #perl6
07:24 nothingmuch has joined #perl6
07:25 nothingmuch morning
07:26 castaway_ is now known as castaway
07:26 castaway mornin nm
07:26 nothingmuch holidays make it very hard to get to work =(
07:28 castaway which holiday?
07:28 nothingmuch passover
07:28 nothingmuch sister is home
07:29 nothingmuch so it makes commuting harder
07:29 nothingmuch she needs to be kept entertained
07:29 Khisanth have her write p6 tests! :)
07:29 nothingmuch can't type in english yet
07:30 castaway I fail to see the logic.. which of those makes commuting harder? :)
07:30 nothingmuch dad needs the car for the day to go buy her some rollerblades that she asked for
07:30 nothingmuch so i can'
07:31 nothingmuch t use it
07:31 nothingmuch hence I'm bound to their schedule
07:31 castaway ahh
07:32 castaway telecommute? :)
07:38 nothingmuch no, we just live in the suburbs
07:38 nothingmuch i wouldn't consider it tele
07:38 nothingmuch in theory public transportation could be good enough,
07:38 nothingmuch that is, if it didn't suck as much as it does
07:38 rootmj has joined #perl6
07:39 castaway eh?
07:39 castaway telecommute means "work from home"
07:39 nothingmuch oh, i thought it means 'commute' with 'tele' thrown in to illustrate that it's far
07:39 nothingmuch eh, naah
07:39 nothingmuch not enough quiet
07:39 nothingmuch more distractions
07:40 nothingmuch plus my plants will die if i don't water them
07:42 castaway If you do it for longer, yes
07:42 nothingmuch it's already been a 3 day weekend
07:44 castaway how far is it?
07:44 nothingmuch work?
07:44 nothingmuch 12-5 minute drive
07:44 nothingmuch depending on whose driving
07:44 nothingmuch 20 if there's a bit of congestion in the morning
07:47 castaway hm, have a bike?
07:47 nothingmuch buying one soon
07:47 nothingmuch exactly for this reason
07:47 nothingmuch we even have a shower at work
07:48 castaway :)
07:48 castaway we have one in the basement somewheres too
07:48 nothingmuch the only thing stopping me is money atm ;-)
07:48 nothingmuch how far is your work?
07:48 castaway yeah, always this "money" thing
07:48 nothingmuch actually it's not like i have financial problems
07:49 castaway from home? good 50 minutes with the S-Bahn
07:49 nothingmuch but damnit, that bass is expensive
07:49 nothingmuch S-Bahn is ...?
07:49 nothingmuch i know Bahn is road
07:49 castaway no Train
07:49 nothingmuch or at least I think it is
07:49 nothingmuch ah
07:49 nothingmuch so what is autobahn?
07:49 nothingmuch or did i just make that up?
07:49 castaway Its the city train.. (Munich has underground trains: U-Bahn, overground city trains: S-Bahn, Trams and busses..)
07:50 castaway Autobahn is motorway, yes.. but "Die Bahn" is trains, well actually the word "bahn" just means something like lane
07:50 nothingmuch ah
07:51 castaway (channel, course, pathway, track.. says Leo)
07:51 masak has quit IRC ("Download Gaim: http://gaim.sourceforge.net/")
07:51 nothingmuch i should really release this code for wrangling gcov if it ever works
07:51 nothingmuch =)
07:51 nothingmuch i can't believe that no one ever sufferred before me
07:52 nothingmuch or maybe I should just patch gcov
07:52 castaway :)
07:52 nothingmuch it's so insane
07:52 nothingmuch you have to move all the files around for it
07:57 castaway maybe whomever uses it doesnt think so, or they all do that automatically and dont think abuot it..
07:58 nothingmuch maybe
08:27 bloves has joined #perl6
08:48 jabbot pugs - 2319 - * Withdraw the tentative change of using
08:56 f0rth has quit IRC (Read error: 60 (Operation timed out))
08:59 bloves has left
09:07 larsen has joined #perl6
09:08 jabbot pugs - 2320 - * repair single stmt in shell
09:08 jabbot pugs - 2321 - * please keep the newline. :)
09:18 jabbot pugs - 2322 - * lone block does not count as "simple e
09:27 Aankh|Clone has joined #perl6
09:29 Aankhen`` has quit IRC (Read error: 131 (Connection reset by peer))
09:30 Aankh|Clone is now known as Aankhen``
09:34 osfameron has joined #perl6
10:00 Jonathan_ has joined #perl6
10:23 nothingmuch hola Aankhen``
10:23 nothingmuch i have a problem with the floating box
10:23 nothingmuch and <h1>'s beside it being centered in the remaining space
10:23 nothingmuch and not the entire page width
10:23 nothingmuch only in IE though
10:24 castaway IE--
10:25 nothingmuch so --
10:25 nothingmuch i hope IE7 is all it's supposed to be
10:26 kungfuftr moo?
10:27 nothingmuch moo!
10:27 castaway woof!
10:27 kungfuftr nothingmuch: pong
10:27 * nothingmuch reverb
10:27 nothingmuch s
10:27 nothingmuch (oioioioioioioionnnnnnnnnnnng)
10:28 theorbtwo has joined #perl6
10:28 nothingmuch hola theorbtwo
10:28 kungfuftr nothingmuch: 12:17 < nothingmuch> kungfuftr: ping
10:28 kungfuftr =0)
10:29 nothingmuch oh, long ago
10:29 castaway depends on your timezone ,)
10:30 castaway thats 10 mins ago in mine
10:30 kungfuftr ^_^
10:30 osfameron_ has joined #perl6
10:31 kungfuftr nothingmuch: my other half has forced me to take plenty of time out from "perl" things to help with wedding arrangements... so no interweb for me this weekend
10:31 castaway eep :)
10:31 nothingmuch your own?
10:38 kungfuftr yup
10:38 nothingmuch you make it sounds like you don't want to ;-)
10:38 nothingmuch have fun anyway
10:39 * castaway was about to say that :)
10:39 broquaint has joined #perl6
10:39 castaway bro!
10:39 nothingmuch hola broquaint
10:39 broquaint Hey folks :)
10:40 broquaint Top o' the morning to ya.
10:40 castaway right back atcha
10:40 osfameron has quit IRC (Read error: 113 (No route to host))
10:42 kungfuftr nothingmuch: wedding will be good, but i hate organising stuff!
10:43 Aankhen`` has quit IRC (Read error: 54 (Connection reset by peer))
10:43 nothingmuch organizing does suck
10:43 nothingmuch that's why my cinema thingy turned out crapp
10:43 * nothingmuch had his producers switched 3 times
10:44 nothingmuch and also since production is not something you get a grade for, no one cared
10:44 kungfuftr nothingmuch: plus... i'm living in england, and the wedding is back home in northern ireland... so organising stuff is a lot trickier!
10:44 nothingmuch ooh
10:44 kungfuftr many people going to be going to YAPC::EU in portugal?
10:45 * nothingmuch thought he would go
10:45 nothingmuch but instead i'm going to YAPC::NA
10:46 kungfuftr but but but... cheap beer!
10:46 theorbtwo Hmm?  I thought YAPC::EU was in Dublin this year?
10:46 theorbtwo Not going, though.
10:46 kungfuftr theorbtwo: nope, braga, portugal
10:46 nothingmuch cheap beer indeed
10:46 kungfuftr the last one was in belfast
10:46 nothingmuch i want to see portugal
10:46 nothingmuch sometime i will
10:47 theorbtwo Ah, that must be what I was thinking of.
10:47 kungfuftr theorbtwo: do not dishonour the name of my hometown by calling it 'dublin'... ROAR!
10:47 * castaway has already run out of travel budget
10:47 * kungfuftr gets work to pay for it
10:47 kungfuftr =0)
10:47 castaway nice idea
10:47 nothingmuch castaway: did you guys find any decent flights?
10:48 nothingmuch kungfuftr: i sort of have that now for ::NA ;-)
10:48 castaway flights yes, decent not so much
10:48 castaway (to PHL that is.. )
10:49 theorbtwo kungfuftr: What should I call it then?
10:49 castaway which puts us on the right landmass at least
10:49 nothingmuch PHL <-- que?
10:49 castaway Philidelphia
10:49 nothingmuch ah
10:49 theorbtwo The city of brotherly love, you know?
10:49 * nothingmuch tries to remember how long a drive that is
10:49 castaway I think he meant s/Dublin/Belfast/
10:49 castaway 10 hours or so
10:49 nothingmuch that sounds too much
10:50 castaway not really
10:50 castaway (brrrrmmm)
10:50 nothingmuch from buffalo it's around 3 hours to tornoto, methinks
10:50 theorbtwo I always thought they were two different cities?
10:50 nothingmuch and NY to buffallo is another 2-3
10:50 nothingmuch and phil -> NY including traffic is 3
10:50 nothingmuch and that's a pretty dumb route
10:51 theorbtwo They have two different dots on the map.
10:51 castaway thats a very dumb route ,)
10:51 Aankhen`` has joined #perl6
10:51 castaway phil, Buffalo goes right thru the middle of PA, ideally
10:51 castaway (we did that one last year)
10:51 theorbtwo Well, no, that's hardly ideal, but it is the best way to do it.
10:52 kungfuftr theorbtwo: BELFAST!
10:52 nothingmuch yeah, but NY NY is a bit of a detour
10:52 castaway Phil->NY (city) is 3 ??
10:52 castaway The *trains* go that way, and take longer
10:52 nothingmuch castaway: including traffic yes
10:52 * kungfuftr plants an explosive whooppee cushion under theorbtwo's chair
10:52 * nothingmuch used to live in jersey
10:52 nothingmuch used to go to either or every once in a while
10:53 theorbtwo I'm still confused as to what I'm doing.
10:53 castaway You claimed YAPC::EU was in Dublin, it wasnt, it was in Belfast, so effectively you were labelling Belfast as "Dublin" (I think)
10:54 kungfuftr castaway: correct!
10:54 theorbtwo No, I was effectively confused as to what city it was in.
10:54 kungfuftr theorbtwo: just winding ye up... =0)
10:54 castaway well yes, that too
10:54 castaway right
10:55 castaway go back to poking dios scripts, love :)
10:56 * theorbtwo goes back to hacking on his haskell grapher instead.
10:56 castaway tsktsk
10:57 castaway duty before fun!
10:57 * castaway ahems and goes back to work-type stuff
10:57 iblechbot has quit IRC (Read error: 131 (Connection reset by peer))
11:02 pjcj In perl5: $str .= $end appends $end to $str.  Any thoughts on how to do something similar to *prepend* a string in perl6?  ie $str XXX $start - what would XXX look like?
11:03 gaal $str = $start ~ $str     ?
11:04 pjcj yeah, that's the same as perl5 - I'm looking for something nicer ;-)
11:05 gaal change your consumer to accept a list of characters and produce a lazy list? :)
11:05 theorbtwo $str.=prepend($start), if you define a prepend method on Str.
11:06 pjcj I thought about that, but I was wondering if it was possible to define some infix operator, maybe with a funky unicode name, for example
11:07 theorbtwo You could do that; it'd be just like ~ but take it's arguments in the oppisite order.
11:07 kungfuftr would merely be syntactic sugar though, not that useful
11:07 nothingmuch pjcj: you could implement an infix op very easily
11:07 theorbtwo Everything is syntatic sugar for a turing machine.  Syntatic sugar is what makes some languages effectively different from others.
11:07 castaway .oO( >~ and <~ ?)
11:08 theorbtwo But it's not terribly useful syntatic sugar.
11:08 castaway assuming they dont already exist..
11:08 theorbtwo They don't.
11:08 castaway $str >~ $end; $str <~ $begining
11:08 theorbtwo The two operators $x > ~$y would have to be written with the space if you defined a new operator, but I suspect they don't come up that much.
11:08 * castaway likes that
11:09 kungfuftr $str <~= $beginning; ?
11:10 nothingmuch "prepended" =. $string;
11:10 nothingmuch ;-)
11:10 nothingmuch =~, sorry
11:11 castaway ick
11:11 nothingmuch can't assign string to constant in scalar context =)
11:11 castaway that looks like you're changing "prepended"
11:12 theorbtwo nm, just define an operator infix:<=~>
11:12 nothingmuch lets write a test that makes sure that doesn't work, ever =)
11:12 theorbtwo It's a valid thing to do, but I'm not sure it reads very well.
11:14 theorbtwo (Remember, longest matching token -- currently, "prepend" =~ $string would be an (illegal) assignment of the stringification of $string to the constant string "prepend".  If you define an operator =~, though, that's longer then the existing operator =, so gets preferred.)
11:14 nothingmuch oh well
11:15 nothingmuch maybe "string" ~> $value;
11:16 nothingmuch or perhaps even "string" ~==> $var;
11:16 nothingmuch either way i think it should be lvalue
11:16 nothingmuch ick
11:17 nothingmuch /rvalue reversed either way
11:19 pjcj ENOUGH!  Thanks all :-)
11:19 nothingmuch you could also define an lvalueable reverse:
11:19 pjcj hmmm, I wonder whether ENOUGH is a valid error return code somewhere
11:20 nothingmuch $var.reverse ~= reverse($string);
11:22 nothingmuch dear god,
11:22 * nothingmuch thinks he *finally* nailed gcov
11:22 nothingmuch inline function covereage ok
11:22 nothingmuch even dead inlines
11:22 nothingmuch (different compilation, they don't run, but we can see whether they're executed)
11:22 nothingmuch gcov processing moves the whole .bbg/.da/.gcov mess around every source dir
11:23 nothingmuch to the relative location of where the .cpp was compiled
11:23 nothingmuch no, sorry
11:23 * castaway hands nm a hammer. Quick, nail it  down
11:23 nothingmuch .bbg/.da are moved next to the .cpp
11:23 nothingmuch and then gcov is run from the relative dir where the cpp was compiled
11:23 nothingmuch but the .gcov file is not yet moved
11:24 theorbtwo Sounds like you have done a Great and Wonderful thing, nm.
11:24 nothingmuch all the .gcovs are moved from pwd to pwd
11:24 nothingmuch and then after this is finished, the .gcovs are distributed next to their .cpps
11:24 nothingmuch the hard part was discovering that these problems exist though
11:24 pjcj relative dirs are evil in this context - Devel::Cover has a similar problem when there are relative dirs in @INC
11:24 nothingmuch very very evil
11:25 nothingmuch ofcourse, since gcov has these bug you can't cover two files with the same base name
11:25 Aankhen`` has quit IRC ("Powercut [Time wasted online: 34mins 13secs]")
11:25 nothingmuch but we only have a few 'version.cpp' type files
11:26 nothingmuch you have to remember what you did 30 minutes ago
11:26 * nothingmuch is tired
11:26 nothingmuch and then try to find it whether it worked or not
11:26 nothingmuch while doing other stuff
11:26 nothingmuch it was the hardest project i ever did, from a concentration perspective
11:27 chady is now known as chady_
11:27 nothingmuch i like dynamic languages much more after this
11:27 nothingmuch no on to compare windows/unix differences
11:27 nothingmuch of executability
11:28 castaway :)
11:30 nothingmuch s/no/now/;
11:32 nothingmuch i should really release these scripts
11:33 nothingmuch i just don't know how to package them
11:49 sekimura has quit IRC ("zzz...")
11:50 iblechbot has joined #perl6
12:15 Limbic_Region has joined #perl6
12:16 * castaway looks at the time.. how'd it get so late already?
12:16 * castaway hugs Limbic_Region
12:22 nothingmuch relative paths are the mother of the root of all evil
12:23 castaway ,)
12:23 nothingmuch oh well,
12:23 Juerd has quit IRC (Read error: 145 (Connection timed out))
12:23 autrijus sqrt(all(@evil)).isa($relative_path)
12:24 nothingmuch no, the root of all evil is premature optimisation
12:24 autrijus sqrt(all(@evil)) =:= $premature_optimization
12:25 nothingmuch oh, i see
12:25 nothingmuch autrijus++; # very witty
12:25 autrijus =)
12:26 nothingmuch what's up?
12:26 nothingmuch broquaint encouraged me to try and get back to hacking subroutine stuff
12:26 nothingmuch with .wrap
12:26 * nothingmuch will try to blitz through his other responsibilities so that he is not too late
12:27 * Limbic_Region hugs castaway
12:27 * nothingmuch begs autrijus for some attention
12:27 broquaint Yeah, get cracking, nothingmuch, we haven't got all day ya know.
12:27 nothingmuch ;-)
12:28 nothingmuch broquaint: want to help me solve some CSS issues?
12:28 broquaint Sure.
12:28 castaway iek, CSS
12:28 nothingmuch if you can then I can finish early
12:28 nothingmuch this is with windows, mostly
12:28 nothingmuch i know how to resolve a few bits
12:28 * castaway was playing with it this weekend
12:28 broquaint Good, because Windows is alls I gots.
12:28 nothingmuch and the PNG will prolly have a hard coded BG
12:28 nothingmuch http://nothingmuch.woobling.org​/kelaa/demo/who_we_are.html.he
12:28 broquaint CSS++ # almost useful
12:28 nothingmuch CSS+=0.01
12:29 nothingmuch the problems with IE:
12:29 nothingmuch the background on top should be red
12:29 * castaway points Limbic at: http://theorbtwo.perlmonk.org/frontpage.html
12:29 castaway (Just a mock up though :)
12:29 nothingmuch the <h2>'s are not centered
12:29 autrijus so, .wrap
12:29 autrijus where are the tests for it?
12:29 theorbtwo Hello, autrijus.
12:30 nothingmuch autrijus: before we start implementing that will happen
12:30 autrijus k :)
12:31 nothingmuch don't you trust me? =)
12:31 autrijus of course I do... just checking :)
12:32 autrijus <- actually still at @ dinner in a nice shanghai restaurant
12:32 autrijus shanghai-style, that is
12:32 nothingmuch and you are eating off your laptop?
12:32 autrijus yup.
12:32 * nothingmuch wonders whether it helps or hinders the enjoyment of food stuff
12:33 autrijus helps, I think
12:33 castaway :)
12:34 nothingmuch autrijus.isa("Crazy");
12:34 * nothingmuch needs breaks from the puter every once in a while
12:34 castaway I think he's trying the 'always on' concept (shower, restaurant .. )
12:35 castaway (someone say my frontpage mockup is pretty :)
12:35 nothingmuch castaway: your frontpage mockup is very pretty
12:35 nothingmuch one pet peeve: the bg of the logo is not the same as the big bg
12:36 nothingmuch and perhaps the 'My Bookshelf' etc brown boxes need slightly more padding
12:36 castaway thanks, nothingmuch
12:36 autrijus castaway: I think navBar a should not be inset
12:36 autrijus a.current can be inset
12:36 castaway ooh, he actually looked :)
12:36 autrijus but noncurrent ones should be outset
12:36 nothingmuch but aside from that it's very nice
12:36 * nothingmuch likes simplicity
12:36 nothingmuch btw, why does a page like that need login/logout?
12:36 autrijus it is pretty. :)
12:37 castaway Thanks for the feedback, will keep note of it :)
12:37 castaway nothingmuch: its going to have an Everything engine underneath
12:38 nothingmuch aah
12:38 * nothingmuch would like to be at a point where setting up a website with a smart engine is trivial for him
12:38 * castaway bounces around happily
12:38 nothingmuch however, i most definately do not want to make the journey to that point
12:38 castaway Everything is nowhere near trivial
12:38 nothingmuch so why are you going with it?
12:38 castaway Because?
12:39 nothingmuch i mean, obviously you both know it well enough so that it's useful
12:39 castaway Its meant as a framework to build on, not something to just plonk down and say 'done'
12:39 nothingmuch true that
12:39 castaway cos I wanted to build
12:39 nothingmuch but getting to know a framework is *hard*
12:39 nothingmuch well, good luck with it anyway
12:39 castaway well, I'm already far enough so I know how to fiddle things into Everything
12:39 nothingmuch hope it turns out useful =)
12:39 * castaway hopes so too
12:40 * nothingmuch would have used it for the kelaa website if time wasn't a restriction
12:40 nothingmuch but i can't bother learning it now
12:40 nothingmuch bother with
12:41 * castaway wonders if the actual E-install is viewable..
12:42 castaway (ermm, bit of a mess right now, but if you scroll down to the bottom, you can see how the nodelets look so far: http://desert-island.dynodns.net:8080/virtbook/ )
12:44 castaway oh, and I kinda "borrowed" the logo from a quick google search :)
12:44 nothingmuch the nodelets have good padding
12:44 castaway ta
12:44 nothingmuch for the title
12:45 nothingmuch but maybe a bit too much in the links one
12:45 nothingmuch try lowering the margin of the <ul>
12:46 castaway (oh, fun, guest user doesnt see any errors at all ,)
12:46 castaway ah, I see.. yup, I havent changed any of the standard nodelets yet..
12:46 nothingmuch =)
12:47 castaway ta muchly..
12:47 nothingmuch what is the content going to be?
12:47 nothingmuch (aside from books ;-)
12:48 * nothingmuch wonders what's keeping stevan
12:49 castaway mostly books :) http://theorbtwo.perlmonk.o​rg/kwiki/index.cgi?Overview
12:50 castaway mostly the idea is that everyone can have their own "bookshelf" which is a list of links to the books they own..
12:50 castaway we'll build in an amazon/bookstore connection, and some way of (for example), looking for books by the authors you like..
12:51 castaway and discussion boards .. etc
12:51 Limbic_Region castaway - as soon as we are in the new house and I have all my books back up on shelves where they belong instead of in boxes, I am going to try hard to work on the virtual bookshelf project
12:51 castaway yay, Limbic
12:52 castaway no rush, just decided to do some more fiddling with it, after having a creative ride home (notes on Psion :)
12:53 stevan morning all
12:54 castaway hey stevan
12:55 stevan castaway: have you ever seen Delicious Library? its a Mac OS X only app, but it is kind of similiar
12:55 stevan http://www.delicious-monster.com/
12:56 nothingmuch hola stevan
12:56 castaway yes, seen it.. I'm aiming specifically for a community thing
12:56 jabbot castaway: I havn't seen it.. , castaway
12:56 stevan it can read bar codes (which is not actually that difficult with the right scanner)
12:56 nothingmuch brb
12:56 stevan castaway: yes community is good, my problem with DL is that it is not community oriented
12:56 stevan you cannot share librabries and such
12:56 castaway I found *one* such site, when searching, that cost money, and closed down just after I found it ,)
12:57 stevan castaway: AFAIK, if you want to do the bar code scanner, a modified Cue Cat will output to STDOUT
12:57 castaway Feel free to make suggestions/notes/whatever on the wiki, if you have an interest
12:57 stevan it acts like a keyboard
12:57 castaway We've done that bit already :)
12:57 stevan castaway: reading now :)
12:58 castaway I suspect the wiki kinda assumes you know some of Everything architechture tho.. hopefully thats not too much of a stumbling block
12:59 masak has joined #perl6
13:00 stevan nothingmuch: ping me when you are back
13:03 nnunley has joined #perl6
13:03 broquaint has quit IRC ("come back Firefox ...")
13:11 hlen has quit IRC (Read error: 110 (Connection timed out))
13:13 Limbic_Region has quit IRC ("CGI:IRC (EOF)")
13:13 Limbic_Region has joined #perl6
13:16 * castaway wonders if Limbic looked at the pretty picture :)
13:16 Arathorn has joined #perl6
13:17 * nothingmuch chokes on matzot+avocado
13:17 nothingmuch stevan: ping
13:18 Limbic_Region castaway - huh?
13:19 castaway Limbic:  http://theorbtwo.perlmonk.org/frontpage.html
13:20 Limbic_Region that's nice
13:20 * Limbic_Region wanders off
13:26 jhorwitz has joined #perl6
13:32 broquaint has joined #perl6
13:37 larsen has quit IRC ("brb")
13:38 larsen has joined #perl6
13:52 sri_ has quit IRC (Remote closed the connection)
14:01 gaal has quit IRC (Read error: 145 (Connection timed out))
14:18 xern has quit IRC ("leaving")
14:27 gaal has joined #perl6
14:41 blackbart has quit IRC (Remote closed the connection)
14:41 blackbart has joined #perl6
14:45 * theorbtwo is getting very confused by monads.
14:46 * theorbtwo is deciding to switch channels again.
14:48 jabbot pugs - 2323 - * Added EOLs at EOFs.
15:06 nothingmuch has quit IRC ()
15:07 zuulvin_ has joined #perl6
15:10 booyaa has joined #perl6
15:11 booyaa has quit IRC (Client Quit)
15:12 booyaa has joined #perl6
15:13 xerox has joined #perl6
15:14 saorge has joined #perl6
15:15 theorbtwo has quit IRC ("Download Gaim: http://gaim.sourceforge.net/")
15:18 theorbtwo has joined #perl6
15:21 theorbtwo has quit IRC (Remote closed the connection)
15:22 theorbtwo has joined #perl6
15:23 mkirank has joined #perl6
15:24 marcus has joined #perl6
15:25 mkirank is this behaviour in pugs correct , I seem to be getting only one element with 9 ...  my @g = ('.') x 9;
15:26 autrijus sure
15:26 autrijus you want xx
15:26 autrijus the p5 x has been split into x and xx
15:26 metaperl has joined #perl6
15:26 mkirank oh ok .. thanks
15:27 autrijus np
15:36 kcwu err...maybe you have known this: life.p6 is incorrect now
15:36 kcwu i see full of "****************"
15:38 nothingmuch has joined #perl6
15:40 justatheory has joined #perl6
15:43 marcus has quit IRC ("Konversation terminated!")
15:45 marcus has joined #perl6
15:56 jiing__ has joined #perl6
15:56 autrijus no I don't... recovering
15:57 autrijus hrm. can you diagnose it a bit for me?
15:57 autrijus I need to run for a bit
15:58 jabbot pugs - 2324 - Removed comment which said there was a b
16:07 marcus has quit IRC (Remote closed the connection)
16:08 jabbot pugs - 2325 - * rewrite the ugly `return . foo =<< bar
16:10 machack666 has joined #perl6
16:15 justatheory has quit IRC ()
16:22 jiing__ has quit IRC ("Computer goes to sleep!")
16:22 machack666 has quit IRC (Read error: 54 (Connection reset by peer))
16:25 mkirank I have written my first perl6 program :-)
16:25 mkirank http://www.perlmonks.com/index.pl?node_id=451261
16:27 Corion has joined #perl6
16:27 Corion r2323 - http://datenzoo.de/pugs/win2k.html
16:31 stevan mkirank: I will commit it for you
16:31 mkirank has quit IRC ("Chatzilla 0.9.67 [Firefox 1.0/20041107]")
16:31 metaperl has quit IRC (Read error: 110 (Connection timed out))
16:32 nothingmuch has quit IRC ()
16:32 Juerd has joined #perl6
16:33 Corion has quit IRC (Read error: 104 (Connection reset by peer))
16:37 Aankhen`` has joined #perl6
16:38 jabbot pugs - 2326 - adding in mkiranks Tic-Tac-Toe game
16:43 hlen has joined #perl6
16:55 broquaint has quit IRC ("Chatzilla 0.9.68a [Firefox 1.0.2/20050321]")
16:58 ninereasons has joined #perl6
17:07 nothingmuch has joined #perl6
17:07 cognominal has quit IRC ("Leaving")
17:07 cognominal has joined #perl6
17:08 elmex has joined #perl6
17:08 jabbot pugs - 2327 - patch up some broken examples
17:10 osfameron_ has quit IRC ("Leaving")
17:10 castaway has quit IRC (Read error: 113 (No route to host))
17:15 nnunley has quit IRC (Read error: 145 (Connection timed out))
17:17 hlen has quit IRC (Read error: 104 (Connection reset by peer))
17:17 hlen has joined #perl6
17:19 alinbsp has quit IRC ("Leaving")
17:22 chady has joined #perl6
17:22 Limbic_Region http://www.perlmonks.org/index.pl?node_id=451261 # tic-tac-toe in p6
17:23 PerlJam I saw that just now.  Quite cool.
17:23 nothingmuch Limbic_Region: already in SVN ;-)
17:24 machack666 has joined #perl6
17:25 machack666 I found the problem with life.p6
17:25 ingy hi nothingmuch
17:25 nothingmuch hola ingy
17:25 machack666 I don't know if it's a bug in pugs or not
17:26 machack666 $neighbours++ if @input[$i];
17:26 machack666 if we force scalar context with +@input...
17:27 machack666 we get the expected behavior
17:27 Limbic_Region nothingmuch - I saw that but I figured it was worth mentioning
17:27 theorbtwo That should be boolean item context.
17:27 machack666 otherwise, it seems that we are not actually dereferencing the index, just testing for existence of the index in the array
17:28 machack666 whether or not the value is 0 or 1
17:28 theorbtwo That's a bug.
17:28 machack666 I think there may have been the same issue in the printing routine for the trinary switch
17:29 machack666 i.e., @input[$index] ?? '*' :: ' '
17:29 machack666 but I didn't force scalar context for the priont routine
17:29 machack666 it seemed to fix itself with the updated generate routine
17:29 machack666 I wonder if it's an initialization problem for the array
17:30 machack666 I don't know how the various contexts get set up, so I don't know why fixing the gen routine woudl change the print automatically
17:30 machack666 I'll write a test for it ... do we have a subdir for various contexts?
17:31 alinbsp has joined #perl6
17:32 machack666 in the meantime I'll check in the version of life.p6 that works
17:36 justatheory has joined #perl6
17:38 jabbot pugs - 2328 - examples/life.p6 added explicit scalar c
17:49 machack666 ok, added a test for boolean context for various trues and falses for arrays and hashes.
17:50 machack666 right now 4 are failing, which are the unexpected cases, leading to life.p6's failures, as well as any other {...} if @array[$index] or {...} if %hash{key} constructs
17:51 machack666 ok bye
17:51 machack666 has left
17:56 stevan metaperl_: ping
17:57 metaperl_ hi
17:57 stevan hey metaperl_
17:57 stevan got a quick question for you
17:57 metaperl_ ok
17:57 stevan mind if  /msg it?
17:57 metaperl_ no, go ahead
17:57 stevan its OT :)
17:58 jabbot pugs - 2329 - Checking for true values in array and ha
18:01 castaway has joined #perl6
18:02 Aankh|Clone has joined #perl6
18:08 PerlJam has quit IRC (Read error: 110 (Connection timed out))
18:11 Corion has joined #perl6
18:15 Corion Does anybody have a hint/idea on what causes splice.t to die with "division by zero" if the last test is uncommented? Is "division by zero" a catch-all Haskell error?
18:16 castaway has quit IRC ("leaving")
18:16 autrijus I have
18:17 autrijus in AST.hs and Types/Array
18:17 autrijus I was using
18:17 autrijus idx `mod` len
18:17 Corion aieee :
18:17 Corion )
18:17 autrijus to truncate [1,2,3][-1]  to [1,2,3][2]
18:17 autrijus since -1 `mod` 3 is 2
18:17 autrijus that is obviously wrong when you say -4
18:17 autrijus and obviously wrong when the list is zero sized
18:18 autrijus but that was the night before 6.2.0 and I ran out of time :)
18:18 Corion Hmmm. But the mod x y should be OK/sane in Haskell (and not be like in C), except for the 0 case, of course.
18:18 autrijus woot!
18:18 autrijus I just made pugs 100% faster (again)!
18:19 Corion autrijus++ # insane speedups
18:19 autrijus haskell++ # get features working first, optimization becomes trivial later
18:19 theorbtwo Wow!  How'd you do that/
18:19 autrijus theorbtwo: -funbox-strict-fields and sprinkle strictness flags around
18:20 theorbtwo Ah.
18:20 autrijus i.e. programming in OCaml mode ;)
18:20 theorbtwo Fun and fast boxes!
18:20 Aankhen`` has quit IRC (No route to host)
18:20 autrijus that makes sense because the Eval monad is now mostly a strict monad.
18:20 autrijus (implicit thunking is largely eliminated)
18:21 autrijus the only remaining lazy one is VList
18:21 autrijus and that is going away when we replace it with a Eager and a Lazy
18:21 autrijus where Lazy is a generator instead of haskell list
18:21 autrijus as mandated by larry
18:21 autrijus that also makes Pugs translatable to Perl6 :)
18:21 autrijus i.e. it no longer depends on lazy evaluation
18:22 Khisanth my Program is Lazy; :p
18:23 autrijus :p
18:23 Corion Why does enforcing strictness speed up things? Lazyness only makes you pay later ... Or is the layness-tax / memory overhead that high?
18:23 machack666 has joined #perl6
18:23 autrijus Corion: it is true that lazyness is at most a linear slowdown
18:23 machack666 foundry down?
18:23 autrijus with a good compiler
18:23 Corion Err - am I confusing lazyness/eagerness ? What is "strictness" in this context?
18:24 autrijus machack666: worksforme
18:24 theorbtwo strict == not lazy.
18:24 autrijus Corion: a strict data field is always eagerly evaluated.
18:24 Corion theorbtwo: Ah, so strict == eager
18:24 autrijus use strict;
18:24 Corion autrijus: :)
18:24 autrijus in the memory, !Int is just a int
18:24 theorbtwo But you can't unbox something that's lazy, and unboxing is lots faster.
18:25 gaal 100% faster is... impressive :)
18:25 autrijus but Int must be Int
18:25 Corion "unbox" ?
18:25 autrijus Corion: unbox, as in using a native C type.
18:25 Corion aaah
18:25 autrijus that is very fast.
18:25 autrijus because all accessors can be inlined
18:25 autrijus and you no longer need to delegate to unboxing routines
18:25 gaal making smoke 2329
18:26 autrijus gaal: this is the second time it happened after 6.2.1 :)
18:26 Corion r2329 - http://datenzoo.de/pugs/win2k.html - 329s
18:26 theorbtwo OTOH, it can't hold funky things like _/_, promises of lazy computation, etc... but we don't much care anyway.
18:26 Corion Is your speedup in already?
18:26 autrijus no
18:26 gaal doesn't that mean it solves the haltin problem before it was ever posited?
18:27 machack666 can't seem to connect; autrijus: I
18:27 machack666 'm sending you a patch
18:27 autrijus k.
18:27 autrijus machack666: or alternatively make it somewhere I can download?
18:28 autrijus committing
18:28 autrijus done
18:29 stevan if you listen closely you can hear the sound of a thousand SVN updates happening at once
18:29 autrijus :D
18:29 gaal smoke 2330 in progress :)
18:29 Corion Hah. Found an unguarded use of mod, or rather, two - do we have exceptions? Not yet I guess ...
18:29 autrijus Corion: we do... retError is it
18:30 Corion autrijus: Aaah. Then I'll look at making "%" Perl-safe :)
18:30 autrijus only two? I think there's 4 more in AST.hs :)
18:30 machack666 autrijus: n/m about the email.  just got it to work
18:30 autrijus cool
18:30 Corion autrijus: I see "%" and op2 "splice" , but I'm only looking at Prim.hs
18:30 autrijus Corion: you can also generate VError yourself
18:30 autrijus Corion: see op2Divide
18:31 Corion autrijus: I'll first write/steal a set of tests against the mod operator(s)
18:31 autrijus that should give you a pretty clear idea
18:31 Corion ... and then I'll try to fix splice()
18:31 autrijus coolio
18:31 autrijus a faster pugs does make coding happier
18:31 obra heh
18:31 Corion Huh ? Perl5 doesn't have mod.t ?
18:31 machack666 has left
18:32 Corion Hmmm. In Perl5, $x % 0 and $y = 0; $x % $y # are not tested :)
18:33 autrijus "Illegal modulus zero" is the error msg
18:34 Juerd I want $x / 0 to return Inf and $x % 0 to return $x. JUST TO BREAK THE RULES.
18:34 Juerd :)
18:34 autrijus 0 / 0 is NaN tho
18:35 theorbtwo $x<0, $x/0 should be -Inf, $x>0, $x/0 is +Inf; 0/0 is NaN.
18:36 autrijus ...and haskell got that correct
18:36 autrijus but "5 `mod` 0" is still error.
18:36 Juerd theorbtwo: And $x % 0?
18:36 theorbtwo Should be 0.
18:36 Juerd Even with 1.5 % 0?
18:37 theorbtwo Why not?
18:37 Juerd I hate by the way that in Perl 5 you can't meaningfully use 4 % 1.5
18:37 Juerd That should simply be 1.
18:37 theorbtwo For x $ y, as y approaches zero, the maximum for any x approaches 0.
18:38 Corion Hmmm. How do I force (Haskell/Pugs) evaluation without say() ? I don't want output in the test ...
18:38 Juerd Corion: assign
18:38 jabbot pugs - 2330 - * add strictness annotation and unbox th
18:38 jabbot pugs - 2331 - cleaned up tests and added checking agai
18:38 Corion juerd: dies_ok( { $x = 0; 3 % $x }, 'Modulo zero dies and is catchable with variables'); # doesn't die ...
18:39 theorbtwo Using eval_haskell, you mean?
18:39 Juerd my $y = ...?
18:39 Corion Maybe I'm just using dies_ok wrong ...
18:39 autrijus bwahaha.
18:40 Corion D'oh - I was just using it wrong, of course !
18:40 autrijus pugs> my ($x, $y); $x = $y = 3; $y = 4; $x
18:40 autrijus 4
18:40 Corion dies_ok( { $x = 0; say 3 % $x; }, 'Modulo zero dies and is catchable with variables'); # is fatal now :)
18:40 Corion autrijus: Aiiieeeee! :))
18:40 Juerd autrijus: Evil. And wrong. :)
18:40 autrijus that's the core of array_values_in_bool_context.t
18:40 autrijus it has nothing with array values
18:40 autrijus or bool context
18:40 autrijus it has everything to do with chained assignment.
18:40 autrijus please refactor the test :)
18:40 * autrijus fixes
18:41 Juerd autrijus: Why is chained assignment special?
18:41 Juerd I thought it'd just be $x = ($y = 3);
18:42 autrijus Juerd: right, but $y=3 was specifically returning a lval ref
18:42 autrijus which is not rvalued
18:42 gaal http://forum2.org/gaal/pugs/smoke-msys.html # duration 239. neat.
18:42 justatheory has quit IRC ()
18:42 autrijus gaal: I have no frame of reference :)
18:42 Juerd autrijus: That's correct.
18:43 Juerd autrijus: However, the second (lexically first) assignment should use only its value part, which cannot be lvalue on that level
18:43 gaal autrijus: it means "very fast".
18:43 gaal :-p
18:43 autrijus Juerd: right, but my enterRValue is not doing what it should
18:43 autrijus gaal: what was it before?
18:43 Juerd Assigment has to return an lvalue, because ($y = 3) += 1 should end up in $y being 4 :)
18:43 Juerd autrijus: I see.
18:44 gaal unfortunately, i overwrote my old tests.ymls; but i think it was on the order of 350.
18:44 theorbtwo What's the unit on that?
18:44 theorbtwo Seconds?
18:44 gaal sec
18:44 gaal onds.
18:44 autrijus neat.
18:44 theorbtwo Nice.
18:44 autrijus so yeah, indeed 100% faster.
18:45 autrijus (since there is harness overhead)
18:45 gaal does not include the build iteself though.
18:45 gaal heh
18:45 gaal 100% speedup means new time = 0 sec :)
18:45 ingy hola
18:45 gaal hey
18:45 * autrijus deliberately misinterprets the numbers
18:45 gaal lies, damn lies, etc.
18:45 autrijus riight.
18:46 autrijus pugs> ($_ = 3)++; $_
18:46 autrijus 4
18:46 gaal btw auytrijus, isTerminalDevice lies on msys, so "pugs" w/o params hangs.
18:47 gaal s/yy//
18:47 autrijus pugs> my ($x, $y); $x = $y = 4; $y = 3; $x
18:47 autrijus 4
18:47 autrijus gaal: damn lies
18:47 Juerd autrijus: Your = has an identity disorder. It thinks it's := ;)
18:47 autrijus Juerd: it's fixed :)
18:47 gaal fer real! and echo 'say "hi"' | pugs does work, so it's not that msys closes stdin.
18:47 gaal looks like an msys bug :/
18:48 autrijus gaal: so... move hIsTerminalDevice stdin to compat
18:48 autrijus and try to find some other way?
18:48 autrijus I wonder why it worked
18:48 gaal ....and do what on msys?
18:48 Juerd autrijus: Oh, right. 'x' and 'y' look too much alike.
18:48 jabbot pugs - 2332 - Added test against fatal zero modulus
18:48 jabbot pugs - 2333 - * fixed the identity disorder of `=`.
18:48 gaal return 'true' if no params? :)))
18:48 autrijus gaal: I think so
18:48 autrijus least surprise etc.
18:48 gaal hahaha
18:49 gaal vile evil.
18:49 * autrijus cackles an evil cackle
18:49 gaal http://img93.echo.cx/img93/9492/evil2zq.jpg
18:49 autrijus hm, more than 329s passed
18:50 autrijus I wonder if it's faster for Corion or not
18:50 gaal your machine is so slow
18:50 Corion autrijus: I'm currently not smoking
18:50 autrijus oh ok :)
18:50 autrijus that's fine
18:50 Juerd autrijus: Pugs has no lazy lists yet?
18:50 autrijus gaal already gave us the good numbers
18:50 gaal don't mind me, i'm a little tipsy :)
18:50 Corion I'm writing tests to banish fatal `mod` :)
18:50 Limbic_Region Corion - trying to kick the habit?
18:50 Corion Limbic_Region: Busy elsewhere
18:51 autrijus Juerd: not yet.
18:51 autrijus Juerd: and utterly not since I strictified the data fields
18:51 Juerd autrijus: paren parsing is wrong: say (1|2|3).pick should be say((1|2|3).pick), not (say(1|2|3)).pick
18:52 autrijus Juerd: if it looks like a function.
18:52 Juerd autrijus: () rules are the same as [] and {}
18:52 Juerd autrijus: No whitespace allowed, and if you want whitespace, use dot
18:52 autrijus Juerd: you are positive?
18:52 Juerd autrijus: The thing with () is that it CAN usefully use the value if there's whitespace - as the first argument
18:52 Juerd Yes
18:52 Juerd I'll try to find it in an S
18:52 Aankh|Clone is now known as Aankhen``
18:54 gaal autrijus, the isTerminalDevice compat hack won't work, exactly because people want to pipe stdin to pugs. maybe we need an explicit flag to start interactive mode? too bad -i is sorta spoken for.
18:55 Juerd    if $term($x)        # function call because operator expected
18:55 Juerd    if $term ($x)       # syntax error (two terms in a row)
18:55 Juerd    if $term .($x)      # valid function call (term expected after dot)
18:55 Juerd HOWEVER - this is with a variable $term
18:55 Juerd If you have a named sub, you already know it's a sub
18:55 Juerd At parse time
18:55 autrijus right.
18:55 Juerd And can just use ($x) as the first argument
18:55 Juerd Making subname (1), 2, 3 a 3-arg subcall
18:55 autrijus print (4) + 3;
18:55 Juerd 7
18:55 coet has joined #perl6
18:55 autrijus it is terribly surprising.
18:56 Juerd But print(4) + 3;  # 4 (or 3)
18:56 Juerd autrijus: No, the *current* thing is surprising, which is why it was changed :)
18:56 autrijus say ("Hello" ~ $x) ~ 8;
18:56 autrijus ok...
18:56 autrijus I trust you are positive on this :)
18:56 Juerd I am - just can't find the spec for it
18:57 Juerd Which happens all the gd time.
18:57 Corion Yay. Splice bug is fixed
18:57 autrijus Corion: yay!
18:57 Corion ... but I'll run "make test" before I commit :)
18:57 Juerd The synopses are very incomplete when it comes to explaining why decisions were taken, and not every decision is reflected
18:57 * Arathorn has been surprised many times by the print (4) + 3 thing in p5 :(
18:58 Juerd And apocalypses are way too large to grep
18:58 jabbot pugs - 2334 - * unmark unexpected success
18:58 gaal autrijus, i'm tracking where the bug is. do you remember whihc module defines isTerminalDevice?
18:58 autrijus System.IO
18:59 Corion And I think I also found a bug in the Makefile.PL ... "make clean" doesn't clean up Regex/* , UTF8/* and Unicode/*
18:59 autrijus hIsTerminalDevice
18:59 gaal btw: anyone else using firefox 1.03 here? have you been seeing a bug where find-as-you-type doesn't?
18:59 Arathorn (especially perl -e 'print (4+2)/3' # yields 6)
18:59 gaal thanks, autrijus.
18:59 Juerd autrijus: if is proof, by the way
18:59 gaal ...doesn't find anything, that is.
18:59 Juerd autrijus: As if is just a function, if ($foo) { ... } could not be useful without this rule... :)
18:59 Corion ... which is what confuses "make; make clean; make optimized" or the other sequence
18:59 autrijus Juerd: I understand.
18:59 autrijus but I don't believe that if is just a function :)
18:59 Juerd Which makes me wonder whether if($foo) { ... } really is an error...!
19:00 autrijus exactly.
19:00 autrijus if(3){die 2}
19:00 autrijus I'd hate to see it becoming an error.
19:00 Juerd No one sane would write that after the first months though
19:00 Juerd if 3 {die 2}
19:00 Juerd die 2 if 3
19:00 Juerd 3 and die 2
19:00 autrijus I beg to differ. :)
19:00 Juerd die 2
19:00 PerlJam has joined #perl6
19:00 autrijus anyway, if is currently a macro.
19:01 Corion Perl6 - redefining sanity
19:01 autrijus I will keep it that way until @larry says otherwise.
19:01 autrijus Juerd: btw
19:01 chady has quit IRC ("leaving")
19:01 autrijus $obj .method ($arg);
19:01 autrijus ok or not?
19:01 Limbic_Region rx:perl5/([XO])\1\1/ is purely a temporary construct correct - there is no intention to have p6 support inline p5 regexen right?
19:01 autrijus also: $obj . method ($arg);
19:01 xerox Why do you call him "@larry" ?
19:02 autrijus xerox: there are multiple larrys
19:02 Juerd autrijus: No
19:02 autrijus Limbic_Region: :perl5 is defined in S05
19:02 * Limbic_Region notes the irony in xerox needing to be told about multiple copies
19:02 crysflame heh :)
19:02 Juerd autrijus: Larry declared that parens are required with method calls :(
19:02 Corion I thought it was now called :Perl5 ? :)
19:02 gaal lol
19:02 autrijus Juerd: I mean whitespace.
19:02 autrijus Corion: :P5 !
19:02 Corion Ah ;)
19:02 autrijus $obj .method (1)
19:03 autrijus $obj .method(1)
19:03 Juerd autrijus: And whitespace before ( is invalid as I said before...
19:03 autrijus $obj .method .(1)
19:03 Juerd autrijus: If you want whitespace, you need .
19:03 autrijus hmm it will mean something entirely different, no?
19:03 autrijus it would mean $obj.method().(1)
19:03 autrijus print .(3);
19:03 autrijus are you sure it is valid?
19:03 Limbic_Region ok - thought I had read that but then I was confused - is the experimental "code on lhs" constructs going to be supported to?
19:04 Corion "make test" sure feels faster now :)
19:04 Juerd autrijus: Good question. I don't know.
19:04 Limbic_Region and if yes, is both p5 and p6 valid
19:04 autrijus Limbic_Region: what?
19:04 autrijus code on lhs?
19:05 Limbic_Region "(?{ code })" for instance
19:05 Limbic_Region lhs = left hand side
19:05 Limbic_Region not to be confused with /e for rhs
19:06 autrijus oh.
19:06 Limbic_Region "(??{ code })" as well (both from perldoc perlre)
19:06 autrijus for p6 you can just use {}
19:06 autrijus for p5 I'm not sure.
19:07 Juerd {}, <{}> or <()>, depending on what you mean.
19:07 theorbtwo To a way of thinking rx:perl5/(?{ code })/ would imply that the code should be p5 code... which will probably never be supported.
19:08 Limbic_Region that's why I was asking
19:08 theorbtwo I wouldn't be terribly surprised if, at some point, p5 regexes become an alternate syntax of p6 regexes, so they'd work, but have p6 code.
19:08 autrijus I have no idea about that.
19:08 Limbic_Region I seemed to remember reading p5 regexen would be supported and then I second guessed that because of the experimental code features
19:08 gaal autrijus: confirmed isatty bug is in msys :/
19:09 * Limbic_Region wonders if p5 regexen will actually be translated to p6 rules under the covers
19:09 gaal int main(){printf("isatty = %d\n", isatty(0));} # prints "0"
19:10 gaal ....and 1 on linux
19:11 gaal (and unstd's isatty is what gets called eventually.)
19:13 autrijus print (4)+4
19:13 autrijus now prints 8.
19:13 autrijus please someone write a test for this.
19:13 autrijus it's a major major change to my brain :)
19:13 gaal pugs5bugs? :)
19:13 gaal perl5bugs that is
19:15 obra "pugs5"
19:18 gaal "You must be logged in to report a bug" on bug page. wow, everything non wikibile looks so -- now.
19:18 jabbot pugs - 2335 - splice([], 1) now works
19:18 jabbot pugs - 2336 - * `print (4)+4` now prints 8, because th
19:18 gaal so (--), even.
19:19 Juerd Hm
19:19 Juerd I'm thinking about proposing a radical rule syntax change.
19:19 autrijus Juerd:
19:19 autrijus The context in which a subscript is evaluated is no longer controlled by the
19:19 autrijus sigil either.  The inner context turns out to be whatever the outer context
19:19 autrijus was, since we now have convenient single‐character context specifiers to force
19:19 autrijus either scalar or list context.
19:19 autrijus does this mean
19:19 autrijus scalar @foo[func()]
19:19 autrijus will evaluate func in item context
19:19 autrijus list @foo[func()]
19:19 autrijus will evaluate it in slurpy context?
19:20 gaal t/builtins/arrays/splice.t
19:20 gaal pugs: divide by zero # on linux
19:20 Juerd autrijus: Yes
19:20 autrijus @foo[func()] = boo();
19:20 autrijus what about this?
19:20 autrijus what context is func() under?
19:20 justatheory has joined #perl6
19:20 metaperl has joined #perl6
19:21 Juerd autrijus: It also means that if you want a slice and then stringify that, you have towrite ~list @foo[func] instead of ~@foo[func], because ~@foo[func] is ~@foo[scalar func], or maybe even ~@foo[~func] (nahh?)
19:21 Juerd autrijus: hm. void context! :)
19:21 autrijus Juerd: you are kidding!
19:21 autrijus :)
19:21 Juerd autrijus: I don't know :)
19:21 autrijus ok. I'll assume list by default.
19:21 Juerd But by the rules you layed out, it's void :)
19:21 autrijus no, it's subtly different
19:21 autrijus we are at lhs now
19:21 Juerd Yes
19:21 autrijus and larry says
19:21 autrijus @x[1,]
19:22 autrijus @x[1,] = 3
19:22 Juerd Which is, conceptually, also the result of the entire expression
19:22 autrijus @x[1] = 3
19:22 Juerd Which is in void context :)
19:22 autrijus parses differently
19:22 autrijus @x[1,] = foo(); # foo is as plural
19:22 Juerd autrijus: Hm, then assume scalar by default?
19:22 autrijus @x[1] = foo(); # foo is as singular
19:22 Juerd @x[func] = foo();  # item
19:22 Juerd @x[func,] = foo();  # slurp
19:22 autrijus why?
19:22 autrijus oh!
19:22 autrijus riiight.
19:22 Juerd consistency perhaps?
19:22 autrijus smart.
19:22 Juerd I wouldn't know :)
19:23 * autrijus ponders raising it on p6l again
19:23 Corion gaal: Are you on the latest version? It should work now, that is, dies_ok ...
19:24 Corion Err - not dies_ok, it should Just work ...
19:25 theorbtwo You know, I hate it when I try to set up a visualization of something complex, and all I see is "wow, that looks complicated".
19:25 zuulvin_ has quit IRC (Remote closed the connection)
19:25 autrijus theorbtwo: :D
19:27 Corion Grr. How do I convert a Ratio to a VInt ?
19:27 gaal http://forum2.org/gaal/pugs/smoke-linux.html r 2334
19:27 gaal Corion, is that the last one?
19:28 Corion op2Int does seeom to want a Ratio, when all I got is a VInt. Or so I think.
19:28 Corion gaal: Yep, the last one in splice.t should Work ...
19:29 Corion (and does for me)
19:29 gaal trying on win32...
19:29 Arathorn is now known as Aragone
19:30 theorbtwo My .hi grapher works, in as much as it produces a dot file that describes the relationship between different modules in pugs.
19:30 * gaal notices the versions reported in the version string and the revision yaml entry are different
19:30 gaal prolly perl Makefile.PL related thogh.
19:31 theorbtwo However, it is not graphable into something that looks useful.
19:31 theorbtwo What are they, gaal, and which agrees with svn info?
19:31 gaal revision is always from svn info, to2.
19:32 gaal see http://forum2.org/gaal/pugs/smoke-linux.html
19:32 gaal the "pugs" version info is from pugs -V
19:32 gaal which apparently is not updated every r, but rather every Makefile.PL (+Config.hs presumably)
19:33 gaal http://forum2.org/gaal/pugs/smoke-msys.html r2336 msys
19:33 theorbtwo Nope, gaal.
19:33 Corion gaal: That was before commit
19:33 autrijus I asked p6l after all
19:34 Corion my commit of the tests should have been at r2335 I think
19:34 gaal to2, what do you mean "nope"?
19:34 ninereasons has quit IRC (Read error: 104 (Connection reset by peer))
19:34 autrijus happily Juerd and I didn't clash
19:34 theorbtwo src/Pugs/pugs_version.h : .svn/entries util/version_h.pl
19:34 theorbtwo        $(PERL) util/version_h.pl src/Pugs/pugs_version.h
19:34 theorbtwo That's from the Makefile.
19:34 Juerd autrijus: I'm posting lots of questions to p6l by the way
19:34 gaal then how do you explain the r difference?
19:34 theorbtwo Every time .svn/entries changes, src/Pugs/pugs_version.h should be remade.
19:35 Juerd autrijus: Inspired by our discussions
19:35 pasteling "Corion" at 217.234.76.42 pasted "Why doesn't this Modulus thing even compile?" (23 lines, 661B) at http://sial.org/pbot/9637
19:35 autrijus Juerd: fyi, I posted about expressions
19:35 Juerd autrijus: Reading it as we chat
19:35 autrijus in slicing context
19:35 autrijus Juerd: that describes pugs r2337
19:35 theorbtwo Do a svn up -r2335 && make
19:36 Juerd I want to write my rule syntax overhaul proposal, but need silence in my mind for that :)
19:36 autrijus sorry :)
19:36 theorbtwo Does /usr/bin/perl -Iinc util/version_h.pl src/Pugs/pugs_version.h get rerun, and does Compiling Pugs.Help        ( src/Pugs/Help.hs, src/Pugs/Help.o ) appear?
19:36 Juerd Currently, all sorts of syntax are flying through my head
19:36 autrijus also, life.p6 lives.
19:36 * Corion smokes r2337
19:36 autrijus Corion: cool, that's needed :)
19:36 autrijus hopefully it will take less than 5+ minutes
19:36 Juerd I'll do this later. There must be some day during which nothing interesting happens :)
19:37 Corion autrijus: Compiling now takes longer than smoketesting I think :)
19:37 nnunley has joined #perl6
19:37 gaal to2, i believe the r discrepancy is sufficient evidence that make lies, or that at least it isnt' beign used properly.
19:37 theorbtwo Possibly.
19:37 theorbtwo But I don't see any failure mode where running Makefile.PL helps.
19:37 Juerd autrijus: It passes my sanity checker. Now we have to wait for Larry's
19:37 autrijus good.
19:39 Corion ... still compiling r2337 :)
19:39 gaal to2, i need to go off now, feel free to investigate / hack yaml_harness further :)
19:40 Limbic_Region isn't there a way to do cached compiles where only files that have changed are recompiled?
19:40 gaal l~r, ghc does that automatically
19:40 * gaal &
19:41 theorbtwo L~R: thus ghc's noise about skipping.
19:42 * Limbic_Region wouldn't know as he has never compiled ghc nor Pugs
19:42 * Limbic_Region hangs his head in shame
19:42 * Juerd shakes Limbic_Region's hand
19:42 Juerd Coding Perl 6 without testing any of it :)
19:43 * Juerd only recently had to compile pugs to verify that what it *did* was right :)
19:43 autrijus Limbic_Region: you can download ghc binaries...
19:43 Juerd Hmmm
19:44 Juerd Can someone write a bot that evaluates every expression uttered on IRC?
19:44 machack666 has joined #perl6
19:45 Corion Juerd: #haskell has it, but I wouldn't want to run it for Perl :)
19:45 Juerd (Hm, no, useless. I'm not going to actually provide a func() for stuff like that :P)
19:45 Corion Juerd: But if you write a good irc kernel, go ahead :)
19:45 machack666 hey, there were problems with array_values_in_bool_context.t ?
19:45 Limbic_Region autrijus - the trouble is that I am not aware of any Win32 versions that don't require the Installer (I do most of my work at work and don't have rights to install there)
19:45 autrijus machack666: no, it's fine now
19:45 Juerd Limbic_Region: Time to escape to a home connection.
19:45 Juerd Limbic_Region: Can you run putty?
19:45 autrijus machack666: but it all passes (life.p6 too)
19:45 autrijus so move it out from pugsbugs
19:46 machack666 ok ... svn delete and svn add, or is there a move command?
19:46 autrijus Limbic_Region: I thought GHC installer lets you choose path
19:46 Corion svn move
19:46 autrijus machack666: there is svn move.
19:46 machack666 thx
19:46 Limbic_Region Juerd - up until this weekend I could but that got shut off too
19:46 Juerd autrijus: Installers in Win32 identify themselves as being installers, at which the great "security policies" of Windows become active.
19:46 autrijus Limbic_Region: otherwise, I'm sure win32 folks like Corion or others will be happy to zip up C:\ghc and put it somewhere
19:47 autrijus because it doesn't need registry
19:47 Juerd autrijus: Hack out that part and many things that don't need to write in system directories will magically work... :)
19:47 Limbic_Region autrijus - is that all it takes?  No installation of .dlls in system32 or the registry
19:47 autrijus just unzip back to c:\ghc, add c:\ghc\bin to path
19:47 autrijus Limbic_Region: nope
19:47 Limbic_Region ok
19:47 * Limbic_Region will ping Corion about it
19:47 Corion ghc comes as an ugly/stupid .msi package, and there is no .zip. But I can provide that if necessary. I even have 48k/s upstream nowadays.
19:47 autrijus the .msi will of course add registry
19:47 autrijus but those aren't needed
19:47 * Limbic_Region would prefer just a plain zip file
19:48 machack666 what's a sensible location for array_values_in_bool_context.t?  something to do with return values makes sense...
19:48 Corion Somehow, t/hashes/slice.t broke
19:48 Corion See http://datenzoo.de/pugs/win2k.html
19:48 autrijus gah
19:48 Limbic_Region Corion - ATM, all I can do is http download
19:48 Corion Hmmm. And also some other array stuff ...
19:48 autrijus I just closed the tab I'm writing my journal in
19:48 * autrijus sobs
19:48 Limbic_Region autrijus - you using FireFox?
19:48 Corion Limbic_Region: Should I serve the zip via http then? I'll create the .zip now ...
19:48 autrijus Limbic_Region: yeah
19:48 Limbic_Region and if so, WTF don't you have the tab extensions?
19:49 Limbic_Region (undo closetab)  
19:49 Limbic_Region grrr
19:49 autrijus oh!
19:49 autrijus grr.
19:49 autrijus didn't know that!
19:49 * autrijus goes installing tab extensions
19:49 Limbic_Region undo close tab plus plus
19:49 theorbtwo Will that save the contents of form fields, though?
19:49 Limbic_Region autrijus - hang on, there are several - I recommend a specific one
19:49 theorbtwo (undo close tabs)++
19:49 Limbic_Region has quit IRC ("CGI:IRC")
19:49 Corion writing-texts-in-a-real-texteditor ++
19:50 Limbic_Region has joined #perl6
19:50 machack666 has quit IRC ("clever quit message")
19:50 Corion Oops. Ghc-6.4.zip has 48MB ... That means it will take at least 1000 seconds to upload ...
19:50 Limbic_Region autrijus - http://piro.sakura.ne.jp/xul​/tabextensions/index.html.en
19:51 Corion Limbic_Region: I'll upload ghc-6.4 now, but it'll take some time until it appears ...
19:51 Limbic_Region Corion - wait
19:51 Limbic_Region I have a better idea
19:52 Limbic_Region let me do it at home, burn a CD, and bring it to work
19:52 Limbic_Region autrijus - that link is for my personal preference for a tab extension in FF
19:52 autrijus Juerd: weird
19:53 autrijus ~%x{1,2}
19:53 autrijus turns out to become
19:53 autrijus ~%x{  [1,2]  }
19:53 autrijus which is then
19:53 autrijus ~%x{"1\t2"}
19:53 autrijus er
19:53 autrijus ~%x{"1 2"}
19:53 autrijus does this seem remotely sane?
19:54 elmex ??
19:54 elmex what does ~ mean?
19:54 autrijus string context
19:54 elmex err
19:54 elmex ...
19:54 Aankhen`` G'night.
19:54 Aankhen`` has quit IRC ("Sleep [Time wasted online: 1hr 52mins 4secs]")
19:54 theorbtwo Nope, it doesn't, autrijus.
19:55 elmex perl6 is beyond all limits of my comprehension... haskell is easy... but perl6 is a monster
19:55 Juerd autrijus: Anything can be a hash key. Doesn't have to be a string.
19:55 autrijus Juerd: assume it is shaped as string
19:55 Corion Yay. Seems like modulus now works/dies sanely too ...
19:55 autrijus as is the default.
19:55 autrijus Juerd: I'm asking the sanity of scalarifying (!,2)
19:55 autrijus (1,2)
19:55 autrijus Corion++
19:55 autrijus Corion++
19:56 Juerd autrijus: And what you mean is written as ~list %x{1,2}, possibly ~*%x{1,2} (whoa)
19:56 autrijus whoa indeed
19:56 Juerd p6l it :)
19:56 autrijus done
19:56 Juerd Hm
19:57 Juerd My rule syntax change turns out to be limited to just three things
19:57 Juerd Or, well, just two actually.
19:58 Juerd 1. Make '' and "" work for literal string matches, instead of the ugly <''> and <"">
19:58 Limbic_Region has quit IRC ("CGI:IRC")
19:58 jabbot pugs - 2337 - * we now propagate outer context to inne
19:58 jabbot pugs - 2338 - Moved array_values_in_bool_context.t out
19:58 jabbot pugs - 2339 - * fix slice.t to use is()
19:58 Juerd 2. Make $foo interpolate as a rule, not literal string. Want literal? use "$foo"
19:58 Limbic_Region has joined #perl6
19:58 Limbic_Region has quit IRC (Client Quit)
19:59 Limbic_Region has joined #perl6
19:59 autrijus scw: why did you remove output/fp/fp.
19:59 Juerd (3. Make <$foo> use $foo as a rule's NAME)
19:59 autrijus I'm adding it back.
19:59 Corion autrijus: Can you work on making ghc faster? I have the feeling that compiling Pugs now takes more time than testing it :)))
20:00 autrijus maybe it's time to write more tests!
20:00 Corion autrijus: :)))))
20:00 autrijus (or, alternatively, don't do make optimized for smoke anymore)
20:00 Corion autrijus: Ah, that could be an interesting idea, again
20:01 Juerd But it just changed! :)
20:01 Juerd Give it chance to settle
20:03 nnunley has quit IRC (Remote closed the connection)
20:04 nnunley has joined #perl6
20:06 castaway_ has joined #perl6
20:08 Corion Aieeee - more breakage ... http://datenzoo.de/pugs/win2k.html
20:08 jabbot pugs - 2340 - * add it back.
20:09 autrijus Corion: slice.t is repaired as r2339
20:09 Corion Aaah. Will then rerun ;)
20:09 autrijus no need to really :)
20:09 Corion arith.t also is broken ...
20:09 autrijus I just fixed the test file
20:09 autrijus grep.t worksforme
20:09 autrijus I wonder why it failsforyou
20:09 Corion weird ...
20:09 autrijus arith.t too
20:09 autrijus clearly your harness is weird
20:09 Corion need to check then ... Maybe my modulus fix breaks it
20:10 Corion ... which is not yet committed for good reason ;)
20:10 autrijus :)
20:10 Corion Aaah. Yes. How do I get a VRat into a VInt ?
20:11 autrijus % 0
20:11 autrijus er
20:11 autrijus % 1
20:11 autrijus 4 % 1
20:11 autrijus oh wait, "into"
20:11 autrijus truncate
20:11 autrijus truncate rat :: VInt
20:11 autrijus truncate (rat :: VRat) :: VInt
20:11 autrijus just saying "truncate x" is fine
20:12 Corion Will try that ;)
20:13 Juerd What do you do when it feels like your mind is about to explode because it ponders too much things simultaneously?
20:13 Juerd Perl 6 is killing me mentally, and I don't know how to relax.
20:13 Corion Yay. Compiles :)
20:14 iblechbot has quit IRC (Connection timed out)
20:14 Corion Hmmm. But it returns "undef" for lots of the modulus tests. That's not what I want ;))
20:14 autrijus Corion: you accidentally nuked my fmap change ;)
20:14 autrijus that's ok though, I'm recommitting
20:15 Corion autrijus: Bah :( Sorry :(
20:15 autrijus that's fine... I wonder why svn up didn't catch that
20:16 Juerd Any music you can recommend?
20:17 autrijus pink noise
20:17 Juerd eh
20:17 Juerd noise?
20:17 autrijus pink noise = absolute silence
20:17 autrijus it cancels out ambient sounds
20:17 Juerd Impossible here. Busy street
20:18 autrijus try playing pink noise with an earphone :)
20:18 Juerd (Near fire brigade... *hates*)
20:18 autrijus works wonders.
20:18 autrijus will return you to sanity in no time
20:18 Juerd Then I hear my own breathing and heartbeat. Drives me NUTS! :)
20:18 jabbot pugs - 2341 - * re-apply the fmap change accidentally
20:18 autrijus it cancels _that_ too :)
20:18 Juerd Hmmm
20:18 Juerd Do you happen to have an .ogg or .mp3 of that? :)
20:19 Corion autrijus: return $ if y' == 0 then err else VRat $ (truncate x') % (truncate y') -- doesn't work, and seems to always return 0. What am I doing wrong here?
20:19 Corion for | VRat x' <- x, VRat y' <- y
20:19 autrijus Juerd: pink noise doesn't compress well
20:19 autrijus Juerd: are you on win32? mac? *nix?
20:20 crysflame pink noise is interesting
20:20 crysflame Juerd: pink noise generators are freeware for all platforms
20:20 Juerd autrijus: mac
20:20 autrijus Corion: don't think you want to do that
20:20 autrijus Corion: you just want x' % y'
20:20 autrijus iirc.
20:20 autrijus Juerd: oh. Noise.app
20:20 autrijus http://blackholemedia.com/noise/
20:20 Juerd neat
20:21 Corion autrijus: But for     = return $ if y' == 0 then err else VRat $ x' % y' -- GHC says:
20:21 Corion Couldn't match `Integer' against `VRat'
20:21 Corion  Expected type: VRat
20:21 Corion  Inferred type: Ratio VRat
20:22 autrijus wait.. are you implementing mod?
20:22 Corion autrijus: Yep
20:22 autrijus mod in haskell is spelled `mod`
20:22 autrijus not as %
20:22 autrijus % is the rational divisor
20:22 Corion D'oh ;))))
20:22 Corion ... so the "undef" results are actually OK ;)
20:24 Juerd I think they have huge pink noise generators in data centra
20:24 Juerd centres, centers, whatever.
20:24 Juerd It sounds exactly the same :)
20:24 autrijus rofl
20:24 autrijus I hope it helps
20:24 autrijus it doesn't help a lot if you are playing it off a speaker
20:25 Juerd I have no headphones here yet
20:25 autrijus sadly
20:25 Juerd Well - I do have some, but the cord is so short I'd have to put my head in the cupboard that hides my mac :)
20:25 Juerd And they suck anyway.
20:25 Juerd I bet this noise would fry them ;)
20:26 osfameron has joined #perl6
20:27 theorbtwo G'night all.
20:27 autrijus 'nite
20:28 Corion Hmm. %() should now work, but I'll wait for the compile/smoke run to finish :)
20:28 autrijus woot
20:28 Juerd What is %()?
20:29 autrijus I think Corion means %0
20:29 autrijus but I'm not sure
20:29 Limbic_Region 0% financing?
20:29 Qiang autrijus you are still up =)
20:29 Corion No, I mean <<%>> , or however `mod` is spelled in Perl6 :)
20:30 Limbic_Region has quit IRC ("hometime")
20:30 Qiang 0% down?
20:30 Juerd Corion: Oh, &infix:<%>
20:30 Corion Aieeee - App "%" [] [Val (VRef <Scalar::Proxy>),Val (VInt 2)] # is not handled by my code. Can I somehow punt to op2Num after a short parameter check?
20:31 Juerd Corion: In perl, functions aren't referred to by adding parens, but by adding & :)
20:31 Corion Juerd: :))
20:31 Juerd So we speak of &int, not int()
20:31 Juerd As int() *calls* the function
20:31 Juerd
20:31 Juerd wow.
20:31 Juerd I actually SAID backspace.
20:31 theorbtwo A good chr(0x8) to you too.
20:32 * theorbtwo SAYS the goodnight.
20:32 xerox
20:32 * xerox said backspace too :-)
20:32 autrijus how do you do that?
20:33 crysflame
20:33 xerox autrijus, with Emacs, C-j Backspace
20:33 xerox Oops, C-q C-h
20:35 autrijus journal up. and off to sleep I go...
20:35 * autrijus waves &
20:36 Juerd Good night
20:38 autrijus Juerd++ # indispensible in-channel language guru
20:38 autrijus &
20:38 Qiang night. autrijus
20:38 Qiang hm, it's actually 4:40 in taipai. isn't it.
20:38 Juerd Yay - I'm not sure I deserve that title, though. I just think a lot (too much) and weed out illogical and inconsistent things where I can.
20:39 Qiang what is in-channel language ?
20:40 stevan Corion: ping
20:40 Corion Awake
20:40 jhorwitz has quit IRC ("Chatzilla 0.9.67 [Firefox 1.0.2/20050317]")
20:40 Juerd Qiang: in-channel guru of language
20:41 stevan Corion: I see (from the journal) you have been doing test refactors
20:41 saorge has quit IRC ("Leaving")
20:41 Corion stevan: Not really - today I dabbled in Haskell
20:41 stevan I was going to do some myself tonight, anything you noticed I should work on
20:41 Corion (and fixed splice() and will fix &infix:<%>
20:41 stevan Corion: well any thoughts on places to attack for tests?
20:41 Corion ... I hope. If the smoketest tells me all is well.
20:42 Corion stevan: I usually scan through the skip/todo stuff, and remove the skip/todo/eval and see if it still works :)
20:42 Shillo has joined #perl6
20:42 stevan good idea :)
20:42 stevan I think I might try and expand the t/oo tests too
20:43 Qiang Juerd: what language are you refering too? ah. hope it's not a dumb question.
20:43 Corion Hmmm. Can I get a sanity test - does t/data_types/array.t fail for anybody currently? I get 2 failures there, and 4 failures in t/data_types/mixed_multi_dimensional.t ...
20:44 Corion ... and I want to make sure these failures were there before I commit, so I didn't cause them :)
20:44 Juerd Qiang: Perl 6
20:44 Qiang Juerd: now i felt that was a dumb question. =)
20:45 wilx has quit IRC (Remote closed the connection)
20:48 Juerd Qiang: Go back in time and unask it.
20:49 PerlJam Juerd isn't the language guru for perl6, that's luqui
20:49 PerlJam Juerd is just the person who keeps everybody honest ;)
20:50 PerlJam or maybe that's sane?
20:50 Qiang Juerd: maybe perl6 can do that :)
20:51 Juerd PerlJam: luqui indeed is the guru.
20:52 Juerd What do you mean with honest/sane?
20:54 metaperl has quit IRC (Connection timed out)
20:54 justatheory has quit IRC ()
20:55 PerlJam Juerd: you seem to be waging a battle against the eventual insanity of the cabal.
20:55 Corion Everybody needs windmills to tilt against
20:55 PerlJam Corion: sure.
20:56 Juerd PerlJam: I wish I could parse that. Can you try and factor in my limited understanding of english? :)
20:56 Corion data Cabal | Maybe Insane
20:56 PerlJam Juerd: various people say insane things on #perl6 or p6l and you tell them that they are insane.  Then we move on to the next thing.
20:56 Juerd I think some ideas are insane because they're inconsistent or cause extra work.
20:57 Juerd PerlJam: Oh, like that. Yes, I say what I think.
20:57 Qiang whew, now we can all understand each other.
20:57 PerlJam Juerd: or, wrt to "honest", you tend to make sure that everyone's understanding is the *same* understanding  :)
20:57 Juerd Well, only opinions. Otherwise I'd be flooding.
20:58 Juerd PerlJam: I'm not sure how and why I do that - and wasn't aware of it myself :)
20:58 jabbot pugs - 2342 - Fixed &infix:<%> to become trappable
20:58 jabbot pugs - 2343 - Moved the modulus test from t/pugsbugs t
20:58 Juerd afk  # hands&arms hurt again
20:58 PerlJam Juerd: You do it just by asking questions or making statements regarding your own understanding of things.
20:59 Juerd That's because with questions, implementing something is impossible. There must eventually be no question left.
20:59 Juerd afk
21:00 Qiang questioning is good thing. it's hard to cover all aspects.
21:00 osfameron_ has joined #perl6
21:01 Qiang i often get asked and then i keep silence for few seconds and said, i will think about that.
21:02 Qiang Juerd: i think you keep the unclear question coming so that whoever is implementing will have to be have answer for it.
21:03 ninereasons has joined #perl6
21:04 osfameron has quit IRC (Read error: 54 (Connection reset by peer))
21:05 Corion r2343 - http://datenzoo.de/pugs/win2k.html - 8 failing tests
21:06 Corion changes topic to: pugscode.org <Overview Journal Logs> | smoke/win2k (occasional): http://xrl.us/fqum (4537ok/8fa/891td/33sk, r2343), Mac OS X (160/4483, r2216), Linux (60/4482, 2267) | pugs.kwiki.org
21:07 Corion changes topic to: pugscode.org <Overview Journal Logs> | smoke/win2k (occasional): http://xrl.us/fqum (4537/8, r2343), Mac OS X (160/4483, r2216), Linux (60/4482, 2267) | pugs.kwiki.org
21:08 jabbot pugs - 2344 - some test refactoring
21:09 justatheory has joined #perl6
21:14 nnunley has quit IRC (Read error: 60 (Operation timed out))
21:18 jabbot pugs - 2345 - adding in dragonchilds tic-tac-toe refac
21:20 Corion t/magicals/caller.t fails due to a "misreported" column offset. I think the offset reported is the opening { and not the function call. I don't know where to fix this though, and/or if more tests with subs that extend over several lines are needed.
21:28 alinbsp has quit IRC ("Leaving")
21:30 Corion good night
21:30 Corion has quit IRC ("Chatzilla 0.9.68a [Firefox 1.0.3/20050414]")
21:32 Limbic_Region has joined #perl6
21:38 jabbot pugs - 2346 - Added test against running system() and
21:41 nnunley has joined #perl6
21:45 clkao nnunley!
21:45 wilx has joined #perl6
21:46 nnunley clkao!
21:46 clkao welcome back to civilization. i seem to have nicer neighbor than you do
21:47 osfameron_ has quit IRC (Read error: 60 (Operation timed out))
21:53 wilx has quit IRC (Read error: 113 (No route to host))
21:53 wilx` has joined #perl6
21:54 Limbic_Region using svk, what is the shortcut to checkout Pugs (assuming it was never on the box before) ?
21:56 clkao svk co URL
21:56 nnunley clkao:  It's not so bad here once you get used to it.  Some of it is pretty decayed, but there are spots of interest here and there.
21:56 clkao nnunley: *nod*
21:56 Limbic_Region clkao - that's not smart enough to skip every single revision is it?
21:56 clkao Limbic_Region: it will ask you if you want to do so.
21:57 clkao we are user-friendly!
21:57 Limbic_Region ok - cool
22:14 mj has quit IRC (Read error: 54 (Connection reset by peer))
22:15 elmex has quit IRC ("gn8")
22:15 elmex has joined #perl6
22:18 elmex has quit IRC (Client Quit)
22:34 nnunley has left
22:34 nnunley has joined #perl6
22:49 Shillo has quit IRC ("Leaving")
22:50 NathanJY has left
23:09 qmole has quit IRC (Read error: 60 (Operation timed out))
23:15 pac- has joined #perl6
23:18 pac- has left
23:41 Jonathan_ has quit IRC ("Leaving")
23:42 broquaint has joined #perl6
23:51 machack666 has joined #perl6
23:56 machack666 is there some sort of document detailing the status of pugs' support of perl 6's features, i.e., some sort of overview in checklist form so we can know which features are known to work and which ones are known not to work?  I see this as something that could help focus both development and help facilitate test writing and some of the other auxilary needs of the pugs project.
23:58 machack666 really, i'm looking for a detailed roadmap, as well as the ability to look up in tabular form what the status of (say) a particular mthod
23:58 machack666 tr
23:58 machack666 a\it i
23:58 machack666 s
23:58 machack666 (2 year olds are better than cats...)
23:59 machack666 has left

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

Perl 6 | Reference Documentation | Rakudo