Pugs 6.2.8 released! | pugscode.org | pugs.kwiki.org | paste: sial.org/pbot/perl6 | www.geeksunite.net Set by autrijus on 13 July 2005. |
|||
00:03
elmex_ is now known as induktivgehaerte
|
|||
Darren_D1ncan | ping autrijus | 00:17 | |
wtf | |||
re this irc thing | 00:18 | ||
autrijus | huh. | 00:19 | |
Darren_Duncan | autrijus, I was trying to figure out why I kept getting messages saying you changed the topic | 00:22 | |
but also, my nick inexplicably changed for the second time | |||
autrijus | something is not right with your irc client | ||
Darren_Duncan | the former doesn't appear on the web log, so it may be something at my end | 00:23 | |
a few minutes ago there was a brief dns name server outage, which may be related | |||
besides that, I have no idea ... my client has behaved well for as long as I've had it | 00:25 | ||
QtPlatypus | ?eval "a" ~~ /a+/ | 00:31 | |
evalbot6 | pugs: src/events.c:270: init_events_first: Assertion `rc == 0' failed. | ||
QtPlatypus | rule b { \( <-[()]>+ <b>? <-[()]>+ \) } | 00:40 | |
Sorry for the double paste | |||
Should the above rule recurses infinitly? And should it cause a bus error? | 00:41 | ||
autrijus | mm left recursion, fun | ||
I can see it recurse, but bus error is intolerable | |||
report on p6i/p6c? | |||
QtPlatypus | Will do. | 00:42 | |
QtPlatypus thought that the recursion should be finitie as every step the string as reduced in length by at least 4 chars. | 00:43 | ||
autrijus | more importantly, it will be reduced by one character to the left. | 00:44 | |
two characters, even | 00:45 | ||
( and whatever follows | |||
what did you match it to? | |||
I tried "(zz)" and it works fine | 00:46 | ||
(parrot 0.2.2-release) | |||
"(zz(yy)xx)" works too | 00:47 | ||
QtPlatypus | "(a)" | ||
I'm using the same release on OSX. | 00:48 | ||
autrijus | it fails correctly for me. | ||
fbsd, external parrot | |||
QtPlatypus | Oh I'm using embedded parrot. | ||
autrijus | that may be it. 0.2.2's embparrot pge worked for me on trivial cases | ||
but I didn't test it thoroughly at all | |||
QtPlatypus | Lets see what happens when I unembeded it. | ||
autrijus | nod. | ||
QtPlatypus | Also is there a way of actually using want? It seems to return the context that want is called in, rather then the context that the sub lives in. | 01:12 | |
autrijus | QtPlatypus: er. right. fixing | 01:44 | |
write a test? | 01:45 | ||
or is there one? | |||
fixed | |||
(r5857) | 01:48 | ||
svnbot6 | r5857 | autrijus++ | Changed paths: | ||
r5857 | autrijus++ | * &want should return the context of its caller, not of itself. | |||
r5857 | autrijus++ | This is likely a regression in 6.2.8; reported by QtPlatypus. | |||
brentdax | ...odd. | 05:11 | |
Oh, colon is a regex metacharacter now, duh. | |||
Khisanth | yes it is | 05:27 | |
:: is much nicer than (?>) :) | |||
brentdax | Quite so. I just couldn't quite figure out why I was getting "can't parse" errors... | 05:28 | |
Khisanth | heh | 05:29 | |
I just realized the other day what [a..b] meant :) | 05:30 | ||
Khisanth crosses fingers and hopes pugs will be built when he wakes up | 05:38 | ||
putter | A question for later: are adverbs allowed before a parenthesized arg list, or only within and after? eg, sub foo(+$x){} foo:x(3)(); ? | 05:40 | |
thanks. | 05:41 | ||
g'night & | |||
Khisanth | hmm don't the adverbs for s/// and m// basically come before? | ||
brentdax | Yeah, but that's only possible because ( is banned as a starthing character for a regex. I think it would be too ambiguous. | 05:43 | |
*starting | |||
Khisanth | heh m(()) | 05:44 | |
GeJ | Hello all. | 07:14 | |
I've been following the P6, Pugs and Parrot growth from the distance, and I must say that everytime I read the summarizers' mails, I get a huge headache. | 07:15 | ||
coral | summarizers mails? | 07:16 | |
GeJ | Piers Cawley and Matt Fowles (I think), the weekly emails... | ||
coral | oh, pdc is still doing that. cheers to him for it. | ||
pdcawley | Why thank you. | 07:17 | |
coral | whoah | ||
speak and ye shall be praised | |||
where do i sign up for those emails incidentally | |||
pdcawley | [email@hidden.address] is the mailing list, can't remember the subscribe incantation.] | ||
coral | erk | 07:18 | |
pdcawley | But it's mailman... | ||
coral | how about pugs | ||
pdcawley | That gets the pugs announcements too. | ||
coral | heavy traffic? | ||
pdcawley | Nah. | ||
GeJ | I couldn't agree more. The summarizers' job is awesome. It makes me think I can understand everthing... until I follow the links to the google groups... and then, the headaches come back. | ||
pdcawley | Unless Autrijus is on *fire* | ||
coral | which he always is | 07:19 | |
pdcawley | There's also parrot release announcements, but they're monthly. | ||
Pugs releases are more frequent, but not insanely so. | |||
svnbot6 | r5858 | chromatic++ | Changed paths: | 07:20 | |
r5858 | chromatic++ | Added spaces to all escaped output in Test::Builder::Output. | |||
r5858 | chromatic++ | Pass test numbers to new tests in Test::Builder::Test (oops). | |||
r5858 | chromatic++ | Create tests properly in Test::Builder. | |||
r5858 | chromatic++ | Added diag() to Test::Builder until "handles" works. | |||
r5858 | chromatic++ | Fixed diag() documentation in Test::Builder. | |||
GeJ | I guess I lack some knowledge on the "concepts" raised in the discussions. (the first ones that come to mind are MMD, Monads, Junctions, and so many others...) | ||
svnbot6 | r5858 | chromatic++ | Minor cosmetic fixes to t/010_Test_Builder.t. | ||
GeJ | Would you have any hint/advice for me to find more on these? Maybe somewhere in the svn repository is there already some doc about all these? | 07:22 | |
coral | those sound like haskell terms | ||
i have some links on that | |||
pdcawley | I don't know what a monad is frankly.... | 07:23 | |
coral | www.cs.uu.nl/~afie/haskell/tourofsyntax.html www.cs.uu.nl/~afie/haskell/tourofpr...e.html#map | ||
those are all i have | |||
um | |||
someone else who's more active here should have better links than i do for your questions | |||
autrijus: ping | |||
the pugs kwiki (see topic url) should be of great assistance to you actually, probably lots of good starting stuff there | 07:24 | ||
GeJ | good, good... I'm going to have a look at it. thanks a lot. | ||
coral | nod | ||
try again at another time of day | |||
the participation here fluctuates wildly | 07:25 | ||
GeJ | And I think it's true what they say : "There's only one thing better than having one autrijus on the project, it's having two autrijuses on the project." | ||
coral | yes | ||
brentdax | Anybody know why Pugs's error messages appear in my server's error log with one character per line? | ||
coral | heh! | ||
"my server's"? | 07:26 | ||
brentdax | Well, Apache, running on my laptop. | ||
coral | pugs cgi or mod_pugs? | ||
brentdax | Pugs CGI. | ||
A mod_pugs supervisor will make a great project *after* September 1. ;^) | 07:27 | ||
(where a supervisor is the chunk of code that interfaces with the web server's API, and September 1 is the due date for Summer of Code projects.) | 07:28 | ||
coral | heh | 07:30 | |
svnbot6 | r5859 | chromatic++ | Changed paths: | ||
r5859 | chromatic++ | Bumped up version numbers. | |||
r5859 | chromatic++ | Added Test::Builder::Tester and t/050_Test_Builder_Tester.t. | |||
nothingmuch | wmorning | 10:07 | |
castaway tickles nothingmuch | 10:33 | ||
masak | nothingmuch is apparently not very ticklish | 10:40 | |
nothingmuch | actually I am, i'm just not seeing anything | 10:41 | |
nothingmuch gets tickled retroactively | |||
(irssi's display broke - everything was black) | |||
castaway | ,) | 10:43 | |
kgftr|konobi | use.perl.org/~sri/journal/25919 - intresting read | 10:45 | |
nothingmuch | que konobi? | 10:46 | |
castaway | not particularly interesting.. | 10:48 | |
nothingmuch | oops, thread got deleted | ||
castaway | thread deleted? | 10:50 | |
nothingmuch | the link didn't show anything | ||
in the archives | |||
or maybe it just didn't load right? | |||
hmmm..... | |||
castaway | maybe, should be in my inbox somewhere tho.. | 10:52 | |
nothingmuch | yeah, mine too | 10:54 | |
castaway giggles insanely at [email@hidden.address] (messageid) | 10:55 | ||
hmm, odd, I cant find those msgs either.. is cdbi moderated? | 11:12 | ||
QtPlatypus | Is there some way to get the equiverlent of $/.keys ? | 11:19 | |
nothingmuch | i think perl 6 is really starting to need a higher order "Type" type | 13:29 | |
that can express relationshipts | |||
(x of OtherType) | |||
containment (a special case of 'of') | |||
reference | |||
delegation | |||
and so on and so forth | |||
we are trying to fit a type system with N dimentions which are completely orthogonal into a flat namespace | 13:30 | ||
and it's just not working | |||
haskell's type parametarization is closer to what we need, but still not good enough since we have more than one type of containment | |||
and also touples suck in haskell. | 13:31 | ||
(The type declaration, that is... there is an infinite amount of touple types, (a,a), (a,a,a) ... (a, ..., a) | |||
integral | "tuple" | ||
spinclad | [a] | 13:33 | |
a => [a] | 13:34 | ||
integral | I suppose this is relevant for arrows, where there's standard things to combine two into (a (b,c) (d,e)), but not three into (a (b,c,d) (e,f,g)), you have to cope with (b,(c,d)) | ||
spinclad | haskell makes a:[a] easy (shift/unshift) but not [a]:a (push/pop) | 13:37 | |
and nm, i think i've heard you complain of not knowing a way to declare [Any], as it were. | 13:38 | ||
i certainly agree with perl6 needing more type algebra. | 13:42 | ||
nothingmuch | integral: oops... =) | 13:53 | |
spelling is not my strong side | |||
spinclad: think of lists as streams coming out of nowhere | 13:54 | ||
e.g. - don't try doing push/pop unless you absolutely really need it | |||
and then you can use map instead | |||
nothingmuch has to go | |||
nothingmuch returns | 14:04 | ||
spinclad: well, i gues i could implement my own type class Any | 14:06 | ||
and make a dummy function | |||
something like 'id' or somesuch | 14:07 | ||
and then just implement it for the types i'm interested in | |||
maybe I can even glue 'deriving' into that | |||
but i don't really want Any in haskell, that subverts many things | |||
i would like union types, and I'm not sure you can get them | |||
obra | seen fglock | 15:21 | |
jabbot | obra: fglock was seen 12 days 22 hours 48 minutes 59 seconds ago | ||
15:47
Aankh|Clone is now known as Aankhen``
|
|||
nothingmuch feels like kicking something | 16:08 | ||
geoffb | why? | ||
nothingmuch | annoying quaterly meeting | 16:09 | |
i misunderstood an email | |||
(i want to get an ipod shuffle for someone's birthday present, with an itatu thing, but getting them to print one includes a $150 initial setup fee) | 16:10 | ||
geoffb | bleah | ||
nothingmuch | i also feel crappy | 16:11 | |
since I forgot my cream at home, and my face is about to burst | |||
dermatitis is annoying | |||
nothingmuch can't blink properly | |||
i think I want to buy a boxing back for work... this should resolve some issues. | |||
geoffb | that sounds nasty | ||
nothingmuch | oh - there's also a major annoyance with grep on cygwin WRT dos/unix line endings | 16:12 | |
geoffb | "Cygwin: Close, But No Cigar." | ||
replace gnu grep with perl grep | |||
nothingmuch | i wish | ||
i want to rewrite our whole test system in perl | 16:13 | ||
we have such a wad of crap right now | |||
geoffb | so why don't you? | ||
nothingmuch | people are taking result tables out of human-optimized tools | ||
they are fudging the output to remove english sentances so that only data is left | |||
geoffb | Oh god, the dreaded "I keep all that in an Excel spreadsheet" syndrome? | ||
nothingmuch | then they make a 4 line pipeline with grep, awk, sed, cut, etc | ||
and then they compare the resulting text files to a defacto result file with diff | |||
geoffb | oh dear. | 16:14 | |
nothingmuch | instead of just having a real perl table, and using Test::Deep | ||
geoffb | That's . . . awful, but sadly normal | ||
nothingmuch | the only problem is that the QA department is doing too omuch fire fighting at the moment to even think of big changes | ||
and so although everyone wants a big change to make life better, no one can commit to making the effort needed for it | |||
and since I'm the guy who has to make things work, i need to get this fixed | 16:15 | ||
a.s.a.p, too | |||
geoffb | Well, that leaves two choices (aside from drastic measures like quitting): deal with suckage, or JFDI. In my career, I've chosen both options many times. They both suck. | 16:16 | |
But "better to ask forgiveness than permission" seems to stand me in good stead. | 16:17 | ||
svnbot6 | r5860 | Stevan++ | Changed paths: | 16:21 | |
r5860 | Stevan++ | Perl6::MetaModel (p5) | |||
r5860 | Stevan++ | * added private methods (currently using '_' instead of ':' as a marker) | |||
r5860 | Stevan++ | - added test file for this | |||
r5860 | Stevan++ | * moved the last of the private methods of MetaClass into it's MetaClass instance | |||
r5860 | Stevan++ | so now only new() and add_method() are needed to bootstrap :) | |||
geoffb | OK, I've been away from the source tree for a couple weeks -- is there a status document now, other than Autrijus' journal? | 16:22 | |
nothingmuch goes home | 16:24 | ||
geoffb: this is not a big issue for me | |||
i don't need to quit | |||
it's just a single event | |||
most of my work is fun | |||
i just complain about the bad parts =) | |||
anyway, adios, i'm getting picked up | |||
svnbot6 | r5861 | geoffb++ | Changed paths: | 16:40 | |
r5861 | geoffb++ | docs/notes/plan: minor spacing and typo cleanups; also no longer state that JS backend is unstarted and less important | |||
r5862 | geoffb++ | Changed paths: | |||
r5862 | geoffb++ | READTHEM: point out partial KWID transcription of YAHT | |||
geoffb | What is this "Changed paths:" crap? | ||
putter | geoffb: re status document - no, unfortunately, care to write one? :) | ||
Aankhen`` was wondering too. | |||
putter too | |||
geoffb | Yes, I'd be happy to -- I just didn't want to repeat someone else's work | ||
dudley | I think iblech made svnbot report which files had been changed in a given revision | 16:41 | |
geoffb is in "doc fix mode" today | |||
. . . except it doesn't seem to work | |||
putter | how not? | ||
geoffb | It never shows any files (or at least, I never see such) | ||
putter is confused | 16:42 | ||
geoffb | putter, iblech's Changed paths thing for svnbot6. I'm saying it's broken, because it does not in fact display the changed files | ||
dudley | geoffb: did you put the filenames in your commit messages? | ||
geoffb | Just the header | ||
putter | ahh | ||
geoffb | dudley, yes, I almost always do (if I forget, that's a bug in my brain) | 16:43 | |
putter | err, why not just use the svn log...? | ||
dudley | ah, well then yes, it doesn't seem to work. | ||
Aankhen`` | I'm taking a look at it. | 16:44 | |
geoffb | putter, because I'm ircbot-friendly: This allows people to keep a basic idea of what is changing by reading the backlog | ||
(And I got used to it working on projects where you may have a big merge and want to describe what the various parts do.) | |||
(checkin buddies)++ | 16:45 | ||
When you can't have anarchy, check buddies are a close second, and you pretty much have to be good about commit messages if you want that to work | |||
Well, work remotely, at least -- I suppose if you can physically sit next to someone, that's even better, but who gets that nowadays? | 16:46 | ||
putter | ok, so svnbot does use the log to get changed paths, and the "Changed paths:" structure in the revision description provides optional annotation? | 16:47 | |
Aankhen`` | Yes. | ||
putter | :) | ||
Aankhen`` | I am confirming it. :-P | ||
svnbot6 | r5860 | Stevan++ | Perl6::MetaModel (p5) | 16:49 | |
r5860 | Stevan++ | * added private methods (currently using '_' instead of ':' as a marker) | |||
r5860 | Stevan++ | - added test file for this | |||
r5860 | Stevan++ | * moved the last of the private methods of MetaClass into it's MetaClass instance | |||
r5860 | Stevan++ | so now only new() and add_method() are needed to bootstrap :) | |||
r5861 | geoffb++ | docs/notes/plan: minor spacing and typo cleanups; also no longer state that JS backend is unstarted and less important | |||
r5862 | geoffb++ | READTHEM: point out partial KWID transcription of YAHT | |||
geoffb | Who did the config.yml thing for the builds? | ||
Aankhen`` | Builds? | ||
Er, did I latch onto the wrong part of it as significant? | 16:50 | ||
geoffb | make, I mean | ||
yes. :-) | |||
Aankhen`` | Heh. | ||
geoffb does svk blame | |||
Aankhen`` | I believe it was gaal. | ||
Not quite sure though. | |||
geoffb | oh, OW, that made svk pause | ||
Looks like gaal. | 16:52 | ||
gaal: if you backlog -- INSTALL needs to be fixed to match your machinations | |||
putter | I've a Parser.hs puzzle. anyone up for it? | 16:55 | |
autrijus: ping? | 16:59 | ||
Sigh. I almost have adverb parsing working, but two lookAhead's are having sideeffects I just dont understand... :( | 17:03 | ||
Aankhen`` | putter++ | ||
brentdax | Side effects? In Haskell? Horrors! | 17:04 | |
putter | ok, say "behavioral concequences" ;) | ||
geoffb | .oO( "No, we don't have side effects, we have monads!" ) |
||
Aankhen`` | putter: Are you using t/operators/adverbial_modifiers.t as a reference or something else? | ||
putter | a rather enlarged adverbial_modifiers.t | 17:05 | |
Aankhen`` | Welp, heads up... :-) | 17:06 | |
Stupid svnbot6 doesn't know its cue. :-P | 17:07 | ||
svnbot6 | r5863 | Aankhen++ | * t/operators/adverbial_modifiers.t: fixed mistakes relating to quoted vs. unquoted named arguments. | ||
Aankhen`` | Oh great, NOW it decides to wake up. | ||
putter | ooo... putter goes to look... | 17:08 | |
Aankhen`` | ?eval sub foo (Int $bar) { $bar + 2 }; foo(:bar<2>) | ||
Bah. | |||
Well, it seems it would have worked anyway. | 17:09 | ||
putter | ok, makes sense. hmm... with sub f(Int i){} does f("2") work (coerce) or fail? | 17:12 | |
Aankhen`` | pugs> sub f (Int $i) { $i }; f("2") | 17:13 | |
'2' | |||
Appears to. | |||
Er. | |||
Appears to work. | |||
Not coerce. | |||
putter wonders what is spec... | 17:14 | ||
In Parser.hs, parseNoParenParamList, could someone walk me through this line: formal <- (`sepEndBy` symbol ":") $ fix $ \rec -> do | 17:17 | ||
? | |||
geoffb decides to try his haskell skills. | 17:20 | ||
svnbot6 | r5864 | Aankhen++ | * HTTP::Request::CGI: made $.query_string read-only. | ||
geoffb | Lessee, the (`sepEndBy` symbol ":") is creating a slice, so the thing to the right will actually become the first argument to sepEndBy, | 17:21 | |
(er, right of the first $) | |||
formal <- (fix $ \rec -> do <...stuff..>) `sepEndBy` symbol ":" | 17:23 | ||
formal <- sepEndBy (fix $ \rec -> do STUFF) symbol ":" | |||
formal <- sepEndBy (fix ( \rec -> do STUFF )) symbol ":" | 17:24 | ||
Does that look right so far to the real lambdafolk? | |||
putter | ahhhhh. and sepEndBy repeated invokes the fix.... | 17:25 | |
geoffb++ Thank you! :-) | |||
geoffb | You're welcome, I hope I got that right! | ||
putter | Well, I pretty sure I understand where I went down the wrong track. Now just have to backtrack and try again... :) | 17:28 | |
geoffb | :-) | ||
brentdax | Is there an example of how a Pugs module/set of scripts can be distributed outside Pugs itself? i.e. how it should install itself and so on? | 17:54 | |
geoffb | Wow, the 3 variations of the metamodel in perl5/ are nearly 10K lines. | 18:08 | |
stevan++ # cause, DAMN | |||
brentdax | "*** Cannot cast into Hash: VRef <Thunk>" <-- What does that usually indicate? | 18:11 | |
svnbot6 | r5865 | geoffb++ | Remove no-longer valid stuff from ext/Set-Infinite/README; delete empty lib/Perl6/Pugs dir | 18:21 | |
r5866 | geoffb++ | Bring source map in lib/pugs/hack.pod vaguely up to date, and fix a couple XXXX while in there | |||
putter | brentdax: re distribution, have you looked at freepan? | 18:22 | |
svnbot6 | r5867 | iblech++ | PIL2JS: | 18:30 | |
r5867 | iblech++ | * libjs/PIL2JS.js -- Added a small comment explaining the autorefification in | |||
r5867 | iblech++ | my $scalar = @array. | |||
r5867 | iblech++ | * PIL::Nodes -- Better error messages, as now $?POSITION is updated *before* | |||
r5867 | iblech++ | doing the parameter checking in subroutines (i.e., before: "Required | |||
r5867 | iblech++ | parameter "$x" not passed", now: "Required parameter "$x" not passed at | |||
r5867 | iblech++ | line ..."). | |||
r5867 | iblech++ | * Prelude::JS::Array -- Fixed (with a small hack) &sort. All 16 tests pass now: | |||
r5867 | iblech++ | m19s28.vlinux.de/iblech/stuff/not_p...ort.t.html | |||
putter | anyone happen to know of something with the same type as symbol "x" but which is a no-op? I'm looking at (lookAhead (satisfy (\c -> True))) but it doesn't quite typecheck... | 18:31 | |
iblech | putter: return "x" should have the same type as symbol "x" | 18:33 | |
putter | ah, so return "" is a noop? | 18:35 | |
iblech | Yep. | ||
putter | oh well. there goes that bug hypothesis. Thanks! :) | 18:36 | |
iblech | :) | 18:37 | |
svnbot6 | r5868 | iblech++ | PIL2JS: Prelude::JS::Hash -- my %hash = (a => 1, "b", 2, "c") (i.e. mix between | 18:44 | |
r5868 | iblech++ | pairs and normal lists) works now, causing | |||
r5868 | iblech++ | m19s28.vlinux.de/iblech/stuff/not_p...ues.t.html | |||
r5868 | iblech++ | to pass. | |||
r5869 | geoffb++ | Add a blurb about testing to pugs::hack, with terse details about prove to deal with FAQ | 19:24 | ||
r5870 | iblech++ | * Usual svn props. | 19:25 | ||
r5870 | iblech++ | * t/builtins/lists/reduce.t -- Moved the &reduce tests to the beginning and the | |||
r5870 | iblech++ | [...] reduce metaoperator tests to the end (so PIL2JS has a chance of passing | |||
r5870 | iblech++ | more than two tests). | |||
r5870 | iblech++ | * PIL2JS: | |||
r5870 | iblech++ | * PIL::Nodes -- sub foo {...}; say &foo.arity works now (again) | |||
r5870 | iblech++ | * Prelude::JS::Array -- Implemented &reduce (capable of working with n-ary | |||
r5870 | iblech++ | subs). | |||
r5870 | iblech++ | * Prelude::JS::Operators -- Basic ops (+, <, etc.) now correctly obey Perl's | |||
r5870 | iblech++ | numification rules, i.e. undef + 3 is now 3 instead of NaN. | |||
brentdax | Someone's defaced the FreePAN wiki... | 19:29 | |
putter | :( | 19:34 | |
autrijus | greetings. | 19:35 | |
putter | the pugs wiki was getting hit quite frequently, but cleaned up quickly. | ||
autrijus | putter: pong. Parser.hs? | ||
putter | greetings :) | ||
figured out, I think. testing... | |||
autrijus | I'm almost ready to do PIL2 now, based on F<:, Scala and intersectional object calculi :D | 19:36 | |
putter | iblech++ geoffb++ for assistance. | ||
autrijus | I'm glad I survived the paper hell | ||
putter | brain feel healthily scrubbed? | ||
autrijus | brentdax: 02:12 < brentdax> "*** Cannot cast into Hash: VRef <Thunk>" <-- What does that usually indicate? | 19:37 | |
brentdax: this usually means you wrote {a=>1;} where you should've written {a=>1} or something | 19:38 | ||
i.e. hash composition did not kick in | |||
brentdax | I see... | ||
integral | will PIL2 (as a haskell type) not be type-indexed? there's a comment above the PIL type that the type-indexing is "a bit too baroque" | 19:39 | |
autrijus | putter: well, yeah, except I now more fully grok perl6's immense craziness | ||
putter | quite woot of tests passing. one would think that having a quite long edit-test cycle would provide time for careful quality analysis. but instead it seems I'm just slower... ;) | ||
s/quite/quiet/ | |||
autrijus | integral: yeah, I concluded type index doesn't help, and regular algebraic types would do. the reason is that type index really only associate it with one internal language, namely PIR | ||
integral: while everything else need to be second-class with type classes | |||
integral | yeah, I suppose one way around is to create types to use just as indices | 19:40 | |
geoffb | wow, I look away for a couple minutes, and suddenly the channel goes wild. Hi, autrijus! | ||
autrijus | you mean phantom types in TIP? | ||
hi geoffb | |||
integral | err, probably =) | ||
autrijus | integral: type-indexed products is nifty... but I'm thinking far more mundanely, i.e. just give different constructs different levels | ||
really, all GADT buy us is (compile :: PIL a -> Comp a) | 19:41 | ||
integral | mundane is nice too :-) | ||
brentdax | You're right... %.attributes is being assigned a thunk. I wonder where... | ||
integral | it also reminds me a bit of subtyping, but badly crippled | ||
autrijus | well, not neccessarily badly crippled, but it's inconvenient to use as a general subtyping mechanism | 19:42 | |
integral: anyway. the same treatment that enables CodeGen.PIR to say | 19:43 | ||
instance (Typeable a) => Translate (PIL a) a where | |||
can be replaced with | |||
instanace Translate PIL.Lit PIR.Literal where | |||
et ceteral | |||
via typical type-directed translation | |||
putter | there's a breathtaking task - to fully grok perl6's immense craziness. | 19:44 | |
integral | hmm, that would make things much tidier | ||
autrijus | putter: I don't claim "fully" :) | ||
putter | bridging the messy p6 kitchen sink, with the world of crystaline type theory, just sounds so... improbable. | ||
autrijus | although I do wish @Larry could reply to ``The meaning of "returns"'' eventually | ||
justatheory types crystalinely | |||
putter | re "fully", yes, I noted your "more fully". quality_qualifiers++ | 19:45 | |
autrijus | putter: the key is to find that there's actually a lot of research already into junctive types, generic roles, container classes, polymorphic parameter types, etc etc | 19:46 | |
just not usually taken together, and almost never in a dynamic/soft typing setting | 19:47 | ||
geoffb | Perl++ # "We are borg..." / "All your concept are belong to us." | ||
autrijus | <lwall> That's odd, thought I. Why should it be, that the Sedulous Bead of Regular Expressions, when bonded together with the Shellacious Bead of Gnostic Interpolation, and the Awkward Bead of Simple Data Typology, should produce more Magic, pound for pound, than they do when strung out on strings? I said to myself, could it be that the beads can exchange power with each other because they no longer have to commune with each other thro | 19:48 | |
<lwall> So I melted that larger bead together with a few more of my favorite beads, and the same thing happened, only more so. It was practically a combinatorial explosion of potential incantations: the Basic Bead of Output Formats and the Lispery Bead of Dynamic Scoping bonded themselves with the C-rationalized Bead of Operators Galore, and together they put forth a brilliant pulse of power that spread to thousands of machines through | |||
(foreword, Learning Perl, 1st edition) | |||
geoffb | :-) | 19:49 | |
autrijus | (although I support the "on something" conjecture more) | ||
autrijus wonders when will chromatic's article be up on perl.com | 19:51 | ||
brentdax | What's he writing about? | ||
autrijus | brentdax: the invention of perl www.unix.org.ua/orelly/perl/learn32/prf1_01.htm | 19:52 | |
oh. | |||
chromatic. | |||
ext/Test-Builder/. | |||
Darren_Duncan | greetings | ||
autrijus | heya Darren_Duncan | ||
how's life? | 19:53 | ||
autrijus syncs up on the pil2js work by the iblech machine | 19:54 | ||
Darren_Duncan | I'm trying to get more stuff done than I have time for | 19:55 | |
it gets frustrating | |||
one can only snip so much from the schedule | |||
my concern is that I won't have Rosetta functional before OSCON | 19:56 | ||
brentdax | Ah, okay. | ||
Darren_Duncan | and there's still packing for the trip, doing backups, etc to do | ||
and imaging the iBook I borrowed to take along | 19:57 | ||
brentdax | Y'know, it'd be kinda nice if a value would capture the call stack as it existed when it was created. | ||
Darren_Duncan | also ... I'm thinking, just after OSCON, of putting Rosetta into a version control system like Pugs to make it easier for others to participate in its development ... but I have no experience in running such a system | 19:58 | |
autrijus | brentdax: $val.carp? | ||
or rather .confess | |||
osfameron | gah, does 'carp' still exist in p6? | 19:59 | |
^conner | Darren_Duncan, don't waste your time trying to setup and manage a SCM, there's a number of website that will do that for you (SF, Savanah, etc.) | ||
19:59
Boogie_ is now known as Boogie
|
|||
Darren_Duncan | so, any recommendations for specific ones ... it should support the svn + svk way of doing things, rather than cvs | 20:00 | |
in fact, if svk allows for every person to be their own repository, thats what I prefer | 20:01 | ||
autrijus | Darren_Duncan: you can use rt.openfoundry.org, which has a committer-invitation invitation system to svn, but the occasional downtime is irksome. for casual hosting with simple management UI I prefer opensvn.csie.org/ | ||
brentdax | Something like that. It would probably be turned off by default, but it'd be dead useful for debugging. (Especially if it also recorded mutations.) | ||
autrijus | Darren_Duncan: svk is strictly client side thing | ||
brentdax: write a t/unspecced/ :) | |||
putter | That is quite the nifty larry intro. tnx. :) | ||
autrijus | or if the idea is not that solid yet, post to p6l | ||
^conner | Darren_Duncan, I'm not sure about svn, maybe tigris | 20:02 | |
Darren_Duncan | one thing I will want is that committers are by invite only | ||
^conner | Darren_Duncan, aww ha, subversion.tigris.org/project_links.html look towards the bottom of the page | 20:04 | |
Darren_Duncan | I also want a system where all of the version history in the repository is also on my client computer, so if the repository goes down for good, all the version info is not lost | ||
geoffb | Darren_Duncan, that would be svk | 20:05 | |
(assuming you mirror all revs) | |||
^conner | Darren_Duncan, or arch, or monotone, or darcs | ||
Darren_Duncan | it occurs to me, then, that I should start using svk now with Pugs and get used to it, over svn | ||
putter | ?eval 3 | ||
^conner | Darren_Duncan, or (ack) bitkeeper, or even git | ||
geoffb | ^conner, he had specifically mentioned SVN, so . . . :-) | ||
Darren_Duncan, oh, definitely | 20:06 | ||
^conner | geoffb, well svk != svn | ||
geoffb | svk = client for svn | ||
(that also mirrors rev history, has local branches, has a smarter merge algo, etc.) | |||
Darren_Duncan | in brief, any issues/problems I should be aware of that svk has and svn doesn't? | 20:07 | |
osfameron | ask clkao | ||
^conner | Darren_Duncan, svk is an improvement over svn... branching and merging with svn isn't more better than cvs | 20:08 | |
geoffb | svk has several advantages (faster after first checkout, better merge, offline work, etc.), but watching #svk I notice that edge cases often find buglets. Usually workaroundable, but there nonetheless | ||
osfameron | as in: if you use svk, the maintainer is on channgel, which is kinda cool... | ||
geoffb | Average use seems to Just Work | ||
Darren_Duncan | so switching shouldn't gain me any new problems then? that's what I wanted to know | ||
geoffb | not that I know of, but osfameron is right -- ask clkao on #svk if you're really nervous | 20:09 | |
^conner | Darren_Duncan, I have a huge ammount of respect for svk but you should really think about how much 'faith' your going to put in a SCM, svk isn't completely mature | ||
autrijus | although it's 1)in perl5 and 2)easy to hack :) | 20:10 | |
osfameron | but it did 1.0 recently, no? | ||
Darren_Duncan | well, currently I don't use an automated version control at all ... nightly tarballs and CPAN releases are my 'checkins' | ||
^conner | autrijus, don't get me wrong, I think svk is amazing | ||
autrijus | ^conner: sure, and it's just a client, it's hard to get completely borked with a client | 20:11 | |
the svn server is very robust by this point | |||
^conner | autrijus, I'm both a programmer and a systems admin.... the sysadmin part of me is always nervous about new software in the hands of users | ||
PerlJam started using svk last night. | |||
Darren_Duncan | an unrelated question ... | ||
geoffb | heh | ||
^conner | autrijus, valid point | 20:12 | |
Darren_Duncan | autrijus, do you hold the copyright to the Pugs core (what isn't in /ext) by yourself, such that other committers have signed their work over to you implicitly, or does each committer retain the copyright on their part? what do you prefer to be the case? | 20:13 | |
geoffb | OK, just added a STATUS doc to root dir (r5871). I could use some help filling in more sections, and fixing any details I just plain misremembered. | ||
^conner | autrijus, I can confirm that README is correct about GHC on amd64... GC is definately hosed but the suggested work about seems to work | 20:14 | |
autrijus | ^conner: woot | 20:19 | |
svnbot6 | r5871 | geoffb++ | First cut of STATUS doc, to let people know what's up with various parts of the pugs world | ||
autrijus | Darren_Duncan: No, license declarations in ext/ automatically override the one in README | 20:20 | |
Darren_Duncan: if you are concerned, reflect this in ext/README or in README itself | |||
ooh, geoffb++ | |||
geoffb | :-) | 20:21 | |
theorbtw1 | DD: At least in the US, copyright cannot be signed over implicitly, it takes a written declaration to do so. | 20:22 | |
That's one reason I try to keep people's real names in AUTHORS -- each of those people can be assumed to have some copyright interest in Pugs. | 20:23 | ||
20:23
theorbtw1 is now known as theorbtwo
|
|||
putter | I've noticed pugs is currently fudging a lot of copyright issues. For instance, some folks may have "employer owns shower songs" IP contracts at work. Which is why gnu requires(?) "employer says its ok" notes, even for stuff done on ones own. | 20:28 | |
theorbtwo | pugs is rather deliberatly a low-administrative-overhead project. | 20:29 | |
This does, of course, increase the likelyhood that somebody's employer will sooner or later do something obnixious of that sort. | 20:30 | ||
Of course, it also keeps the patches rolling in. | |||
PerlJam | So far I think that pugs is completely withing fair-use territory anyway. | 20:31 | |
Until someone decides to use it in a production environment. | |||
^conner | autrijus, are you going to OSCON this year? I don't think I say you on the speaker's schedule | 20:32 | |
s/say/saw/ | |||
dada | ^conner: neither did I saw Larry Wall, but he's there too | ||
^conner | dada, Larry's not listen as a keynote speaker thou | 20:33 | |
dada, I wonder if he's not feeling well again | |||
dada | dunno | ||
^conner | I've had trouble with my stomach too, it's miserable | ||
putter | re low overhead, yes. and happily so. but there will have to be a normalization at some point. for which will need something heavyweight for everyone who has created a large body of code, even the final version only has a derivative of it. | ||
PerlJam: err, IANAL, but commercialness is only one component of fair use. If iblech say has an unfortunate employment contract, then we are already in trouble. | 20:36 | ||
PerlJam | putter: perhaps. | 20:37 | |
It's good that pugs is only a bootstrapping effort then ;) | |||
autrijus | ^conner: I prefer going to .eu nowadays :) | 20:38 | |
^conner: so I'll be in euroscon but not the portland one | |||
putter | Of course, the biggest threat would be autrijus signing an employment contract with an unfortunate IP clause. ;) | ||
clkao giggles at autrijus | |||
i know you love me! | |||
but don't say that to everyone! | |||
autrijus | heh. | ||
^conner | autrijus, going to .eu confernece is a ton of paperwork for me... i'll be going to portland ;) | 20:39 | |
autrijus | ^conner: ingy will be there to speak as my proxy | ||
clkao | ^conner: are you from dodgy country that requires hateful visa work like me? | ||
^conner | autrijus, ingy is your minion now? does he know? | ||
autrijus | putter: nah, past licensing = irrevocable | ||
clkao | and sky/acme will be my proxy speaking at oscon | ||
^conner | clkao, no, I'm a state employee and international travel requires a pound of flesh | 20:40 | |
autrijus | ^conner: sure, and we both were damian minions. it's turtles all the way down | ||
clkao | a pound money or a pound weight? | ||
^conner | autrijus, rofl | ||
clkao | i can easily sponsor you a pound money flesh | ||
autrijus | clkao: you can as easily sponser a pound of other animal's flesh too | 20:41 | |
^conner | autrijus, everybody who's met damian becomes his minion ;) | ||
clkao | autrijus: ya, but i guess i can't post them to the us. | ||
autrijus is composing a relevant but hard-to-word post to p6l | |||
clkao | autrijus: i need to wire with your brain in eurooscon | 20:42 | |
^conner | Damian's p6 talk series in 2000 is what really turned me on to perl in the first place | ||
geoffb | pdcawley, ping | 20:43 | |
autrijus | clkao: sure | 20:47 | |
^conner | clkao, flesh | ||
svnbot6 | r5872 | gaal++ | documentation for config.yml (per geoffb's suggestion) | 20:48 | |
ingy | ^conner: autrijus is actually *my* minion. He wrote my oscon talk. :p | 20:52 | |
PerlJam | minions++ | 20:54 | |
gaal | well you know the full title of the pope | ||
Bishop of Rome, | |||
[time passes] | |||
Servant of the Servants of God | |||
autrijus | hmm mutually recursive minions. | 20:56 | |
Darren_Duncan | okay, I was away for a bit ... | 20:58 | |
my reason for asking the copyright question actually concerned the Rosetta-in-version-control thing | |||
to keep things simple at my end, I would like to get a written statement from all committers to the project that says any copyright on their contributions to the project is assigned to me, so in the end I have the sole copyright on it | 21:00 | ||
I was asking about the Pugs situation to see if there was a precedent for me to do something like that | |||
meanwhile, my assumption has been, Pugs included, that anyone's contributions belong to them if they don't explicitly sign them over ... | 21:01 | ||
autrijus | Darren_Duncan: the usual way is to require contributors to place the code under the same license | ||
Darren_Duncan | so I'm not concerned about Pugs for my sake ... my /ext stuff is stated to belong to me ... and anything in the core as yet I don't have any interest in | ||
autrijus | and/or sign to you a nonexclusive, worldwide, irrevocable, | 21:02 | |
# royalty-free, perpetual, license to use, copy, create derivative | |||
# works based on those contributions, and sublicense and distribute | |||
# those contributions and any derivatives thereof. | |||
(copy/pasted from the standard RT boilerplace) | |||
Darren_Duncan | yes, that works most of the time ... but, selfish as it may sound, I would like the exclusive right to release Rosetta under other licenses | ||
autrijus | that is what the clause gets you. | ||
"sublicense" | |||
Darren_Duncan | while the GPL with exception for independent components is still the default for release, that no one can change given the GPL's rules | 21:03 | |
autrijus | right. that's a popular view; see MySQL, Sleepycat, among others. | 21:04 | |
Darren_Duncan | yes, in the near term I wanted to do it as MySQL does | ||
autrijus | I conciously avoid all this in Pugs -- in fact I'd adopt the Sqlite license if not for the cultural value of Artistic2 | ||
but it's because I'm optimizing for fun not profit :) | |||
s/Sqlite license/SQLite antilicense/ | 21:05 | ||
Darren_Duncan | of course, I may not actually exercise my right to multi-license, I just want to be left the option | ||
gaal | antilicense is not a good name | 21:06 | |
autrijus | counterlicense? | ||
gaal | the sql blessing is very licentious :) | ||
PerlJam | autrijus++ nice message regarding PIL | ||
autrijus | PerlJam: thanks. :) | ||
gaal | (in one sense of the word) | ||
or maybe not actually. | 21:07 | ||
words, words, words. | |||
Darren_Duncan | I'm actually doing Rosetta etc partly for fun too ... I enjoy working on it ... but at the same time, it forms a foundation for my planned new business | ||
gaal | is freepan still active? | 21:08 | |
Darren_Duncan | as they say, try to make a living doing what you enjoy | ||
autrijus | nodnod. that's very worthy goal | ||
gaal: ask ingy and/or gugod not me :) | |||
although I doubt ingy is working on it actively | 21:09 | ||
gaal | winning bread is totally okay, of course, D_D | ||
but perhaps your project is very yours and ext/ isn't the best place for it? | 21:10 | ||
autrijus | it's up to the author to decide really | ||
Darren_Duncan | I don't have a problem with ext/ | ||
I see ext/ as being a mini-cpan or sorts | 21:11 | ||
and part of the reason I am involved here is to help test Pugs, so including it there makes the most sense | |||
it is only in the long term that I anticipate distributing separately | |||
gaal | sure, that has proven very useful | 21:12 | |
but what you're aiming for in commit-waives-copyright is kinda different from most other stuff in pugs... | 21:13 | ||
Darren_Duncan | currently I see my Perl 5 modules to still be the main versions, and the stuff in /ext is a p6ified clone of those, all aspects included, code, docs, tests, and license | 21:14 | |
theorbtwo | I agree, if you want a differnet copyright policy then the rest of pugs, that's fine with me... but put it in a differnt repo, then. | 21:15 | |
That way you can get the release from people before giving them a commit bit. | |||
(At least make sure they have the same understanding as you.) | |||
Darren_Duncan | to be clear, I am *not* assuming commit-waives-copyright with anything in Pugs, including what I put in /ext | 21:16 | |
theorbtwo | Oh. | ||
OK then. | |||
Darren_Duncan | everything in Pugs is still under the same rules | ||
gaal | that said, it's totally worthwhile hearing about test results in pugs even from external modules; maybe the test consolidation service can service those too. | 21:17 | |
Darren_Duncan | the policy I mentioned is for when I start an independent repository for the Perl 5 Rosetta | ||
however, aside from a bit of twiddling, no one ever edits my /ext stuff anyway, so it doesn't matter | |||
Aankhen`` | G'night. | 21:20 | |
Darren_Duncan | fyi, the only thing I assume about my /ext stuff is that it has a different license than the rest of Pugs, and people editing my ext/ stuff are subject to that license ... they still keep ownership anyway | 21:21 | |
gaal | fair enough. | ||
Darren_Duncan | anyway, I'm switching to another task ... ping if you want my attention | 21:23 | |
autrijus | reading scala.epfl.ch/docu/files/api/index.html feels like flipping thru a puzzle book to the end to look at the solutions. | 21:47 | |
putter | direct links in the web list browser dont seem to work, so I just note news.gmane.org/gmane.comp.lang.scala 07-01 "Our plans for Scala" was interesting. | 22:22 | |
autrijus | putter: nod. looks active | 22:51 | |
Scala is very well thought out. | 22:52 | ||
if perl6 is statically typed, it would look a lot like scala :) | |||
autrijus is playing with Gwydion Dylan | 22:54 | ||
from dylan wiki: | 22:55 | ||
"Java was successful enough in its own niche, as a Strongly Hyped Language" | |||
autrijus ponders soft hyping and dynamic hyping | 22:56 | ||
ayrnieu | Java's lasting success will be that it helped, in a small way, the growth of a decent enough language. | 22:57 | |
autrijus | yup. | ||
and java 1.5 is not bad really. it just require a strong typist for its strong typing. | 22:58 | ||
ayrnieu | I like how Perl and Haskell have common ground in not having annoying type systems :-) | ||
autrijus | Haskell achieves this by really clever inference, and Perl achieves this by having only five nonextensible base types :) | 22:59 | |
(@$%&*, respectively) | 23:00 | ||
svnbot6 | r5873 | putter++ | Improved adverb support. Adverbs before/within/after parameter lists hopefully now work. adverbial_modifiers.t has many new tests, to which you are encouraged to add. Adverbs on operators are still unsupported. | ||
autrijus | ooh. putter++ | ||
gaal | opal.cabochon.com/~stevey/sokoban/ # JVM language shootout, interesting read | ||
autrijus | hm, no Scala there | 23:01 | |
although there's Nice | 23:02 | ||
gaal | true, i just looked in the Scala page and thought about it when i saw it targets the jvm | ||
autrijus | opal.cabochon.com/~stevey/sokoban/d...-nice.html # nice read, esp. in light of p6 | 23:05 | |
"named and optional parameters -- another reason Java sucks so badly. That's it -- I think I'm switching to Nice." | |||
gaal | python++ # giving us good things to steal | ||
btw i picked that atricle series up from www.livejournal.com/community/evan_tech/ which has lots of goodies. | 23:06 | ||
autrijus | hrm between Scala and Nice, it looks like a lot of foundation-class problem in Perl6 is already solved | 23:07 | |
esp. Scala's traits/roles and Nice's MMD | 23:08 | ||
but none of them tackles soft typing. afaics only Boo and VB.Net tackles it, but not as rigorous as I'd like | 23:10 | ||
putter | soft typing? | 23:11 | |
autrijus | oh, maybe cmucl too. it finally finished installing | ||
putter | sbcl is often a much easier install. | 23:12 | |
autrijus | putter: a language that starts as a dynamic, very-late-binding setting, but as you provide more type annotations, it gradually become static | ||
okay. | |||
putter | ah. | ||
incremental typing. | |||
autrijus | right, aka incremental typing | 23:13 | |
gaal | boo.codehaus.org/Duck+Typing presents it the other way around | ||
but i guess that doesn't matter much | |||
autrijus | gaal: exactly | ||
putter | gaal++ # interesting shootout, articles | ||
autrijus | "soft" means you can mix libraries with different level of staticness. | ||
for example, DBI.pm may be very statically typed, and CGI.pm may be not typed at all. | |||
putter | k | 23:14 | |
autrijus | while "incremental" emphasises that when one starts coding, one'd like dynamic language's whipuptitude, but as refactoring proceeds, static types gradually become a neccessity | ||
nothingmuch | evening | 23:15 | |
nothingmuch is having trouble | |||
ayrnieu | (Sokoban is pretty fun to implementation, actually.) | ||
nothingmuch | stupid old hardware | ||
no firwire, no dvd == no way to install OS properly | |||
ayrnieu | s/ion// | ||
nothingmuch - installing OSX on a mac? What version OSX? What model mac? | 23:16 | ||
nothingmuch | tiger | ||
1st gen clamshell ibook | |||
i tried ripping out the DVD from a desktop and putting it into an external HD box | |||
that has USB | |||
gaal needs sleep, badly! --more-- | |||
putter | lol. boo implicit duck typing option... -ducky | ||
pdcawley | geoffb pong | ||
nothingmuch | but that didn't work (i think too little power) | ||
ayrnieu | yay, Tiger. That's curious, though: I'm sure that my g3 Ruby iMac does not have DVD. Why do you need that or firewire? | 23:17 | |
pdcawley doubts the necessity for static types... | |||
nothingmuch | i need a dvd because tiger comes in dvd format | ||
or i could put the target machine in firewire disk mode | |||
ayrnieu | oh, that's a neat change. | ||
nothingmuch | and then install it that way | ||
autrijus | "intercept duck typed method calls using IQuackFu" |