From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Radon Rosborough Newsgroups: gmane.emacs.devel Subject: Re: Some developement questions Date: Sat, 25 Aug 2018 10:11:38 -0600 Message-ID: References: <87sh36inql.fsf@himinbjorg.adminart.net> <8336v6cvem.fsf@gnu.org> <8736v6icgt.fsf@himinbjorg.adminart.net> <83tvnmb958.fsf@gnu.org> <877ekigiiw.fsf@himinbjorg.adminart.net> <837ekhb2me.fsf@gnu.org> <87zhxcbmtr.fsf@himinbjorg.adminart.net> <83in409lub.fsf@gnu.org> <871sanb71j.fsf@himinbjorg.adminart.net> <87k1oeaofu.fsf@ada> <20180825103413.gbm5stsl67j6weow@Ergus> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="0000000000005e5926057444c11c" X-Trace: blaine.gmane.org 1535213529 20401 195.159.176.226 (25 Aug 2018 16:12:09 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 25 Aug 2018 16:12:09 +0000 (UTC) Cc: hw@adminart.net, Eli Zaretskii , flexibeast@gmail.com, emacs-devel To: spacibba@aol.com Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Aug 25 18:12:04 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ftbAR-0005Cs-Sv for ged-emacs-devel@m.gmane.org; Sat, 25 Aug 2018 18:12:04 +0200 Original-Received: from localhost ([::1]:46414 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ftbCY-0005Jp-2a for ged-emacs-devel@m.gmane.org; Sat, 25 Aug 2018 12:14:14 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:47665) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ftbAg-0004xE-Aw for emacs-devel@gnu.org; Sat, 25 Aug 2018 12:12:19 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ftbAf-0002F9-F2 for emacs-devel@gnu.org; Sat, 25 Aug 2018 12:12:18 -0400 Original-Received: from mail-lj1-x229.google.com ([2a00:1450:4864:20::229]:39795) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ftbAe-0002B3-4h; Sat, 25 Aug 2018 12:12:16 -0400 Original-Received: by mail-lj1-x229.google.com with SMTP id l15-v6so9121265lji.6; Sat, 25 Aug 2018 09:12:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=nZHJCDeT396REcSmlSwLAlmP5Aaa6W4a0HTR94dci00=; b=gK3e24OH5REquDCPTS20DrmqvDAEwffjfsFw/FmVv9LqEejw7OcAou53yiQIS5ja4l xM0chkVyt7rGv6HWjpSXtwtLo3oqiHgSj3mxZc4NEl6uFBfEUYI65kRhp5+ty/e+Z6eb zhRg3GR3fYI+ScslGQxY1ejZtn7YMCUSyPxC8EEeomle1IqCaWlDiF/dU7wbnJkQxElB yfzQ1BJ1GfLUQpRQ5dMgJW59mSfOwsQs38qozygENUMJST5+nZ+lI5bsh4+4wFa9ZrTq hibMFE44LwRnny8ClOEhoqyr01Rhy1Qd6/kl0O5ovp8BPjy6C+v++40fjsZUI6GuQu4y UD/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=nZHJCDeT396REcSmlSwLAlmP5Aaa6W4a0HTR94dci00=; b=hprumsrFT7IZA/kZZL+l+tlqdHqsM0UQD9MPYXiDAQvuRMUk6Effkmxha5fYqGi2Qr WLkdd4Lx147YsExJV2Nr07wHKWVUWubwrmWeb7RkXGsTnCDirNOeQFXq1xi56LRRThMB EPZVYQVv+D/fPCIUuyTYu3jLztUJdVpCVgWg6XiPkgwFjBD2vGw+m/dLaGg1JBY2qpUs olKamz/7fCNwLrOy7FCjf7fCRMXHRzooBlM5cxZkZnzbfb1bxcEqMhd2O3XJfKOz/qnu CfOsp/mpoeFaWglIAhQh3YbtM4U3UX0AoH4zZsfy5zL428FZNXxNuCn74biFCZCSdrkx uy/Q== X-Gm-Message-State: APzg51C8zeF++q+Q32ujtvUvxX4eqZurKA52c/VOhlUIC8ltBBsAEbiu EQNFaGfCdyHDYSebFlmHcOJo1UpXxaTIRWvJe2k= X-Google-Smtp-Source: ANB0VdatcRlwAo6FYBFAW1KH5AhmXmNTR2ZqomHMjrb1LvpOymfsT31Lh6RlNjRWkMlVDBT309A9l04pDKzELCNAkIk= X-Received: by 2002:a2e:1290:: with SMTP id 16-v6mr4459427ljs.94.1535213534335; Sat, 25 Aug 2018 09:12:14 -0700 (PDT) In-Reply-To: <20180825103413.gbm5stsl67j6weow@Ergus> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::229 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:228900 Archived-At: --0000000000005e5926057444c11c Content-Type: text/plain; charset="UTF-8" > If the messages are just printed in the message buffer it shouldn't > impact too much the startup time I think. To do the kind of analysis you are talking about, one would have to hook into really basic subroutines like `setq`. I don't have any numbers to back this up, but that sounds like it would be a massive slowdown for all Elisp code. Alternatively, you'd have to do a lot of heavy static analysis because what defines a "outdated, deprecated, or useless" setting is actually quite nebulous and complicated. I do actually think this is an interesting idea, but it would definitely best be implemented as either a third-party package or some optional user library in core that either does static analysis or allows one to load the init-file with profiling enabled like ESUP [1] (or both). > a number of people find even an extra 0.5s-1.0s in startup to be > significant I am one of those people, and actually I find even an extra 50ms of startup time to be unacceptable unless there's a good reason for it. My ~5,000 line configuration [2] which pulls in ~130 packages takes only ~250ms to load, according to a startup profiler -- meaning 0.6s to go from nothing to a full graphical frame. Why bother with the Emacs server when you can just make Emacs start up as fast as Vim? ;) [1]: https://github.com/jschaf/esup [2]: https://github.com/raxod502/radian --0000000000005e5926057444c11c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
> If the messages are just printed in the message = buffer it shouldn't
> impact too much the startup time I t= hink.

To do the kind of analysis you are talking about, one w= ould have to
hook into really basic subroutines like `setq`. I do= n't have any
numbers to back this up, but that sounds like it= would be a massive
slowdown for all Elisp code. Alternatively, y= ou'd have to do a lot of
heavy static analysis because what d= efines a "outdated, deprecated, or
useless" setting is = actually quite nebulous and complicated.

I do actually think = this is an interesting idea, but it would
definitely best be impl= emented as either a third-party package or some
optional user lib= rary in core that either does static analysis or
allows one to lo= ad the init-file with profiling enabled like ESUP [1]
(or both).<= /div>
> a number of people find even an extra 0.5s-1.0s in start= up to be
> significant

I am one of those people,= and actually I find even an extra 50ms of
startup time to be una= cceptable unless there's a good reason for it.
My ~5,000 line= configuration [2] which pulls in ~130 packages takes
only ~250ms= to load, according to a startup profiler -- meaning 0.6s
to go f= rom nothing to a full graphical frame.

Why bother with the Em= acs server when you can just make Emacs start up
as fast as Vim? = ;)


--0000000000005e5926057444c11c--