Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!news.glorb.com!border1.nntp.dca1.giganews.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news.iecc.com!.POSTED!nerds-end From: Kaz Kylheku Newsgroups: comp.compilers Subject: Re: A Plain English Compiler Date: Mon, 27 Oct 2014 21:45:42 +0000 (UTC) Organization: Aioe.org NNTP Server Lines: 42 Sender: news@iecc.com Approved: comp.compilers@iecc.com Message-ID: <14-10-010@comp.compilers> References: <06-02-122@comp.compilers> <06-02-125@comp.compilers> <14-10-005@comp.compilers> <14-10-008@comp.compilers> <14-10-009@comp.compilers> NNTP-Posting-Host: news.iecc.com X-Trace: miucha.iecc.com 1414517169 79873 2001:470:1f07:1126:0:676f:7373:6970 (28 Oct 2014 17:26:09 GMT) X-Complaints-To: abuse@iecc.com NNTP-Posting-Date: Tue, 28 Oct 2014 17:26:09 +0000 (UTC) Keywords: syntax, design, comment Posted-Date: 28 Oct 2014 13:26:08 EDT X-submission-address: compilers@iecc.com X-moderator-address: compilers-request@iecc.com X-FAQ-and-archives: http://compilers.iecc.com Xref: csiph.com comp.compilers:1395 On 2014-10-27, Kartik Agaram wrote: >> John said (back in 2006) "You can certainly chop English down to >> a small unambiguous subset, but then you've just reinvented Cobol" >> >> As someone who has had to work with COBOL somewhat, it is interesting >> to compare the two languages: > > Thanks for that detail! The discussion in 2006 seemed too dismissive of > this idea, and I worried that this go-around would subside similarly. > Comparing all attempts at english-like pidgins to cobol seems like a cheap > and overly broad shot. Hopefully now we can have a more substantive > discussion. Compiling English to code isn't going to make programmers of those who are unwilling, and especially unable, to learn a programming language. They will only face additional struggles caused by ambiguities which don't exist in ordinary programming languages. Most people who are not endowed in the right way to be program designers are also not endowed in the right way to handle precise language, such as what is used when writing detailed requirements specifications. In such language, many terms terms do not have their ordinary meaning. The language might look like English, but it isn't. A programming language which looks like English will suffer from the same problem as the formal version of English used in very technical documents. Those who don't absorb the special definitions of ordinary terms, and the details semantics they entail, will not comprehend properly what is going on, and will not wield that language effectively to express solutions. Those who do understand will find the language meddlesome. People from the humanities will be dismayed at not being able to write a sentence endowed with several simulaneous meanings, as they are used to. "Gee, why doesn't the machine understand the metaphor which makes the poignant irony come alive in what I just wrote ..." [Man, there's a programming language I'd like to use. Re COBOL, I am fairly sure that the point of making it look like stilted English was not that they'd thought it'd make it easier to program, but that it'd be possible for non-programmers, e.g. auditors, to look at the code and figure out what it did. -John]