That is what he meant - Emacs does this, not we.
It's a text editor. A text editor won't know Lisp source from Java
source, or either from a letter to Grandma.
You tell me that ain't also the case of Eclipse?
Naw. Eclipse is just an IDE! There's nothing magical about it.
I am sure you think that Eclipse is a very flexible and can
do very extraordinary things with you programming environment.
And we are not saying otherwise.
Yes, Eclipse is a fully-modern, graphical application that integrates
properly into the host window system, can display many different
things at once (even overlapping), and can do all kinds of things that
you simply cannot do (and sometimes cannot even fake in a half-assed
way) with a single undivided, rigid rectangular grid of ASCII-only
characters.
Furthermore, since it is an IDE rather than just an editor, it is
imbued with code that knows a heck of a lot more than how to string
ASCII characters together in large arrays, spool them to disk, and
read them back in. It contains a text editor, of course, but this is
only a small part of the whole.
Your exuberant claims about your development tools seem, to us, as
silly as it would no doubt seem to you if one of us claimed that a
single source-code editor pane from Eclipse, somehow taken out of its
borders and zoomed full screen and stripped of its tab row, popup
menu, balloon help, and all other capabilities that involve overlaying
something instead of changing the text inside the box, could somehow
by itself do as much or more than Eclipse as a whole can do.
What are you assuming impossible here? Lisp can do great things. No
one ever mentioned anything about impossible things or doing some kind
of magic, and, when we do, we are referring to the features that the
language have, not magic itself.
Well, your suggestion that because a certain terminal-oriented
editor's internal scripting language is a dialect of Lisp, you can
write a script for it that can drive modern display hardware and
generally do things with bits of the computer that the host
application predates by decades, is outlandish, for starters. Unless
the editor lets its scripts talk directly to the operating system (or
even the hardware) somehow, I'm fairly sure that's simply impossible.
I'm also not sure what kind of window system will cooperate if it
tried. Windows certainly won't; it makes a strict distinction between
legacy MS-DOS applications and windowed apps. The executables are not
even in the same format; one's either a DOS .COM or DOS .EXE and the
other's a form called PE (for portable executable, I think). I doubt a
DOS .COM or DOS .EXE can even *see* the APIs to do things like request
window creation and obtain a window handle, let alone successfully
obtain a window handle and use it to do more sophisticated things with
the display than could be done in the terminal window using curses.
Windows emulates true MS-DOS for those. The best they can do is try to
drive the display hardware using int16h as they would on a real MS-DOS
computer, which works dodgily at best in Windows' emulation. The last
time I checked, Win9x will try to display appropriate graphics
fullscreen by some sort of DirectX, succeed to some extent, and get
rather unstable; XP will work flawlessly if the graphics mode is plain-
VGA or worse, showing these in the terminal window, and hang if it's
super VGA, forcing a cold restart; and Vista just plain will error out
the MS-DOS application if it tries to use any graphics modes
whatsoever. (Trying to invoke an sVGA video mode from the MS-DOS
Prompt is one of the few ways to reliably crash XP. DirectX games
designed for XP give you a decent shot at it, but are random. The
other sure bets are monkeying with drivers or physically tinkering
with the case hardware, meddling with certain system files while the
system's live, or, pre-SP1, plugging in and unplugging USB devices.)
You did. You have the right to change your mind, of course.
NEVER order me around like I'm your personal slave again.
You say that Java does not have a prompt where you can test and debug
things?
It has a whole IDE where you can test and debug things, full screen,
rather than a mere prompt. Although the debugger has a prompt you can
use for evaluating expressions and examining variable values.
Are you saying that Linux terminals are useless?
No, just primitive. Programming at the REPL is going to be like going
back to using "ed", and programming in a full-screen terminal mode
editor is somewhere in between the two extremes.
make / Autoconf is made on top of them.
make / Autoconf are noninteractive. You edit your makefiles or
automake files or whatever in the editor of your choice, likely a
windowed editor or at worst a screen-oriented terminal editor, and
then run make or automake or whatever on them, rather than doing all
the work at a line-oriented prompt.
Don't you compile code and download packages from the shell at all?
Both Eclipse and Netbeans provide one-click compilation, either of a
file or of a whole project. And for us, downloading packages is
typically done via a web browser, which actually lets you see where
the hell you're going and what the hell you're downloading, unlike
typing "wget
http://i.pray.this.is.org/the/right/file.zip" and enter
at a shell prompt.
When we feel the need, though, we can go to a shell (DOS, bash,
whatever) and type java foo.java or invoke ant or whatever. We're just
not forced to, in the typical case.
Fan-bloody-tastic. You know that can't possibly work reliably, right?
[gratuitous personal attack]
It's one thing if the dependency analysis is done by automation when
it's an external tool like automake. It's another if it's done by part
of the same code base undergoing the dependency analysis. Now, the
dependency analysis itself might affect the dependencies, which is
precisely the kind of headache I was alluding to earlier with self-
referentiality.
Lisp way of handling things is not different from that.
Thanks for the confirmation. I think.
Please pass the aspirin.
Slime connects to the lisp environment and asks questions about where
the definition files are.
Ignoring for the time being the security implications of the editor's
internal scripting language having any direct access to the outside
world at all, this is entirely beside the point, which was the
implausibility of your implication that by running some script inside
a curses-based unix editor from the seventies you can magically get a
working modern GUI with multiple overlapping windows and menus.
If you think running lisp macros inside an editor inside a command
shell on a 386 with no video card hooked up to a keyboard and teletype
can produce a complete window system with a mouse pointer and
everything, I want to know what drugs you're on and where they are
sold!
you really should stop making so dumb arguments and learn Lisp
before anything else.
And now we're back to the boring old game of trading personal attacks.
Haven't you got anything better to do?
OK. Out with it. Both of you. Who? Which street corner? How much? Has
it ever been cut with something nasty or given you a bad trip? Don't
worry I won't tell the cops if you don't.
You tell me that Eclipse for instance can't find the source definition
of something if you ask it to do so?
Sure it can. I suppose SLIME can, too. I just question whether SLIME
can do much useful with it, without either altering the file you were
editing or else making you have to flip back and forth between
definition and call site without being able to display them side by
side like you can even with Notepad windows.
Although if you did get them displayed side by side, it would probably
just cause even more headaches. For example, how would you move the
input focus around without a mouse? Tab can't do it, since tab has to
indent/insert a tab into the code. Alt-tab can't do it, though it
would be the most intuitive to a Windows user, because a primitive C
application run from the command line can't see the "alt" keypress by
reading from stdin, just the tab (ascii 9). Control-tab doesn't work
(it would be the same as control-control-I, which is nonsense). Shift-
tab might, if that comes out as character 137 rather than (as the
usual shift = add 32 rule suggests) 41, since the latter is the right
parenthesis character, which *especially* has to do the expected thing
when one is editing Lisp code.
The limitations of the host application interface consisting of stdin
and curses seem to preclude doing this in even a remotely user-
friendly way. (Stdin and stdout would be even worse; think trying to
add MDI capabilities to "ed".)
Then he needs to get a life. (Most likely, this means he needs to get
laid.)
Being serious about personal attacks on Usenet is such a waste of
time.
Uh -- he just did.
You do sound like a novel writer talking about quantum mechanics.
I know quite a lot about quantum mechanics, but I don't see the
relevance here.
You need to learn things before you can attack them, or you just don't
attack them.
Yet you just attacked me despite hardly knowing me; several of you
have flamed Java in several ways despite hardly knowing Java. And
while I may not know Lisp per se, I do know macros and I do know
static type systems and I do know dynamic type systems, all from
experience.
You won't see me in comp.lang.java [sic] unless I learn Java.
Then why am I seeing you in comp.lang.java.programmer right now?
And I certainly won't troll over there like you are trolling over
here, if anything I will complain of some little things I don't like
about Java.
I am not trolling. Lispers fired the first shots in this little teapot-
tempest, and Lispers have already done a lot of complaining abou Java
here. We have responded in kind, some of us, while others have
attempted a more reasoned debate about the merits, to no avail.
I don't know if anyone here is trolling, aside from the OP with his
umpteenth joblessness whine, to be honest.