This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Opinions: line/column numbering conventions in the Guile API


> As in Emacs, lines are numbered starting at 1 while column numbers
> start at 0.
> 
> I'm not familiar with the reason for this mixed convention in Emacs
> Lisp, but when using it in ELisp programs it has seemed practical to
> me.  (With this I mean that it has often avoided extra operations.)
> 
> To get a more symmetric (consistent) API, it could be desirable to
> number lines starting at 0 instead.

As ugly as a mixed convention is, it seems to me that there is an
advantage in using the same convention as Emacs.  When running Guile
programs under Emacs buffers, Emacs should be able to do something
useful with error reports, such as positioning the cursor on the line
and column where the error arose.  This will be easier to do if
Guile's conventions match Emacs.

If that were not the case, I think I would prefer 1-origin numbers for
both lines and columns.  It would be less confusing to me as a Guile
user to count lines and columns starting at 1.  If `port-lines' and
`port-column' are intended mainly as user interface tools, it makes
sense to cater to the user's expectations.

love, T.