00:01:36 -!- saccade [n=saccade@dhcp-18-111-3-86.dyn.mit.edu] has quit [Connection reset by peer] 00:01:43 saccade_ [n=saccade@dhcp-18-111-3-86.dyn.mit.edu] has joined #scheme 00:01:56 sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 00:04:43 jcowan: That unfortunately works more often than not. 00:05:15 -!- sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 60 (Operation timed out)] 00:07:45 sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 00:08:09 jcowan: Also, just so you know, my email wasn't meant to completely attack your ideas, more like provide as heavy a criticism of them as I could, in order for you to persuade me one way or another. 00:10:29 -!- sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 60 (Operation timed out)] 00:10:49 Okay, though you might have said so. 00:11:15 jcowan: Hehe, that would ruin the fun, and I admit that I was writing it really fast, as I don't have as much time for these discussions as I would have liked. I'll make a proper e-mail response when I can. 00:11:19 *jcowan* promises to cease using arcfide's email as an Awful Example of Standards Fundamentalism. 00:11:35 jcowan: Please continue. 00:11:39 :-) 00:12:14 I do have a rather conservative approach to the standard, but I'm not opposed to adding things to standards. 00:12:42 I just think it's a lot easier and would work better if we could just stop trying to make a single standard, though I understand why that's so desirable. 00:13:43 I very much think that a simple R5RS or IEEE base would be a good start (just from tradition), and then having everything else progress somewhat independently of each other would be nice. Meta or collective standards could be defined later and as needed. 00:14:06 Anyways, I'm going to go eat something. 00:15:41 -!- saccade_ [n=saccade@dhcp-18-111-3-86.dyn.mit.edu] has quit ["This computer has gone to sleep"] 00:16:49 -!- masm [n=masm@bl5-107-154.dsl.telepac.pt] has quit ["Leaving."] 00:17:48 jcowan, I hope that the Scheme _report_ does not constitute much innovation. 00:18:46 Neither do I, but what is innovation? 00:18:47 s/constitute/comprise/1 00:19:05 Does incorporating a small, well-tested, highly used, broadly available SRFI count as innovation? To me, no. 00:19:16 Indeed not. 00:19:39 The only real innovation in my thing-one proposal is blobs, and I had a reason for including them that I am not yet prepared to publicly defend. 00:20:04 OK. You had mentioned (yourself as) an innovator recently to arcfide. 00:21:48 In connection with (lambda n (...) ...), yes. But that is jcowan the inventor, not jcowan the would-be standardization participant. 00:22:05 OK. 00:22:24 Indeed, blobs come from a SRFI too, and they are a perfectly good basis for SRFI-4 homogeneous arrays, as we demonstrated together the other day. 00:22:28 (`Would'?) 00:23:06 Eh? 00:23:16 Oh, never mind. 00:26:58 -!- mrsolo [n=mrsolo@209.131.62.113] has quit ["Leaving"] 00:38:33 -!- merus [n=merus@c-67-175-45-120.hsd1.in.comcast.net] has quit [Remote closed the connection] 00:49:02 -!- rudybot_ is now known as rudybot 00:55:18 jcowan: (contract (-> integer? (values integer? string? fardle?)) (lambda n (values (car n) "ehn" (make-fardle n))) 'foo 'bar) 00:57:39 .oO("ehn"?) 00:57:40 http://cuteoverload.com/2006/04/07/the_definition_/ 00:59:25 I love that site <3 01:00:50 *offby1* makes another note in his "identify synx" file 01:01:27 ...you honestly can't identify me 01:02:09 sure I can: you're synx. 01:02:11 Ha, gotcha 01:02:58 o noes 01:06:23 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [] 01:08:04 jcowan: Now that R6RS is out, among other things, people have tested bytevectors in a pretty large scale, and I'm not sure that blobs or the like are that untested or innovative, unless you mean something different? 01:11:53 I meant innovative relative to R5RS, which was my baseline. 01:11:57 was/is 01:12:48 jcowan: Well, I think we now ought to consider the experiences learned from R6RS, not just that we don't want to continue to rely on it, but also take specifc experiences with the libraries used. 01:12:49 -!- Nshag [i=user@Mix-Orleans-106-1-159.w193-248.abo.wanadoo.fr] has quit [Remote closed the connection] 01:12:59 jcowan: For example, the...eherm...I/O system. 01:13:18 Yes. I'm going to post my proposal for extending R5RS I/O shortly. 01:13:37 jcowan: Shouldn't that be in a SRFI? :-) 01:13:53 It comes from r6rs 01:13:57 but very small 01:14:20 -!- MononcQc [i=MononcQc@modemcable062.225-20-96.mc.videotron.ca] has quit ["DOWNLOADING NEXT VERSION OF INTERNET"] 01:14:34 delete-file file-exists? port-position set-port-position! {read,write,peek}-u8 read-line and SRFI-6 for blobs. 01:16:20 I'm coming around to your position of "everything optional", but with this condition: "our way or not at all". You can omit cons, but you can't provide a different procedure and call it cons, at least in the startup enviroment. I think that's what you meant by "standard interfaces" 01:19:12 jcowan: Yes, that any feature, if provided must be provided in at least the way that the standard specifies. 01:19:35 Now that I have my paws on IEEE, I'll be interested to see their take on that. 01:20:04 Of course, nothing stops an implementation from having their own custom definitions of things, but that doesn't mean they can say "We have cons" if it's not the cons referenced in the standards. 01:20:18 To be honest, the IEEE standard isn't very interesting. It's not much different from the R4RS (minus anything about macros), and it has more mistakes and typographical vagaries. 01:21:33 I'd be just as happy if the SC said "R4RS", but they did not. 01:21:56 Said that where? 01:22:02 -!- jonrafkind [n=jon@crystalis.cs.utah.edu] has quit [Read error: 60 (Operation timed out)] 01:27:57 Gosh, tmux might actually be usable if you could distinguish the active screen by something more than a tiny "*". 01:28:19 zbigniew: OpenBSD loves tmux, and they've made it a part of the base install over Screen. 01:29:06 OpenBSD loves tmux because of the license. 01:29:40 zbigniew: Partly, I am sure, but they also rave about it being much more useful and having more features than screen. 01:29:55 zbigniew: Also note that they have made a few patches to it to fix some of the glaring bugs. 01:30:06 Features, such as an unconfigurable window list. 01:30:24 It's not quite the same tmux, the same as cwm isn't quite the same window manager in OpenBSD as the one everyone else uses. 01:31:13 Wonderful. 01:31:56 zbigniew: I don't know how many patches have made it upstream. 01:36:34 -!- tali713 [i=tali713@c-71-195-45-159.hsd1.mn.comcast.net] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 01:36:52 saccade_ [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 01:53:14 perdiy [n=perdix@sxemacs/devel/perdix] has joined #scheme 02:00:53 merus [n=merus@c-67-175-45-120.hsd1.in.comcast.net] has joined #scheme 02:10:48 -!- perdix [n=perdix@sxemacs/devel/perdix] has quit [Read error: 110 (Connection timed out)] 02:10:48 -!- perdiy is now known as perdix 02:22:16 jonrafkind [n=jon@98.202.86.149] has joined #scheme 02:52:56 tjafk2 [n=timj@e176198225.adsl.alicedsl.de] has joined #scheme 03:04:36 aaaah! Too many emails! Can't...filter...noise.... 03:05:16 .oO(Scheme...steering...i/o...flame...must...cancel...list) 03:06:06 What is a `fast forward' update in Git? How do I make one? 03:09:01 -!- tjafk1 [n=timj@e176209037.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 03:23:17 -!- thesnowdog [i=thesnowd@122.110.51.146] has quit [Read error: 110 (Connection timed out)] 03:26:19 Daemmerung [n=goetter@1133sae.mazama.net] has joined #scheme 03:27:33 Riastradh: a "fast forward" happens when your "upstream" is a direct descendant of your HEAD, and therefore when you do "git pull" or "git merge", you're not actually merging; instead, you're just advancing your HEAD ref. 03:27:41 jcowan: Thanks for all of your energy on R7. You the mensch. 03:28:01 you do it with "git pull" or "git merge", but there's no guarantee it'll be fast-forward; you should look at the state of the world with "gitk --all" first 03:28:12 .oO("You the mensch" ... har) 03:28:36 But I can't run `git pull' and `git merge', and I don't want to need some fancy graph visualization just to edit my bloody source code! 03:28:38 "Sit on a chair, sit on a bench; always remember: act like a mensch" 03:28:58 *Daemmerung* still doesn't grok git; shuts up and lissens 03:28:59 I can't run `git pull' or `git merge' because the changes are currently sitting in a bare repository. 03:29:06 Riastradh: why do you need to know that you'll do a "fast forward" in order to edit your code?a 03:29:23 Because `git push' tells me that my update was rejected because it was a non-fast forward update. 03:29:34 and you cannot "git pull"? 03:29:45 That's right: 03:29:46 % git pull 03:29:46 fatal: /opt/local/libexec/git-core/git-pull cannot be used without a working tree. 03:29:51 shiva8 [n=waseir@c-98-220-107-98.hsd1.in.comcast.net] has joined #scheme 03:29:55 but ... 03:30:06 you're trying to push _from_ a bare repository? 03:30:09 So I can't pull any changes from upstream, and I can't push changes to upstream because I'm not up-to-date. 03:30:42 if you've got two branches that need merging, you _must_ merge them in a non-bare repository. There's no other way to resolve potential conflicts. 03:30:46 Yes, offby1. I want a staging repository between the public repository and my working repository so that I can make a mess in my working repository and put my tentative changes in the staging repository, from which to pull them into a build repository to do clean builds. 03:30:56 There are no branches involved here!! 03:31:00 sure there are 03:31:11 all commits are on some branch or other. It's inescapable. 03:31:20 None but the one main branch, or master branch, or HEAD branch, or whatever the bloody hell it is called. 03:31:24 heh 03:31:28 I completely sympathize 03:31:32 despite being a fan of git 03:31:50 forkin' fanboy 03:31:58 c'est moi 03:32:01 wot can I say 03:32:04 All I'm trying to is make a SINGLE CHANGE and TEST IT before PUSHING IT. Is this so bloody hard for Git to manage? I thought Git was supposed to be an improvement on CVS -- that it could do operations like this which CVS could not. 03:32:24 we're just misunderstanding something, I'm sure 03:32:37 so how many repositories are we talking about here? Surely at least tow. 03:32:39 two. 03:32:48 By the way, the reason I have to make it a bare repository is that `git push' refuses to push to it from my working repository unless it's bare. 03:33:00 Three repositories: public (remote), staging (local), and working (local). 03:33:04 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Remote closed the connection] 03:33:07 ok, which of those three are bare? 03:33:30 I don't know what the public repository is, but I presume it's bare, since it's called `ssh://blah.blah.savannah.gobbledigook/foo/bar/mit-scheme.git'. 03:33:36 public probably is, yes 03:33:45 are staging or working bare? 03:33:48 I ran `git clone --bare stage' to make the staging repository. 03:33:53 I ran `git clone stage work' to make the working repository. 03:33:54 ok, so obviously it's bare. 03:33:57 Yes. 03:34:20 so ... can you not "git pull" from -both- public -and- staging -into- working, and do the merge there; then push from there? 03:35:05 I tried `git pull ' in the working repository and it dumped a dozen lines of verbiage at me about branches. 03:35:13 sounds like it succeeded :) 03:35:14 Why can't it figure out that there is ONLY ONE BRANCH? 03:35:19 No, it didn't pull. 03:35:21 really? 03:35:25 can you paste the output? 03:35:26 ]% git pull ssh://git.sv.gnu.org/srv/git/mit-scheme.git 03:35:26 You asked me to pull without telling me which branch you 03:35:26 want to merge with, and 'branch.master.merge' in 03:35:26 your configuration file does not tell me either. 03:35:30 aaah 03:35:32 (There are a bunch more lines of output too.) 03:36:16 All I know is that there's something called `master' and something called `HEAD' involved, and that one or both is somewhat magical, and that the output of the command seems to know about this `master' branch since it talks about it, so why do I need to supply any extra information? 03:36:18 gimme a few minutes; I wanna experiment 03:37:45 Sorry, I shall attempt to cool down a bit. It has been a trifle frustrating to be fighting with Git for nearly a week trying to make, test, and commit a twenty-line change to MIT Scheme. 03:39:29 Do I need to make a branch for every change I want to make, and two commits, one for the actual change and one for the merge? 03:40:06 nope 03:40:23 well actually, the "two commits" _might_ be true; I've never thought about that 03:41:23 thesnowdog [i=thesnowd@122.110.62.22] has joined #scheme 03:41:55 anyway: 03:42:00 (In Darcs, the whole process I have been describing (a staging repository separate from a working repository) just works using exactly the basic commands I guessed, and the only time you need to record a second commit is if there have been upstream changes that conflict with yours.) 03:42:24 retry that "pull", like this: git pull ssh://git.sv.gnu.org/srv/git/mit-scheme.git refs/heads/master:refs/remotes/savannah/master 03:42:59 In the (non-bare) working repository, I presume? 03:43:07 oddly, I tried the "pull" just the way you did it (using a different repository, since I don't have read access to yours) and it worked :-| Maybe we're using different versions of git 03:43:15 Riastradh: yes, in the non-bare working repository 03:43:54 Wow! Git did something! 03:44:03 it got to be git 03:44:16 By the way: 03:44:21 % git --version 03:44:21 git version 1.6.4 03:44:27 OK, now what? 03:44:28 I know you don't want to have to use a graphical thing, but I find "gitk --all" is -very- illumuniating 03:44:42 Riastradh: that's quite current, so I have no idea why we saw different things :-( 03:44:54 illuminating 03:46:19 Um, well, it's slightly colourful in the top-left corner. What am I supposed to do now that I've run `gitk --all'? 03:47:01 oh, that just shows you which branches you have, and "where they are" 03:47:45 But I don't HAVE any branches (except for the single solitary unitary sole main master HEAD branch). 03:47:56 well, now you know where it is :) 03:48:13 I expected that it was on savannah.gnu.org. Where else could it be? 03:48:16 typically you have "remote branches", which correspond to "local branches" on a remote repository 03:48:25 I meant which commit was it pointing to 03:48:30 ...why do branches keep coming up? 03:48:34 I dunno. 03:48:41 I'm not trying to branch anything here. I just want to commit a single change to MIT Scheme! 03:48:57 you'll make a branch whether you want to or not. 03:49:06 Your commit must happen locally, since that's how git works. 03:49:20 Yes... 03:49:31 At least in theory, it's possible that someone will have committed (and pushed) something else before you push your change; thus your change and theirs are separate branches. 03:49:41 But why do I have to care about the upstream changes that happened between when I recorded my commit and pushed it, if the changes don't conflict? 03:49:51 offby1: what do you do if all Tk apps have unreadable fonts on linux forever? :/ 03:49:59 I would think you wouldn't have to care. 03:50:16 synx: dunno 'bout forever, but in the case of gitk, you can type C-+, and they get bigger 03:50:34 Oh hey, neat! 03:50:47 Doesn't affect the widgets though, still gobbledygook 03:50:49 So why do these `Merge branch ``master'' of ssh://blah/blah/mit-scheme.git' commits show up in the history if I'm not supposed to care about them?? 03:51:11 dunno about "not supposed to care". 03:51:20 Well, if I *am* supposed to care, then why? 03:51:20 If you see a commit like that, that's a sure-enough merge. 03:51:35 gitk will show you that it has two mommies^Wparents. 03:52:24 Argh! This is very frustrating for a Darcs user, since Darcs is capable of just putting two patches together and figuring out how they go together without needing to clutter up the history with a third patch. 03:52:34 *offby1* stares blankly 03:52:48 dunno enough about darcs to comment 03:53:20 I think... git "puts the two patches together" preemptively, thus the third "patch"... 03:53:33 If this happened in Darcs, I'd run `darcs pull' in the staging repository, and Darcs would pull in the upstream patches. Then I'd run `darcs pull' in the working directory, and Darcs would pull the same patches from the staging repository. Then I'd run `darcs push' from the staging repository, and my changes would go to the public repository. 03:53:45 No new patches would need to be created -- unless my changes conflicted with changes concurrently made upstream. 03:54:01 Then, of course, it would be necessary for me to record a third patch telling Darcs how to resolve the conflicts. 03:55:36 Riastradh: if you're ever so desperate as to ask questions on #git, allow me to commend "Ilari", "doener", and "sitaram". Patient, calm, helpful. 03:55:45 So I guess this whole idea of a separate staging repository just loses. 03:55:58 I've never worked that way, but I've heard it's common and recommended. 03:55:58 In Git, anyway. 03:56:03 Really? 03:56:06 So I hear. 03:56:11 Recommended by whom? Can you point to any referenceS? 03:56:14 References, even. 03:56:29 not too specifically, but they're almost surely in the stuff available in the main git documentation 03:57:05 (So far the only introduction to Git that has made any sense at all to me is something I stumbled across in a patch sent to a mailing list for submission to the Git or Linux documentation, called `The Git Hater's Guide to the Galaxy'.) 03:57:38 by far the best thing I ever read was http://eagain.net/articles/git-for-computer-scientists/ 03:57:43 that turned the light on 03:58:18 to me, git has the highest usability/UI-quality ratio of anything I've run into 03:58:21 (I turned this up by idly Googling `git hater's', by analogy with the Unix Haters' Handbook, after I had a discussion with Alan Bawden (one of the regular participants on the unix-haters handbook) about Git.) 03:58:24 the UI, as you've discovered, is abysmal 03:58:49 if it makes you feel any better, eli despises it too :) 03:59:47 I tried reading `Git for Computer Scientists', and I didn't want to think about it like a computer scientist -- I don't care about blobs and trees and the technical structure of the DAGs in Git's storage; I want a source control system to manage a history of changes to my directories of files. 04:00:01 well ... all I can say is, it helped me 04:00:48 Anyway, do you have any references to documentation about using a separate staging repository? 04:00:55 nope 04:01:10 all I can say is that I've come across that concept enough times that it strikes me as standard 04:01:16 I didn't set this up because I found it in any documentation; I just thought `I'd like to separate my working directory from where I store the tentative changes that I want to build in a clean repository.' 04:01:49 I'd probably accomplish that with separate branches, but there's nothing wrong with what you're trying to do. 04:01:57 How do separate branches help me? 04:02:03 Riastradh: Your efforts with Git make me somewhat glad that I didn't decide to use it as my own personal VCS when I moved (recently) back away from CVS. 04:02:38 Riastradh: you can have one branch full of experiments and dead ends; and another that's presentable. 04:03:02 I want one place to store tentative changes -- that is, something that will look just like the public repository, except with my tentative changes. I want to derive a clean repository for testing from that place of tentative changes, as if someone else had just run `git clone ' with my changes. 04:03:31 ah, then I guess you indeed want to repositories. That's OK 04:03:35 s/to/two/ 04:03:37 damned keyboard 04:03:49 offby1: Sure, blame the keyboard. It's always the keyboard's fault. 04:03:53 arcfide, what did you settle on? 04:03:57 arcfide: generally, it's the cat's fault. 04:03:57 Riastradh: Monotone. 04:04:19 Riastradh: I have thus far found it bullet proof and highly reliable. As well as flexible and easy to use. 04:05:06 I tried using Monotone once and found myself just as inundated by terminology, diagrams of DAGs, and SHA-1 hashes thrust in my face. (Also, I don't think I succeeded in building it.) Is it more usable than Git? 04:05:23 Riastradh: More useable for me compared to what you are seeing right now! 04:05:30 But then again, what you seem to be going through makes CVS look like a gem. 04:05:36 Riastradh: if I recall correctly, monotone was one of Linus' inspirations for git :) 04:06:03 Riastradh: Let me see if I get this right, you want to have a repository which you can use to test new commits to the public repository, that doesn't have all the potential mess as you working repository has, right? 04:06:09 Yes, arcfide. 04:06:49 So you would do some set of things in your testing repo, and then push some of these to the staging repo, where you could then update your working copy there and test that they are sufficient, before submitting them to the public repo? 04:07:08 Sorry, that's not quite right. 04:07:27 I want a staging repository from which I *make* a building/testing repository, but I want the staging repository to be completely clean except for my tentative changes. 04:07:27 Riastradh: Yes, I did have a bit more terminology to follow at first when moving to Monotone, but I actually discovered that my end workflow was fairly easier and allowed me some extra flexibility that I liked. 04:08:55 Anyway, offby1, I have now looked at `gitk --all'. 04:09:01 So, the you would go Public => Staging => Testing, make tests and changes to testing and then Testing => staging => public? 04:09:12 Sorry, I don't know what those arrows mean. 04:09:25 arrows? 04:09:27 Either a pull or a push. 04:09:33 there are lots of lines in gitk, but I don't remember _arrows_ 04:09:35 Correction: 04:09:38 arcfide, I don't know what those arrows mean. 04:09:42 offby1, that wasn't addressed to you. 04:09:43 ah 04:09:47 offby1: Sorry. :-) 04:09:52 Aha! 04:09:59 I have now pushed the merge commit from the working repository to the staging repository. 04:10:15 Maybe if I run `git push ssh://foo.bar/mit-scheme.git' in the staging repository, my change will, at long last, make its way to the public repository? 04:10:23 maybe ... 04:10:59 Of course, before I do that, I want to run a build. 04:11:00 if the staging repository is a simple copy of the public one, then yes, it ought to go nicely 04:11:08 That will take about twenty minutes. 04:12:31 Riastradh: If I think I understand what you were doing, normally I would have a single local database that I sync with the remote public one, and then I would create a testing branch from the main branch, do my testing, and then have another working repository that I would then propogate the testing changes back to the main branch when they were ready. One workspace would be a clean checkout of the main branch, and the other wou 04:12:31 a testing branch. This seems different than what you are doing, but that is how I think it would go in monotone. 04:14:09 Why are branches involved? 04:14:20 sepult [n=user@xdsl-87-78-31-246.netcologne.de] has joined #scheme 04:14:30 As a convenience for separating out testing code from the code that you want to push upstream. 04:14:37 But that's just how I would do it. 04:14:38 What? 04:14:40 I don't follow. 04:14:43 What is `testing code'? 04:14:49 someone in another channel told me that PLT scheme is not the most 'accomplished' scheme. 04:14:52 *offby1* wonders if "branch" means something very different in git than in darcs 04:14:59 emma: *gasp* 04:15:08 I told them, I thought a good way to go would be to just consider PLT Scheme = Scheme. 04:15:09 emma: who was it? I want their name(s)!! 04:15:10 Darcs doesn't even have a separate concept of branches. 04:15:23 interesting. 04:15:38 The analogous concept is just another repository. 04:15:38 -!- sepult [n=user@xdsl-87-78-31-246.netcologne.de] has quit [Remote closed the connection] 04:15:41 yep 04:15:44 Riastradh: Isn't you end goal to be able to examine a clean tree just as it would look from someone who is checking it out from public, except with the changes in it that you want to push to the public repository? 04:15:45 other systems are like that too 04:15:46 (define accomplished ...) 04:15:47 Because I thought that they made a good point, the lack of portability between schemes makes learning a scheme like a vendor lock in. 04:16:06 Riastradh: But you want to build and test things first, right? 04:16:18 Riastradh: in git, you can do it that way if you want (and you are, in fact, so doing); but it's more common to have lots of lines of development in just one repository, and switch back and forth between them. Hence "branches". 04:16:22 Yes, arcfide. 04:16:42 and if it matters: you don't push and pull _repositories_, but only _branches_. 04:16:43 Riastradh: In Monotone, and I suspect other VCS like Bazaar and Git, it's customary to use a branch for that, I think. 04:16:46 offby1, that's *waaaay* too much mental overhead for me. 04:16:53 Riastradh: 's ok 04:17:03 I have a mental idea of a directory structure on my file system. 04:17:09 This is what they said, "emma: mzscheme (which is the scheme used by PLT) afaik isn't the most accomplished one, when it comes to "real world programs" 04:17:22 A revision control system sits on top of that, and derives information from that directory structure and those files. 04:17:27 sepult [n=user@xdsl-87-78-31-246.netcologne.de] has joined #scheme 04:17:49 Riastradh: In essence, you are creating a branch, by spawning separate lines of development or at least independent lines of development with separate repositories, no? 04:18:00 Then I said this, " I think it might be the leader as far as teaching scheme though. And making scheme attractive. If scheme is a lisp I think that PLT Is leading the larger lisp community in making lisp accessible, interesting, and attractive." 04:18:00 I don't want the revision control system to muck with that directory structure except to perform particular operations such as reverting the changes in a particular file. 04:18:03 No, arcfide! 04:18:18 Hrm, then what *are* you doing? 04:18:53 And then tey said to me, "Bigloo and Gambit seem more used industrially, plus there is Guile and multiple little schemes used internally in many pieces of software (including games)" 04:18:54 Here's what I did with CVS: I made a unified diff of my changes, applied them to the build directory, tested them, and if they worked, ran `cvs commit'. 04:19:14 Riastradh, why not use git? Most of my friends like that one. And even I could figure it out. 04:19:19 Irrespective of the unpleasant nature of branching in CVS, this didn't even *conceptually* involve branches. 04:19:21 emma: with you so far. 04:19:24 emma, I *am* using Git. 04:19:34 *offby1* cackles 04:19:44 Riastradh: I don't understand why you can't just do that now? 04:19:50 synx, well that was that. 04:19:58 emma, I have been trying for most of this week to commit a single test and commit a change to the MIT Scheme Git repository. 04:20:12 synx, it does make me wonder though where does scheme stand with so many impelementations that are not standardized, starting to program means vendor lock in. 04:20:23 arcfide, well, I can, but I thought that one of the great virtues of distributed revision control systems is that they have a formalized way to record changes without simultaneously sending them to the public repository! 04:20:37 Of course. 04:20:48 So I thought I'd take advantage of that, but that has brought great misfortune upon my house. 04:20:53 why doesn't the three main Schemes get together and make themselves compatible for the good of scheme? 04:21:03 Well, if all you wanted to do was commit and track your changes internally without sending them to the public repository, I don't see the need for more than one working directory. 04:21:11 To be honest, I'm nearly ready to do development by recording unified diffs and sending them off to the mailing list. 04:21:12 emma: It's really puzzling to me too. I'm mostly locked into PLT, but haven't had that much of a hard time with Chicken. Haven't tried Guile, but I assume it would be similarly understandable. 04:21:30 arcfide, what? I want to record *and*test* my changes before sending them. 04:22:25 So you want to record *only* the changes that you tentatively want to send upstream, test them outside of any other changes you may be working on right now, and then commit them? 04:22:28 Riastradh: y'know, making patches and sending them via email is also a standard way to use git, as far as I can tell. 04:22:37 offby1: Yuck. 04:22:49 one thing this person also said to challenge my idea that we should just make PLT Scheme = Scheme was that PLT Scheme does not "compile to native code" 04:22:56 Is that true? 04:23:03 emma: mostly not 04:23:06 emma: it has a JIT 04:23:07 -!- csmrfxX [n=pikseli@cs181133068.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 04:23:11 mostly not true? 04:23:12 offby1: One thing I like about Monotone is that you can take in lot's of different patches and suggested changes directly through the VCS, and then approve or dissapprove them for incorporation. 04:23:26 so: it doesn't _write_ native code to the disk, as gcc does; and it might choose to not bother compiling some code. But it indeed contains a native code compiler. 04:23:29 offby1, small difference: I'm ready to do this by running `git diff', not by running `git add' and `git commit' and `git foo' and `git bar' to produce a formal patch. 04:23:52 JIT = just in time? 04:23:54 arcfide: I imagine git works that way too; supposedly it lets Linux and his "lieutenants" do zillions of merges per day 04:24:03 emma, don't fret. 04:24:31 Riastradh: you can make _one_ patch without "git add" and "git commit", but the _next_ set of changes you make will get mixed into that patch, which I doubt it what you want 04:24:48 emma, you can use PLT Scheme without worrying about whether it should be a standard definition of `Scheme', and you should learn to use Scheme before worrying about any formal definitions and standards and all that nonsense. 04:24:59 were I you, I'd do "git add" and "git commit" often, and then make patches from those commits with "git format-patch" 04:25:13 emma: yeah, what George Sanders there said 04:25:40 Riastradh: In Monotone, I would use branches for this, and it would be easy. Say I have proj.main as the main branch of development. 04:25:51 Why do you keep talking about branches??? 04:25:56 emma: now, from what I can tell from the build of MIT scheme that I'm doing at the moment, it indeed writes native code into files (with names ending in ".bin" and ".com", it seems) 04:25:57 -!- sepult [n=user@xdsl-87-78-31-246.netcologne.de] has quit [Read error: 104 (Connection reset by peer)] 04:26:09 (The .bin files do not contain native code; the .com files do.) 04:26:12 ah 04:26:18 1/2 not bad 04:26:24 Riastradh: Becasue they're a way to handle this. 04:26:39 Riastradh: And likely a more Gittish way. 04:26:51 Riastradh: Most of the DVCS I have seen use branches extensively. 04:27:17 Riastradh: if your staging repository is bare, I think you'll have to run "git-archive" in order to do a test build 04:27:30 MIT Scheme is a REALLY TINY project. There are about four remotely active developers, and an average of no more than half a dozen changes per month over the past few years. 04:27:54 There's just one repository and no side projects and nothing that warrants divergent development, i.e. branches. 04:28:00 heck, you could use subversion for that :) 04:28:13 Riastradh: First you would chekcout the main branch, then you would start making changes and testing them, and so forth, commit them to a new testing branch. Then, when you're ready, you would propogate only the changes you wanted to a staging branch, which you would then test and alter, and so forth, and then propogate those to the main branch, and then push the main branch upstream. 04:28:34 Yep. I'd probably have been happier with Subversion, but the other three active developers wanted Git. 04:29:01 Why should I need to run `git archive'? 04:29:10 `git clone' worked perfectly well to produce a build repository. 04:29:58 arcfide, if I substituted `repository' for `branch' there, would that make a significant difference? 04:30:12 Riastradh: You could think of yourself as creating some divergence. one is the path of the mainstream development, which could very well go on while you are making changes to your code. In the DVCSes I have seen, this is considered branching in one way or another. It's just that the conurrent editing of developers is tracked explicitly in the history. 04:30:19 sepult [n=user@xdsl-87-78-31-246.netcologne.de] has joined #scheme 04:30:34 Riastradh: hate to tell ya but the MIT scheme repository has a ton of branches: 04:30:36 $ git branch -a | wc -l => 158 04:30:42 Riastradh: Not really, because in Monotone, each workspace corresponds to some checkout of some branch. 04:30:55 offby1, yes, they're all totally inactive and related to historical side projects and releases. 04:31:15 arcfide, then let's say `workspace' instead of `repository' -- is a `workspace' a single instance of a repository, or something? 04:31:34 -!- sepult [n=user@xdsl-87-78-31-246.netcologne.de] has quit [Remote closed the connection] 04:31:45 It's a single instance of some point along the development history of some path of development. 04:32:31 offby1, take a look at the branches' names. Actually, I don't even know what most of those branches are for; they were probably botched translations from CVS branches. 04:32:39 So, I think that when you think repository, others call this branching. 04:33:40 But in Darcs, every repository is the workspace and every repository can develop along its own path and synch as it pleases with other repositories. 04:33:48 I think Git uses something of the same model. 04:33:58 [I don't know much about Git.] 04:34:08 Aha! I pushed it! 04:34:21 Bravo! 04:35:22 Well, bloody hell. 04:35:29 Now I tried to pull the change into my clean repository, and got 04:35:36 error: Ref refs/remotes/origin/master is at f2b42a44bdb4ba11b97b4d7360fc1031700ba8c3 but expected 6bceccb3d92ab8ca5eb267d95dca74c24b7b1c5d 04:35:40 LOL 04:35:51 Riastradh, you must be cursed or something. 04:36:02 You think they'll recant the choice to move to Git? :-) 04:36:13 offby1, can you pull from the MIT Scheme repository? 04:36:24 (I assume you have it checked out^W^Wcloned already.) 04:36:51 sepult [n=user@xdsl-87-78-31-246.netcologne.de] has joined #scheme 04:37:24 Riastradh: Good luck. 04:38:10 Riastradh: yes, I pulled MIT scheme and am building it now 04:38:23 I'm going to bed. 04:38:41 offby1, do you see any recent changes in the history by me, about fixing error reporting in PARSE-DEFINE-FORM? 04:39:16 hold on. 04:39:38 -!- arcfide [n=arcfide@adsl-99-14-211-8.dsl.bltnin.sbcglobal.net] has left #scheme 04:39:40 unless you're using some alias with which I'm unfamiliar, no. 04:39:46 Grrrmph. 04:40:17 the last few are from Joe Marshall (hey! I read his blog) and chris hanson. 04:40:23 Once you've built it, can you run `./src/microcode/scheme --library ./src/lib' and try evaluating `(define (x))'? (Building it takes about ten minutes on my MacBook.) 04:40:28 ok 04:41:07 -!- shiva8 [n=waseir@c-98-220-107-98.hsd1.in.comcast.net] has left #scheme 04:41:11 hmm, guess I gotta "make install" ; haven't yet done that 04:41:17 No, you don't. 04:41:27 Oh, you don't have an installation of MIT Scheme already 04:41:28 ? 04:42:02 I'm confused; hold on. 04:42:04 You need an installation of MIT Scheme (sufficiently recent) to begin with, and you need to run ./Setup.sh in the src/ subdirectory, but if that's too much, don't worry about it. 04:42:09 I didn't read what you wrote closely. 04:42:17 OK. 04:42:38 1 ]=> (define (x)) 04:42:40 ;The object (#[syntactic-closure 11]) is not applicable. 04:42:42 blah blah 04:42:56 OK. 04:43:02 That's a bug that I just fixed. 04:43:10 Or rather, that I fixed a month ago, and have spent this past week trying to commit. 04:43:19 heh 04:43:36 rcy [n=rcy@S010600179a26267b.wk.shawcable.net] has joined #scheme 04:44:01 peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has joined #scheme 04:47:32 So what happens if you run `git pull' again, offby1? 04:48:11 hole on 04:48:26 crap! 04:48:31 something I've never seen before :-( 04:48:41 Is it by any chance this? 04:48:49 I think you did a "force" with your push 04:48:51 error: Ref refs/remotes/origin/master is at f2b42a44bdb4ba11b97b4d7360fc1031700ba8c3 but expected 6bceccb3d92ab8ca5eb267d95dca74c24b7b1c5d 04:48:54 ! 6bceccb..a679dfd master -> origin/master (unable to update local ref) 04:48:55 Force?? 04:49:05 MononcQc [n=parseido@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 04:49:11 I didn't use ANY jedi powers here, and I'm sure that I don't qualify as a Git jedi. 04:49:11 -!- kilimanjaro [n=kilimanj@70.116.95.163] has quit [Remote closed the connection] 04:49:12 yep, I got that too 04:49:32 "git pull --force" seems to have fixed things up, but I can't explain what happened. 04:49:33 Here's EXACTLY what I ran from the staging repository: 04:49:37 git push ssh://git.sv.gnu.org/srv/git/mit-scheme.git 04:49:42 No `forcing' involved. 04:49:43 hmph 04:49:49 No delaying or lazying involved, either. 04:49:54 *offby1* slaps Riastradh upside the haid 04:50:06 anyway, your commit is clearly in the repository. 04:50:11 Sorry, these are my feeble attempts to keep my humour. 04:50:21 actually, two commits. 04:50:31 one of which is a merge. 04:50:32 One of them is the spurious `Merge ``master'' branch' commit, right? 04:50:35 yep 04:51:26 see, your commit, and Joe Marshall's "xpand calls to CADR, CDDR, etc." were both based on the same parent " 04:51:30 "Forgot to set -arch in AS_FLAGS." 04:51:33 hence the merge 04:51:45 gitk makes it quite clear 04:52:20 I wonder if Matt Birkholz had the same problem as you. 04:52:46 What it doesn't make clear is why Git had to bother me about jrm's changes. 04:52:53 ve_ [n=a@94-193-95-252.zone7.bethere.co.uk] has joined #scheme 04:53:11 what _I_ don't understand is that weird error we both ran into 04:53:21 In Darcs, I'd have run `darcs pull' in the staging repository, and I'd have *seen* the changes, but unless they actually *conflicted*, Darcs wouldn't bother me any further about them. 04:53:33 I've been getting that error just about EVERY TIME I have run `git pull'. 04:53:50 I've asked Chris and Matt about it, and they don't have any clue either. 04:54:08 I'd ask on #git 04:54:15 gotta hand it to you, I've never seen that one before 04:55:39 Can I run `git clone' to create a repository at a particular commit, so that I can experiment with reproducing this? 04:56:01 I'm afraid that if someone else runs `git clone' on the MIT Scheme repository, and then `git pull', nothing will happen, because it will already be at the `current' state. 04:56:24 no, when you run "git clone", you get the whole repository; or at least, all the commits of the branch that the source currently has checked out. 04:56:33 You can _ignore_ commits after the fact by doing "git reset'. 04:57:04 it's true -- if you run "git clone foo" and then "git pull" in rapid succession, the "pull" won't get anything new 04:57:27 "clone", like many things in git, is poorly named. 04:57:56 it doesn't make an exact clone; instead it copies many (but likely not all) the objects, and gives you a different set of branches. 04:58:04 *Riastradh* blinks. 04:58:22 *offby1* laughs cruelly 04:58:45 you can get the other objects & branches later if you want 04:58:52 "git pull --all" probably 05:00:04 Grah. 05:00:35 I tried cloning the repository afresh, running `git reset --hard 6bceccb3d92ab8ca5eb267d95dca74c24b7b1c5d' to revert the state to what it was before I pushed my changes, ran `git pull', and it all worked dandily. 05:01:22 hmm 05:01:26 but 05:01:42 you can't really "clone afresh", since you've now "pushed" to it. It's now different than it was an hour ago. 05:02:03 Yes, but shouldn't `git reset --hard ...' revert^Wreset those changes in my local copy anyway? 05:02:05 -!- merus [n=merus@c-67-175-45-120.hsd1.in.comcast.net] has quit [Success] 05:02:33 hard to answer that, since I don't know exactly what you mean. 05:02:38 I know what it _does_, though. 05:02:46 I have a repository which I called `clean'. 05:03:02 This was supposed to be a totally clean repository in which I do *nothing* but `git pull' and non-destructive commands. 05:03:19 This repository was at commit 6bceccb3d92ab8ca5eb267d95dca74c24b7b1c5d, the one by jrm about avoiding duplicate type checks in ASSQ. 05:03:31 er, repositories aren't "at" a commit. But refs are. 05:03:33 I ran `git pull', and it barfed. 05:03:45 What do you mean they aren't `at' a commit? 05:03:48 I have a directory here. 05:03:49 just that 05:03:55 It has a working tree and a .git directory. 05:03:59 repositories have some number of branches, each of which is at a commit. 05:04:01 Somehow, there is a `current state' here. 05:04:10 When I run `git diff', I get no output. 05:04:15 That means that my working tree reflects the current state. 05:04:15 I suppose if there's exactly one local branch, then you could indeed say that the repository is "at" that commit. 05:04:18 -!- sepult [n=user@xdsl-87-78-31-246.netcologne.de] has quit [Read error: 104 (Connection reset by peer)] 05:04:19 but that's unusual 05:04:32 I don't have any interesting branches, but even if I did, presumably there would be one selected for the working tree. 05:04:42 yes, the one that's "checked out" 05:04:50 And if I run `git diff' and it gives no output, then I presume that the working tree matches the current state of the currently selected branch. 05:04:59 yep 05:05:08 Hence, there is some `current state' of the repository, and if I understand correctly it is fully described by a commit id such as 6bceccb3d92ab8ca5eb267d95dca74c24b7b1c5d. 05:05:35 So can I please use language that is not inundated with the technical verbiage of Git's jargon, just to say what the current state of the repository is? 05:05:43 Or am I actually saying something wrong by doing that? 05:05:49 you _can_ but it may make it harder for a git user to understand you. 05:05:53 sepult [n=user@xdsl-87-78-31-246.netcologne.de] has joined #scheme 05:06:11 To be honest, I don't even KNOW what I'm supposed to say here. I'm not aware of any branching going on. 05:06:22 as I said before: I have no idea why we both hit that error; I've never seen it before. 05:06:33 But anyway, the `clean' repository is in some state. 05:06:33 other than that, though, what I see in the repository looks perfectly fine 05:06:47 It is whatever state I got it in by running `git clone git://.../mit-scheme.git', and then maybe `git pull' a couple of times. 05:06:49 -!- sepult [n=user@xdsl-87-78-31-246.netcologne.de] has quit [Remote closed the connection] 05:06:51 -!- rcy [n=rcy@S010600179a26267b.wk.shawcable.net] has quit [Read error: 104 (Connection reset by peer)] 05:06:53 sure, ok 05:06:59 When I run `git log', the top commit is 6bceccb3d92ab8ca5eb267d95dca74c24b7b1c5d. 05:07:02 ok 05:07:11 -!- luz [n=davids@189.122.90.116] has quit ["Client exiting"] 05:07:12 I don't know how else to characterize the state of this, because I didn't ask for anything more particular. 05:07:22 Now, I want to make another repository in just that same state. 05:07:35 one interesting question is: do you see your original, non-merge, commit in the output of "git log"? It'd be the 4th or so down, I guess 05:07:39 3rd 05:07:59 I thought I could do that by running `git clone git://.../mit-scheme.git', and then obliterating any record of my recent commit by running `git reset --hard 6bceccb3d92ab8ca5eb267d95dca74c24b7b1c5d'. 05:08:09 easiest way to make another repository in the same state: "cp -a clean other" :-) 05:08:11 In my clean repository? No, the third one down is `Forgot to set -arch in AS_FLAGS' by Chris. 05:08:27 ok, so your fix isn't in "clean" 05:08:28 Ah, yes, but that doesn't help someone in #git to whom I want to describe my problem as something reproducible. 05:09:04 reproducibility _may_ be out of the question, now, alas, since the public repository has changed. Your only hope _may_ be to publish the "clean" clone. 05:09:08 Hope that's not the case, but ... 05:09:08 That is: I want to reproduce my problem in a simpler way than making a new commit, persuading jrm to make a new commit and push it to the repository, and then attempting to push my own commit to the repository. 05:09:09 -!- ve [n=a@94-193-95-252.zone7.bethere.co.uk] has quit [Read error: 110 (Connection timed out)] 05:09:10 -!- ve_ is now known as ve 05:09:16 yep 05:09:47 So why doesn't `git reset --hard' actually return the repository to the earlier state? 05:10:03 What extra cruft could it throw in there? 05:10:10 What are the necessary and sufficient conditions for a programing language to be a 'lisp' ? 05:10:36 emma, it has to have an experienced Lisper decide to call it a Lisp. 05:11:04 So why can't Haskell be a lisp? 05:11:09 Riastradh: OK, I repro'd it. Lemme write up what I did. 05:11:19 Because experienced Lispers don't call Haskell a Lisp, emma. 05:11:35 Riastradh: "git reset --hard" is not meant to reset the _repository_; instead it resets the branch you've currently got checked out. 05:11:37 If that's really all it takes then they just ought to. 05:11:41 (and your working tree, too) 05:12:06 Well, emma, of course they will have their reasons, but rather than just parroting their reasons, I encourage you to become an experienced Lisper and decide for yourself. 05:12:56 Seems reasonable. 05:12:57 There's an uncommon amount of common sense, here. 05:13:36 Daemmerung, about the necessary and sufficient conditions of being called Lisp, or about Git? 05:14:19 Riastradh, the Lispishness. Still don't get git enough. 05:14:30 I would really like to think that I am just a naive Git user doing what he is supposed to be doing, not running any fancy commands to screw up a repository or anything. I would also like to think that Git is a nice system for doing revision control. But I am having a really hard time reconciling these two desires. 05:15:03 Though I am amused to see that after tuning out for an hour and a half, git is still getting gotten here. I deal with git only because it's what Gambit uses. 05:15:15 I thought Gambit used Mercurial 05:15:16 ? 05:15:25 gambit is another type of scheme? 05:15:31 It's now all git, alas. 05:15:34 Another implementation of Scheme, emma. 05:15:44 oh man. 05:15:51 Don't fret, emma. 05:16:09 emma: It's sort of the Bizarro-Chicken, if you know Chicken. Otherwise, don't worry about it. 05:16:09 sepult [n=user@xdsl-87-78-31-246.netcologne.de] has joined #scheme 05:16:19 okay 05:16:23 No, Chicken is sort of the Bizarro-Gambit. 05:16:53 Roit. 05:17:06 i shall do my best. I just want to see the good of Schemedom. I dont have any really good rational reasons but I find myself attached to it and fond of the people associated with it. 05:18:22 Daemmerung: Thank you. 05:18:45 jcowan, so what do they use for revision control at the chocolate factory? 05:19:01 Perforce. Some people front-end it with Git. 05:19:41 Google's main Perforce installation is the largest in existence (there are various subsidiary ones). 05:20:05 Riastradh: crap, I can't repro it after all :-( 05:20:07 merus [n=merus@c-67-175-45-120.hsd1.in.comcast.net] has joined #scheme 05:21:14 http://www.archivum.info/chicken-users@nongnu.org/2005-03/00024/Re:_[Chicken-users]_Chicken_and_Gambit gives the Chicken author's view of the similarities and differences. 05:22:39 Riastradh: apart from our personal perpleximent, I don't think any harm has been done; I suspect the Savannah repository is perfectly healthy 05:23:02 I think the word you sought was `perplexity'. 05:23:19 perplexiousness. 05:23:32 The public repository may be healthy, but my local clean repository does not appear to be healthy, and certainly I'm not happy about it! 05:24:57 jcowan: In all seriousness, I greatly appreciate the energy you're contributing. Somebody has to have the eggs to build some wicker men for everybody else to burn, and to bitch about burning. Thank you, again, for that. 05:26:06 Riastradh: naw, I like "perpleximent". 05:26:06 I appreciate it too. I have been energy-less for so long, and it's wonderful to have something to sink my teeth into, even if I do feel like a chiropractor from time to time. 05:26:11 perplexitude. 05:26:50 offby1: "perpleximent" is delicious; it's suffixal association with "merriment" expresses a kind of absurditas within perplexion. 05:26:50 The OED lists "perplexiveness" but calls it obsolete 05:27:02 (hey, lookit who it is) 05:27:10 sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 05:27:12 (who dat?) 05:27:19 incubot: profligate perpleximent 05:27:23 profligate living 05:27:25 Daemmerung: it's klutometis, is who. 05:27:34 In any case, it is not merely perplexitudicity that plagues me, but frustratonomy most thorough. 05:27:48 Daemmerung: good to see you, ol' chap 05:27:55 yep, and waste-of-time-osity 05:28:09 klutometis? He who waits behind the write-barriers?? 05:28:39 No, that's Yog-Sothoth. 05:29:00 I hear people espousing the wondrousnessositude of Git so often that I figure that I MUST be doing something completely wrong here, because at just about every operation I perform, Git screams a warning or an error or a failure at me. 05:29:24 But nobody has been able to tell me what I am doing wrong. 05:29:41 welcome to eli's world :-) 05:29:45 It is a sort of small comfort that offby1 has observed the same error as I. 05:29:49 The UI is so complex that, without a transcript, I can't even guess 05:30:21 Here's the thing, though: I have been EXTREMELY careful not to do hairy operations, so most of the time I can tell you EXACTLY what destructive commands I have run on a repository. 05:31:27 If you look at the mit-scheme-devel mailing list -- which in the past couple of months has had no discussion other than this --, you'll see my questions about how to make Git stop failing at this or that, with transcripts of the operations I attempted to perform, and very careful summaries of what operations I had performed on the repository in question (in most cases, NOTHING but `git pull' and non-destructive commands such as ` 05:31:44 -!- MononcQc [n=parseido@modemcable062.225-20-96.mc.videotron.ca] has quit [Remote closed the connection] 05:32:12 s/has had no discussion/has had almost no discussion/1 05:33:24 I still can't figure out why Git is so reticent to show me history on files that have been renamed. 05:33:39 ...which is every file in the src/ subdirectory. 05:33:42 Jafet [n=Jafet@unaffiliated/jafet] has joined #scheme 05:34:02 I think there's an option to "git log" that tracks renames. -C maybe; or -M 05:34:06 although ... 05:34:11 There's an option `--follow'. 05:34:12 I don't know quite how it displays 'em 05:34:20 But why do I need to specify that??? 05:34:24 beats me :) 05:34:31 I thought Git was supposed to be clever about file renames, and do the right thing! 05:34:37 *shrug* 05:35:03 So this makes Emacs basically useless for browsing the history on files, for instance, because vc doesn't pass --follow. 05:35:17 (and 99.9% of the history is from before the great renaming) 05:35:32 that does sound suckaceous 05:38:58 -!- sepult [n=user@xdsl-87-78-31-246.netcologne.de] has quit [Remote closed the connection] 05:39:18 sepult [n=user@xdsl-87-78-31-246.netcologne.de] has joined #scheme 05:42:00 -!- sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 60 (Operation timed out)] 05:42:17 -!- peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has quit [] 05:44:07 sphex_ [n=nobody@74.56.185.239] has joined #scheme 05:44:16 -!- sepult [n=user@xdsl-87-78-31-246.netcologne.de] has quit [Remote closed the connection] 05:44:27 -!- sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 05:48:35 So do I have to remember to type `git pull ssh://git.sv.gnu.org/srv/git/mit-scheme.git refs/heads/master:refs/remotes/savannah/master' every time I want to pull into my working repository? I can't run `git pull' in the staging repository because it's bare, and `git pull' in the working repository just pulls from the staging repository, and `git pull ssh://git.sv.gnu.org/srv/git/mit-scheme.git' tells me that it can't figure out w 06:04:00 -!- jonrafkind [n=jon@98.202.86.149] has quit [Read error: 110 (Connection timed out)] 06:04:43 sepult [n=user@xdsl-87-78-26-141.netcologne.de] has joined #scheme 06:13:21 macr0 [n=vista@71.21.122.103] has joined #scheme 06:15:41 jdijk [i=jdijk@ftth-212-84-159-210.solcon.nl] has joined #scheme 06:15:52 -!- jdijk [i=jdijk@ftth-212-84-159-210.solcon.nl] has left #scheme 06:16:31 -!- macr0 [n=vista@71.21.122.103] has quit [Client Quit] 06:33:43 underspecified [n=eric@u-210160014220.hotspot.ne.jp] has joined #scheme 06:34:34 -!- jcowan [n=jcowan@cpe-74-68-154-139.nyc.res.rr.com] has quit ["Leaving"] 06:42:20 guy_wise [n=bdamberg@c-98-234-217-53.hsd1.ca.comcast.net] has joined #scheme 06:43:21 scheme newbie here...I have a question about macros. Anyone game? 07:00:38 -!- Kusanagi [n=Lernaean@unaffiliated/kusanagi] has quit [] 07:05:18 ski_ [n=md9slj@129.16.29.79] has joined #scheme 07:06:32 Kusanagi [n=Lernaean@unaffiliated/kusanagi] has joined #scheme 07:14:46 Jafet1 [n=Jafet@unaffiliated/jafet] has joined #scheme 07:15:12 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit [Nick collision from services.] 07:15:50 -!- Jafet1 is now known as Jafet 07:17:01 -!- guy_wise [n=bdamberg@c-98-234-217-53.hsd1.ca.comcast.net] has quit [] 07:17:06 is the not equal operator, != available? 07:17:19 or is (not (= 1 1)) ;; the only way/ 07:17:21 ? 07:18:21 incubot: ((complement not) (eq? 2 2)) 07:18:22 #t 07:18:49 oh, sorry; you're asking the opposite question 07:18:59 Piratero: just make up your own 07:19:05 hm? 07:19:22 oh, (define (!= g) (not (= g))) 07:19:33 didn't think of that 07:20:10 incubot: (let ((!= (complement eq?))) (!= 1 1)) 07:20:11 #f 07:20:22 oh, better 07:20:32 Piratero: complement is non-standard, though 07:20:39 gotcha 07:20:41 probably better to use a lambda with negation 07:20:45 yeah 07:21:25 -!- sepult [n=user@xdsl-87-78-26-141.netcologne.de] has quit [Read error: 54 (Connection reset by peer)] 07:21:28 thanks 07:21:34 Piratero: np 07:33:11 -!- underspecified [n=eric@u-210160014220.hotspot.ne.jp] has quit [] 08:01:34 macr0 [n=vista@71.21.122.103] has joined #scheme 08:02:27 -!- macr0 [n=vista@71.21.122.103] has quit [Client Quit] 08:03:34 sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 08:11:36 -!- sphex_ [n=nobody@74.56.185.239] has quit [Read error: 145 (Connection timed out)] 08:23:57 underspecified [n=eric@u-210160014220.hotspot.ne.jp] has joined #scheme 08:41:26 jewel [n=jewel@dsl-242-129-207.telkomadsl.co.za] has joined #scheme 09:01:53 -!- underspecified [n=eric@u-210160014220.hotspot.ne.jp] has quit [] 09:12:44 Edico [n=Edico@unaffiliated/edico] has joined #scheme 09:22:40 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit [Read error: 110 (Connection timed out)] 09:36:26 -!- merus [n=merus@c-67-175-45-120.hsd1.in.comcast.net] has quit ["Leaving"] 09:38:39 tobetchi [n=tobetchi@p923e7d.sagant01.ap.so-net.ne.jp] has joined #scheme 09:48:53 underspecified [n=eric@u-210160014220.hotspot.ne.jp] has joined #scheme 09:49:39 Jafet [n=Jafet@unaffiliated/jafet] has joined #scheme 10:12:47 rstandy [n=rastandy@net-93-144-5-239.t2.dsl.vodafone.it] has joined #scheme 10:24:42 -!- underspecified [n=eric@u-210160014220.hotspot.ne.jp] has quit [] 10:33:46 Nshag [i=user@Mix-Orleans-106-3-48.w193-248.abo.wanadoo.fr] has joined #scheme 10:35:36 masm [n=masm@bl7-207-80.dsl.telepac.pt] has joined #scheme 10:46:57 there is a power procedure? 10:51:15 There is exp 11:26:23 hotblack23 [n=jh@p5B054571.dip.t-dialin.net] has joined #scheme 11:33:49 doesn't matter anymore, I made one 11:41:37 Quadre_ [n=quad@24.118.241.200] has joined #scheme 11:41:59 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit [Remote closed the connection] 11:42:12 Jafet [n=Jafet@unaffiliated/jafet] has joined #scheme 12:04:43 -!- Quadrescence [n=quad@unaffiliated/quadrescence] has quit [Success] 12:13:34 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 12:22:44 bombshelter13_ [n=bombshel@76-10-149-209.dsl.teksavvy.com] has joined #scheme 12:31:29 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 12:33:18 MononcQc [n=parseido@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 13:07:15 Riastradh: you'll want to do, in your working repository, "git remote add staging /path/to/staging", and , "git remote add Savannah ssh://git.sv.gnu.org/srv/git/mit-scheme.git". Thenceforth you can abbreviate the arguments to "git pull" and "git push". (You might need to edit ~/.git/config and fix up, or add, a "push" line). 13:10:33 -!- yosafbridge [n=yosafbri@ludios.net] has quit ["Coyote finally caught me"] 13:10:42 yosafbridge [n=yosafbri@ludios.net] has joined #scheme 13:46:13 MrFahrenheit [n=RageOfTh@users-42-67.vinet.ba] has joined #scheme 14:12:30 r0bby_ [n=wakawaka@guifications/user/r0bby] has joined #scheme 14:21:51 higepon920 [n=taro@122.135.46.206] has joined #scheme 14:23:35 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Connection timed out] 14:25:41 luz [n=davids@189.122.90.116] has joined #scheme 14:28:35 jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has joined #scheme 14:40:48 jonrafkind [n=jon@98.202.86.149] has joined #scheme 14:45:00 klutometis: use eqv? there for portability 14:49:03 peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has joined #scheme 14:49:43 -!- peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has quit [Remote closed the connection] 14:51:57 -!- masm [n=masm@bl7-207-80.dsl.telepac.pt] has quit ["Leaving."] 14:54:54 -!- sladegen [n=nemo@unaffiliated/sladegen] has quit [Nick collision from services.] 14:55:03 sladegen [n=nemo@unaffiliated/sladegen] has joined #scheme 14:56:04 underspecified [n=eric@softbank220043052007.bbtec.net] has joined #scheme 15:15:13 rudybot: eval (define (complement operator) (lambda args (not (apply operator args)))) 15:15:14 synx: your "http://paste.lisp.org/display/86023,1/raw" sandbox is ready 15:15:28 rudybot: ((complement eq?) 'a 'a) 15:15:28 synx: eh? Try "rudybot: help". 15:15:41 uh... 15:15:51 rudybot: eval ((complement eq?) 'a 'a) 15:15:52 synx: ; Value: #f 15:15:56 good morning! 15:20:35 rudybot: eval (complement eq? 'a) 15:20:35 *offby1: ; Value: "Hello, (# a); you're looking sharp today" 15:20:44 hmm 15:21:20 masm [n=masm@bl7-207-80.dsl.telepac.pt] has joined #scheme 15:23:22 -!- higepon920 [n=taro@122.135.46.206] has quit [Read error: 148 (No route to host)] 15:45:08 peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has joined #scheme 15:53:59 reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 16:11:11 karme [n=user@kallisto.karme.de] has joined #scheme 16:32:21 Narrenschiff [n=ritchie@xolotl.plus.com] has joined #scheme 16:40:46 rudybot: eval 'your-mother 16:40:48 Daemmerung: your sandbox is ready 16:40:48 Daemmerung: ; Value: your-mother 16:41:31 rudybot: eval eq? 16:41:31 Daemmerung: ; Value: # 16:41:46 *Daemmerung* neither looks nor feels sharp this morning 16:42:26 -!- duncanm [n=duncan@a-chinaman.com] has quit [Read error: 104 (Connection reset by peer)] 16:45:32 bgs100 [n=ian@unaffiliated/bgs100] has joined #scheme 16:46:13 But every girl crazy 'bout a sharp-dressed man. 16:51:25 Fabse [n=mightyfi@wikipedia/Track-n-Field] has joined #scheme 16:51:28 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Remote closed the connection] 16:52:57 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 16:54:38 -!- ski_ [n=md9slj@129.16.29.79] has quit [Read error: 131 (Connection reset by peer)] 16:57:01 -!- peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has quit [] 17:03:15 -!- Quadre_ is now known as Quadrescence 17:05:43 dmoerner [n=dmr@89-151.res.pomona.edu] has joined #scheme 17:06:55 -!- MononcQc [n=parseido@modemcable062.225-20-96.mc.videotron.ca] has quit ["DOWNLOADING LATEST VERSION OF THE INTERNET"] 17:08:56 -!- bombshelter13_ [n=bombshel@76-10-149-209.dsl.teksavvy.com] has quit [Remote closed the connection] 17:12:23 -!- jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has quit [] 17:24:33 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit [Read error: 110 (Connection timed out)] 17:25:19 MononcQc [i=MononcQc@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 17:25:47 pfo [n=pfo@chello084114049188.14.vie.surfer.at] has joined #scheme 17:48:14 -!- rstandy [n=rastandy@net-93-144-5-239.t2.dsl.vodafone.it] has quit [Read error: 110 (Connection timed out)] 17:59:30 offby1, whenever I see `git remote add', I read `git remove add', which puzzles me for a moment. 18:00:05 -!- hotblack23 [n=jh@p5B054571.dip.t-dialin.net] has quit ["Leaving."] 18:03:43 merus [n=merus@c-67-175-45-120.hsd1.in.comcast.net] has joined #scheme 18:14:08 Boggle?? Now I ran `git pull' in my clean repository and it worked perfectly happily! 18:21:56 Riastradh: that's related to this bug, amazingly: . 18:22:15 except that while the latter won't print on tuesdays, the former will only pull on saturdays. 18:28:10 copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has joined #scheme 18:28:54 -!- copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has quit [Remote closed the connection] 18:29:19 copumpkin [n=pumpkin@c-24-63-67-154.hsd1.nh.comcast.net] has joined #scheme 18:29:44 incubot: i'd gladly pay you tuesday for a git repo today 18:29:47 I would gladly murder an entire busful of nuns for some of the sushi that one can get out West. 18:42:30 *Adamant* backs slowly away from incubot, despite not being a nun 18:42:53 incubot: did someone fiddle with your emotion chip? 18:42:57 emotion am I feeling now? 18:43:08 incubot: and your speech chip? 18:43:11 I never said cartoon artwork had to be "realistic", either; anyway, people tend to mistake what realism is. (See John Travolta's opening speech from "Swordfish" for an example.) 18:48:51 -!- tizoc [n=user@unaffiliated/tizoc] has quit ["Coyote finally caught me"] 18:49:21 tizoc [n=user@unaffiliated/tizoc] has joined #scheme 18:52:08 -!- reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 18:54:09 maxigas [n=user@host86-143-170-151.range86-143.btcentralplus.com] has joined #scheme 18:54:28 i have trouble using basic authentication with plt-web-server. 18:55:22 (require web-server/http/basic-auth) should contain the function request->basic-credentials but it doesn't seem to work. 18:55:27 Welcome to MzScheme v4.1.4 [3m], Copyright (c) 2004-2009 PLT Scheme Inc. 18:55:28 > (require web-server/http/basic-auth) 18:55:28 > (request->basic-credentials (make-request)) 18:55:28 reference to undefined identifier: request->basic-credentials 18:55:31 18:55:33 ---- 19:09:32 jeapostrophe [n=jay@69.169.141.110.provo.static.broadweavenetworks.net] has joined #scheme 19:11:48 -!- maxigas [n=user@host86-143-170-151.range86-143.btcentralplus.com] has left #scheme 19:11:55 Gee, what patience. 19:12:06 maxigas [n=user@host86-143-170-151.range86-143.btcentralplus.com] has joined #scheme 19:17:30 maxigas, perhaps that procedure was added after 4.1.4. 19:17:54 is there a way to find out? 19:18:17 sth seems to exist in my collects but i think there is no definition. :o 19:18:45 You are here: /usr/lib/plt/collects/web-server 19:18:45 mxs@char: rgrep basic-credentials ../../. 19:18:45 ../.././collects/web-server/http/basic-auth.ss: [(struct header (_ basic-credentials)) 19:18:45 ../.././collects/web-server/http/basic-auth.ss: [(and (basic? basic-credentials) 19:18:48 ../.././collects/web-server/http/basic-auth.ss: (base64-decode (subbytes basic-credentials 6 (bytes-length basic-credentials))))) 19:18:51 19:19:32 --> it's only in basic-auth.ss but i don't see any (define request->basic-credentials) 19:25:20 jeapostrophe, do you want to help maxigas 19:37:00 what's the problem? 19:37:19 maxigas: you want to know what version basic auth was added? 19:38:18 jeapostrophe: no, i want to know how to find out if my install (MzScheme v4.1.4 [3m]) includes this feature (http basic auth) or not. 19:38:48 isnt that the same? 19:39:07 ah, ok, you are right, leppie. 19:39:24 so yes, what verions basic auth was added? 19:39:30 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 60 (Operation timed out)] 19:41:14 eno [n=eno@nslu2-linux/eno] has joined #scheme 19:43:27 -!- jewel [n=jewel@dsl-242-129-207.telkomadsl.co.za] has quit [Read error: 113 (No route to host)] 19:47:19 RageOfThou [n=RageOfTh@users-120-199.vinet.ba] has joined #scheme 20:00:40 sepult [n=user@xdsl-87-78-122-70.netcologne.de] has joined #scheme 20:03:12 -!- perdix [n=perdix@sxemacs/devel/perdix] has quit ["A cow. A trampoline. Together they fight crime!"] 20:04:17 -!- MrFahrenheit [n=RageOfTh@users-42-67.vinet.ba] has quit [Read error: 110 (Connection timed out)] 20:11:48 well, every version has had it 20:11:54 (every going back to 1999-ish) 20:12:06 it was moved into http/basic-auth within the last year 20:12:13 before that it was in dispatchers/dispatch-password 20:12:19 and before that it was somewhere else 20:12:43 but for now, if you can require http/basic-auth then you have it. also, search in your local help desk for it, that will tell you 20:24:31 hm 20:24:53 then i don't do sth the right way... 20:25:32 sth? 20:25:35 i have in the beginning of the test file this: 20:25:49 #lang web-server/insta 20:25:49 (require web-server/servlet) 20:25:49 (require web-server/http/basic-auth) 20:25:49 20:26:46 and then the example script from http://docs.plt-scheme.org/web-server/http.html#(mod-path._web-server/http/basic-auth) 20:27:16 and i get this if i run the file: 20:27:17 mxs@char: mzscheme atest.ss 20:27:17 atest.ss:6:10: expand: unbound identifier in module in: request->basic-credentials 20:27:17 20:28:04 so maybe it is in my version of plt-scheme but i don't require it.. on the other hand the requires don't throw error messages. 20:28:30 so what am i doing wrong? :) 20:28:55 what does mzscheme --version print 20:29:27 i just put the example in drscheme (as is) and pressed ran and it worked... 20:34:15 Welcome to MzScheme v4.1.4 [3m], Copyright (c) 2004-2009 PLT Scheme Inc. 20:34:51 -!- masm [n=masm@bl7-207-80.dsl.telepac.pt] has quit [Read error: 110 (Connection timed out)] 20:37:28 then the example as is should just work 20:37:34 what happens when you run it in drscheme? 20:39:15 same effect in drscheme 20:39:28 "expand: unbound identifier in module in: request->basic-credentials" 20:39:30 kenpp [n=kenpp@84.92.70.37] has joined #scheme 20:40:15 sorry i have to go now, ask about this later (also posted on the list but held for approval at the moment because at the moment i am not subscribed). 20:40:19 Sveklo [n=sveklo@cs181131.pp.htv.fi] has joined #scheme 20:40:57 -!- Sveklo [n=sveklo@cs181131.pp.htv.fi] has quit [Client Quit] 20:41:27 Sveklo [n=sveklo@cs181131.pp.htv.fi] has joined #scheme 20:41:28 -!- maxigas [n=user@host86-143-170-151.range86-143.btcentralplus.com] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 20:41:58 perdix [n=perdix@sxemacs/devel/perdix] has joined #scheme 20:43:30 mmc [n=mima@cs137104.pp.htv.fi] has joined #scheme 21:16:37 cornucopic [n=r00t@202.3.77.180] has joined #scheme 21:25:59 sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 21:31:04 -!- Fabse [n=mightyfi@wikipedia/Track-n-Field] has quit [] 21:43:03 -!- sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 21:49:27 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [] 21:52:24 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 21:52:42 cornucopic pasted "Return a vector" at http://paste.lisp.org/display/86626 21:53:45 In the above code snippet, I want to return the vector 'shuff_deck' from this procedure. in the #t part of (if (<=n 1).. 21:54:15 Can anyone please help ? 21:54:36 Its a generic problem I have been facing while I have wanted to return a atom or a list/vector.. 21:55:48 The problem is that you add a pair of parentheses () where there should be none 21:56:12 Yeah.that is definitely a problem..well I will just remove it and see. 21:56:13 (shuff_deck) -> shuff_deck 21:56:17 masm [n=masm@bl10-210-159.dsl.telepac.pt] has joined #scheme 21:57:05 p1dzkl, ah well. Thanks. Pretty simple, that was. 21:57:18 cornucopic: Do you understand why it was a problem? 21:57:46 TimMc, Yes. a () meant a procedure call. Right ? 21:57:54 Yup. 21:58:59 No idea why I didn't try by removing the (). sigh. 21:59:13 -!- dmoerner [n=dmr@89-151.res.pomona.edu] has quit ["Leaving"] 21:59:35 Thanks TimMc 21:59:45 jcowan [n=jcowan@cpe-74-68-154-139.nyc.res.rr.com] has joined #scheme 22:00:04 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 22:03:13 -!- cornucopic [n=r00t@202.3.77.180] has quit ["so long.."] 22:03:21 sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 22:15:41 -!- ASau [n=user@83.69.240.52] has quit [Remote closed the connection] 22:15:46 cornucopic [n=r00t@202.3.77.180] has joined #scheme 22:15:50 ASau [n=user@83.69.240.52] has joined #scheme 22:19:07 Custom ports are a bear. 22:19:47 -!- sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 22:20:58 Honestly, any I/O system is going to be worse than useless without an event synchronization system such as CML. 22:22:08 I think that for Thing One purposes simple R5RS I/O will suffice. 22:22:16 At least, I'd have to be convinced otherwise. 22:23:11 Riastradh: hmm - unix pipes useless? 22:23:14 OK. But I'd like strings to be octet vectors, and characters to be isomorphic to octets. 22:23:21 karme, hmm? 22:23:39 Riastradh: just the concept 22:23:58 Sorry, can you please form a complete sentence? I'm having trouble following your fragments. 22:24:15 Riastradh: hmm yes I understand - i just wanted to go to sleep 22:24:35 *Riastradh* blinks. 22:24:45 Riastradh: you said "any I/O system is going to be worse than useless without an event synchronization system..." - and i thought hmm 22:25:00 *jcowan* has gone to sleep on an event 22:25:44 :-) sorry - good night / day 22:26:16 -!- karme [n=user@kallisto.karme.de] has left #scheme 22:27:08 *copumpkin* wonders what thinking "hmm 22:27:11 " is like 22:27:38 Perhaps in that state one's thoughts follow a hidden Markov model. 22:28:30 A custom port is a record of handlers (procedures) to be invoked when standard I/O procedures are done on this port. As such, what it consists of is tightly coupled to how many I/O primitives there are, and the number only grows with time. 22:28:53 The world needs something better than that. 22:29:06 It is very important to be integrated with the event synchronization system, furthermore. 22:29:14 If there is one. 22:29:24 *jcowan* does not understand the essence of events. 22:29:31 sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 22:30:18 To me they look like returns from a coroutine that invokes you when it has some output. 22:31:00 I don't know what the essence of events is either, but if one is to build useful programs that deal any with I/O beyond reading and writing individual files, one must consider delays that will happen before events in the outside world. 22:34:43 mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 22:35:17 mejja, so, what do you think of Git? 22:37:45 pemleco [n=sveklo@cs181131.pp.htv.fi] has joined #scheme 22:37:53 This is a family channel... 22:38:20 Kids, plug your ears. 22:38:28 IT SUCKS! 22:39:43 *offby1* winces 22:40:01 now askeli 22:40:04 now ask eli 22:40:10 *offby1* needs to clean the earwax outta his space bar 22:40:51 Ewwww. 22:40:57 man! it's nasty in there 22:43:06 Riastradh: so do you prefer direct control or inverted control in event programming? Inverted control has been all the rage for many years, but I still favor direct control, and there is no reason not to have it in a language that doesn't impose stack discipline. 22:43:34 Both are useful. 22:43:45 damn! vacuumed up my left meta key -- worst possible disaster for an emacs weenie such as myself 22:46:13 Arrgh. I just wrote a 79-word sentence. 22:46:35 -!- sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 22:48:44 *jcowan* refactors his prose. 22:49:00 Anybody know offhand which schemes do transcript-{on,off}? 22:49:27 MIT Scheme and T do. 22:53:01 -!- npe [n=npe@94-224-251-223.access.telenet.be] has quit [] 22:53:57 mmph 22:54:14 -!- Sveklo [n=sveklo@cs181131.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 22:54:21 left-meta key recovered! Sure was gross though 23:01:02 -!- kenpp [n=kenpp@84.92.70.37] has quit [Connection timed out] 23:10:04 SLIB has a portable TRANSCRIPT-O{N,FF}. 23:10:15 I like the way you use `portable' and `SLIB' in the same sentence. 23:10:29 The thing with feathers, etc. 23:11:17 -!- mmc [n=mima@cs137104.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 23:12:30 Hum... I'm sure DEFUN 2009 tutorials on DSLs in PLT Scheme have been interesting. Any chance that slides, videos, or anything, will eventually be available on the internets? 23:13:23 Any thoughts on how the new "block objects" (closures in some sense) in C introduced in Mac OS 10.6 (Snow Leopard) might affect/help Scheme implementations on Mac OS X? 23:13:55 Unlikely to change anything. 23:14:35 -!- pemleco is now known as Sveklo 23:16:04 Just thinking, stock Mac OS X C/Objective-C is now providing quite a range of services: closures, garbage collection and what not. 23:16:52 Maybe someone will write a Scheme->Objective-C compiler, but I don't think that this will change any existing systems. 23:17:28 Would be interesting to see a thin Scheme/Lisp implementation on top of Objective-C/Cocoa, in the style of MacRuby. Basically a Scheme-like front to Cocoa, with all the underlying services built on standard Objective-C/Cocoa. 23:18:32 (with the aim to get cheap, seamless and native integration with Objective-C/Cocoa) 23:19:16 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 23:19:59 Writing a single-OS Scheme is like moving into a ghetto. But if it lights your fire, by all means hack to it. 23:20:00 A Scheme->Objective-C compiler would actually be quite neat in iPhone world, where license restrictions prohibit embedding interpreters. 23:20:24 Sure, that sounds neat. Go build it! 23:20:47 Erm... Yes. 23:21:29 To clarify: my remarks were about closures, not about Objective-C's garbage collector. This is because if you're writing a Scheme->C compiler, or a Scheme->{insert variant of C} compiler, you can already explicate closure environment environments at the top level, so there's no advantage to having a syntactic convenience for writing them in nested scopes. 23:22:05 environment environments? 23:22:13 ...er, `explicate closure environments' 23:22:48 If they have dynamic extent in C, furthermore, you'd be able to generate them only when you can guarantee that they will have dynamic extent in Scheme *and* when that matches with your strategy for implementing continuations. For example, with a trampoline, it wouldn't work. 23:25:18 There are two issues here -- one is that C has objects with dynamic extent as part of its semantics, while in Scheme only compilers have the concept in their pragmatics; the other is that C's notion of dynamic extent is unlikely to fit with the Scheme implementation's notion of continuations, 23:25:20 Daemmerung: The idea with the single-OS Scheme is to get tighter integration with that OS. 23:25:49 because Scheme needs to guarantee proper tail recursion and needs to reify continuations, neither of which C can do with its own continuaitons. 23:26:41 Sveklo: been there, done that. I understand the appeal. It's nevertheless a ghetto. Perhaps a velvet ghetto. 23:29:51 man plt's GUI is so ghetto 23:30:26 I've never used a GUI before where thrashing threads caused a callback to pass #f instead of its object. 23:31:03 I mean what part of (is-a?/c button%) isn't obvious here 23:33:07 oh yeah: "Pocket Scheme" 23:33:36 synx: huh, PLT Scheme is the _only_ language in which I didn't feel like an utter idiot, when writing graphics apps. 23:33:39 *mejja* hacks pocket rocket scheme 23:33:46 -!- RageOfThou [n=RageOfTh@users-120-199.vinet.ba] has quit [Read error: 110 (Connection timed out)] 23:35:06 offby1: I flirted with one on the OLPC, too, for a while. I am stone cold ghetto. 23:35:37 (intersection (scheme-users) (niche-os-users)) => underflow error 23:38:04 *jcowan* writes a tl;dr screed on his notion of components for Thing One 23:38:16 tl;dr? Tom Lord; David Rush? 23:38:27 offby1: It's funny really because I have only three threads, using their little mailboxes to communicate, with one global variable carefully protected by semaphores. Nothing to break here, yet when I do the F5 thing it breaks. 23:38:32 *Daemmerung* coughs up some tea 23:39:07 Though this particular file of code is starting to look horribly spaghetti-like. I wonder how to make things clearer... 23:39:12 jcowan: Thing One as in The Cat In The Hat?? 23:39:13 Riastradh: too long; didn't read. 23:40:29 Obviously it must be the FFI 23:41:50 Yes. I have dubbed small and large Scheme thus for the duration. 23:42:13 Thanks, jcowan. `One' and `Two' are pretty antimnemonic. 23:42:17 Riastradh: jrm is screwing things up! 23:42:18 *jcowan* lols at "Tom Lord; David Rush" 23:42:45 Why so? 1 < 2, after all, and Thing One should (only "should", not "must") be a subset of Thing Two. 23:42:51 Also the WGs are WG1 and WG2. 23:43:09 That would make the steering committee be the Leg of Mother that you see at the end of the book. 23:43:55 also: "method set-max-width cannot be called, except in states (unlocked write-lock)" 23:44:10 (send slider-box delete-child slider) -> that error 23:45:41 stupid sliders are ghetto too. You can't set their maximum value if it changes. You have to delete the slider and create a new one ever time. 23:46:31 pemleco [n=sveklo@cs181131.pp.htv.fi] has joined #scheme 23:46:33 masm1 [n=masm@bl10-209-186.dsl.telepac.pt] has joined #scheme 23:47:38 -!- pemleco [n=sveklo@cs181131.pp.htv.fi] has quit [Client Quit] 23:47:42 "ghetto" is the new word today 23:50:39 pemleco_ [n=sveklo@cs181131.pp.htv.fi] has joined #scheme 23:50:59 -!- pemleco_ is now known as Sveklo1 23:53:54 -!- Sveklo [n=sveklo@cs181131.pp.htv.fi] has quit [Connection timed out] 23:56:10 ghetto as a Jewish barber