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"