S
Series Expansion
I'm pretty sure that our dear Mr Expansion is unaware of the
None of these personal attacks have any bearing on Java *or* Lisp.
Please endeavor to stick to the topic at hand.
I'm pretty sure that our dear Mr Expansion is unaware of the
How the heck can you "explain" something you quite clearly know
nothing about?
Just like Emacs!
Just like Emacs!
Just like Emacs!
Nobody's talking about a terminal-oriented editor.
Nobody's talking about a curses-based unix editor from the seventies.
Patricia said:I would see the computer problem as an opportunity. Someone who has been
out of a job for many years needs to demonstrate general initiative,
resourcefulness, and determination as well as technical skills.
"I didn't have enough money to buy a new computer but I found one that
would do the job at a yard sale and negotiated the price down to what I
could afford.", or any of the other suggestions people have posted,
would be more likely to impress a hiring manager than "I couldn't do any
open source work because I didn't have a powerful enough computer."
You missed the memo, man.
[articles of faith deleted]It can:
This is not some toy from the stoneage!
Emacs nowadays, is like all of Eclipse.
You are the one who is mistaken
by thinking that Emacs is like just the source editing pane.
You also have the right to admit that you misunderstood what he said,
We're trying to help you
we genuinely think that Lisp has some great ideas
and we just want to share ideas rather than troll around.
Lisp has had all of that for 20+ years, plus an interactive prompt
that you can use to "sketch" your code.
Emacs (which as I pointed out in an earlier post, is at least version
22.1.1 today
deals with windowing and all that stuff.
If this is still confusing, please say so, and we'll try and explain
again.
They're not for sale -- they're free!
You can get these drugs for no cost whatsoever. Head on over tohttp://www..gigamonkeys.com/book/and you will experience a mindblowing
trip which could well last for the rest of your life.
Yes.
Arne said:Software development does not necessarily require much computer
power. An old 486 with DOS 6.22 and DJGPP for C programming
does not seem slow. The editor may seem a bit primitive, but
then more thinking and less typing is usually a good thing.
If one uses it to edit application code that presents a GUI, such as
Swing method calls in Java source code, then I suppose that last
statement is technically true.
How can you be so sure?
Visual is not everything, you know.
I am pretty sure that you never really used emacs.
And Emacs can display graphics
but it is just a visual feature, not a useful feature,
Emacs + Slime is also an IDE, believe it or not.
I have used Eclipse with the extension named Cusp that allows Lisp
programming, but it happened that Eclipse + Cusp is not like Emacs +
Slime to code in Lisp.
It could.
Instead of opening a new balloon or a message, it could only
divide the screen and show the help on half of it.
It is certainly not fancy or beautiful, but it works pretty
well, I assure you.
It certainly doesn't do that.
So does Emacs + Slime.
But you invoke make from the command line.
Emacs + Slime also does that.
That is what he meant by what he said. You can, you are not obligated
to, use the REPL to macroexpand code. But the REPL is very handy in
many cases, specially testing.
Why is opening a program and communicating with it through a socket
not secure? I bet this is how Dev-c++ and other programs do with
compilers.
Why do you think I think that?
You don't really need the mouse, you just didn't realize that yet.
This is not a personal attack!
I am just saying that your arguments here are dumb.
And they are.
I didn't say you are.
All Lispers reading them are thinking the same thing
I would do the same thing if I complained about Java because I
don't know Java.
So why is it so hard to believe that Emacs + Slime also can?
That would explain why his postings read like something out of ...
This is called a metaphor.
You know nothing about Lisp and you are making very bad
arguments for that reason.
I didn't attack you.
And this makes you look like a fool when making your arguments.
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?
This is the thing: I am not in c.l.j.p, I am in comp.lang.lisp, where
these posts where originated and therefore where they belong.
Someone just moved them to c.l.j.p for whatever reason, but
this was initially a c.l.l post.
gugamilare said:Surprise:
http://www.gnu.org/software/emacs/tour/images/splash.png
http://www.gnu.org/software/emacs/tour/images/gdb.png
http://www.gnu.org/software/emacs/tour/images/ediff.png
You say you have personal experience with Emacs, but you probably only
used it before 1980's.
The problem with giving C examples, is that C macros are something
completely different from Lisp marcos. Apples and oranges.
Just because somebody has a tiny grammar mistake in their English,
doesn't mean that the rest of what they say doesn't have some valuable
information.
Well, keep in mind that Lisp code IS the parse tree generated by the
compiler, while C code has to be turned into a parse tree afterwards.
Thus, in a sense, Lisp macros can be anywhere.
Lisp macros can't redefine an existing function or macro.
And in the cases where you do want to locally use a different
definition for a function or macro, it's possible to define local
functions or macros using forms such as FLET, LABELS, MACROLET, or
SYMBOL-MACROLET, but those definitions vanish as soon as you leave the
scope of their enclosing form.
OK, this is where I'll explain why your statement that "a macro is a
macro" is a bit of a cop-out in this situation.
(A car is a car, right? A VW bug is a car. And James Bond's high-tech
fancy shit is a car. Thus, James Bond's high-tech fancy shit turns out
to be a VW bug. Not exactly, and that's the same logical fallacy that
you made about macros.)
AFAIK, macros are used mainly for the source code transformations that
they perform -- however, these transformations only happen at the
point in the parse tree where the macro is called. Defining a macro
has no effect except for where you actually call the macro.
A macro receives some arguments. These arguments are not evaluated
when you pass them to the macro, they are only evaluated as the person
who writes the macro sees fit. Thus, it is quite easy to ensure that
each macro argument is evaluated only once, and that they are
evaluated in a specified order -- the natural one being from left to
right.
There was an example of a C macro at one point, where passing
it a form like "i++" would end up incrementing i more than once --
this would not happen in a Lisp macro written by any half-competent
programmer.
The macro definition should thus look like this -- notice that the
macro itself doesn't evaluate ANY of the arguments passed to it, but
rather just specifies new locations for them. That's essentially what
the backquote syntax (` and ,) does.
(defmacro aif (test if-form &optional then-form)
`(let ((it ,test))
(if it ,if-form ,then-form)))
I hope my explanation has cleared some things up here.
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?This is the thing: I am not in c.l.j.p, I am in comp.lang.lisp, where
these posts where originated and therefore where they belong. Someone
just moved them to c.l.j.p for whatever reason, but this was initially
a c.l.l post.
Robert Maas's original post was cross-posted between a bunch of
groups.
However, the discussions in this thread have mostly been Lisp-
oriented
including many subtextual requests for curing of extreme
Lisp ignorance.
Lew said:No "poor c.l.j.p reader could be misled" if you'd just take this
thread off of c.l.j.p. Please.
Advocacy for other programming languages is not the purpose of
c.l.j.p., no matter how excellent the other languages.
Ah!!! I didn't know that! Now I know why C macros fail.
And why this is so difficult for you to understand
Now you get it.
The only difference between macros and functions is
when it is called, and the type of arguments it receives.
Believe me, all the power we are talking about come from such a
simple feature. Whether you believe it or not, this simple
feature is already enough to make all the things we said.
Period.
The Lisp compiler always complains about name collisions, whether it
is a macro-macro, function-function or macro-function call.
No. Every language implements everything in a different way.
This is easily handled in lisp using local variables
Side-effects and variable-collision safe. Just simple as that.
Do you really think that 50 years of coding and Lisp programmers are
amateurs enough to make such bad mistakes? Again you fail to
understand this.
Nintendo 64 was implemented using Lisp. So was Mario 64.
ITA Software is a well known company that uses Common Lisp.
There are at least 2 commercial Lisp implementations that sell CL
environments with many features and charge over a thousand dollars
on a single license.
Many really experienced programmers like Paul Graham use Lisp (and not
only Lisp).
And you are the first one to ever see these problems.
Oh, he was talking about my English. Ok, I might have made English
mistakes throughout the thread, I am not a native English speaker so
understand that writing things in English is not as intuitive and as
easy as it is to you, even though I am not bad in English. If you
think I am stupid just because my English is not as good as yours, you
don't have a point.
Emacs can also have a large grid.
It has windows.
Don't you think Emacs has Unicode support?
Emacs is not a frozen ancient application, it has evolved, and that
is why it still exists.
Emacs is not different.
Wow! Emacs does that.
You don't need multiple windows to copy and paste code
You clearly didn't ever use Emacs.
Emacs have even an extension that is a browser inside Emacs.
Emacs can display pictures that the webpages have.
(Someone already said that he uses Emacs to surf on the web, but,
conveniently, you just ignored him).
For the thousandth time, Emacs have a window system.
But used only invalid arguments
I think there have been some good explanations in some of my threads
explaining how Emacs IS A GRAPHICAL SYSTEM
and is much much much much much much more than just a text
editor.
I also had a very detailed
post about an hour ago about the Lisp macro system. Please spend your
time on explanatory posts, not flammatory ones.
Dude, it's been said 5 or 6 times already
If you just don't want to learn about Lisp, just say so. However, at
that point, we'll probably start ignoring you, rather than trying to
show you where you can fill in gaps in your knowledge.
Want to reply to this thread or ask your own question?
You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.