From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: ams@gnu.org (Alfred M. Szmidt) Newsgroups: gmane.emacs.devel Subject: Re: dash.el [was: Re: Imports / inclusion of s.el into Emacs] Date: Fri, 08 May 2020 06:41:44 -0400 Message-ID: References: <0c88192c-3c33-46ed-95cb-b4c6928016e3@default> <87wo5mc04t.fsf@fastmail.fm> Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="52539"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Joost Kremers Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri May 08 12:42:38 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jX0Sj-000DYl-NQ for ged-emacs-devel@m.gmane-mx.org; Fri, 08 May 2020 12:42:37 +0200 Original-Received: from localhost ([::1]:34408 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jX0Si-0000E6-O6 for ged-emacs-devel@m.gmane-mx.org; Fri, 08 May 2020 06:42:36 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:50424) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jX0Rt-0007ps-Fj for emacs-devel@gnu.org; Fri, 08 May 2020 06:41:45 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:50022) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jX0Rt-0003xu-4o; Fri, 08 May 2020 06:41:45 -0400 Original-Received: from ams by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1jX0Rs-0002zO-0c; Fri, 08 May 2020 06:41:44 -0400 In-reply-to: <87wo5mc04t.fsf@fastmail.fm> (message from Joost Kremers on Fri, 08 May 2020 10:16:18 +0200) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:249258 Archived-At: But you just described what dash does. ;-) It is just a collection of list-handling functions such as they exist in modern functional programming languages. If you're used to thinking in this paradigm and then come (back) to Emacs Lisp, it feels like a hopelessly clunky language. `dash.el` was written to remedy this. Thank you, I was and still am unsure what the purpose of dash.el is! It is simply not somehing I would ever find myself using. While I'm very much used to programming in functional langugaes, the way that Clojure and Haskell do it is very much alien to me. And quite often, confusing to follow and reason about (IMHO). While some might prefer that, they do not seem well fitting for Emacs, how you program in Emacs Lisp and how Emacs Lisp is intended to be used. > or what to use it for. Well, you use it if you want to program in a Clojure-like style. Isn't that the crux then? I as a user want to program in an Emacs Lisp style, not Clojure-style. As a user, I found many of the functions to have alien names, strange behaviour and very unintuitve to use in the style that is Emacs lisp (Classical Lisp?). But some functions seem useful, though with non-Emacsy names and calling conventions. Adding functions like `s-reverse' instead of just using `reverse' seems strange. Obviously, that isn't all that s.el provides, s-split-up-to (splits a string N times into substrings based on a regexp) seem very much useful for example that could be added with a different name that fits Emacs Lisp, or maybe there is already a way of doing that.