unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: xenodasein@tutanota.de
Cc: emacs-devel@gnu.org
Subject: Re: Development Speed
Date: Wed, 22 Dec 2021 14:41:18 +0200	[thread overview]
Message-ID: <83r1a4yfpt.fsf@gnu.org> (raw)
In-Reply-To: <MrUc5dI--3-2@tutanota.de> (xenodasein@tutanota.de)

> Date: Wed, 22 Dec 2021 01:52:53 +0100 (CET)
> From: xenodasein@tutanota.de
> Cc: emacs-devel@gnu.org
> 
> But it doesn't work, it returns nil!  Shouldn't it just throw error
> when called in TUI or just get not bound to it's symbol?

If you show the code that you tried (preferably starting from "emacs -Q"),
I could try making up my mind whether there's a problem here in how
Emacs behaves.  Signaling an error is not necessarily TRT.

> > This is a feature: Lisp programs almost never need to know whether
> > they run on text-mode or GUI displays.  If a Lisp program had to ask
> > on every step whether the display is TTY or GUI...
> 
> I think they have to

No, they don't.

> unless TUI and GUI capabilites of a program are
> exactly the same, which would be unfortunate.

They don't even if the behavior is the same (why is that unfortunate?)
or if it is not the same (assuming the differences are either
self-evident or documented).

> For example this package https://github.com/tumashu/ivy-posframe
> only works on and is meaningful for GUI.

Maybe you should report a bug to the developers of that package,
then.  The Emacs development philosophy is what I described

> But:
> 
> > ... we deliberately implemented most of the GUI features on TTYs:
> > multiple frames, colors (with transparent translation of X colors),
> > mouse support, menus and dialogs -- in order to eliminate most of the
> > differences on the Lisp level.
> 
> Shouldn't there exist a set of functions that exit for GUI, a set that
> exist for TUI, and as their intersection a set of interface-agnostic
> functions?

No, there should be (ideally) only one set.  Applications should be
free from dealing with this distinction as much as possible.

> > ... One of the worst "surprises" when
> > building a new version of a package is to find out it no longer
> > supports your compiler/linker/libraries...
> 
> If a system has internet connection and is able to run the latest Emacs,
> shouldn't it be able to get a reasonably recent GCC?  Asking for my own
> education, feel free to pass...

The problem is, once you download the latest GCC, it turns out it also
needs a later Binutils, and a later GMP; and the latest Binutils need
a later glibc and half a dozen of other libraries and tools upgraded,
etc. etc.  before long you find yourself installing dozens of new
packages.  At which point it turns out that your hardware is too old
and cannot support some of them.

If you have never been in such a situation, you may not realize how
maddening it could be, or may not believe me it happens.  But it is
actually very real.

> > Why is that?  We are talking about a project most of whose codebase is
> > extremely stable and proven by many years of use.  What could possibly
> > new compilers give us except destabilize the code (due to bugs in
> > early implementations of new standards)?
> 
> I don't know how bad the situation is but I feel like I mentioned C++20
> and not C11? GCC is the backbone of GNU and C11 was implemented in it
> like 10 years ago IIRC. Compiling Emacs 29 (assuming it is C11, which I
> don't think it will or should) on a system system without C11 sounds,
> rather unusual?  There is always 28.  I am certainly not an authority on this
> subject, maybe there exists something like the "Steam Hardware Survey" but
> for GNU/GCC?

You are not listening.  I asked you what would be the advantages, and
you answer a very different question.

In any case, we already probe the compiler for support of C11, and if
it does, activate that while compiling.  That's not the issue being
discussed here.  The issue being discussed is whether we should
actively reject compilers that don't support older C standards.



  parent reply	other threads:[~2021-12-22 12:41 UTC|newest]

Thread overview: 100+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-22  0:52 Development Speed xenodasein--- via Emacs development discussions.
2021-12-22  1:16 ` Po Lu
2021-12-22 12:41 ` Eli Zaretskii [this message]
2021-12-22 15:15   ` xenodasein--- via Emacs development discussions.
2021-12-22 16:37     ` Eli Zaretskii
2021-12-23 13:36       ` xenodasein--- via Emacs development discussions.
2021-12-23 13:42         ` Po Lu
2021-12-23 13:48           ` xenodasein--- via Emacs development discussions.
2021-12-23 16:36             ` Stefan Monnier
2021-12-23 17:02               ` xenodasein--- via Emacs development discussions.
2021-12-24  0:21                 ` Po Lu
2021-12-24 20:21               ` Tim Cross
2021-12-23 16:35         ` Stefan Monnier
2021-12-23 17:35           ` xenodasein--- via Emacs development discussions.
2021-12-23 19:12             ` Stefan Monnier
2021-12-23 19:53               ` xenodasein--- via Emacs development discussions.
2021-12-23 20:10                 ` Stefan Monnier
2021-12-23 20:16                   ` Eli Zaretskii
2021-12-23 22:07                     ` xenodasein--- via Emacs development discussions.
2021-12-24  7:00                       ` Eli Zaretskii
2021-12-25  5:16               ` Richard Stallman
2021-12-25  5:22                 ` Po Lu
2021-12-25  7:03                 ` Eli Zaretskii
2021-12-25 15:55                 ` Stefan Monnier
2021-12-25  5:16             ` Richard Stallman
2021-12-24  1:33           ` Sean Whitton
2021-12-24 14:06             ` Stefan Monnier
2021-12-24 14:39               ` Óscar Fuentes
2021-12-22 15:21   ` xenodasein--- via Emacs development discussions.
2021-12-22 16:42     ` Eli Zaretskii
2021-12-23 13:57       ` xenodasein--- via Emacs development discussions.
2021-12-23 14:37         ` Eli Zaretskii
  -- strict thread matches above, loose matches on Subject: below --
2021-12-21 10:52 xenodasein--- via Emacs development discussions.
2021-12-21 11:05 ` Po Lu
2021-12-21 11:25   ` xenodasein--- via Emacs development discussions.
2021-12-21 11:37     ` Po Lu
2021-12-21 14:47       ` xenodasein--- via Emacs development discussions.
2021-12-22  0:56         ` Po Lu
2021-12-22  1:05           ` xenodasein--- via Emacs development discussions.
2021-12-21 12:05     ` Stefan Kangas
2021-12-21 12:20       ` Theodor Thornhill
2021-12-21 14:14       ` xenodasein--- via Emacs development discussions.
2021-12-21 14:48 ` Eli Zaretskii
2021-12-22  4:16 ` Richard Stallman
2021-12-22 10:09   ` Óscar Fuentes
2021-12-22 10:22     ` Po Lu
2021-12-22 10:38       ` Óscar Fuentes
2021-12-22 10:45         ` Po Lu
2021-12-22 13:47         ` Eli Zaretskii
2021-12-23  3:43         ` Richard Stallman
2021-12-23  9:50           ` Óscar Fuentes
2021-12-23 10:37             ` Po Lu
2021-12-23 10:52               ` Óscar Fuentes
2021-12-23 10:54               ` Arthur Miller
2021-12-24  4:13               ` Richard Stallman
2021-12-24  4:13             ` Richard Stallman
2021-12-22 14:21       ` Dmitry Gutov
2021-12-23  1:00         ` Po Lu
2021-12-23  1:05           ` Dmitry Gutov
2021-12-23  1:07             ` Po Lu
2021-12-23  2:18               ` dick
2021-12-23  6:39                 ` Eli Zaretskii
2021-12-23 10:46               ` Dmitry Gutov
2021-12-23 12:54                 ` Arthur Miller
2021-12-22 13:41     ` Eli Zaretskii
2021-12-22 15:51       ` Óscar Fuentes
2021-12-22 17:12         ` Eli Zaretskii
2021-12-22 18:49           ` Óscar Fuentes
2021-12-23  3:43     ` Richard Stallman
2021-12-23 10:13       ` Óscar Fuentes
2021-12-23 10:35         ` Po Lu
2021-12-23 10:47           ` Óscar Fuentes
2021-12-23 10:50             ` Po Lu
2021-12-23 10:59               ` Óscar Fuentes
2021-12-23 11:05                 ` Po Lu
2021-12-23 11:16                   ` Óscar Fuentes
2021-12-24  4:13           ` Richard Stallman
2021-12-24  4:13         ` Richard Stallman
2021-12-23 10:23       ` Arthur Miller
2021-12-24  4:13         ` Richard Stallman
2021-12-22 14:41   ` xenodasein--- via Emacs development discussions.
2021-12-19 17:06 xenodasein--- via Emacs development discussions.
2021-12-20  0:31 ` Po Lu
2021-12-20  4:16   ` xenodasein--- via Emacs development discussions.
2021-12-20  5:12     ` Po Lu
2021-12-20  8:16     ` Philip Kaludercic
2021-12-20 14:30     ` Stefan Monnier
2021-12-20 15:51       ` xenodasein--- via Emacs development discussions.
     [not found]     ` <MrLr14W--3-2@tutanota.de>
     [not found]       ` <87lf0f1vko.fsf@yahoo.com>
2021-12-20 15:49         ` xenodasein--- via Emacs development discussions.
2021-12-21  1:06           ` Po Lu
2021-12-21 10:25       ` xenodasein--- via Emacs development discussions.
2021-12-21 10:31         ` Po Lu
2021-12-21 14:39         ` Eli Zaretskii
2021-12-20 10:31 ` Lars Ingebrigtsen
2021-12-21  4:15 ` Richard Stallman
2021-12-21  5:55   ` Eli Zaretskii
2021-12-21 11:09   ` xenodasein--- via Emacs development discussions.
2021-12-21 14:52     ` Eli Zaretskii
2021-12-22  0:55       ` xenodasein--- via Emacs development discussions.
2021-12-22 12:44         ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=83r1a4yfpt.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=xenodasein@tutanota.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).