The Modernization of Emacs

K

Kjetil S. Matheussen

| > these people seemed to be
| > completely disconnected from reality.
|
| Please don't write things like that without backing it up with some
| reason.

well, for one, Scheme lacked proper libraries for doing everyday
things, so when I tried to use it I found myself writing a lot of
library code that I shouldn't have had to deal with. but it is quite
long ago, so things might have changed since then.

Things have probably changed a little, but the stuff in SISC isn't
specific for scheme, although a schemish language is used in the book.
 
T

Twisted

On Jun 27, 4:18 am, Gian Uberto Lauri <[email protected]>
wrote:
[A very long, rambling, semi-coherent post]
Strange. I am *NOT* a native english speaker and I think my Q.I. tends
toward average from below...

That much is obvious.
...but refcard sound very useful to me, maybe is short for "reference card" ?

Yes, but you'd have to be some kind of clairvoyant to realize "I know!
I'll do a search for "refcard.ps" on the off chance someone happens to
have made a reference card, called it "refcard", and chose the
Postscript format to record it in!" out of the blue.
I admit. find is less intuitive. But the stuff Windows comes with does
just that and nothing more. It will never suggest you that the long
boring task expecting you can be solved in a completely automatic
way with a little creative job.

And with one little typo, it's hello Sorceror's Apprentice mode...
Emacs help was hypertextual when Dr. Watson plagued Windowd 3.11
users...

Dr. Watson just plagued this WinXP user. Please don't mention Dr.
Watson again for a while, for the love of Christ.
Splash, large miss.

This is usenet, not Battleship.
You usually fire it to the local printer.

Yes, if you have one and care to blow through reams of paper and
gallons of ink every month by printing everything you encounter
instead of reading it on the expensive LCD monitor you got for such
purposes.
T> enough. Trying to read anything serious and navigate in GSView is
T> no picnic either.

A refcard, my dear, is something that goes on an A4/Letter sheet and
NEEDS NOT to be hypertextual.

I was being more general.
With a PS file you can do just one thing, execute it. It's a program,
did you know ?

For which you need an interpreter. Such as Ghostscript. Which is a
pain to install and a bigger one to configure, even on Windoze.
Uh, I forget. For Windows users getting a PDF out of a PS or HTML or
ASCII is not this easy unless they get some extra software (someone
ported CUPS to Windows ?). Again, not an Emacs fault.

I wouldn't know CUPS if it dropped on my head. I think the same can be
said of most of the 3 or 4 non-expert unix users in the world.
Stop guessing or all will know that all you know about Unix is that
is a 4 letter word...

Yeah. Unix is a four-letter word alright.
All the computer screen is devoted to your work, the sheet provides
some extra "real estate" for the help information, a sort of double
heading display. All you need to do is turn your eyes from the
monitor, maybe your eyes and read the informations. It coudl happen
that you need to flip the sheet. But you can keep both your work and
the help text "ready at your fingertips", and this is useful indeed:
you read the command keybinding, turn your eyes, type it and see the
result and/or continue your work.

One small step backwards for a man, one giant leap...
About money. Indeed ink/toner and paper costs. Electricity grows on
the spark tree so aboundant in our forests...

This intrigues my younger brother. He wants to know how many moons are
in the sky and what color the sun is that your planet orbits. He's at
that phase where he's fascinated by astronauts, tales of alien worlds,
and things like that, you see...
But PostScript printing on my '80 Epson printwriter or my HP720c with
a Unix system with CUP is as easy as opening a browser, telling the
system I have a HP720c plugged to the parallel port and voilà.

I'll bet. Something tells me the catch lies somewhere in "a Unix
system with CUP". Unless it's in "browser" instead. Something tells me
we're not talking about something that resembles Firefox and makes
navigation easy and intuitive here.
In the same time I got an HP720c and it come with no other drivers
than Mac and Windows ones. I feared I was SOL when I readed of some
guy that wrote a small program that was able to convert certain gs
output to byte sequences good to pilot the HP720c.

It was *easy* to put this program in the pipeline in the "printer
driver" script.

And was *easy* insert a2ps to shoot plain text directly to the printer.

*Easy*. Maybe if you know all about the guts of how the printing
subsystem of the OS works. I doubt it's anything like that easy for
joe random who just wants to hit "print" and print the document
already and not have to spend ages learning about the internals of the
operating system first. In Windows, you plug it in and pick it from a
dialog (or use a disc that comes with the printer to do setup) and
print something. Voila! Out pops a document into the tray; no mess, no
fuss. Getting out your wrench and going at the plumbing shouldn't be
necessary; any more than I'd want to move into a new home and find I
needed to break out the tools and mess with the plumbing before the
toilet would flush or the kitchen tap spout water.
Ah, you'll start thinking that those who find find syntax arcane are
jackass... You need a little to realize it was not this easy in the
beginning. The dark side of power.

Once you start down the dark path, forever will it dominate your
destiny. Don't underestimate the power of the dark side!
 
G

Gian Uberto Lauri

Long count = 12.19.14.7.16; tzolkin = 2 Cib; haab = 4 Tzec.
T> On Jun 27, 4:18 am, Gian Uberto Lauri <[email protected]>
T> wrote:
T> [A very long, rambling, semi-coherent post]

T> That much is obvious.

So, did they never tell you "never argue with a fool, people could
misjudge who the fool is" ? And you stille replied to my post ?

--
/\ ___
/___/\_|_|\_|__|___Gian Uberto Lauri_____
//--\| | \| | Integralista GNUslamico
\/ e coltivatore diretto di Software

A Cesare avrei detto di scrivermi a (e-mail address removed)
 
T

Timofei Shatrov

For which you need an interpreter. Such as Ghostscript. Which is a
pain to install and a bigger one to configure, even on Windoze.

Lie. Ghostscript works out of the box on Windows.
 
B

Bjorn Borud

["Kjetil S. Matheussen" <[email protected]>]
|
| Things have probably changed a little, but the stuff in SISC isn't
| specific for scheme, although a schemish language is used in the book.

well, those are really two separate discussions: Scheme and whether
SICP is an important book or not.

-Bjørn
 
T

Twisted

Lie. Ghostscript works out of the box on Windows.

You're joking. First of all I am not a liar, and secondly, Ghostscript
and Ghostview are tricky to set up correctly. I know -- I've done it a
time or three. There's an arcane GUI configurator that isn't
exceptionally well designed, and once it's working it still wonks out
on maybe 1 in 10 .ps and .eps files you come across ... which is still
better than being able to view none of them, mind you. Nonetheless
there's a world of difference between the GS tools and say Adobe
Acrobat Reader in terms of setup and use; the latter you just run an
installer and then find a pdf to double-click; no other steps
necessary and it works every time. Of course, Adobe stuff is
proprietary, and acrord supports some types of evil DRM...
 
M

Matthias Buelow

Bjorn said:
I was told by a lot of people I consider to be intelligent that this
book would change how I think about writing software. it didn't. I
didn't really know what to expect, but after reading it I did feel
that its importance was greatly exaggerated.

I think it's basically a course book, for some CS courses at MIT that it
was originally used with, and that's it. It's not superb but ok, as far
as "lecture notes" go, a bit pretentious and a bit idiosyncratic,
probably due to being targeted mainly at students visiting a particular
course of lectures. I don't think it's supposed to be a general "how to
learn good programming"-style book although I don't think you've wasted
time reading it.

F'up-to: c.l.lisp.
 
J

Joel J. Adamson

Twisted said:
You're joking. First of all I am not a liar, and secondly, Ghostscript
and Ghostview are tricky to set up correctly. I know -- I've done it a
time or three. There's an arcane GUI configurator that isn't
exceptionally well designed, and once it's working it still wonks out
on maybe 1 in 10 .ps and .eps files you come across ...

It's become clear that you have a different conception of what
consitutes "working" software.
better than being able to view none of them, mind you. Nonetheless
there's a world of difference between the GS tools and say Adobe
Acrobat Reader in terms of setup and use; the latter you just run an
installer and then find a pdf to double-click; no other steps
necessary and it works every time. Of course, Adobe stuff is
proprietary, and acrord supports some types of evil DRM...

It's also become clear that you have a different conception of what
constitutes using a computer.

Joel

--
Joel J. Adamson
Biostatistician
Pediatric Psychopharmacology Research Unit
Massachusetts General Hospital
Boston, MA 02114
(617) 643-1432
(303) 880-3109

*Joel's guide to sending attachments:
1. put all the files you want to send in a folder and archive the
folder using tar, then compress it with gzip or bzip2
2. please send me .pdf, .html, or text in place of Word documents:
http://www.gnu.org/philosophy/sylvester-response.html

*Did you know there's a FREE alternative to using word processors?
http://www.edafe.org/latex/
http://en.wikipedia.org/wiki/LaTeX
http://nitens.org/taraborelli/latex
 
B

blmblm

You'll be happy to know then that my opinion is that the phone system
is archaic too.

Happy? Not especially. Amused? Yes. One more, um, "eccentric"?
opinion, from someone with many of them.

[ snip ]
 
B

blmblm

[ snip ]
I'm wondering if getting your head around unix arcana is also
dependent on an iffy "knack" where you "get it" and somehow know where
to look for documentation and problem fixes, despite everything having
its own idiosyncratic way, and "get" some sort of workflow trick
going, or you don't.

Well .... For me I think the crucial thing was having Unix experts
on tap when I was learning -- someone to answer my questions
patiently, and also to show me things I might not have found on
my own. Some combination of Usenet groups and books might have
served the same purpose.

I find Windows and its tools as frustrating as you seem to find
Unix, but I strongly suspect that being shown the ropes by someone
who understands and likes the system would help a lot. said:
Personally, the thing I always found most
irritating was the necessary frequent trips to the help. Even when the
help was easy to use (itself rare) that's a load of additional task
switching and crap. Of course, lots of the time the help was not easy
to use. Man pages and anything else viewed on a console, for example
-- generally you could not view it side by side with your work, but
instead interrupt the work, view it, try to memorize the one next
step, go back to your work, perform that next step, back to the help
to memorize another step ... that has all the workflow of a backed-up
sewer, yet until and unless the commands become second nature it's
what you're typically forced to do without a proper GUI.

[ I'm trying to imagine circumstances in which I would say "proper
GUI" and .... not succeeding. "Proper command line", now that
I say sometimes .... :)? ]

About not being able to view help side by side with one's work,
though .... You probably haven't heard the joke about how a
window manager is a mechanism for having multiple xterms (terminal
windows) on the screen at the same time, and a mouse is a device
for selecting which one should have the focus? Well, I like it.

[ snip ]
Maybe the thing I really, REALLY deplore is simply having 99% of my
attention forced to deal with the mechanics of the job and the
mechanics of the help viewer and only 1% with the actual content of
the job, instead of the other way around.

Exactly my experience of trying to use MS Office tools to do quick
edits under time pressure.
 
B

blmblm

n> So now we're expected to go on a filesystem fishing expedition
n> instead of just hit F1? One small step (backwards) for a man; one
n> giant leap (backwards) for mankind. :p

Waring, possible ID TEN T detected!

There's a program called find, not this intuitive but worth learning

It could solve the problem from the root with something like

find / -name refcard.ps -exec lpr {} \; 2> /dev/null

Let's not make this any worse than it has to be ....

If I wanted to find files that might have documentation on emacs,
I wouldn't look for filename refcard.ps; I'd try either

locate emacs

(Linux only AFAIK, won't find recently-added files because it
searches against a database usually rebuilt once a day)

or

find / -name "*emacs*"


You are so right that "find" is worth learning, but I'm not sure
it's a tool I'd have mentioned in this particular discussion,
because it *does* take a bit of learning. I wasn't surprised at
all that you got the reply you did. :)?

And as you mention downthread, any time you use "find" to execute
a command that might be costly (in terms of paper and ink in this
case), it's smart to first do a dry run to be sure the files it's
going to operate on are the ones you meant.

Whether "find" is better or worse than the GUI-based thing Windows
provides for searching for files .... I guess this is really
not the time or place to rant about the puppy, is it? (Yes,
I know you can make the animated character go away, something I
discovered just in time to avoid -- well, I'm not sure, but it
wouldn't have been good.)


[ snip ]
 
A

Andreas Eder

Hi Twisted,

Twisted> Let me get this straight.

Twisted> In this corner, we have just about every Windows application ever
Twisted> developed. When a user needs help, a click on the "help" menu or tap
Twisted> of the F1 key is all it takes to obtain some. Sometimes the help is
Twisted> not of the greatest quality, but that is another issue we won't
Twisted> concern ourselves with here.

Almost always when I really needed help in Windows, all it said
was: go ask your system administrator. Really helpful :-(

Twisted> In the other corner, we have just about every Unix application ever
Twisted> developed. When a user needs help, they may do such things as manually
Twisted> explore the directories where the application was installed
Twisted> (equivalent to rooting around in C:\Program Files\Appname for .hlp
Twisted> files, because F1 didn't work and there was no "help" menu, if such a
Twisted> thing ever happened on Windoze).

Ever heard of man pages? and info?

'Andreas
 
T

Tim Roberts

Twisted said:
You're joking. First of all I am not a liar, and secondly, Ghostscript
and Ghostview are tricky to set up correctly. I know -- I've done it a
time or three. There's an arcane GUI configurator that isn't
exceptionally well designed, and once it's working it still wonks out
on maybe 1 in 10 .ps and .eps files you come across ...

You must have installed Ghostscript last in 1998. The current installer is
as painless as most open source installers are.
 
J

Joel J. Adamson

I find Windows and its tools as frustrating as you seem to find
Unix, but I strongly suspect that being shown the ropes by someone
who understands and likes the system would help a lot. <shrug>

I feel the same way about Windows being frustrating, however I find
that having a Windows "expert" around helps very little. Heck, *I*
was a Windows expert for as long as I was using it. I always found it
to be totally opaque. It always seemed like the only way to make
things work was to BUY something --- something that really offended
me. It became clear to me quickly that Windows is basically a
billboard on a CRT --- the help files only told me to buy stuff, or
how "fun and easy" it was to do something, without actually saying how
to do it. When I got XP and wanted to change my desktop theme ---
guess what? They decided to start charging for that too.

With Windows I never got it; with Unix of any kind (linux, SunOS,
etc), I have felt like I got it right away.

Joel

--
Joel J. Adamson
Biostatistician
Pediatric Psychopharmacology Research Unit
Massachusetts General Hospital
Boston, MA 02114
(617) 643-1432
(303) 880-3109

*Joel's guide to sending attachments:
1. put all the files you want to send in a folder and archive the
folder using tar, then compress it with gzip or bzip2
2. please send me .pdf, .html, or text in place of Word documents:
http://www.gnu.org/philosophy/sylvester-response.html

*Did you know there's a FREE alternative to using word processors?
http://www.edafe.org/latex/
http://en.wikipedia.org/wiki/LaTeX
http://nitens.org/taraborelli/latex
 
C

Chris Barts

15:43 in comp.emacs said:
Eclipse has something that generates "import" statements with
a few keystrokes, and for me that's almost in the "killer app
[feature]" class.

This is a sign of a weak programming language, in my eyes: If you need
keystroke macros to enter boilerplate, you REALLY need a language that
allows you to package commonly-used idioms into macros. (See Common Lisp,
Scheme, Emacs Lisp, and, indeed, even Dylan. Python and Ruby almost solve
the same problem by providing a richer set of primitives, but they aren't
extensible.)
(Why do I strongly suspect that with the
right plug-ins emacs can do this too? :) That would send
me searching for the Web site where vim macros are collected.)

Inserting literal text in Emacs using keystroke macros is trivial. Inserting
more changeable boilerplate is a job for Emacs Lisp.
 
T

Twisted

15:43 in comp.emacs said:
Eclipse has something that generates "import" statements with
a few keystrokes, and for me that's almost in the "killer app
[feature]" class.

This is a sign of a weak programming language, in my eyes: If you need
keystroke macros to enter boilerplate, you REALLY need a language that
allows you to package commonly-used idioms into macros.

But you don't, since people who aren't using Eclipse (or emacs?) type

import java.util.*

rather than racking up 30 or so imports for all the varieties of Set,
List, Comparator, and Map they use. :)

It's nice to see this thread veering somewhat back on-topic too.
There's been an awful lot of stuff totally unrelated to Java in it.

Attempt to hijack my reply into the wrong newsgroup prevented and
noted, BTW. Stop trying to cause my posts to vanish instead of
appearing in the same group in which I read whatever you wrote that
I'm replying to, please. Succeeding will cause me to miss seeing any
replies my posting generates in turn, which isn't very nice.
 
B

blmblm

15:43 in comp.emacs said:
Eclipse has something that generates "import" statements with
a few keystrokes, and for me that's almost in the "killer app
[feature]" class.

This is a sign of a weak programming language, in my eyes: If you need
keystroke macros to enter boilerplate, you REALLY need a language that
allows you to package commonly-used idioms into macros. (See Common Lisp,
Scheme, Emacs Lisp, and, indeed, even Dylan. Python and Ruby almost solve
the same problem by providing a richer set of primitives, but they aren't
extensible.)
(Why do I strongly suspect that with the
right plug-ins emacs can do this too? :) That would send
me searching for the Web site where vim macros are collected.)

Inserting literal text in Emacs using keystroke macros is trivial. Inserting
more changeable boilerplate is a job for Emacs Lisp.

If you're curious -- it would be the latter that would be needed
to provide the feature I was talking about, which I'll summarize
in case you're curious and don't know much about Java:

Most Java library classes have names that are somewhat inconvenient
to type repeatedly -- for example, java.util.Vector. A shorthand
for doing this is to put the line

import java.util.Vector;

at the top of the program, whereupon all references to the short
form "Vector" will be interpreted as meaning "java.util.Vector".

One can also write

import java.util.*;

which provides this kind of name expansion for all classes in the
package java.util. This is considered (by some?) to be somewhat
sloppy programming, because of the potential for inadvertent name
collisions with one's own classes, but it's tempting if you're
using a tool that doesn't have an automatic way of generating
the needed "import" statements (and some programs can need a fair
number of them).

I'm quite confident that the functionality provided by Eclipse
could be duplicated by the right Emacs Lisp code, given how many
other things the language seems to be capable of. I'm not so
sure about vim's macro language, but who knows. It would be
mildly interesting to know whether anyone *has* done this.

Adding comp.lang.java.programmer back to the Newsgroups line in
case of the more-expert-than-I regulars has something to add.
 
I

Ian Wilson

Chris said:
Eclipse has something that generates "import" statements with
a few keystrokes, and for me that's almost in the "killer app
[feature]" class.


This is a sign of a weak programming language, in my eyes: If you need
keystroke macros to enter boilerplate, you REALLY need a language that
allows you to package commonly-used idioms into macros.

You might have misunderstood.

In the same way that in Perl we write
use XML::LibXML;

In Java you write
import javax.swing.JComboBox;

In the case of Java this is solely so that later on you can write
JComboBox fooBox = new JComboBox(...);
instead of
javax.swing.JComboBox fooBox = new javax.swing.JComboBox(...);


The feature in Eclipse to which I think blmblm refers is that you can
just write
JComboBox fooBox = new JComboBox(...);
then press Ctrl+O and Eclipse will try to find all the packages that
contain a JComboBox class. If there is only one, Eclipse will insert the
appropriate import statement at the top of the file. If there is more
than one, Eclipse will offer you a list to choose from and then insert
an import statement for the package you selected.

This mechanism works for classes in third-party and your own packages as
well as the standard Java class library.

So far as I can see, adding a macro facility to the language (as opposed
to the IDE) wouldn't help with this. The import statements are neither
boilerplate nor idiom in the senses I understand. The Java classes I've
written each have fairly unique sets of import statements.

Having a system of namespaces that allow for concise naming of classes
whilst preventing class-name clashes seems to me more like a strength
than a weakness.

Of course, Java and Perl do have plenty of significant weaknesses. I'm
not yet convinced that lack of a macro facility is one of them.
 
B

Bjorn Borud

[Ian Wilson <[email protected]>]
|
| You might have misunderstood.

when people use words like "powerful" or "weak" about programming
languages you can safely assume that the ensuing discussion will be
fruitless.

-Bjørn
 
B

blmblm

Chris said:
Eclipse has something that generates "import" statements with
a few keystrokes, and for me that's almost in the "killer app
[feature]" class.


This is a sign of a weak programming language, in my eyes: If you need
keystroke macros to enter boilerplate, you REALLY need a language that
allows you to package commonly-used idioms into macros.

You might have misunderstood.

Seems very possible -- and I'm starting to be curious about what
Chris thought import statements were.
In the same way that in Perl we write
use XML::LibXML;

In Java you write
import javax.swing.JComboBox;

In the case of Java this is solely so that later on you can write
JComboBox fooBox = new JComboBox(...);
instead of
javax.swing.JComboBox fooBox = new javax.swing.JComboBox(...);


The feature in Eclipse to which I think blmblm refers is that you can
just write
JComboBox fooBox = new JComboBox(...);
then press Ctrl+O and Eclipse will try to find all the packages that
contain a JComboBox class. If there is only one, Eclipse will insert the
appropriate import statement at the top of the file. If there is more
than one, Eclipse will offer you a list to choose from and then insert
an import statement for the package you selected.

Yup, that's the feature I meant, and you explained it better than
I did (in a post to comp.emacs and comp.lang.java.programmer only).
 

Ask a Question

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.

Ask a Question

Members online

Forum statistics

Threads
473,780
Messages
2,569,608
Members
45,252
Latest member
MeredithPl

Latest Threads

Top