From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Nathan Newsgroups: gmane.emacs.help Subject: Re: How to improve the readability of (any) LISP or any highlevel functional language to the level of FORTH ? Date: Sat, 1 Jan 2011 08:08:06 -0800 (PST) Organization: http://groups.google.com Message-ID: References: <80ceeca0-1d32-47d1-ba96-feb4d9729c3a@v17g2000yqv.googlegroups.com> <87pqsgk8v9.fsf@kuiper.lan.informatimago.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1293909685 10340 80.91.229.12 (1 Jan 2011 19:21:25 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 1 Jan 2011 19:21:25 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Sat Jan 01 20:21:21 2011 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1PZ70v-0003Lw-DR for geh-help-gnu-emacs@m.gmane.org; Sat, 01 Jan 2011 20:21:17 +0100 Original-Received: from localhost ([127.0.0.1]:47900 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PZ70u-0004rZ-NF for geh-help-gnu-emacs@m.gmane.org; Sat, 01 Jan 2011 14:21:16 -0500 Original-Path: usenet.stanford.edu!postnews.google.com!n32g2000pre.googlegroups.com!not-for-mail Original-Newsgroups: comp.lang.functional, comp.lang.lisp, gnu.emacs.help, comp.lang.forth, comp.lang.prolog Original-Lines: 44 Original-NNTP-Posting-Host: 76.85.196.176 Original-X-Trace: posting.google.com 1293898087 11608 127.0.0.1 (1 Jan 2011 16:08:07 GMT) Original-X-Complaints-To: groups-abuse@google.com Original-NNTP-Posting-Date: Sat, 1 Jan 2011 16:08:07 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: n32g2000pre.googlegroups.com; posting-host=76.85.196.176; posting-account=8TTQeQoAAABH-poLAzP5DQxg_ghZIWlX User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/534.10 (KHTML, like Gecko) Ubuntu/10.04 Chromium/8.0.552.224 Chrome/8.0.552.224 Safari/534.10, gzip(gfe) Original-Xref: usenet.stanford.edu comp.lang.functional:69058 comp.lang.lisp:297061 gnu.emacs.help:183810 comp.lang.forth:160226 comp.lang.prolog:43987 X-Mailman-Approved-At: Sat, 01 Jan 2011 14:19:49 -0500 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:78024 Archived-At: If you want a easy to read self-documenting functional language, look into Ruby. I know personally that Ruby syntax was a big turn off to me for several weeks (kind of like Lisp) but once you learn it, it becomes the easiest to read of any programming language I've ever experimented with. No contest. Matz himself admitted that =93...Ruby is a bad rip-off of Lisp... But it is nicer to ordinary people.=94 Though every language I've worked in, I've never been half as productive as when I'm coding in Ruby. There are so many built in methods to help you with common day to day tasks, and the end result of your code will be simpler and clearer to read than you can have it in any other language. The downside of course is that Ruby lends itself to the efficient production of very inefficient code. You'll be plagued with strict evaluative breath first traversals that glut on your memory. You'll find yourself cursing a global interpreter lock that makes Ruby's simple method for handling threads meaningless in most situations. In my hands, Ruby's nature seems to lend itself to the design of inefficient code, but that can be overcome with a little attention. Overall, I left Ruby because the community support was somewhat less than I wanted. In particular, cross platform GUI application development seemed poor. If you want to develop webpages, or bang out quick one time scripts, Ruby is hard to beat. For use at home, console applications are probably a tolerable price to pay for the incredible development speed and fantastic ease of maintenance Ruby will give your code. If you give it an hour a day for two months, I guarantee you will be head over heals in love with the Ruby language. If you're not, please send me an email and tell me what language you prefer because I want to try it out. Ruby is just a blast to code in. If it had stronger GUI support, no global interpretor lock, and either lazy evaluation or preemptive multi-threading (with a strong preference toward the latter), I'd be content to settle down with that for the rest of my life. But then, this is from a guy who's learning Lisp only for the sake of mastering a superior abstraction model. You might want to take me with a grain of salt.