Camelia, the Perl 6 bug

IRC log for #darcs, 2007-03-06

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

All times shown according to UTC.

Time Nick Message
09:48 CosmicRay drat, an "impossible case" trying to tailorize tailor.
09:48 CosmicRay how ironic is that
14:31 pbx When the FreeBSD port for darcs asks me if I want to "install server", is it talking about this?  http://www.equational.org/darcs-server/
14:31 lambdabot Title: Darcs-server
14:36 Igloo Probably; you certainly ought to be able to answer no and end up with a working darcs
14:36 pbx Igloo: Alas, no -- for other reasons.
14:36 pbx ===>  ghc-6.6 unsupported at the moment.
14:36 pbx *** Error code 1
14:48 ^self heh.
14:54 pbx It's a bummer!  I got it to install on my 6.1 box, but not on 4.11 (work).
14:55 Igloo Wow, being 2 major OS releases behind sounds scary...but then, I am a Debian user
14:55 pbx 5.x doesn't really count :)
15:02 ^self wait, i'm updating my ports in the other window
15:02 ^self why do you need 6.6?  oh, are you on amd64?
15:03 ^self oh...4.11
15:03 ^self .if ${OSVERSION} < 500000
15:03 ^self #DISTFILES+=    ${BOOT_DIST4}
15:03 ^self IGNORE=         unsupported at the moment
15:03 ^self try uncommenting DISTFILES and commenting out IGNORE?
15:04 ^self 4.11 really is obsolete
15:04 ^self no updates, no more ports support, nothing
15:07 ^self sad that my freebsd box is a 2ghz celeron
15:07 ^self so. slow.
15:07 ^self good thing i mostly use it just for mail
15:07 pbx ^self: I'll probably just hold off until we upgrade the box to 6.x.
15:09 ^self i was fooling around with haskell (and using hugs) back in 1996/1997 -- my last years in college
15:09 ^self but then, i dunno, i stopped somewhere
15:09 ^self never got back into it
15:12 pbx Haskell is very cool. I decided to learn a bit of it this year just for mind-stretching.
15:14 ^self i had some water damage near my bookshelf late last year
15:14 ^self nothing too terrible
15:14 ^self but it made me go through my books again
15:15 ^self and i decided to finally finish the little/seasoned schemers
15:15 ^self i figure, i'll complete the seasoned schemer, then do ullman's ml book
15:50 joelr1 good day folks! how do i unapply recorded patch to my current repo?
15:50 joelr1 i would like to remove patches one by one until i get back to a working version of a file
15:51 Igloo unpull
15:52 joelr1 does it matter that i recorded patches locally and pushed them to the remote repo? is it still unpull?
15:52 joelr1 Igloo: thanks, trying...
15:53 Igloo Still unpull (also called obliterate if you prefer)
15:54 joelr1 Igloo: thanks again!
16:15 kc5tja ^self: Dude, my box at home is an 800MHz Athlon, SLOT A (yes, you read that right), which I use for everything from web browsing to playing DVDs, to ...  Just what kind of mail are you reading that it makes it so slow?!
16:29 pbx I solved my darcs problem -- my FreeBSD server has linux-binary-compatability turned on, so the static binary (http://evan.martin.googlepages.com/home) works for me.
16:29 lambdabot Title: evan.martin - darcs binaries
16:31 pbx is happy not to have to use something else...
19:03 CosmicRay arggh..  it should not take 1GB of ram to pull the very first patch on http://darcs.complete.org/debian/bacula under tailor
19:03 lambdabot Title: Index of /debian/bacula
19:05 CosmicRay I don't understand.  I can darcs get the first 250 patches in the repo and that works fine.
19:06 CosmicRay but darcs init, and then darcs pull the first patch only, and it uses gobs of ram.
19:06 kc5tja As I understand things, darcs pull on a specific patch will (1) grab ALL patches, then (2) roll back all patches after the specified patch.
19:09 CosmicRay yipe.
19:10 CosmicRay I think that is what get does, actually
19:11 kowey darcs get works that way, but i don't think this is the case for darcs pull
19:11 kowey you can try darcs init'ing a blank repository and just pulling one patch
19:11 kowey is guessing
19:11 kc5tja 11:07 < CosmicRay> but darcs init, and then darcs pull the first patch only, and it uses gobs of ram.
19:11 kc5tja Looks like that's already been tried.
19:12 kowey oops! sorry, not reading carefully enough
19:12 kc5tja :)
19:12 kc5tja isn't awake yet either.  I don't start becoming fully conscious until after lunch.
19:12 kc5tja (Breakfast provides just enough fuel to get me through til then.  :) )
19:13 CosmicRay shows what frame of mind I'm in; I first read that as "fully conscious until after branching."
19:13 kc5tja Haha -- to the unaided eye, that would be the type of thing that a machine language coder would say.
19:14 kc5tja <-- loves assembly language coding.
19:14 CosmicRay heh, I hadn't even thought of that possibility.  I was thinking of branching in the vcs sense
19:14 kc5tja is reading up on SequenceL, APL, and J and so forth now.  VERY fascinating, and for the first time, I understand how fully implicit iteration over vectors and matrices work.  
19:14 CosmicRay <-- hates assembly language coding
19:14 kc5tja is so bad when it comes to math, which is odd, since I got straight As in college and highschool math classes.
19:15 kc5tja And, of course, to understand any functional language, you need a solid background in math.
19:15 kowey that's a rather large patch...
19:15 CosmicRay kc5tja: I say that to understand math, you need a solid background in a functional language ;-)
19:16 kowey i have a pretty poor background in math, i can sort of use a functional language... maybe not understand it
19:16 kc5tja CosmicRay: Funny you mention that -- I'd LOVE to find a book on (Linear) algebra that uses J as a language to help teach it.
19:16 CosmicRay heh
19:16 kc5tja That would give me incentive to download and play with it.
19:17 kc5tja I heard that there was a book on teaching Calculus using J, which introduced the concept of *fractional* derivatives (not partial derivatives).
19:17 kc5tja (e.g., it's possible to take the 1.5th derivative of a function, for example)
19:17 kc5tja Don't ask me to explain -- I haven't read the book, much less find a way to visualize it.
19:17 kc5tja Or, for that matter, to even consider applications for it.
19:18 sieni well, they are used in various places in analysis
19:18 CosmicRay kc5tja: you may find this of some interest: http://changelog.complete.org/posts/339-Why​-I-Love-Haskell-In-One-Simple-Example.html
19:18 kc5tja sieni: Interesting; I actually didn't know such a thing could even exist.  The whole idea of a fractional derivative is totally alien to me.
19:18 lambdabot Title: Why I Love Haskell In One Simple Example - The Changelog, http://tinyurl.com/yo57sn
19:19 kc5tja CosmicRay: Checking.
19:19 CosmicRay this is more down-to-earth, but a nice demonstration of haskell's numeric typeclasses
19:19 kc5tja Oh, I'm already familiar with typeclasses in general, and I definitely love them.
19:19 kowey CosmicRay: it might interest you to know that eps files are treated as binary by default
19:19 kowey i thought i submitted a patch for that...
19:19 CosmicRay that is probably a good thing
19:19 CosmicRay in this case, actually.
19:19 CosmicRay in general, maybe not
19:20 kowey oh, ok... i saw some huge hunks, and eps, and just assumed they were related
19:20 CosmicRay kc5tja: yeah, I just thought it was very sweet that it's so easy to define new numbers that carry units with them
19:21 kc5tja CosmicRay: Just think of how much that would have helped the developers of the mars probe that we lost.  :)
19:22 sieni kc5tja: well, if you consider that taking n derivatives is basically multiplication by x^n (modulo constants) on the Fourier sides, then you might wonder, what happens when n is not an integer.
19:22 kc5tja Does it perform compile-time checking of units?  E.g., attempting to add meters to inches produces a compiler error?
19:22 kc5tja sieni: What you just said means nothing to me, sorry.
19:23 kc5tja sieni: I managed to go through Calculus II in college, before having to drop out.  I barely grok power series.  :)  Concepts like "Fourier sides" are not known to me.
19:24 sieni well, I apparently expressed myself in a very confusing manner
19:25 sieni kc5tja: http://en.wikipedia.org/wiki/Fourier_tran​sform#Analysis_of_differential_equations
19:25 lambdabot http://tinyurl.com/27n3g
19:26 kc5tja sieni: I'll put that on my list of things to read; I am still not quite finished with the paper I'm reading now.
19:26 kc5tja (about 15 more pages).
19:26 CosmicRay kc5tja: hehe
19:30 kc5tja It's funny reading up on the comparison between SequenceL and APL.
19:30 kc5tja In the description, they give a one-liner APL function to find prime numbers.
19:30 kc5tja THen they explain how to do the same thing in SequenceL, but it requires two definitions of code, and the introduction of free variables.
19:31 kc5tja Then they write things like, "We can easily define things in SequenceL that exist in APL."
19:31 kc5tja I thought the whole purpose of a language report is to promote your own language, and not someone else's.  :)
22:31 malsyned So this article, http://bryan-murdock.blogspot.com/2007​/03/cutting-edge-revision-control.html which made it to the front page of reddit compares four RC systems and darcs comes out looking really good.  He then says "Darcs still reportedly has a deep, serious bug. Don't use it (though it is nice)."  There's no further context.  Any ideas what deep, serious bug he's referring to?
22:31 lambdabot Title: Cyclopedia Square: Cutting Edge Revision Control, http://tinyurl.com/yvgeyp
22:32 kc5tja malsyned: I'm *assuming* it's the "bug" where darcs takes forever on mammothly huge patches.
22:33 kc5tja However, just because it sucks RAM and takes forever, doesn't necessarily make it "buggy" in the sense of incorrectness; huge patches take forever to apply, but they DO apply, and they do so correctly.
22:33 malsyned geez.  I was expecting something like "the theory of patches guarantees that your most important change will be silently destroyed".  That may be deep, but it doesn't strike me as nearly serious enough to warrant a "don't use it" warning.
22:34 kc5tja manages a 170MB website with darcs, which contains sub-repositories as well, and darcs has yet to fail me in any way.
22:34 malsyned sub-repos?  how does that work?
22:34 kc5tja mkdir foo
22:34 kc5tja darcs init foo
22:34 kc5tja err
22:34 kc5tja let's try again.
22:34 kc5tja mkdir foo; cd foo; darcs init foo
22:34 kc5tja mkdir bar; cd bar; darcs init
22:35 kc5tja echo "test" >blah
22:35 kc5tja darcs add blah; darcs record -a -m "testing added"
22:35 kc5tja ( at this point, the "inner" repository is recorded, but the outer repository has been touched. )
22:35 kc5tja cd ..
22:35 kc5tja darcs record -a --look-for-adds -m "Recording the inner repo changes"
22:35 kc5tja That's basically it.
22:36 kc5tja So, my website on my local box is located in /v/sites/falvotech.com, which is itself a Darcs repository.
22:37 malsyned so, changes to the inner repositories also get recorded as changes to the outer repository, as long as you look-for-adds?
22:37 kc5tja Within that, I have /v/sites/falvotech.com/content/cut, content/kestrel/2/firmware, content/kestrel/2/emulator, etc.
22:37 kc5tja Each of these are separate Darcs repositories.
22:37 kc5tja Yes.  The outer repository is never updated automatically; you have to manually "record" in that repo as well.  This is because, as far as Darcs is concerned, the inner repos are just normal data files like any other.
22:39 malsyned seems like that would interact poorly with 1) allowing gets from both inner and outer repos, and 2) subrepos with all kinds of non-rc'd files in them.
22:41 kc5tja It works fine for me.
22:42 kc5tja I make no claims that this is suitable for everyone though.
22:42 kc5tja It works for me because:
22:42 malsyned Yeah, I can see it working great for some use cases, and being unworkable for others.
22:42 kc5tja 1) Inner repos don't track non-RCed files.  This is good, because it keeps things like .o files and so forth out of the source distribution.
22:43 kc5tja 2) Outer repo, because I use --look-for-adds, DOES record the .o files, which is good, because if I make a major fubar, I can recover by checking the site out again.  :)
22:43 malsyned Oh, in the comments for that article he provides a link to the problems with darcs he was talking about.  He links to http://zooko.com/darcs_demystified.html and points to the section "Darcs in practice", subsection "Troublesome Corner Cases"
22:43 lambdabot Title: Darcs Demystified
22:44 kc5tja I'll have to read that article as I get the time.
22:44 kc5tja Currently at work, so can't spend too much attention on reading at the moment.  
22:44 kc5tja Too busy writing.  :)
22:45 malsyned no problem.  it's two corner cases where two different people commit a sequence of patches that result in exponential runtime behavior on any repo with those patches.
22:49 malsyned hey, what is a partial get, anyway?
22:51 kc5tja Partial gets are used in conjunction with "checkpoints."
22:51 kc5tja Basically, a checkpoint is a "snapshot" of a repository with all patches up to that checkpoint already applied.
22:52 malsyned ah.  gotcha.  thanks.
22:53 kc5tja So instead of grabbing 1000 patches, you get only the last 250.  :)
23:02 sockmonk kc5tja: in your 'parent' repo that you were talking about, does it treat the sub-repo _darcs directories like normal directories, or do you have those flagged as boring in the parent repo?
23:08 kc5tja For my purposes, I treat them like normal, every-day directories.
23:08 kc5tja I use the outer repository as an archival mechanism.

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