unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* "Point" vs. "cursor" in documentation
@ 2018-07-03 13:25 Siraphob (Ben) Phipathananunth
  2018-07-03 14:27 ` Drew Adams
  0 siblings, 1 reply; 14+ messages in thread
From: Siraphob (Ben) Phipathananunth @ 2018-07-03 13:25 UTC (permalink / raw)
  To: emacs-devel

I've noticed usage of "the cursor" and "point" throughout manuals and 
doc-strings.  In what context is one preferred over the other?

--
Siraphob (Ben) Phipathananunth



^ permalink raw reply	[flat|nested] 14+ messages in thread

* RE: "Point" vs. "cursor" in documentation
  2018-07-03 13:25 "Point" vs. "cursor" in documentation Siraphob (Ben) Phipathananunth
@ 2018-07-03 14:27 ` Drew Adams
  2018-07-03 14:37   ` Jean-Christophe Helary
  2018-07-04  2:27   ` Siraphob (Ben) Phipathananunth
  0 siblings, 2 replies; 14+ messages in thread
From: Drew Adams @ 2018-07-03 14:27 UTC (permalink / raw)
  To: Siraphob (Ben) Phipathananunth, emacs-devel

> I've noticed usage of "the cursor" and "point" throughout manuals and
> doc-strings.  In what context is one preferred over the other?

Point is the buffer position of the cursor (aka text cursor).

In the Emacs manual (`C-h r'), `i point' and `i cursor'
both take you to node `Point', which explains this.



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: "Point" vs. "cursor" in documentation
  2018-07-03 14:27 ` Drew Adams
@ 2018-07-03 14:37   ` Jean-Christophe Helary
  2018-07-03 20:16     ` John Yates
  2018-07-04  2:27   ` Siraphob (Ben) Phipathananunth
  1 sibling, 1 reply; 14+ messages in thread
From: Jean-Christophe Helary @ 2018-07-03 14:37 UTC (permalink / raw)
  To: Drew Adams; +Cc: emacs-devel

[-- Attachment #1: Type: text/plain, Size: 694 bytes --]



> On Jul 3, 2018, at 23:27, Drew Adams <drew.adams@oracle.com> wrote:
> 
>> I've noticed usage of "the cursor" and "point" throughout manuals and
>> doc-strings.  In what context is one preferred over the other?
> 
> Point is the buffer position of the cursor (aka text cursor).

From the Introduction to Emacs Lisp:

"In Emacs, the current position of the cursor is called point. The expression (point) returns a number that tells you where the cursor is located as a count of the number of characters from the beginning of the buffer up to point."


Jean-Christophe Helary
-----------------------------------------------
http://mac4translators.blogspot.com @brandelune



[-- Attachment #2: Type: text/html, Size: 2359 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: "Point" vs. "cursor" in documentation
  2018-07-03 14:37   ` Jean-Christophe Helary
@ 2018-07-03 20:16     ` John Yates
  2018-07-03 23:04       ` Richard Stallman
  0 siblings, 1 reply; 14+ messages in thread
From: John Yates @ 2018-07-03 20:16 UTC (permalink / raw)
  To: brandelune; +Cc: Drew Adams, Emacs developers

On Tue, Jul 3, 2018 at 10:38 AM Jean-Christophe Helary
<brandelune@gmail.com> wrote:
> From the Introduction to Emacs Lisp:
>
> "In Emacs, the current position of the cursor is called point. The expression (point) returns a number that tells you where the cursor is located as a count of the number of characters from the beginning of the buffer up to point."

Historical note:  Emacs did not invent this terminology.  When I used
TECO commands were explained / defined in terms of "point".  For all I
know TECO may in turn have inherited that terminology from even
earlier editors (c.f. MIT's ITS or its PDP-1).

/john



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: "Point" vs. "cursor" in documentation
  2018-07-03 20:16     ` John Yates
@ 2018-07-03 23:04       ` Richard Stallman
  2018-07-04 12:13         ` John Yates
  0 siblings, 1 reply; 14+ messages in thread
From: Richard Stallman @ 2018-07-03 23:04 UTC (permalink / raw)
  To: John Yates; +Cc: brandelune, drew.adams, emacs-devel

[[[ To any NSA and FBI agents reading my email: please consider    ]]]
[[[ whether defending the US Constitution against all enemies,     ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

  > Historical note:  Emacs did not invent this terminology.  When I used
  > TECO commands were explained / defined in terms of "point".  For all I
  > know TECO may in turn have inherited that terminology from even
  > earlier editors (c.f. MIT's ITS or its PDP-1).

ITS, the Incompatible Timesharing System, was not a text editor.
Its text editor was TECO -- the very same TECO on top of which
EMACS was implemented.

-- 
Dr Richard Stallman
President, Free Software Foundation (https://gnu.org, https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)





^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: "Point" vs. "cursor" in documentation
  2018-07-03 14:27 ` Drew Adams
  2018-07-03 14:37   ` Jean-Christophe Helary
@ 2018-07-04  2:27   ` Siraphob (Ben) Phipathananunth
  2018-07-04  2:39     ` Stefan Monnier
  2018-07-04 14:52     ` Drew Adams
  1 sibling, 2 replies; 14+ messages in thread
From: Siraphob (Ben) Phipathananunth @ 2018-07-04  2:27 UTC (permalink / raw)
  To: Drew Adams, emacs-devel

Right.  I've seen the explanation.  It's like hell|o where | is the position of point, and cursor appears over the "o".

When do we use point over cursor, and vice versa, in documentation?

Drew Adams wrote:
>> I've noticed usage of "the cursor" and "point" throughout manuals and
>> doc-strings.  In what context is one preferred over the other?
> 
> Point is the buffer position of the cursor (aka text cursor).
> 
> In the Emacs manual (`C-h r'), `i point' and `i cursor'
> both take you to node `Point', which explains this.
> 

-- 
Siraphob (Ben) Phipathananunth



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: "Point" vs. "cursor" in documentation
  2018-07-04  2:27   ` Siraphob (Ben) Phipathananunth
@ 2018-07-04  2:39     ` Stefan Monnier
  2018-07-04  6:21       ` Jean-Christophe Helary
  2018-07-04 14:52     ` Drew Adams
  1 sibling, 1 reply; 14+ messages in thread
From: Stefan Monnier @ 2018-07-04  2:39 UTC (permalink / raw)
  To: emacs-devel

> When do we use point over cursor, and vice versa, in documentation?

"Point" is concerned about where operations will happen, whereas
"cursor" is concerned about where the thingy will be drawn on screen.
The cursor only moves when the display gets refreshed (i.e. once per
command, more or less), whereas point can be modified by lots of
intermediate operations, so it can change thousands of times within
a single command.


        Stefan




^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: "Point" vs. "cursor" in documentation
  2018-07-04  2:39     ` Stefan Monnier
@ 2018-07-04  6:21       ` Jean-Christophe Helary
  0 siblings, 0 replies; 14+ messages in thread
From: Jean-Christophe Helary @ 2018-07-04  6:21 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: emacs-devel



> On Jul 4, 2018, at 11:39, Stefan Monnier <monnier@iro.umontreal.ca> wrote:
> 
>> When do we use point over cursor, and vice versa, in documentation?
> 
> "Point" is concerned about where operations will happen, whereas
> "cursor" is concerned about where the thingy will be drawn on screen.
> The cursor only moves when the display gets refreshed (i.e. once per
> command, more or less), whereas point can be modified by lots of
> intermediate operations, so it can change thousands of times within
> a single command.

Which is the reason why "save-excursion" is used:

Introduction, 3.10

"In Emacs, a function frequently moves point as part of its internal workings even though a user would not expect this. For example, count-lines-region moves point. To prevent the user from being bothered by jumps that are both unexpected and (from the user’s point of view) unnecessary, save-excursion is often used to keep point in the location expected by the user. The use of save-excursion is good housekeeping."


Jean-Christophe Helary
-----------------------------------------------
http://mac4translators.blogspot.com @brandelune





^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: "Point" vs. "cursor" in documentation
  2018-07-03 23:04       ` Richard Stallman
@ 2018-07-04 12:13         ` John Yates
  2018-07-04 15:15           ` Eli Zaretskii
  2018-07-04 22:32           ` Richard Stallman
  0 siblings, 2 replies; 14+ messages in thread
From: John Yates @ 2018-07-04 12:13 UTC (permalink / raw)
  To: Richard Stallman; +Cc: brandelune, Drew Adams, Emacs developers

On Tue, Jul 3, 2018 at 7:04 PM Richard Stallman <rms@gnu.org> wrote:
> ITS, the Incompatible Timesharing System, was not a text editor.
> Its text editor was TECO -- the very same TECO on top of which
> EMACS was implemented.

Yes, I am aware that ITS was an OS, not an editor.  Similarly the
PDP-1 was a machine with a separate timesharing system (did
it have a name?) and not an editor.

I had no exposure to ITS and so have no knowledge of its history
or the tools that it offered.  Was TECO truly its first editor?

I was exposed to the PDP-1 enough to play spacewar.  I recall
that prior to TECO it had an editor named Expensive Typewriter.
I never got to use that editor.

My reference to ITS and the PDP-1 was merely a conjecture
that if TECO did not originate the concept of point then it likely
inherited it from an early editor, most likely an editor running on
one of those two systems.

Some googling turned up this article in which Dan Murphy
mentions Expensive Typewriter and explains that TECO
originated on the PDP-1:

http://tenex.opost.com/anhc-31-4-anec.pdf

I also tracked down an Expensive Typewriter "manual":

http://archive.computerhistory.org/resources/text/DEC/pdp-1/DEC.pdp_1.1972.102650079.pdf

Reading that manual I can clearly see how Expensive
Typewriter gave rise to TECO.  That said ET was entirely
line-oriented.  I conclude that TECO first gave us the point
concept and terminology.

/john



^ permalink raw reply	[flat|nested] 14+ messages in thread

* RE: "Point" vs. "cursor" in documentation
  2018-07-04  2:27   ` Siraphob (Ben) Phipathananunth
  2018-07-04  2:39     ` Stefan Monnier
@ 2018-07-04 14:52     ` Drew Adams
  1 sibling, 0 replies; 14+ messages in thread
From: Drew Adams @ 2018-07-04 14:52 UTC (permalink / raw)
  To: Siraphob (Ben) Phipathananunth, emacs-devel

> Right.  I've seen the explanation.  It's like hell|o where | is the
> position of point, and cursor appears over the "o".
> 
> When do we use point over cursor, and vice versa, in documentation?

If the | is something visual, it indicates a position.
If it is the cursor then it indicates point.  That's
what the cursor does: it indicates the position (point)
where text is inserted when you type.

One (point) is the position.  The other (cursor) is
a visual indication of that position.  Even if the
cursor were removed (not displayed), point would be
there - it's just a buffer position (1 ...).

When you want to talk about the position where text
will be inserted etc., use "point".  When you want
to talk about the display artifact that indicates
that position (whether shown as bar, box, this color
or that), use "cursor".



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: "Point" vs. "cursor" in documentation
  2018-07-04 12:13         ` John Yates
@ 2018-07-04 15:15           ` Eli Zaretskii
  2018-07-04 17:20             ` Drew Adams
  2018-07-04 22:32           ` Richard Stallman
  1 sibling, 1 reply; 14+ messages in thread
From: Eli Zaretskii @ 2018-07-04 15:15 UTC (permalink / raw)
  To: John Yates; +Cc: emacs-devel, rms, drew.adams, brandelune

> From: John Yates <john@yates-sheets.org>
> Date: Wed, 4 Jul 2018 08:13:22 -0400
> Cc: brandelune@gmail.com, Drew Adams <drew.adams@oracle.com>,
> 	Emacs developers <emacs-devel@gnu.org>
> 
> Similarly the PDP-1 was a machine with a separate timesharing system
> (did it have a name?)

I think you mean RSX-11, but there were others, see

  https://en.wikipedia.org/wiki/DEC_BATCH-11/DOS-11



^ permalink raw reply	[flat|nested] 14+ messages in thread

* RE: "Point" vs. "cursor" in documentation
  2018-07-04 15:15           ` Eli Zaretskii
@ 2018-07-04 17:20             ` Drew Adams
  0 siblings, 0 replies; 14+ messages in thread
From: Drew Adams @ 2018-07-04 17:20 UTC (permalink / raw)
  To: Eli Zaretskii, John Yates; +Cc: emacs-devel, rms, brandelune

> I think you mean RSX-11

I remember it fondly.  Real-time processing, memory mapping - fun.



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: "Point" vs. "cursor" in documentation
  2018-07-04 12:13         ` John Yates
  2018-07-04 15:15           ` Eli Zaretskii
@ 2018-07-04 22:32           ` Richard Stallman
  2018-07-04 23:03             ` John ff
  1 sibling, 1 reply; 14+ messages in thread
From: Richard Stallman @ 2018-07-04 22:32 UTC (permalink / raw)
  To: John Yates; +Cc: brandelune, drew.adams, emacs-devel

[[[ To any NSA and FBI agents reading my email: please consider    ]]]
[[[ whether defending the US Constitution against all enemies,     ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

  > I had no exposure to ITS and so have no knowledge of its history
  > or the tools that it offered.  Was TECO truly its first editor?

Yes.  PDP-10 TECO came before ITS.

The PDP-10 was an upward-compatible improvement of the PDP-6.
The AI lab first got a PDP-6 and wrote a TECO for it.

The PDP-6 was not suitable for timesharing.  So when it got the
PDP-10, people immediately used TECO on that too, but they also wrote
ITS.

-- 
Dr Richard Stallman
President, Free Software Foundation (https://gnu.org, https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)





^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: "Point" vs. "cursor" in documentation
  2018-07-04 22:32           ` Richard Stallman
@ 2018-07-04 23:03             ` John ff
  0 siblings, 0 replies; 14+ messages in thread
From: John ff @ 2018-07-04 23:03 UTC (permalink / raw)
  To: emacs-devel

[-- Attachment #1: Type: text/plain, Size: 1057 bytes --]

Athletes! The memories! I used ITS over the ARPANET, for access to macsyma.

So different from Titan's online system....

⁣Sent from Blue ​

On 4 Jul 2018, 23:33, at 23:33, Richard Stallman <rms@gnu.org> wrote:
>[[[ To any NSA and FBI agents reading my email: please consider    ]]]
>[[[ whether defending the US Constitution against all enemies,     ]]]
>[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
>
>  > I had no exposure to ITS and so have no knowledge of its history
>  > or the tools that it offered.  Was TECO truly its first editor?
>
>Yes.  PDP-10 TECO came before ITS.
>
>The PDP-10 was an upward-compatible improvement of the PDP-6.
>The AI lab first got a PDP-6 and wrote a TECO for it.
>
>The PDP-6 was not suitable for timesharing.  So when it got the
>PDP-10, people immediately used TECO on that too, but they also wrote
>ITS.
>
>--
>Dr Richard Stallman
>President, Free Software Foundation (https://gnu.org, https://fsf.org)
>Internet Hall-of-Famer (https://internethalloffame.org)

[-- Attachment #2: Type: text/html, Size: 1570 bytes --]

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2018-07-04 23:03 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-03 13:25 "Point" vs. "cursor" in documentation Siraphob (Ben) Phipathananunth
2018-07-03 14:27 ` Drew Adams
2018-07-03 14:37   ` Jean-Christophe Helary
2018-07-03 20:16     ` John Yates
2018-07-03 23:04       ` Richard Stallman
2018-07-04 12:13         ` John Yates
2018-07-04 15:15           ` Eli Zaretskii
2018-07-04 17:20             ` Drew Adams
2018-07-04 22:32           ` Richard Stallman
2018-07-04 23:03             ` John ff
2018-07-04  2:27   ` Siraphob (Ben) Phipathananunth
2018-07-04  2:39     ` Stefan Monnier
2018-07-04  6:21       ` Jean-Christophe Helary
2018-07-04 14:52     ` Drew Adams

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).