Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2005-03-21

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:03 nothingmuch new file::Spec fixed it
00:08 iblechbot has joined #perl6
00:09 nothingmuch GRR!
00:09 nothingmuch r955
00:09 nothingmuch 966
00:17 jabbot pugs - 966 - Create backlinks in synopses
00:26 larsen has quit IRC ("later")
00:30 Alias_ has joined #perl6
00:47 jabbot pugs - 969 - refactor
00:47 jabbot pugs - 968 - Kwidi (2html) handles paragraphs, header
00:47 jabbot pugs - 967 - Document the backlink index
01:07 stevan hey nothingmuch, theorbtwo
01:07 * theorbtwo is not-so-much here.
01:09 stevan theorbtwo: before you fade away,.. is there a pugs equivalent to C<perl -I lib/>
01:16 theorbtwo PERL6LIB=lib pugs ...
01:16 stevan hmm
01:16 stevan ok
01:16 stevan that should work
01:17 stevan thanks :)
01:20 ingy hi stevan
01:20 stevan hey ingy
01:21 ingy it is insanely windy here
01:21 stevan no rain?
01:21 stevan oh wait
01:21 stevan you are in Taiwan?
01:22 ingy Seattle
01:22 stevan ah,.. no rain?
01:22 ingy not right now
01:22 stevan when are you going to Taiwan?
02:09 stevan any regexp people out there?
02:10 Alias_ "regexp people"?
02:10 stevan people good at regular expressions
02:10 Alias_ I'll do as a start
02:11 stevan what does this mean \Z(?!\n)
02:11 stevan I read it as:
02:11 stevan match the end of a string which is not followed by a newline
02:11 stevan is that right?
02:11 Alias_ yes
02:11 Alias_ Although it seems a little nonsensical
02:11 stevan yeah it does
02:12 stevan its from File::Spec :)
02:12 Alias_ then it's probably "smarter than you"
02:12 Alias_ :)
02:12 stevan ?
02:12 Alias_ It might mean something in a multistring context
02:12 Alias_ as in not //s
02:13 Alias_ "The end (in multi mode), but not because we hit a newline
02:13 stevan this is the whole one
02:13 stevan !/^\.{1,2}\Z(?!\n)/s
02:13 Alias_ unusual..
02:14 Alias_ It's just a "ignore the . and .. files"
02:14 stevan yeah from no_upwards
02:14 stevan I am thinking of refactoring it into a junction
02:14 Alias_ I think it's a very-safe format...
02:14 stevan $file ne ('.' & '..')
02:14 Alias_ that would probably be fine
02:14 stevan cool
02:14 Alias_ assuming it isn't slower
02:15 stevan we shall see
02:15 stevan :)
02:16 stevan Junctions are actually a very cool feature
02:17 Alias_ I'll be much happier when someone demonstrates auto-multi-threading is viable
02:17 stevan I agree, but they are still a nice feature
02:17 Alias_ I was relatively anti-perl6 until Damian mentioned that junctions will be parralelisable
02:17 Alias_ It's possibly the first thing in Perl6 that is truly shiny
02:18 stevan things like ($file ne '' && $dir ne '') into ('' ne ($file & $dir))
02:21 Alias_ purl, cpan scoreboard
02:21 Alias_ ack
02:21 chip \z is the real EOS.  \Z may match before a newline.  So \Z(?!\n) is a synonym for \z
02:22 kelan has joined #perl6
02:22 chip has quit IRC ("leaving")
02:25 kelan has left
02:26 chip has joined #perl6
02:27 stevan chip, one more question if you have a second
02:27 chip sure
02:27 stevan would this regexp !/^\.{1,2}\Z(?!\n)/s
02:27 chip that's equivalent to $_ ne '.' && $_ ne '..'
02:27 stevan yes
02:27 stevan thanks
02:28 theorbtwo has quit IRC (Connection timed out)
02:28 stevan so refactoring it into a junction would work then
02:28 Alias_ yes
02:28 dvergin has joined #perl6
02:28 stevan excellent, 2 'yes's is all I need :)
02:28 chip $_ ne ('.'&'..') ?
02:29 stevan @filenames.grep:{ $_ ne ('.' & '..') }
02:29 Alias_ steven
02:29 stevan Alias_
02:29 Alias_ steven: You can junction that too...
02:30 Alias_ if ( any( @filesnames ) eq ('.' & '..') ) {
02:30 theorbtwo has joined #perl6
02:30 stevan Alias_: very cool
02:30 Alias_ actually...
02:30 ingy stevan: in 32 hours
02:30 Alias_ I wonder if lists have an .any method that creates a junction for them
02:31 Alias_ if ( @list.any eq ('
02:31 Alias_ etc.
02:31 stevan Alias_: however that doesnt return the ones which didnt match
02:31 stevan ingy: cool
02:31 Alias_ do you care?
02:31 stevan Alias_: yes, that is what the function does
02:31 Alias_ oh
02:31 stevan File::Spec::no_upwards
02:31 stevan it removed the . and ..
02:31 Alias_ So it's a filter and not a test... right
02:31 stevan yes
02:32 Alias_ then grep is indeed what you want
02:32 stevan but that junction would work
02:32 stevan although I dont think that lists have .any, .all, etc
02:32 stevan at least I have not seen it in my Synopsis reading
02:47 jabbot pugs - 970 - begun a perl6 File::Spec hack, it is slo
02:57 ayrnieu Perl6 will still have HERE docs, yes?
03:01 Alias_ yes, but better
03:01 Alias_ tabbing ignored, from memory
03:01 Alias_ so you can indent them properly
03:03 ayrnieu yay!
03:06 ingy which is problematic with tabs
03:07 jabbot pugs - 971 - Split Kwid test data from test code.
03:07 ingy unless tabs are preconverted to 8 byte boundaries, which is also slightly problematic
03:08 ingy because what if some of the leading tabs are content and some are indentation
03:08 bd_ IIRC, it senses the indentation of the ending delimiter and strips that off the preceding lines
03:09 ingy bd_: which is about the worst way to do it
03:09 ingy because that makes it very fragile and hard to debug
03:10 ingy I think it would need to be smarter heuristic than that
03:10 bd_ like what?
03:10 ingy I've dealt with this heavily in the YAML spec
03:10 ingy which is similar
03:12 vhborja has joined #perl6
03:12 ingy well you need to detect the end marker, and then expand the tabs in the indentation and then expand just enough tabs in  the body lines and then strip off that many spaces from each
03:13 ingy and  then what do you do if one of the lines is less indented
03:13 ingy warn, error, or look for another less indented end marker
03:14 ingy ?
03:14 bd_ There's also the problem of inconsistent usage of spaces and tabs, and differing tab width settings
03:14 ingy bd_: that's what I'm talking about
03:14 bd_ presumably if it doesn't find enough indentation it should either warn and treat it as an empty line or error
03:14 bd_ looking for another end marker would be confusing
03:14 ingy tabs need to be always considered 8byte expanding
03:15 ingy and a lot of M$ tools default to 4
03:15 ingy so there is really no win here
03:15 bd_ warn if tabs are used at all? :)
03:15 ingy YAML wins by outlawing tabs altogether
03:15 ingy bd_: that is by far the best choice
03:16 ingy YAML wins by outlawing tabs altogether (for indentation)
03:16 ingy tabs are truly evil in this regard
03:16 ingy I spent 3 months discussing these issues
03:17 ingy I would simply not allow tabs for indented heredocs
03:17 ingy but many will cry foul
03:17 ingy oh well
03:17 bd_ maybe warn unless a use tabs width => 8; or similar is present?
03:17 ingy damian uses more tabs than the devil herself
03:18 bd_ additionally, if the heredoc always uses tabs consistently, there's no need to warn
03:18 bd_ it's only if it mixes tabs and spaces in the prefix it needs to warn
03:18 ingy yep
03:18 Alias_ has quit IRC (Read error: 54 (Connection reset by peer))
03:32 vhborja has quit IRC (Remote closed the connection)
03:47 jabbot pugs - 972 - A failing test for lists
03:48 luqui has joined #perl6
03:48 luqui has left "Leaving"
03:48 xern_ has quit IRC (Remote closed the connection)
03:49 xern has joined #perl6
03:50 autrijus stevan++
03:50 autrijus nothingmuch++
03:50 autrijus ingy++
03:51 autrijus gaal++
03:52 ingy :P
03:52 autrijus more than a dozen commits whilst I was asleep :)
03:53 autrijus 28 more to go till r1000
03:53 ingy pushing for 1000
03:53 ingy jinx
03:53 autrijus jinx
03:53 ingy autrijus: it's harder now that MANIFEST isn't in there ;)
03:54 ingy MANIFEST was probably 10% of checkins :D
03:55 Alias_ has joined #perl6
03:56 autrijus actually less than 50
03:56 autrijus so 5% is more like it
03:57 autrijus (but if you count the checkins that contains MANIFEST with other real changes too, then it's 92)
04:18 iblechbot has quit IRC (Connection timed out)
04:24 topher_ has quit IRC ("Leaving")
04:24 Alias_ has quit IRC ("Leaving")
04:24 Alias_ has joined #perl6
04:24 Alias_ has quit IRC (Client Quit)
04:24 Alias_ has joined #perl6
05:03 hoowa has joined #perl6
05:15 bd_ has quit IRC (Read error: 110 (Connection timed out))
05:19 rliu49 has joined #perl6
05:20 rliu49 has left
05:23 lucs Does 'perl6doc' or 'pugsdoc' exist yet?
05:27 ayrnieu lucs - no, but see 'perldoc Perl6::Pugs' in the latest release.
05:27 ayrnieu s/no/NAFAIK/
05:27 lucs , thanks.
05:27 lucs Er, OK, thanks.
05:30 lucs ayrnieu: Er, what am I supposed to see in Perl6::Pugs related to the doc format?
05:31 mugwump I'm sitting in the POD café, working on that right now in fact :)
05:31 ayrnieu ... that I didn't realise that you wanted to know about a perldoc for kwid.
05:31 lucs Ah :)
05:32 lucs cafAc?
05:32 mugwump cafe, encoding problems I guess
05:32 lucs Oh, makes sense.
05:33 revdiablo I remember seeing someone in here paste the url to a list of perl6 operators generated by a script a week or so ago. anyone know what I'm talking about?
05:34 mugwump the periodic table of perl 6 operators, perhaps?  that was a lot older though
05:34 revdiablo no, it was an HTML table
05:35 revdiablo it's driving me crazy, because I remember looking at it, but not much else about it. :-/
05:35 lucs revdiablo: I remember that too. Maybe you can check the channel logs?
05:35 lucs (See topic)
05:35 revdiablo I looked through the logs... couldn't think of what to search for
05:39 revdiablo found it: http://desert-island.dynodns.net/perl/prims.html
05:46 Alias_ has left "Leaving"
06:02 hoowa2 has joined #perl6
06:02 hoowa has quit IRC (Read error: 104 (Connection reset by peer))
06:06 hoowa2 is now known as hoowa
06:07 cm has quit IRC (Read error: 104 (Connection reset by peer))
06:15 scw_ has joined #perl6
06:16 scw has quit IRC (Read error: 54 (Connection reset by peer))
06:18 luqui has joined #perl6
06:18 luqui has left "Leaving"
06:23 nothingmuch work &
06:23 nothingmuch has quit IRC ()
06:34 dvergin 'Nite all. See you again soon.
06:34 hoowa has quit IRC (Read error: 104 (Connection reset by peer))
06:34 dvergin has left "Going to bed."
06:51 nothingmuch has joined #perl6
06:54 nothingmuch morning
07:09 metaperl has quit IRC (Read error: 110 (Connection timed out))
07:11 saorge has quit IRC ("ERC Version 5.0.1 $Revision: 1.726.2.3 $ (IRC client for Emacs)")
07:23 gaal has left
07:33 masak has joined #perl6
07:53 zuulvin has joined #perl6
08:03 iblechbot has joined #perl6
08:10 zuulvin has quit IRC ("Leaving")
08:14 malaire has joined #perl6
08:18 Khisanth has joined #perl6
08:18 larsen has joined #perl6
08:21 zuulvin has joined #perl6
08:33 lightstep has joined #perl6
08:34 codesnik has quit IRC (Read error: 60 (Operation timed out))
08:39 integral has quit IRC ("Bah")
08:49 luqui has joined #perl6
08:49 scw_ has quit IRC (Read error: 104 (Connection reset by peer))
08:49 luqui has left "Leaving"
08:55 elmex has joined #perl6
08:59 lightstep so partialApply or curry?
08:59 nothingmuch ... continued discussion in public chat, so it'd be logged
08:59 nothingmuch about the implementation of currying
08:59 nothingmuch curry's [VAL]
08:59 lightstep it's the partial parameter list
09:00 lightstep but the return value should be a Val, not a VSub
09:00 lightstep so it'd be a thunk
09:00 nothingmuch where does the parameter list get into doApply? brb, going to read this a second
09:01 nothingmuch because doApply already has it's args split up
09:01 nothingmuch to invocants and args
09:01 nothingmuch line 449 of Eval.hs
09:03 lightstep i think we should use apply, not doApply
09:04 nothingmuch sorry, keep getting distracted
09:04 nothingmuch let [subExp, Syn "invs" invs, Syn "args" args] = exp
09:04 nothingmuch how does this know to split it up?
09:04 lightstep magically
09:05 lightstep it sees that the list is of length 2, and that the 2nd and 3rd elements have the required form, and vinds
09:05 nothingmuch hah
09:05 lightstep if exp isn't perfect, the program crashes
09:05 lightstep i don't know how to create a "wildcard" sub, that would catch everything
09:06 nothingmuch ok, i think we don't want that anyway
09:06 nothingmuch because that would make curries of curries unverified
09:06 nothingmuch at .assuming time
09:06 nothingmuch i think we construct a new VSub whose params are those that have not yet been bound
09:06 lightstep oh
09:07 nothingmuch that way implementation is more, err, "correct"
09:07 nothingmuch i think
09:07 nothingmuch perhaps more work, but i'm not sure if harder
09:07 lightstep yeah
09:07 lightstep we'lll take out those the sindSomeParams took?
09:07 nothingmuch uhuh
09:07 nothingmuch i think we might want to make the state a bit smarter
09:07 nothingmuch make it a pair
09:08 nothingmuch ([ <binding> ], [remaining]])
09:08 nothingmuch wow, i'm so consistent ;-)
09:08 lightstep it doesn't have to
09:08 nothingmuch ([(Param, Exp)],[Param])
09:08 nothingmuch im an oop head, so that seems simple to me =)
09:08 lightstep we can make pugs ineffcient but working, without touching bindSomeParams
09:09 nothingmuch i think that it doesn'
09:09 lightstep filtering them out ourselves
09:09 nothingmuch t really matter
09:09 nothingmuch bindSomeParams is very sterile
09:09 nothingmuch it's new, and it's not used yet
09:09 nothingmuch ca. svn up an hour ago
09:10 lightstep ok
09:10 nothingmuch so i think it's better we get it right
09:10 nothingmuch because we can't be cheapish either, with takeWhile etc
09:10 nothingmuch the process needs to be more like a merge sort, since optional params may be litterred in there
09:11 nothingmuch one minute, test run at work needs prodding
09:11 lightstep lists are not a good data structure for this
09:12 gaal has joined #perl6
09:13 nothingmuch actually, why not?
09:13 nothingmuch they are parted in O(N) time
09:13 lightstep yes
09:14 lightstep Control.Monad.Writer seems cool
09:14 lightstep but i din't know if it would be the mose useful here
09:15 nothingmuch it looks scary for me
09:15 nothingmuch i think O(N) shouldn't worry us now
09:15 nothingmuch but now anything but slurpy should be OK
09:15 nothingmuch since lists are lists
09:15 nothingmuch in the past passing sub(@biglist) would have been heavy in this case
09:15 nothingmuch perhaps the bindThing functions should be made more closed boxy
09:16 nothingmuch and they take a Binding type, whatever that is
09:16 nothingmuch and create the bindings themselves
09:16 nothingmuch but i think this optimisation is a bit big for now ;-)
09:16 nothingmuch so anyway =)
09:17 lightstep since bindArray and bindHash don't return the non-bound parameters, i don't see how bindSomeParams can do it prettily
09:18 lightstep btw, x <- return y is the same as let x = y
09:21 nothingmuch i think for now we just shove a filter into bindSomeParams
09:21 nothingmuch and take care of it later
09:21 lightstep brb
09:21 nothingmuch but we shove the complexity down one layer
09:21 nothingmuch arguably a good thing, since it is not our concern
09:22 elmex hi
09:22 nothingmuch hi!
09:24 nothingmuch lambdaheads: are there any set operations in haskell, somewhere, like prelude?
09:24 nothingmuch i'd like to intersect two lists
09:26 malaire have you checked Data.List ?
09:27 malaire there's also Data.Set (in GHC 6.4 at least)
09:28 nothingmuch i'll look at those
09:29 malaire there is Data.Set.intersection, and Data.Set.fromList to create Sets from lists
09:30 nothingmuch yeah, it looks good
09:30 nothingmuch malaire++
09:32 malaire toList $ intersection (fromList [1,2,3]) (fromList [2,3,4]) -- and finally toList to get list back
09:32 lightstep ack
09:32 lightstep also List.intersect
09:33 nothingmuch Data.List intersect seems good
09:33 nothingmuch    let binding = concat [prebound, boundInv, boundNamed, boundReq, boundOpt, boundHash, boundArray, boundScalar]
09:33 nothingmuch    let remaining = (map fst inding) `intersect` params
09:33 nothingmuch does that look sane?
09:33 nothingmuch    
09:33 nothingmuch    return $ (binding, remaining)
09:34 nothingmuch s/inding/binding/;
09:34 malaire Haskell has far too many libraries... - One needs to learn quite many of them to use Haskell efficiently (Quite like Java :)
09:35 lightstep no sane
09:35 lightstep you want map fst binding \\ params
09:35 nothingmuch malaire: it's nicer than having a set of square wheels which you wrote yourself, handy for every situation ;-)
09:35 lightstep difference, not intersection
09:35 lightstep err, the other way around
09:35 lightstep params \\ map fst binding
09:36 nothingmuch oh, right
09:36 nothingmuch what we already have is the intersection
09:36 nothingmuch *blush*
09:37 lightstep so SubRoutine or SubBlock?
09:37 nothingmuch the curried return?
09:37 nothingmuch i think it's a subRoutine
09:38 lightstep and the name? "<anon>"? "oldSubName-curried"?
09:38 nothingmuch anon
09:39 nothingmuch you can have a bajillion curries of curries of the same sub
09:39 nothingmuch or maybe oldSubName, period
09:40 lightstep ick, multisubs
09:40 nothingmuch indeed ick
09:40 nothingmuch i don't think we want to deal with type disambiguation yet
09:40 lightstep howcome they have a parameter list?
09:41 fayland has joined #perl6
09:41 nothingmuch what do you mean?
09:41 lightstep do all have the same number of parameters?
09:41 nothingmuch all multisub?
09:41 nothingmuch s
09:41 nothingmuch they have several invocants, and n parameters
09:41 lightstep do all multisubs with the same name have the same number of parameters and the same return context?
09:41 nothingmuch no
09:42 nothingmuch all multisubs have a distinct signature
09:42 nothingmuch which is arguably the name
09:42 lightstep so Sub is not good
09:42 nothingmuch and is the parameters, the invocants (with type constraints), the parameters, and the return context
09:42 nothingmuch isn't Sub capable of that?
09:43 nothingmuch or do you mean not good in the 'is wrong' sense, instead of the 'won't work here' sense
09:43 lightstep or do we have separate Sub objects for the different subs in a multisub?
09:43 nothingmuch i have no clue
09:44 lightstep perlbot: nopaste
09:44 perlbot Paste your code here and #<channel> will be able to view it: http://sial.org/pbot/<channel>
09:44 pasteling "lightstep" at 212.235.51.245 pasted "some code to facilitate the discussion" (12 lines, 288B) at http://sial.org/pbot/8432
09:45 nothingmuch i think it would look like, err
09:45 nothingmuch copying isMulti, and copying subAssoc, and subReturns
09:46 nothingmuch etc etc
09:46 nothingmuch maybe even subName
09:46 lightstep ok, cool
09:46 nothingmuch override only subType, perhaps, i don't know what it means, but that's where we're sticking things into, right?
09:46 nothingmuch and override subParams with the snd (bindSomeParams ....)
09:46 pasteling "lightstep" at 212.235.51.245 pasted "some code to facilitate the discussion" (7 lines, 153B) at http://sial.org/pbot/8433
09:47 nothingmuch and make it's subFun a (\x -> bindSomeParams ... )
09:47 nothingmuch with the original params and the partial binding
09:47 lightstep oh, yes, i forgot the subFun
09:47 nothingmuch isn't it supposed to return a Val?
09:48 nothingmuch which is actually, err, just VSub in another type?
09:48 lightstep i thought about it
09:48 lightstep and i was mistaken: we create a new sub from an old sub, in a pure operation
09:49 nothingmuch i'd like an explanation of each one's pro/con, i don't think i understand them yet
09:49 lightstep the thunk is in subFun, not the result of currySub
09:49 nothingmuch what is a thunk?
09:49 lightstep we get a sub
09:49 lightstep a thunk is a value that holds a computation to be run later
09:50 lightstep (the computation is only thunk when creating the value, not performed)
09:50 nothingmuch ah
09:50 nothingmuch a sort of self-evaluating expr?
09:50 nothingmuch ah
09:50 nothingmuch hehe
09:50 lightstep almost. more like an expr-containing value
09:50 nothingmuch this is to facilitate the concept of imperative execution in a lazy language?
09:51 lightstep yes
09:51 nothingmuch ok,
09:51 nothingmuch so why is our currying not a sub?
09:51 lightstep and also useful for p6 infinite lists
09:51 nothingmuch thunk
09:52 lightstep the result of currySub is a regular sub. being a sub delays computation by itself (like \x -> sib 6 + 8) delays the computation
09:52 nothingmuch so if we make it a thunk it will delay the ...
09:52 nothingmuch no op that would be returning the sub?
09:53 lightstep returning a thunk will cause the delay of the (pure) creation of the Sub object
09:53 lightstep yes
09:53 nothingmuch ok
09:53 lightstep VThunk (MkThunk (return x)) == x
09:55 nothingmuch what exactly is subType?
09:55 lightstep SubBlock or SubRoutine (also 2 more, in AST.hs)
09:56 nothingmuch what's the difference in meaning?
09:56 lightstep dunno yet
09:56 nothingmuch bbiab
09:57 nothingmuch food for thought:
09:57 nothingmuch doApply :: Env -> VSub -> [Exp] -> [Exp] -> Eval Val
09:57 nothingmuch apply :: VSub -> [Exp] -> [Exp] -> Eval Val
09:57 nothingmuch how do these types related to currySub?
09:57 nothingmuch obviously env is delayed
09:57 nothingmuch but invs, and args should be split up
09:57 nothingmuch *poof*
10:04 nothingmuch ok, back
10:05 lightstep so how is the splitting done?
10:05 nothingmuch i have no clue
10:05 nothingmuch but it's done somewhere in reduce
10:06 nothingmuch line 449 of Eval.hs
10:06 nothingmuch i have a speculation
10:06 nothingmuch that they are already split before that line
10:07 nothingmuch brb, someone needs help compiling
10:07 lightstep Parser.hs must be it. it's the one that creates Exps
10:09 lightstep processFormaps, line 714 of Parser.hs
10:09 iblechbot has quit IRC (Operation timed out)
10:17 fayland has quit IRC ()
10:25 pasteling "lightstep" at 212.235.51.245 pasted "another version" (39 lines, 1.5K) at http://sial.org/pbot/8434
10:29 marcusT has joined #perl6
10:30 nothingmuch by haking doApply, you mean breaking it to two pieces?
10:30 nothingmuch i'll do that if you want
10:30 nothingmuch damn, brb agian
10:33 lightstep yes
10:33 lightstep but in the paste, there is already the change to doApply
10:34 lightstep except my signature of doApplyBinding is broken (it should be [(Param, Exp)] -> Env -> VSub -> Eval Val
10:34 lightstep and probably there's an unuse parameter there too
10:35 lightstep but currySub needs the new, improved, futuristic bindSomeParams
10:35 lightstep in addition to a name change
10:38 lightstep and splitParams should be done too, ut this is a change in Parse.hs
10:38 lightstep Parser.hs, rather
10:41 nothingmuch ug
10:41 nothingmuch i have the new improved bindSomeParams implementeds
10:41 nothingmuch what is splitParams?
10:41 nothingmuch the invs<->args partition?
10:44 lightstep yes
10:44 lightstep it's really funny, Parser.hs works with 2-element lists instead of pair
10:44 lightstep bad, bad autrijus
10:47 lightstep so you'll commint, and i'll do the Parser.hs change?
10:50 nothingmuch i think
10:50 nothingmuch i've just become busy
10:50 nothingmuch the story:
10:50 nothingmuch so i'll do it when i'm done
10:50 nothingmuch our OSF box died several months ago
10:50 nothingmuch now i have to port all the changes to the product from the last 3 months
10:50 nothingmuch and I just hit a big change
10:50 lightstep ok
10:55 flw has joined #perl6
10:59 bd_ has joined #perl6
11:01 lightstep should all the test pass?
11:12 malaire has quit IRC ("Chatzilla 0.9.67 [Firefox 1.0/20041107]")
11:20 iblechbot has joined #perl6
11:20 lightstep has quit IRC (Read error: 110 (Connection timed out))
11:24 flw has quit IRC (Read error: 110 (Connection timed out))
11:24 rliu49 has joined #perl6
11:47 elmex yaho
11:47 * elmex dances a little bit
11:49 jabbot pugs - 975 -  r1424@speights:  samv | 2005-03-21 22:4
11:49 jabbot pugs - 974 - * Refresh AUTHORS and META.yml; bump ver
11:49 jabbot pugs - 973 - * Module::Install now groks vstrings, so
11:49 * elmex begins to cry and hit his head agains the table
11:50 elmex jabbot++
11:50 nothingmuch you seem err, a bit, bipolar
11:50 nothingmuch elmex?
11:50 elmex !?
11:51 elmex i love pugs
11:55 metaperl has joined #perl6
11:55 rliu49 has quit IRC (Read error: 145 (Connection timed out))
11:56 elmex i wonder when the string semantics will be discussed and finished
12:04 lightstep has joined #perl6
12:09 jabbot pugs - 976 - fix 2-element lists to pairs
12:10 nothingmuch lightstep: i'm having some issues
12:11 nothingmuch perlbot nopaste
12:11 perlbot Paste your code here and #<channel> will be able to view it: http://sial.org/pbot/<channel>
12:11 pasteling "nothingmuch" at 212.143.92.226 pasted "currySub" (63 lines, 2.7K) at http://sial.org/pbot/8437
12:11 nothingmuch this is as far as I got
12:11 nothingmuch binding' <- verifyBindings was done
12:11 nothingmuch but it needs to use the params of the original underlying sub
12:12 nothingmuch that is, perhaps we need a curriedSub value type, that contains the subParams of the bottomest one
12:12 nothingmuch alternatively, we can do, as you proposed, the list difference at the curry level
12:12 nothingmuch always keep the subParams list as the original
12:13 nothingmuch and then bindSomeParams binding (params // (map fst binding))
12:13 nothingmuch in the closure itself
12:13 nothingmuch as for splitParams params - i don't know what it does
12:13 nothingmuch i think it's not our responsibility
12:14 nothingmuch we should delegate to whoever does it for apply
12:15 lightstep yeah
12:15 lightstep i don't think we need a curried sub type
12:15 lightstep after all, it's indistinguishable from a block
12:15 nothingmuch ok, so i'm moving the param difference into the curry apply
12:15 sahadev has quit IRC ("Client exiting")
12:17 lightstep the distinguishing is based on "appearence"
12:17 lightstep the line 711 in Parser.hs
12:17 lightstep there, it parses a list of lists of names
12:18 lightstep like a1, a2, a3 : b1, b2, b3 : c1, c2, c3
12:19 lightstep processFormals ensures there are only 2
12:19 nothingmuch that's for separating invs from args, yes?
12:20 lightstep yes
12:22 nothingmuch btw, why not currySub :: VSub -> [Exp] -> [Exp] -> MaybeError VSub, but [Val] -> [Val]?
12:22 nothingmuch shyte
12:23 nothingmuch when currying curried subs we need access either to the already bound list
12:23 theorbtwo Mornin, all.
12:23 nothingmuch or to the remaining params
12:23 nothingmuch hola theorbtwo
12:23 nothingmuch currySub sub invs args = do
12:23 nothingmuch    binding <- bindSomeParams [] (subParams sub) (map Val invs) (map Val args)
12:23 lightstep nothingmuch, not really
12:23 nothingmuch this needs to keep binding on top of the partial binding
12:23 nothingmuch if wrapping a wrapped sub
12:24 nothingmuch if currying a curried sub
12:24 nothingmuch because there's the default value issue
12:24 lightstep you don't care how the sub you're currying was constructed
12:24 lightstep you only need its signature
12:26 lightstep doesn't bindSomeParams handle default values?
12:27 nothingmuch err, wait
12:27 nothingmuch i mean things like foo($x, +$y = $x)
12:27 nothingmuch this becomes very tricky
12:27 lightstep why?
12:27 jabbot lightstep: why is the make command 'ghc --make -o pugs src/Main.hs pcre.o'
12:27 nothingmuch tricksy nasssty larry
12:28 nothingmuch lightstep: err
12:28 lightstep jabbot: forget why
12:28 jabbot lightstep: ok
12:28 nothingmuch lightstep: /ignore jabbot
12:28 nothingmuch =)
12:29 lightstep i though that calling bindSomeParams with few exprs, then with some more, then some more, etc, is equivalent to calling it with the concatenated list
12:32 lightstep in which case, the doubly-curried sub can be calledwith the first assumed arg list, then the second, then the real one that the user specified
12:36 nothingmuch err, i'mnot sure
12:36 nothingmuch let me think about it a while
12:41 * nothingmuch is hating work today
12:45 metaperl has quit IRC (Read error: 145 (Connection timed out))
12:48 nothingmuch lightstep: can you figure out where ($x, +$y = $x) is done?
12:50 lightstep can you clarify?
12:50 lightstep is it a parameter list?
12:50 nothingmuch yes
12:50 nothingmuch sub foo ($x, +$y = $x)
12:51 nothingmuch means that $x is mandatory
12:51 nothingmuch and $y is optional
12:51 nothingmuch and it's default value is $x
12:51 autrijus yo!
12:51 autrijus I just experimented with unoptimized and optimized compiler backends
12:51 nothingmuch autrijus, you can answer this
12:51 autrijus with mandel.p6
12:52 nothingmuch sounds interesting
12:52 lightstep ruleSubParam (Parser.hs, line 193) calls ruleFormalParam, in which `+' is parsed
12:52 lightstep is mandel.p6 fast?
12:52 nothingmuch i don't mean the parsing, i mean the binding
12:53 autrijus Eval.hs line 677
12:53 autrijus            Parens exp  -> local fixEnv $ enterLex pad $ expToVal prm exp
12:53 autrijus that does the defaulting.
12:53 autrijus ok. some numbers (identical output)
12:53 autrijus [not|autrijus]~/work/pugs/out$ time ./interpreted.out
12:53 autrijus 69.928u 0.233s 1:17.29 90.7%    2370+477k 0+0io 0pf+0w
12:53 autrijus [not|autrijus]~/work/pugs/out$ time ./unoptimized.out
12:53 autrijus 0.685u 0.007s 0:01.35 50.3%     2392+476k 0+0io 0pf+0w
12:53 autrijus [not|autrijus]~/work/pugs/out$ time ./optimized.out
12:53 autrijus 0.170u 0.008s 0:00.39 43.5%     2339+455k 0+0io 0pf+0w
12:53 nothingmuch ah
12:53 nothingmuch so that's done by apply, and we don't care
12:54 autrijus yup.
12:54 autrijus I'm pretty psyched by the numbers.
12:54 nothingmuch lightstep++ # was right
12:54 nothingmuch my god
12:54 lightstep autrijus++
12:54 lightstep autrijus++
12:54 lightstep autrijus++
12:55 lumi Hi
12:55 nothingmuch hola lumi
12:55 lumi And wow
12:55 nothingmuch this is the haskell backend?
12:55 autrijus yes.
12:56 autrijus I can't do parrot backend without help.
12:56 nothingmuch could you explain how it stores the AST?
12:56 autrijus and it's all still in the Eval monad.
12:57 nothingmuch lightstep: why env <- get in the currySub's returned closure?
12:57 autrijus (meaning, could be faster)
12:57 nothingmuch how does this compare to p5?
12:58 autrijus anyone want to do mandel.p5?
12:58 ozone autrijus: pwhoar
12:58 autrijus nvm I'll do it
12:58 ozone autrijus: you're outputting haskell, and compiling with GHC?
12:58 masak what do the numbers mean?
12:58 masak something unoptimized is 1000x faster than something interpreted
12:59 autrijus ozone: yeah
12:59 masak but what?
12:59 jabbot masak: but what is replacing it is really just Pod ;)
12:59 lightstep nothingmuch, 'caue doApplyBinding has an Env as a parameter. we can't call apply which'll do it for us, since is always applies everything
12:59 nothingmuch masak: pugscc outputs
12:59 autrijus [not|autrijus]~/work/pugs/examples$ time perl p5
12:59 autrijus 0.061u 0.000s 0:00.14 42.8%     9+362k 0+0io 0pf+0w
12:59 nothingmuch ah, ok
12:59 autrijus so, 3x slower than p5.
12:59 lightstep nothingmuch, i thought that this was the best point to break the sequence (since apply and doApply are already used)
12:59 autrijus (but that's because we're still in the slowish Eval monad)
13:00 ozone autrijus: are you using any GHC exts, like unboxed ints etc?
13:00 autrijus (and still using Val)
13:00 autrijus ozone: no, not at all, and all the vals are still dynamically casted
13:00 ozone that's mighty impressive, even though it's sort of expected :)
13:00 autrijus i.e. no type annotations
13:00 nothingmuch that's pretty good
13:00 autrijus http://autrijus.org/mandel.ast
13:01 ozone autrijus: sheesh
13:01 ozone autrijus: you might have a very good parrot vs ghc fight on your hands later :)
13:01 autrijus heh heh :)
13:01 autrijus I'm not really using primitive haskell :)
13:01 autrijus I'm still using the "op2" etc in Prim.hs
13:02 autrijus which means the semantics are guaranteed to be right
13:02 autrijus but also means it's slow.
13:02 autrijus also newsym generation needs work
13:02 autrijus can't just replace sigils with _
13:03 ozone autrijus: right
13:03 ozone if you want speed, talk to dons
13:03 ozone he'll be very happy to help
13:03 autrijus ok.
13:03 ozone he's done far too much evil stuff in GHC with unboxed types and unsafeCoerce#
13:03 autrijus but considering this is a two-hour hack or so
13:03 autrijus I'm pretty happy already
13:04 ozone autrijus: very impressive
13:05 ozone then again, it is in haskell i suppose :)
13:05 ozone (not to take away any credit from you; you know what i mean)
13:05 autrijus yup :)
13:06 * autrijus hugs [| |]
13:06 ozone what are you using QQs for?
13:06 scw has joined #perl6
13:06 autrijus TH is really da bomb.
13:06 autrijus uh, code generation.
13:06 ozone ah!
13:06 autrijus haskell code generation.
13:06 ozone ah ah
13:06 ozone of course
13:06 autrijus of course!
13:06 ozone it all makes sense now
13:06 Limbic_Region has joined #perl6
13:06 autrijus compile (Val (VRat v)) = [| VRat $v |]
13:06 * autrijus grins
13:06 ozone autrijus: you really should submit a paper to haskell workshop
13:07 ozone if they don't accept it, i'll beat them personally
13:07 hlafarge has joined #perl6
13:07 autrijus ok. I will learn how to write ACM format papers :)
13:08 lightstep to TMR
13:08 ozone autrijus: eh, if you can write a perl 6 compiler, you can write an ACM format paper ;)
13:09 autrijus those require different capabilities :)
13:09 autrijus but this is not really a perl 6 compiler. it's more of a static perl 6 compiler.
13:09 autrijus we don't do BEGIN{} or parser reshaping yet.
13:09 autrijus that will be terribly difficult.
13:09 autrijus would need more caffeine.
13:09 * ozone suspects autrijus is dons's long lost twin
13:10 autrijus heh heh :)
13:12 * autrijus reads backlogs
13:14 nothingmuch bah
13:14 shapr has joined #perl6
13:15 shapr I feel a disturbance in the force...
13:15 shapr what happened?
13:15 nothingmuch hello shapr
13:15 nothingmuch i think i have a solution
13:15 shapr hiya nothingmuch
13:15 nothingmuch pugscc haskell output is nearly as fast as p5
13:15 nothingmuch when optimized
13:15 shapr I have a problem, you have a solution, let's have lunch!
13:15 nothingmuch i have a solution to many of my own problems ;-)
13:16 nothingmuch err, that didn't come out right
13:16 nothingmuch i have one solution, many problems
13:16 nothingmuch anyway, lightstep, autrijus
13:16 lightstep yep?
13:16 nothingmuch currySub returns a sub { subType = subCurried, subFun = Curry fun
13:17 nothingmuch applyExp bound (Curry f) = f bound
13:17 nothingmuch then we don't have to resplit bound params
13:17 nothingmuch it becomes a simple iteration
13:18 nothingmuch now, even funnier is to do it at apply on a curried sub
13:18 lightstep but then you lose all parameter-checking
13:18 nothingmuch and let there be curry folding without creating new pads
13:18 nothingmuch no i don't
13:18 nothingmuch f bound does that
13:18 nothingmuch and eventually it calls doApply with the real sub
13:18 nothingmuch and just before it calls verifyBindings
13:19 nothingmuch i'll try to draft this up
13:19 lightstep bbiab
13:20 nothingmuch how do i do type matching on a sub's subType at the function level?
13:20 nothingmuch ciao
13:22 nothingmuch anyone?
13:22 alexe has joined #perl6
13:23 shapr alexe: are you really irc'ing as root?
13:25 alexe ?
13:25 autrijus 21:22 -!- alexe [~root@221.0.31.74] has joined #perl6
13:26 shapr It's safer to irc as a plain old user.
13:26 alexe thanks
13:26 malaire has joined #perl6
13:27 alexe but which irc client has security problem?
13:28 nothingmuch alexe: it's conceivable, and even more probable
13:28 nothingmuch since people won't bother securing IRC clients as much as servers
13:32 Limbic_Region autrijus - http://www.perlmonks.org/index.pl?node_id=441199 # just a press release from me on your press release
13:33 autrijus thank you.
13:33 stevan morning all
13:33 nothingmuch hola stevan
13:33 stevan hey nadda-mucho
13:34 autrijus stevan: check out the numbers! :)
13:34 stevan the speed?
13:34 stevan I just saw that
13:34 * stevan reads the backlogs with coffee every morning :)
13:34 autrijus =)
13:34 stevan very very very vool
13:34 stevan autrijus++ # as if you need any more :P
13:35 gaal i get a 25% speed improvement on 'make test' after 'make optimized'.
13:35 autrijus that actually means pugs is ok for production use, speed-wise, for my clients :)
13:35 shapr w00
13:35 * shapr waves the lambda and camel pom-poms
13:35 castaway has joined #perl6
13:35 * nothingmuch ponders a camel posing as a lambda as the p6 logo
13:35 * castaway lurks
13:35 theorbtwo Allo, love.
13:36 stevan autrijus: all I need now is mod_pugs and I will be happy to use it in prod too :)
13:36 nothingmuch it could put it's head in a funny way
13:36 * shapr shapes
13:36 * castaway hugs theorbtwo.
13:36 castaway Just wondering where you're active :)
13:36 autrijus stevan: there is a mod_haskell :)
13:36 autrijus so... there ya go :)
13:36 stevan autrijus: yummy
13:36 theorbtwo Head looking up, leaning on it's front legs, with rear legs placed inline with the body.
13:37 theorbtwo ...would look like a lambda with a hump.
13:37 * theorbtwo is active nowhere at present.
13:37 shapr theorbtwo: can you sketch that?
13:37 shapr oh, I think I get it.
13:37 nothingmuch theorbtwo: uhuh, sort of
13:37 theorbtwo Think of a human leaning on their arms and stretching their back, then translate.
13:37 nothingmuch or nicer
13:37 shapr yeah, I think I got it now.
13:38 shapr Not sure I can draw it though.
13:38 * theorbtwo can't draw.
13:38 shapr I've always been able to draw, dunno why. I've always been able to sing too. Programming has always been hard for me, that's why it's more fun.
13:39 stevan autrijus: I started working on oo tests *hint* *hint*
13:39 jabbot pugs - 978 - * convert more things from Prim to  from
13:39 jabbot pugs - 977 - goto tests parsefail again
13:39 castaway different brain, shapr
13:39 autrijus stevan: sure :)
13:39 theorbtwo Oh, whoever was looking at the prims.html on d-i, it's produced with utils/grokprims.pl
13:40 shapr castaway: yeah, probably has something to do with the ritalin prescription as well :-)
13:40 shapr Programming is the best of everything, it's like executable poetry.
13:40 stevan autrijus: I am also talking/working with Darren Duncan to write more
13:41 autrijus eggcelent!
13:41 autrijus on 23th mugwump and ingy will arrive
13:41 shapr Programming is the magic executable fridge poetry, it is machines made of thought, fueled by ideas.
13:41 stevan my plan is to have a fully loaded OO test suite before you even begin work on that part
13:41 autrijus and we'll work on pugs object metamodel :)
13:42 shapr Or maybe made of ideas, fueled by thought? whatever... fueled by hard work, which I should start doing now.
13:42 kungfuftr mugwump's going to tapei... yeah?
13:42 hcchien yes
13:43 autrijus yup
13:43 kungfuftr ah, give him a nice big slap from me... the goit
13:44 stevan autrijus: on a totally different note, I have found an issue while port/hacking the FileSpec stuff
13:44 stevan pugs -e 'sub foo (*@f) { return pop(@f) }; say foo(1, 2, 3);'
13:44 stevan gives me this error: Fail: cannot modify a constant item: VArray (MkArray [VInt 1,VInt 2,VInt 3])
13:44 autrijus yup
13:44 autrijus I really need to get IType done.
13:45 stevan ok
13:45 stevan also, should I un-TODO the tests again?
13:45 stevan I have some time to kill before $work actually starts
13:45 autrijus yup, please do so
13:45 stevan ok
13:45 autrijus and audit todo_s that you feel are 1)wrong 2)important a bit
13:46 stevan ok
13:47 lightstep wtf? SubType's order really matters?
13:47 lightstep does it mean anything?
13:48 autrijus lightstep: well, yeah
13:48 lightstep "more named"?
13:48 autrijus there's bares, pointys, subs
13:48 autrijus and each has different semantics
13:48 autrijus the first two doesn't even havescope
13:54 boch\off is now known as boch
13:58 nothingmuch perlbot nopaste
13:58 perlbot Paste your code here and #<channel> will be able to view it: http://sial.org/pbot/<channel>
13:58 lightstep yay, code from nothingmuch!
13:58 pasteling "nothingmuch" at 212.143.92.226 pasted "hypothetical curry unwrapping" (67 lines, 2.8K) at http://sial.org/pbot/8439
13:59 nothingmuch is doApplyBindings sane?
13:59 stevan autrijus: since I am going through each test anyway I am building you a nice TODO list as well
13:59 autrijus danke!
14:00 stevan yah wilkommen
14:00 nothingmuch i'm concerned about this: | subType = SubCurried = (subFun sub) env bindings
14:00 autrijus er
14:00 autrijus | subType == SubCurried
14:00 autrijus my typo. sorry.
14:00 nothingmuch ok
14:00 autrijus otherwise sane.
14:01 * nothingmuch tries to compile
14:04 lightstep it looks like a type error: fun has 2 params and should have only one
14:04 nothingmuch where do i defines subCurried?
14:04 lightstep but perhaps the definition of Exp is not cached right in my head
14:04 nothingmuch errm
14:04 nothingmuch so how do i get env <- ask to happen at the right time?
14:04 autrijus line 381 ASt.hs
14:04 lightstep line 381 in AST.hs
14:04 autrijus is how you define subcurried
14:04 autrijus er.
14:04 autrijus brb :)
14:04 lightstep i'm always the second
14:05 shapr has quit IRC ("worktime!")
14:07 nothingmuch well, i've got to go
14:07 nothingmuch i'll try to make progress at home
14:07 nothingmuch actually, why is env <- ask done out of doApply?
14:07 nothingmuch shouldn't our new doApplyBindings take care of it?
14:08 lightstep it should
14:08 lightstep but as it goes, doApply is called by itself in some smelly, complicated piece of code
14:09 lightstep and doApply and doApplyBinding have almost the same code
14:09 nothingmuch so how do i pass env through the curry closures?
14:09 lightstep so it made sense to split like that
14:09 lightstep you can extract the env before creating the new sub, and enclose it in fun
14:10 nothingmuch ride is here, ciao!
14:10 nothingmuch has quit IRC ()
14:10 safrican has joined #perl6
14:15 alexe has left
14:49 sahadev has joined #perl6
14:58 nothingmuch has joined #perl6
15:05 nothingmuch evening
15:06 lightstep hi
15:08 webmind has quit IRC ("Exit, stage left...")
15:16 nothingmuch compiling is sooo sloooow
15:17 castaway get a faster machine!
15:17 nothingmuch i'm etherwaking one up just now
15:18 masak good thing at least that computers are becoming faster to accomodate for our increasingly complex programming languages :)
15:18 castaway :)
15:19 castaway hmm, could set one up that does nothing but compile the thing
15:19 masak all the time? :)
15:19 castaway yup
15:20 masak wouldn't once be enough?
15:20 castaway no cos it keeps changing
15:20 masak faster than it can compile? oh my
15:20 castaway loop { grab newest from cvs; compile; save somewhere; redo }
15:20 castaway (or some such)
15:21 nothingmuch i had a box at work do that
15:21 castaway why past tense?
15:22 nothingmuch while true; do if [ `svn up | wc -l` -gt 1 ]; then perl Makefile.PL && make && make test; fi ; sleep 600; done
15:22 nothingmuch because it's at wor,
15:22 gaal nm: better throw in a make clean too
15:22 nothingmuch i have to ssh 3 times just to bypass the fw
15:22 nothingmuch it's not fun
15:22 castaway I see
15:22 nothingmuch err, make that make optimized
15:22 nothingmuch gaal: why make clean?
15:22 gaal paranoia?
15:22 * PerlJam waits for someone to setup a pugs smoke-testing sever
15:22 nothingmuch heh
15:23 nothingmuch PerlJam: i can set a box up, if you like
15:23 nothingmuch we are thinking of synching it with the backlink format
15:23 nothingmuch i think i'll try to use vimcolors for the output
15:23 nothingmuch and color each line red or green as reported by fail or ok
15:23 nothingmuch for the most recent rev
15:24 gaal http://fibonaci.babylonia.flatirons.org/perl6.vim ?
15:24 gaal ah
15:24 nothingmuch gaal: exactly
15:25 gaal nm: i hope to have time tomorrow for some hacking. is the yaml ouput format still in vogue?
15:25 nothingmuch i think so
15:25 nothingmuch i can just hook up with Test::Harness::Straps directly for that, methinks
15:26 nothingmuch it'll update the index and the test status for each revision
15:26 gaal feel free to beat me to it :)
15:28 nothingmuch ok =)
15:28 nothingmuch first i want to get currying done
15:28 nothingmuch the haskell type system is, err, teaching me itself
15:28 nothingmuch read: giving me a hard time
15:30 gaal look on the bright side, you'll find OCaml easy.
15:32 nothingmuch hah
15:32 nothingmuch wooow
15:32 nothingmuch the tests pass!
15:33 nothingmuch tres cool
15:33 nothingmuch autrijus: how do i implement .assuming?
15:33 autrijus just look at "goto"
15:33 autrijus &goto
15:33 autrijus in Eval.hs
15:33 autrijus and go from there
15:34 autrijus I'll abstract away these two Bloody Hacks
15:34 nothingmuch ok
15:34 gaal um, i broke the goto test again earlier
15:34 gaal i mean i didn't break it, but added some tests that parsefail.
15:34 nothingmuch what is subExp?
15:35 nothingmuch an Exp that will result in a VSub?
15:36 nothingmuch what is shiftT?
15:37 lightstep subExp is the expression that evaluates to the sub
15:38 lightstep (the sub which is gone to)
15:38 nothingmuch in my case the sum that will be assumed
15:38 nothingmuch perlbot nopaste
15:38 perlbot Paste your code here and #<channel> will be able to view it: http://sial.org/pbot/<channel>
15:38 pasteling "nothingmuch" at 212.143.91.217 pasted "attempt at .assuming" (5 lines, 171B) at http://sial.org/pbot/8444
15:39 nothingmuch sub <- fromVal vsub is causing type errors
15:39 lightstep fromVar is a pure function
15:39 nothingmuch oh shit, i mixed tabs & spaces
15:40 lightstep so in a monad, you use it as let sub = fromVal vsub
15:40 nothingmuch the goto hack does <-
15:40 nothingmuch the first two lines are unchanged
15:40 lightstep but you really want fromVal'
15:40 nothingmuch what's that?
15:40 lightstep oh, i was mistaken
15:41 lightstep they are the same, except fromVal is better
15:43 nothingmuch what do i do with retVal VSub?
15:43 nothingmuch do i make a Val out of the VSub? you said no, because it's pointless
15:43 nothingmuch so just return VSub?
15:44 nothingmuch because reduce :: ... -> Eval Val
15:44 lightstep actually, i wanted currySub to do as least as possible
15:45 lightstep i didn't want it to bother with casting the VSub into Val, or Exp, or Symbol, or whatever
15:45 lightstep castV is your friend
15:46 nothingmuch hah, it seems to actually compile
15:46 nothingmuch ok, now i have to fix stuff
15:49 nothingmuch camn
15:49 nothingmuch damn
15:53 nothingmuch what's wrong with this: data SubFun = Exp | (Env -> [(Param, Exp)] -> Eval Val)
15:53 thiesen has joined #perl6
15:55 sahadev has quit IRC (tolkien.freenode.net irc.freenode.net)
15:55 hlafarge has quit IRC (tolkien.freenode.net irc.freenode.net)
15:55 scw has quit IRC (tolkien.freenode.net irc.freenode.net)
15:55 lightstep has quit IRC (tolkien.freenode.net irc.freenode.net)
15:55 iblechbot has quit IRC (tolkien.freenode.net irc.freenode.net)
15:55 bd_ has quit IRC (tolkien.freenode.net irc.freenode.net)
15:55 marcusT has quit IRC (tolkien.freenode.net irc.freenode.net)
15:56 scw has joined #perl6
15:56 bd_ has joined #perl6
15:59 lumi Don't you need constructors?
15:59 nothingmuch oh, right
15:59 nothingmuch *blush*
15:59 perlbot has quit IRC (Read error: 60 (Operation timed out))
16:01 nothingmuch damnit
16:02 nothingmuch damnit damnit damnit
16:02 nothingmuch i'm just not capable enough
16:03 castaway then learn :)
16:03 nothingmuch trying
16:03 chip but are you fully functional?
16:03 * chip wonders whether that joke is as old on #haskell as it probably is
16:03 nothingmuch =)
16:04 autrijus hi chip!
16:04 autrijus chip: have you seen the pugscc numbers? :)
16:04 chip autrijus: jeepers, no
16:04 autrijus mandelbrot:
16:05 autrijus Pugs Interpreted:   77.29 seconds 477k memory
16:05 autrijus PugsCC Unoptimized: 01.35 seconds 476k memory
16:05 autrijus PugsCC Optimized:   00.39 seconds 455k memory
16:05 autrijus Perl 5:             00.14 seconds 362k memory
16:05 autrijus and it's still doubly boxed and with slow op.
16:05 nothingmuch autrijus.... help... me... *cough&
16:06 autrijus ok. ok.
16:06 chip Yowie.
16:06 chip "doubly boxed" - Perl 6 box inside Haskell object box?
16:06 autrijus chip: so. got any time for parrot things? I'd like to talk a bit about parrot ast
16:06 autrijus yeah.
16:06 autrijus exactly.
16:06 autrijus slow op means it's using the same op as evaluator
16:07 autrijus (so, guarantees the same behaviour, but not fast)
16:07 autrijus nothingmuch: do you want to SEE?
16:07 nothingmuch in theory isn't p6 supposed to "compile" operators even when it's just "interpreting"
16:07 chip Surely I would like to help you, but at the moment I suspect I will be learning from your questions
16:07 chip Please ask away in either case
16:07 nothingmuch that is, dispatch should be precalculated if possible?
16:07 nothingmuch autrijus: sure
16:08 autrijus chip: ok. as I gathered, Leo did a bit work on parrot/ast/
16:08 autrijus but nothing is really using it
16:08 autrijus what is sam ruby using then?
16:08 nothingmuch autrijus: would you like to ssh into pasta?
16:08 nothingmuch that would let you access the code
16:08 chip See, I told you I'd be learning.  What's Sam Ruby doing?
16:09 hlafarge has joined #perl6
16:09 autrijus nothingmuch: but SEE won't?
16:09 autrijus chip: pirate, that's python on parrot
16:09 nothingmuch see will
16:09 nothingmuch but it's several files
16:09 chip Ah.
16:09 autrijus sure.
16:09 autrijus see://woobling.org/?
16:10 nothingmuch yes, one second
16:10 nothingmuch i have to close all the gvims and open instead
16:10 sahadev has joined #perl6
16:10 sorje has joined #perl6
16:10 autrijus chip: anyway. I have this idea of modelling Parrot AST with haskell
16:10 autrijus because haskell is great for modelling trees
16:10 nothingmuch ok, see is open
16:11 autrijus and then write the parrot ast -> pasm emitter in haskell too
16:11 autrijus then I switch Pugs to use that AST
16:11 autrijus then port pugs to perl 6. voila
16:11 clkao hiya autrijus
16:11 autrijus hi clkao .
16:12 chip OK, if you're emitting pasm anyway, is a conversion to the Perl 6 AST necessary?  What would pugs gain by it?
16:12 autrijus the ability to implement macros
16:13 autrijus because the perl6 src -> perl6 ast -> parrot ast -> pasm picture is Wrong
16:13 autrijus it assumes that perl6 is a static language
16:13 nothingmuch autrijus: is that you who joined?
16:13 autrijus yes
16:13 autrijus that view presume that perl that has separate parsing, compiling and runtime
16:13 autrijus which perl does not.
16:13 chip Ooh, this is true.
16:13 autrijus see BEGIN{} and eval"" and "is parsed".
16:14 nothingmuch anyone else is also free to join, ofcourse
16:14 chip Pirate is generating pasm directly
16:14 chip        self.append("typeof $S0, %(what)s" % locals())
16:14 chip        #self.append("print $S0")
16:14 chip        self.append("unless $S0 == 'PerlUndef' goto %(endCheck)s" % locals())
16:14 autrijus ok. aww.
16:14 autrijus that is so not reusable
16:14 chip sadly
16:14 nothingmuch autrijus: basically my problem right now is fitting both the curry unwinder and the Exp that is the sub into subFun
16:15 autrijus my problem here is I don't know any parrot at all.
16:15 autrijus let alone parrot ast.
16:15 autrijus so I'd like to sync up with someone that does
16:15 autrijus preferably with IRC or SEE or videoconf
16:15 autrijus and take a real pugs ast
16:15 autrijus and try to work with that person on converting it to parrot
16:16 nothingmuch parrot ast is going to be a bit more difficult though, no?
16:16 nothingmuch since it's register based and all
16:16 autrijus uh no.
16:16 autrijus ast abstracts that away.
16:16 autrijus that's the whole point of ast.
16:16 chip Now I see
16:16 nothingmuch ah
16:17 nothingmuch so ast is a layer over parrot asm?
16:17 autrijus over parrot pir :)
16:17 autrijus but yes.
16:17 chip Ever work with gcc?
16:17 autrijus parrot pir is a layer over parrot asm that let you pretent you have infinite registers.
16:17 autrijus chip: no. :(
16:18 chip the gcc TREE is the source representation, or at least models the source language's concepts.  The RTL (register transfer language) models the machine execution, albeit with infinite psedo-registers in the early stages
16:18 chip TREE=AST RTL=PIR approx. from the sound of it
16:18 autrijus yes. I grok the theory
16:18 chip ok
16:19 autrijus so is parrot AST going to be very closely based on gcc TREE?
16:19 chip I have a bit of a learning motorcycle jump ramp starting at me :-,
16:19 jabbot pugs - 979 - fixed bug where undefined values in $got
16:19 autrijus does parrot has a eval_bytecode?
16:19 autrijus I see load_bytecode
16:19 trexy has joined #perl6
16:19 chip autrijus: I doubt it.  For all my background & interests, I'm just learning many vital basics about Parrot
16:20 chip That was my attempt to verify my understanding
16:20 chip (active listening by analogy)
16:20 autrijus k.
16:20 autrijus so I think a static compiler
16:20 autrijus for the mandel.p6
16:20 autrijus is a good start.
16:21 chip "static compiler", i.e. no ability to do macros?
16:22 autrijus no ability to do BEGIN.
16:22 autrijus and eval""
16:22 autrijus please don't think about macros just now
16:22 chip heh
16:27 hlafarge has quit IRC ("KVIrc 3.2.0 'Realia'")
16:30 autrijus so, the thing I have here is a perl6 parser that can parser to some sort of ast
16:30 autrijus and a compile that can transform that ast into some other sort of ast.
16:31 autrijus is there a pasm madelbrot?
16:31 autrijus ah yes. ./examples/assembly/mandel.pasm
16:31 autrijus ouch.
16:31 autrijus that hurts
16:37 nothingmuch has quit IRC ()
16:37 nothingmuch has joined #perl6
16:39 Aankhen`` has joined #perl6
16:45 iblechbot has joined #perl6
16:49 jabbot pugs - 980 - more Test.pm error reporting improvement
16:51 obra so. could it parse perl6 and spit out perl5?
16:52 obra pretend I didn't ask ;)
16:53 autrijus ok. that is interesting.
16:53 autrijus it means we can write perl6 and have it work with RT ;)
16:54 trexy has quit IRC (Read error: 110 (Connection timed out))
16:56 ozone has quit IRC (Remote closed the connection)
17:02 gaal has quit IRC (Read error: 54 (Connection reset by peer))
17:04 justatheory has joined #perl6
17:09 malaire has quit IRC ("Chatzilla 0.9.67 [Firefox 1.0/20041107]")
17:09 masak has left
17:09 ozone has joined #perl6
17:11 nothingmuch autrijus: all of Bind.hs is filled with [(Param, Exp)]
17:11 nothingmuch should i just s/that/Bindings?
17:12 autrijus uh.
17:12 autrijus we actually want Exp
17:12 nothingmuch hah
17:12 autrijus because it's prebound
17:12 autrijus maybe we can stuff them with thunks.
17:12 nothingmuch so i am replacing that
17:12 autrijus that may work.
17:12 autrijus so becomes Val.
17:12 nothingmuch and changing type Bindings = [(Param, Exp)] for now
17:13 nothingmuch someone smarter will sanity check it
17:13 nothingmuch maybe i'll bug lightstep a bit, he knows a lot
17:13 stevan autrijus: I have un-TODO-ed all the tests, and built a TODO list for you
17:13 stevan where would you like the TODO list? perl6-compiler?
17:14 nothingmuch too bad ghc doesn't do -jx
17:14 autrijus stevan: yes!
17:14 stevan ok
17:17 nothingmuch autrijus: what's this?  subs slurpLen subSyms =
17:17 nothingmuch i don't know which line anymore
17:17 nothingmuch i think 596
17:19 nothingmuch oh wait, i don't think it matters
17:19 autrijus it does not.
17:19 * nothingmuch make test
17:19 nothingmuch wow! stuff seems to work!
17:19 nothingmuch ok, we have refactored vsub with embedded bindings
17:20 nothingmuch who has latest test failure report?
17:20 nothingmuch i want to compare
17:20 stevan nothingmuch: wait a second
17:20 stevan i am commiting all the un-TODO-ed failing tests
17:20 stevan ok r981 has about 78 broken tests in it
17:20 nothingmuch why are we untodoing, btw?
17:21 stevan 78/2444 subtests failed,
17:21 nothingmuch or are we un un todoing from .12?
17:21 stevan it should only be TODOed if its an unimplemented feature
17:21 perlbot has joined #perl6
17:21 stevan but for releases autrijus likes to TODO everything for clean make test runs
17:22 lumi Can't there be some more exact datum than TODO?
17:22 nothingmuch lumi - TAP says "# TODO why todo"
17:22 stevan I also built a TODO list of all the un-TODO-ed things as well
17:22 nothingmuch but we don't implement it in Test.pm
17:22 nothingmuch it's mostly useless
17:22 lumi More sort of "#TODO - milestone"
17:22 stevan see perl6-compiler for that list
17:22 nothingmuch ok
17:23 nothingmuch shyte
17:23 stevan lumi: thats an idea, but I am not sure the milestones are that "set in stone"
17:23 nothingmuch t/magicals/block........................
17:23 nothingmuch hangs
17:23 nothingmuch hehe
17:23 stevan nothingmuch: what did you break now ;)
17:23 PerlJam stevan: seems like there should be some programmatic way to say "this is a release, so execute a todo test here"
17:23 nothingmuch subroutine bindings
17:23 nothingmuch =)
17:23 stevan PerlJam: hmmm, I will look into Test.pm, we might be able to do that with an %ENV variable
17:24 lumi Milestone is a bit harsh maybe
17:24 nothingmuch if you laugh at me i'll commit it =D
17:24 stevan PerlJam: that would make my life much easier :)
17:24 autrijus stevan: nothingmuch is working on .assuming()
17:24 stevan nothingmuch: *cough* svn revert *cough*
17:24 autrijus which is very important :)
17:24 stevan yum, curry :)
17:24 nothingmuch durnit
17:24 autrijus (because that let us use VThunk instead of Exp for bound vars)
17:25 nothingmuch now my linux box has a too old Test::Harness
17:25 autrijus (so one more step closer to serializable continuations and other good ideas)
17:25 lumi But if you tag it "#TODO - r999" then it automagically can be TODO/unTODOed
17:25 stevan autrijus: what does VThunk do that Exp doesnt?
17:25 lumi I mean scriptfully TODOed and makefilefully unTODOed
17:25 nothingmuch lighstep explained it nicely today, stevan
17:25 lumi Or so
17:25 nothingmuch VThunk is something you thunk of doing, but didn't actually do
17:25 lumi Anyway off or sth
17:25 lumi Heh
17:26 autrijus stevan: VThunk captures the original context; Exp is just some code to be run in any context.
17:26 stevan autrijus: ahhh, very nice
17:26 autrijus VThunk is an ordinary value that can be passed around for lazy evaluation, too.
17:27 autrijus nothingmuch: but come to think about it, I think
17:27 autrijus &foo.assuming($blah)
17:27 autrijus should eval $blah strictly
17:27 * stevan really needs to learn haskell
17:27 autrijus that is, reduce it to real Val instead ofVThunk
17:27 autrijus instead of going back to eval it when the curried thing is called
17:27 autrijus i.e. unlike what haskell do
17:27 nothingmuch ah
17:27 nothingmuch good point
17:28 nothingmuch well, we'll get to that at some point
17:28 nothingmuch it's still Exp now
17:28 nothingmuch anyway, i've got to go pick up my mom from the train station
17:28 autrijus cool
17:28 stevan nothingmuch: NO, you must VThunk!!!!
17:29 stevan nothingmuch++
17:29 stevan autrijus++
17:29 jabbot pugs - 981 - un-TODO-ed all the tests and went throug
17:29 nothingmuch stevan: soon, soon...
17:29 autrijus =)
17:29 elmex stevan++
17:29 nothingmuch i've been working on it since yday
17:29 nothingmuch and today i've had a waiting-for-things-to-go-bad day at work
17:29 nothingmuch everyone++
17:29 nothingmuch ciao!
17:29 autrijus nothingmuch++
17:29 autrijus ciao!
17:29 elmex this is... well err..
17:29 * stevan has to do some $work work now
17:30 stevan nothingmuch: tell mom we said 'hi'
17:30 autrijus yeah :)
17:31 stevan nothingmuch's mom++ # for giving birth to nothingmuch :)
17:32 autrijus :D
17:32 stevan autrijus: did I hear you say you were going to YAPC::MA
17:32 stevan s/MA/NA/
17:33 autrijus yes and do a pugs hackathon there
17:33 stevan nice
17:33 stevan I am planning on going too
17:34 stevan what does the pugs hackathon entail?
17:34 autrijus woot!
17:34 autrijus it means that I'll be staying around for 2~3 more days
17:34 autrijus and find a place with good network
17:34 autrijus and hack.
17:34 stevan hmmm
17:34 autrijus it's in June
17:34 stevan yes
17:34 autrijus so by that time we'll probably be hacking the bootstrap.
17:34 autrijus or macros.
17:36 stevan you mean it wont be finshed by then? ;)
17:37 autrijus perl is never finished :)
17:37 stevan so true :)
17:38 stevan we should start a fund to buy nothingmuch a plane ticket to YAPC::NA
17:38 rjbs nothingmuch's location?
17:39 theorbtwo Wow!
17:39 stevan Isreal
17:39 Khisanth autrijus: "feature complete"? :)
17:39 theorbtwo That sounds great; I want to go to YAPC::NA now.
17:39 stevan theorbtwo as well
17:39 theorbtwo Nonono; I'm useless.
17:39 autrijus Khisanth: it's not specced :)
17:40 stevan theorbtwo++ # for humility
17:40 autrijus I should also push for cabal to show up there :)
17:40 autrijus as well as more parrot people.
17:40 stevan and get merlyn to throw a really really big party :P
17:41 metaperl has joined #perl6
17:41 * stevan _really_ has to do $work now
17:41 autrijus have fun :)
17:42 iblechbot has quit IRC ()
17:42 Khisanth stevan: wouldn't that require merlyn to be at YAPC::NA?
17:42 theorbtwo Canada won't let Merlyn in, apparently.
17:45 chip Hm.  I wonder what the default prototype of C< method foo > is.  (MyClass $_, *@_)?  (MyClass $_)?
17:45 stevan Khisanth: not nessecarily :)
17:46 Khisanth telepartying...
17:46 * Khisanth invents some words :P
17:51 theorbtwo has left
17:51 theorbtwo has joined #perl6
17:53 chip Perl6::Subs is getting better.
17:53 chip C< method foo { print $self } >  becomes C< sub foo : method { my ($self) = @_; print $self } >
17:54 chip oh, and C< die if @_ != 1 > also (but with message)
17:54 autrijus have a guessimate at when we can use the code? :)
17:54 chip This week, I suspect.  I think this is far enough from $dayjob interests they'll let me share it
17:54 autrijus guesstimate, even
17:54 autrijus woooooot.
17:54 autrijus chip++
17:54 autrijus chip++
17:54 autrijus chip++
17:54 PerlJam chip: $self magically appears in methods?
17:54 autrijus I'll not write it on my journal yet :)
17:55 autrijus but, wow.
17:55 zuulvin_ has joined #perl6
17:55 chip PerlJam: that's a $dayjob standard for referent, so yes.  But you can override with C< method foo ( $me: ) >  which uses $me instead of $self
17:55 autrijus clever.
17:55 PerlJam bueno
17:55 chip You can have optional parameters, named parameters, *or* slurpy parameters.  Perl 5 doesn't really let you mix them
17:56 autrijus unless you also source filter the caller.
17:56 autrijus which you probably don't want to go.
17:56 chip autrijus: .... ooh.
17:56 rgs that's spiffy.
17:56 * autrijus gives chip bad ideas.
17:56 autrijus that's Spiffy.
17:56 rgs :)
17:57 chip Y'know, if the source filter's output is itself a source filter..
17:57 autrijus so, my talk is on 27th March.
17:57 chip No, it's just too evil.
17:57 autrijus so if Perl6::Subs appears on CPAN before that, I will definitely use it in my demos :)
17:57 chip Given a call like   C< $x->foo >, how am I supposed to know the type of $x in a source filter?
17:57 autrijus you pass the source to PPI
17:57 chip autrijus: Excellent
17:58 autrijus you alteratively rewrite it in a wrapped form.
17:58 chip autrijus: hm, wait.  If the syntax of the call is somehow distinct I can translate it without knowing the target.
17:58 autrijus yes.
17:58 autrijus that also works.
17:59 chip Well, even PPI can't help me if the previous statement is C< $x = foo() > and foo() has no declared return type.  Halting problem, etc.
18:00 autrijus you need runtime recompilation for that.
18:00 autrijus definetely not going to go there. :)
18:01 Aankhen`` has quit IRC (Connection timed out)
18:02 chip 'fraid so
18:02 chip er, not.  whatever
18:02 chip :)
18:03 zuulvin_ has quit IRC ("Leaving")
18:04 autrijus o/~ yeah / whatever / nevermind o/~
18:08 autrijus journal up.
18:08 autrijus will sleep soon. thanks for all the fish!
18:11 * chip wonders about the engraved writing on his fishbowl
18:12 saorge has joined #perl6
18:25 zuulvin_ has joined #perl6
18:27 metaperl_ has joined #perl6
18:34 chip Hm.
18:34 chip And given C< sub foo (Array $a) >, is foo(undef) legal?
18:35 chip grr
18:35 chip This is ... disturbing
18:36 theorbtwo I thought the plan was that undef is a member of all types, except the lowercase ones.
18:38 chip Well, that's what I thought.  I imagine, though, that it'd be nice to be able to make sure the values weren't undef in a less verbose way than C<where {$_}>
18:38 chip though that's not really _too_ verbose, now that I look at it
18:43 metaperl has quit IRC (Read error: 110 (Connection timed out))
18:43 metaperl_ is now known as metaperl
18:56 nothingmuch damnit
18:56 stevan hola naddamucho
18:56 nothingmuch hola, señor
18:56 thiesen has quit IRC ("Konversation terminated!")
18:56 nothingmuch load load load!
18:57 * nothingmuch sighs loudly
18:57 stevan whats the problem?
18:57 qmole has joined #perl6
18:58 nothingmuch gentoo insists on Test-Harness-30, which doesn't have HARNESS_PERL honoring
18:58 vladtz has joined #perl6
18:58 stevan gentoo--
18:58 nothingmuch hah! that'll show you
18:58 nothingmuch gentoo++ most of the time, actually
18:58 nothingmuch i've been very happy with it so far
18:58 nothingmuch i just typically rely on installing myself
18:58 nothingmuch (perl modules)
18:59 nothingmuch but this is the first time i needed something odd on gentoo
18:59 nothingmuch i should learn to use their little tool to make packages
18:59 nothingmuch but then again, i do most of my devel on my laptop with is OSX
18:59 stevan so I was discussing with autrijus about starting a nothingmuch-to-YAPC::NA fundraiser
18:59 nothingmuch oooh
18:59 nothingmuch that would be nice
19:00 stevan we just need something to sell :P
19:00 nothingmuch hehe
19:00 nothingmuch i am willing to sell my body
19:00 nothingmuch but in parts
19:00 castaway g-cpan, nm?
19:00 nothingmuch toe nail clippings, hair, etc
19:00 stevan how much for the brain?
19:00 stevan or rather, just the part with the Haskell fu :P
19:01 nothingmuch err, that's too difficult to package
19:01 nothingmuch haskell fu?
19:01 nothingmuch i'm asking sarcasticly-seriously
19:01 nothingmuch i really have no fu at all
19:01 castaway nm has haskell fu?
19:01 nothingmuch maybe foo
19:01 nothingmuch or something equally lame
19:01 nothingmuch but i'm really having trouble
19:01 stevan nothingmuch: you have more than me :)
19:02 nothingmuch what i need, IMHO is practice more than anything
19:02 nothingmuch i can figure out a good deal on my own
19:02 nothingmuch but slooowly
19:02 nothingmuch and sometimes wrongly
19:02 nothingmuch and i am having trouble thinking ahead
19:02 ingy hola
19:02 castaway thinking--
19:03 nothingmuch hola ingy
19:03 ingy dreaming++
19:03 nothingmuch castaway?
19:03 jabbot nothingmuch: castaway is my girlfriend.
19:03 nothingmuch damnit, jabbot!
19:03 stevan hey ingy
19:03 castaway yes, nm?
19:03 nothingmuch castaway is theorbtwo's girlfriend
19:03 nothingmuch why is thinking--?
19:04 castaway cos its hard
19:04 ingy stevan: aye
19:04 nothingmuch =P
19:04 nothingmuch jabbot stupidity:
19:04 nothingmuch why?
19:04 castaway thinking ahead is even worse..
19:04 gaal has joined #perl6
19:04 nothingmuch it's supposed to say 'why is the blah blah blah?'
19:04 nothingmuch hola gaal
19:04 gaal heya
19:04 stevan ingy: nothingmuch is auctioning off his body to pay for a trip to YAPC::NA, you need anything?
19:05 nothingmuch parts of my body
19:05 * castaway slaps jabbot
19:05 stevan yes,.. only in peices
19:05 theorbtwo nm, got a couple of spare thumbs?
19:06 castaway good idea
19:06 * gaal 's $work occasionally sends people to TO. man, hacking their schedule would be great.
19:06 castaway thumbs would be useful
19:06 nothingmuch TO?
19:06 nothingmuch my thumbs are necessary
19:06 nothingmuch for the bass
19:06 gaal Toronto.
19:06 nothingmuch i don't type with them too much, except for the right hand thumb, for the space bar
19:06 nothingmuch ah, toronto is cute
19:06 stevan nothingmuch: slap & pop funk bass?
19:06 nothingmuch very calm
19:06 nothingmuch err, no, double bass
19:07 nothingmuch you need for the arco
19:07 gaal it also hosts yapc, no?
19:07 nothingmuch and the left hand side feels around the neck
19:07 * stevan was just picturing nothingmuch ala Bootsy Collins
19:07 nothingmuch otherwise you lose the sense of where you are
19:07 nothingmuch i can probably give up a pinky or something from my feet
19:07 nothingmuch that would be worth a YAPC
19:07 stevan gaal: yes YAPC::NA this year is in Toronto
19:08 gaal gotta assign myself back on that project then :)
19:08 gaal nothinmuch, i can see if they are hiring. you wouln't mind, oh, coding java for a while? :-p
19:08 castaway nm, but I have no thumbs.. :(
19:08 stevan gaal: your in israel too right? you could bring nothingmuch in your carry-on luggage?
19:09 nothingmuch castaway: phsically?
19:09 gaal hmm, he might in fact fit
19:10 castaway correct
19:10 stevan gaal: especially after we sell all his extra parts
19:10 gaal and if he gives away his fingernails then the security folks won't take issue with his being there
19:10 * nothingmuch wonders how you get along without reversable thumbs
19:12 gaal so, nm, shall i hack at test::harness?
19:12 castaway my right index finger has kinda evolved to be a thumb
19:13 theorbtwo Most people's thumbs aren't reversable -- just opposeable.
19:13 castaway good point
19:13 nothingmuch that's what i meant
19:13 nothingmuch =)
19:13 nothingmuch gaal: yes, today is all haskell
19:14 theorbtwo The answer to how she gets along without thumbs is "remarkably well".
19:14 * castaway types faster than lotsa people
19:15 stevan darwinism++
19:15 nothingmuch ook, i've ruined $?BLOCK and $?SUB
19:15 gaal "ah, yes, today is finishing the specs, adding all the leftover bits of the language, changing over the ast to ponie, speeding up the code 2^10 times. no time for *perl*"
19:16 nothingmuch heh
19:16 nothingmuch i meant for me =)
19:21 metaperl_ has joined #perl6
19:22 nothingmuch ook
19:22 * nothingmuch should add autocmd for *pugs*.hs to set expandtab
19:23 nothingmuch keeps pissing off ghc
19:23 nothingmuch and i never understand why
19:24 vladtz has quit IRC ("Leaving")
19:25 nothingmuch stevan; can i have the faillist again?
19:26 nothingmuch 78, right?
19:32 sorje has quit IRC ("leaving")
19:32 sorje has joined #perl6
19:36 nothingmuch yay! 982
19:38 metaperl has quit IRC (Read error: 110 (Connection timed out))
19:38 metaperl_ is now known as metaperl
19:39 nothingmuch everyone please svn up and test, this change could give us trouble and I want to find out sooner rather than later
19:39 jabbot pugs - 982 - VSub now encapsulates it's own bindings
19:40 gaal my msys environment b0rk. anyone ever see this error? fork_copy: user/cygwin data pass 3 failed
19:40 gaal google mentions it, btu i'm not yet sure if it's a system thing or a make thing -- it happens on perl Makefile.PL
19:41 nothingmuch how deep is fork emulated on windows?
19:41 nothingmuch could it be a resource problem?
19:42 iblechbot has joined #perl6
19:42 gaal unlikely as i have 450MB RAM free.
19:43 gaal then again, this is windows and it must have been a month since i last rebooted. what was i thinking?
19:45 gaal how do i even check my uptime in windows?
19:46 nothingmuch cygwin should probably have uptime, no?
19:46 gaal not on my box. and i seem to recall that it gave wrong results when i tried once on a machine at work.
19:48 Steve_p has quit IRC ("Lost terminal")
19:48 hlen_ has joined #perl6
19:49 hlen has quit IRC (Read error: 104 (Connection reset by peer))
19:50 gaal has quit IRC ("Trillian (http://www.ceruleanstudios.com")
19:50 Steve_p has joined #perl6
19:52 gaal has joined #perl6
19:52 mj has joined #perl6
19:53 gaal darn, a reboot didn't help. testing if an older revision also has this problem.
19:54 pasteling "gaal" at 192.115.25.249 pasted "make test summary on the linux box" (25 lines, 1.7K) at http://sial.org/pbot/8455
19:55 gaal what should i prove -v?
19:57 Darren_Duncan has joined #perl6
20:00 gaal nothinmuch, on win32 mingw, r970 builds. tracking down exact breakage location...
20:01 nothingmuch 78 tests are expected to fail
20:01 nothingmuch stevan untodoed them earlier
20:02 nothingmuch oh, but way after 970
20:02 nothingmuch 979, i think
20:02 gaal are you talking about the win32 *build* fail, or my linux *test* fails?
20:03 nothingmuch i thought test fail at first
20:03 nothingmuch but then i understood that you meant build failed
20:03 gaal i have reason to believe my earlier fork-related build fail was not a system problem, or at least not only. -- it isn't triggered on a slightly older r
20:04 nothingmuch do you have strace?
20:05 gaal no.. brb, phone
20:07 mj hello, can somebody add 'next unless $dir;' before line 19  to Modules\Install\Can.pm. It will fix win32 configure error which occurs if PATH contain two semicolons subsequently.
20:07 mj set PATH=C:\perl\bin;;c:\ghc\ghc-6.4\bin
20:07 mj perl Makefile.PL
20:07 mj \ghc not found
20:07 mj *** Cannot find a runnable 'ghc' from path.
20:07 mj Thanks.
20:07 nothingmuch mj: do you want to do it yourself?
20:09 mj I can try. TortoiseSVN - SVN Commit... ?
20:10 nothingmuch something like that
20:10 nothingmuch i'll need an email address to grant commit access
20:11 mj [email@hidden.address]
20:12 gaal beh, now r982 builds fine all of a sudden. so maybe it was a transient mingw thing after all :(
20:12 nothingmuch =P
20:14 nothingmuch mj: invitation sent
20:23 nothingmuch welcome aboard, mj
20:23 mj done, thanks
20:26 sorje has quit IRC ("Lost terminal")
20:27 stevan Darren_Duncan: are you around?
20:27 Darren_Duncan stevan, right here
20:27 Darren_Duncan stepped away for a few minutes
20:29 jabbot pugs - 983 - fix win32 configure error which occurs i
20:31 mj jabbot: something wrong about my first commit?
20:31 jabbot mj: Does that suggest anything else which belongs to you?
20:34 qmole :)
20:37 |hugues has joined #perl6
20:38 Forth has quit IRC (Read error: 110 (Connection timed out))
20:41 nothingmuch mj: jabbot is a bot, and a stupid one at that
20:41 nothingmuch jabbot?
20:41 jabbot nothingmuch: jabbot is a bot, and a stupid one at that
20:41 nothingmuch haha!
20:41 nothingmuch ook
20:41 stevan nice :P
20:41 stevan jabbot__
20:42 stevan jabbot++
20:42 stevan (damn off by one)
20:42 nothingmuch in two senses ;-)
20:42 nothingmuch well, now, off by one and off by two
20:42 nothingmuch oh my
20:42 nothingmuch this is harder than I thought
20:43 nothingmuch binding is a bit overzealous
20:43 mj :-) muhehe
20:46 nothingmuch oh my, i feel so... dirty
20:59 permcj has joined #perl6
20:59 nothingmuch well, i've had enough
20:59 nothingmuch but we may have &foo.assuming tomorrow
20:59 nothingmuch it currently sort of works but in a bad way
21:00 nothingmuch but the commit to parse it does not yet work
21:00 nothingmuch sorry, was not yet made
21:01 nothingmuch i'll leave the files open in see://woobling.org if anybody wants to play with them while I'm asleep
21:01 nothingmuch with some todo
21:01 nothingmuch ciao!
21:01 elmex_ has joined #perl6
21:02 permcj has quit IRC ("Leaving")
21:03 stevan adios nothingmuch
21:05 codyp has joined #perl6
21:07 boch has quit IRC ()
21:09 alinbsp has joined #perl6
21:11 xern_ has joined #perl6
21:12 xern has quit IRC (Read error: 104 (Connection reset by peer))
21:14 elmex_ has quit IRC ("leaving")
21:15 elmex has quit IRC (Read error: 110 (Connection timed out))
21:15 elmex has joined #perl6
21:17 radek_ has joined #perl6
21:21 codyp has quit IRC ("Leaving")
21:21 Khisanth has quit IRC ("resetting connection")
21:22 zuulvin_ has quit IRC ("Leaving")
21:23 mj 983: nmake test failed ... still "cmd too long" (2268 characters :)
21:23 mj MSYS-MinGW-MSYS-DTK build: 79/2446 subtests failed, 96.77% okay
21:23 mj good night
21:24 stevan good night mj
21:25 mj has left
21:27 radek_ has quit IRC ("Chatzilla 0.9.67 [Firefox 1.0.1/20050226]")
21:28 Khisanth has joined #perl6
21:33 Limbic_Region has quit IRC ("tiuq\")
21:33 vladtz has joined #perl6
21:45 elmex_ has joined #perl6
21:48 vladtz has quit IRC ("Leaving")
22:02 xern_ has quit IRC (Read error: 104 (Connection reset by peer))
22:02 xern has joined #perl6
22:03 elmex has quit IRC (Read error: 110 (Connection timed out))
22:05 alinbsp has quit IRC ("Leaving")
22:12 metaperl_ has joined #perl6
22:13 ninereasons has joined #perl6
22:16 gaal_ has joined #perl6
22:19 elmex_ has quit IRC ("leaving")
22:20 elmex has joined #perl6
22:20 elmex autrijus++
22:28 wilx` has joined #perl6
22:28 lhooq has joined #perl6
22:28 metaperl has quit IRC (Read error: 110 (Connection timed out))
22:28 metaperl_ is now known as metaperl
22:30 gaal_ has quit IRC (tolkien.freenode.net irc.freenode.net)
22:30 gaal has quit IRC (tolkien.freenode.net irc.freenode.net)
22:30 Steve_p has quit IRC (tolkien.freenode.net irc.freenode.net)
22:30 qmole has quit IRC (tolkien.freenode.net irc.freenode.net)
22:30 saorge has quit IRC (tolkien.freenode.net irc.freenode.net)
22:30 ozone has quit IRC (tolkien.freenode.net irc.freenode.net)
22:30 sahadev has quit IRC (tolkien.freenode.net irc.freenode.net)
22:30 zuulvin has quit IRC (tolkien.freenode.net irc.freenode.net)
22:30 jabbot has quit IRC (tolkien.freenode.net irc.freenode.net)
22:30 cls_bsd has quit IRC (tolkien.freenode.net irc.freenode.net)
22:30 lwhsu_ has quit IRC (tolkien.freenode.net irc.freenode.net)
22:30 dada has quit IRC (tolkien.freenode.net irc.freenode.net)
22:30 wilx has quit IRC (tolkien.freenode.net irc.freenode.net)
22:32 ozone has joined #perl6
22:32 qmole has joined #perl6
22:32 Steve_p has joined #perl6
22:34 wilx` is now known as wilx
22:38 |hugues has quit IRC ("KVIrc 3.2.0 'Realia'")
22:45 zuulvin has joined #perl6
22:45 sahadev has joined #perl6
22:45 saorge has joined #perl6
22:49 Darren_Duncan has quit IRC ()
22:54 metaperl wilx. wow a real Haskell expert in our midst
22:55 wilx lol
22:55 wilx Am I?
22:55 metaperl well, better than most of us Perl hackers
22:55 metaperl we need to get all the procedural cruft out of minds
22:56 metaperl it takes some time to trust the Haskell way of just being definitional about things
22:56 wilx I assure you think to highly about me :)
22:56 wilx too*
22:56 metaperl no, I saw your code the other day
22:56 wilx Hm.
22:56 metaperl remember when I asked you for an English version of your website
22:57 wilx Oh.
22:57 wilx Right.
23:13 b6s__ has joined #perl6
23:17 Limbic_Region has joined #perl6
23:18 constant is now known as integral
23:25 b6s has quit IRC (Read error: 110 (Connection timed out))
23:28 elmex perl 6!
23:29 ayrnieu elmex - where?!
23:29 elmex i have no clue
23:32 theorbtwo http://pugscode.org/
23:32 elmex ?
23:32 elmex ⌫
23:35 cls_bsd_ has joined #perl6
23:51 chip Good news, boss thinks I'll be able to CPAN Perl6::Subs
23:51 chip About a week, so don't start polling the CHIPS directory just yet
23:56 larsen has quit IRC ("later")
23:58 ninereasons autrijus, I can't get your mandel.hs to compile with ghc

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

Perl 6 | Reference Documentation | Rakudo