From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Gene Newsgroups: gmane.emacs.help Subject: Re: Where is Emacs Lisp taught ? Date: Sat, 27 Oct 2018 11:40:30 -0700 (PDT) Message-ID: References: <5B8BFDC9-A07B-48FE-8C97-1BB0B84E5577@gmail.com> <53705d26-8a69-4453-aed9-ab72a0cd139e@googlegroups.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" X-Trace: blaine.gmane.org 1540665808 20346 195.159.176.226 (27 Oct 2018 18:43:28 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 27 Oct 2018 18:43:28 +0000 (UTC) Injection-Date: Sat, 27 Oct 2018 18:40:31 +0000 User-Agent: G2/1.0 To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Sat Oct 27 20:43:24 2018 Return-path: Envelope-to: geh-help-gnu-emacs@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 1gGTYP-00058X-81 for geh-help-gnu-emacs@m.gmane.org; Sat, 27 Oct 2018 20:43:21 +0200 Original-Received: from localhost ([::1]:37475 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gGTaV-0000CL-OT for geh-help-gnu-emacs@m.gmane.org; Sat, 27 Oct 2018 14:45:31 -0400 X-Received: by 2002:ac8:1661:: with SMTP id x30-v6mr6988588qtk.25.1540665631150; Sat, 27 Oct 2018 11:40:31 -0700 (PDT) X-Received: by 2002:a0c:b49a:: with SMTP id c26mr114837qve.4.1540665631041; Sat, 27 Oct 2018 11:40:31 -0700 (PDT) Original-Path: usenet.stanford.edu!e5-v6no7548151qtr.0!news-out.google.com!l35-v6ni7870qte.0!nntp.google.com!e5-v6no7548145qtr.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Original-Newsgroups: gnu.emacs.help In-Reply-To: <53705d26-8a69-4453-aed9-ab72a0cd139e@googlegroups.com> Complaints-To: groups-abuse@google.com Original-Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=72.43.228.70; posting-account=xePGxQoAAAAgJalA5zaHmrGIX9Wk_gLW Original-NNTP-Posting-Host: 72.43.228.70 Original-Xref: usenet.stanford.edu gnu.emacs.help:224319 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.org gmane.emacs.help:118448 Archived-At: On Friday, October 26, 2018 at 8:55:13 PM UTC-4, Jean-Christophe Helary wrote: > Gene, > > Thank you for this remark. > I totally agree with you. > elisp should be considered a domain specific language and > not be compared to general purpose languages in general. For me as an IS-ist -- rather than should-ist or could-ist -- it's simply not a point of what it `should' be compared-to as we can't stop others from making silly or unflattering comparisons. It CAN be used as a Domain Specific Language. > > Hence the difficulty to find places that teach elisp, > since such places would rather teach general computing, > than domain specific computing. Heavy Sigh. Alas, most of the would-be `free world' employs forced-assembly day-care concentration camps tasked, in the name of `education', with inculcating as-if `teaching'. So I understand how you or most would have a teaching-centered worldview. Have you considered a learning-centered, autodidactic approach? If you could, the answer to the gist of your question might be "Here!" ;v--- DIY lesson for self-paced, self-directed learners of Elisp as a DSL ; Assuming one is familiar with the would-be `mathematical' notion of inverses, ; yet has a mind open enough allow inverses to be performed in a ; non-numerical domain, ; here, for your consideration, are a pair of elisp inverse functions: ; split-string & mapconcat, if and only if the same delimiter/glue is used. ; example: (progn (setq text-sample "Alas, most of the would-be `free world' employs forced-assembly day-care concentration camps tasked, in the name of `education', with inculcating as-if `teaching'." delimiter ; for use with split-string " " glue ; for use with mapconcat delimiter text-sample.parts (split-string text-sample delimiter) text-sample.reconstituted (mapconcat (function identity) text-sample.parts glue) ) (when (string= text-sample text-sample.reconstituted) "Proof of inverses" ) ) ;progn ;^--- DIY lesson for self-paced, self-directed learners of Elisp as a DSL Where IS elisp LEARNED? Within. Perhaps others would step forward with an elisp demo, tutorial, pro tip? I'd like to believe that those of us wishing to LEARN elisp can learn from each other as well as rummaging around elisp manuals and intros in the process of self-paced, self-directed learning.