An hour ago, Carl Eastlund wrote: > On Tue, Jun 28, 2011 at 10:20 AM, Eli Barzilay <e...@barzilay.org> wrote: > > Three minutes ago, Carl Eastlund wrote: > >> > >> The Racketish name would be #%main, wouldn't it? > > > > Yes. But the problem is that `#%foo' names are intended to be > > things that you don't write in end-user code, only if you > > implement a new language or change some fundamental thing. In > > that respect, the `#%' feels like serving the same role as `__', > > which feels dirty. (I'm also trying to imagine the first-time > > user impression being told to define `#%main' vs `main' -- the > > first looks like it leads to an impression of some perl-like > > language...) > > Yeah, I agree completely, I was just looking for alternatives to > MAIN. Now we need an alternative to both. What was wrong with just > main, again? (Looking back... oh, you said not clashing with > existing code.)
Yes. Unfortunately, reusing `main' means that current code that current uses for it (to achieve two running modes) breaks. > Well, we go in for verbose, self-explanatory names (e.g. > current-command-line-arguments), how about the-main-program or > start-program-here or something similar? I really want to find something short. Not only to make it very easy to remember, but also to minimize the transition step from things like (printf "Hi, I'm a very quick script.\n") to (define (MAIN . _) (printf "Look at me, I'm a more serious application now.\n")) BTW, I also considered `run', but that's something that I've used in a few places, and I'm sure I'm not the only one. [/me fires up a thesaurus.] [/me gets frustrated.] How about one of these: - `start' - `launch' - `execute' - `act' - `invoke' - `*main*' ? The thing that makes `main' more appealing is that it's conventional, and that it's more like "the default entry point". That's why I included the `*main*' thing. Also, given that any of these could be used in an existing file, maybe some extra punctuation is inevitable. So maybe things like `main.', `<main>', or `main:'? All of this makes me think that `MAIN' is better. Or maybe `Main'. -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://barzilay.org/ Maze is Life! _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev