Path: csiph.com!usenet.pasdenom.info!aioe.org!.POSTED!not-for-mail From: "Rod Pemberton" Newsgroups: comp.lang.forth Subject: Re: Forth reinvention Date: Thu, 20 Feb 2014 05:07:32 -0500 Organization: Aioe.org NNTP Server Lines: 63 Message-ID: References: NNTP-Posting-Host: CNsg4fVcCsvs3UaOgZtQCw.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Opera Mail/12.16 (Linux) X-Notice: Filtered by postfilter v. 0.8.2 Xref: csiph.com comp.lang.forth:28596 On Thu, 20 Feb 2014 04:19:23 -0500, wrote: > With regard to the discussion in 'Forth in oblivion', I > have specifically asked the question what properties a > Forth successor should have ? > > I think important are the following aspects: > > - switch to infix notation: > Personally I found RPN an elegant, mathematical notation both solving > inconsistencies of traditional infix notations and ease parsing. > However, in general people have an innate aversion to the adoption of > unorthodox concepts nor are people able to think in abstract terms of > implementation efficiency. For these psychological reasons, a RPN based > programming language can hardly interest a wider audience without > constraint, especially since most programmers these days are already > grown with quite different (and much more complex) languages compared to > Forth. Good. > - Automatic parallelization: > The trend goes to multi core architectures. A programming language that > is relieving the programmer from the not inconsiderable task of > paralleling programs will necessarily be attractive. Nice, but not necessary. Single-threading is still useful, has less overhead, and fewer environment specific requirements. > - Lack of leadership: > To my knowledge, there exist no central leadership with financial impact > to promote Forth by all means. This must change. Not important. "Too many cooks spoil the broth." You need one smart, visionary dictator to resurrect Forth anew. In addition to eliminating RPN for infix, I would like to add the following to the list: -use of symbols for binary and logical operations like AND OR XOR -name Forth words correctly for what they do -eliminate the need for the user to maintain stack data -use curly braces {} to delimit blocks I know some people truly hate that last one, but it is critical. It's so fundamental, it's even been added to Python now: Python with Braces http://www.pythonb.org/ Of course, once you eliminate infix from Forth, progress towards use of symbols for logical, binary, math operations, begin to use curly braces, and eliminate the work of the user keeping track of stack data, someone is going to call it C warmed over ... which goes towards the question of what *IS* Forth? Once changed radically, is it still Forth? Or, more critically, how can you resurrect Forth without recreating C, or Ruby, or Perl, or Python, or some other existing language? Rod Pemberton