Proposal: [128] Better wording for Colon

Accepted

This proposal has been moved into this section. Its former address was: /standard/core/Colon

This page is dedicated to discussing this specific proposal

ContributeContributions

ruvavatar of ruv [128] Better wording for ColonProposal2020-02-06 02:14:04

Problems in the current wording

  1. Start a definition, append semantics, and end the definition — are the steps of creating a colon definition. Therefore, create a definition, and then start the definition — looks confused. Also, I think, a standard should not require (or even specify) the side effects that cannot be detected by a standard program.

So, «Create a definition for name, called a "colon definition".» part may be removed.

  1. "colon definition" term should be defined separately.

It may be moved into the Rationale (since it is not used in the normative parts) or into the Terms definitions (since a noname definition and a quotation are also colon definitions, but this fact is not expressed explicitly at the moment).

  1. «start the current definition» is doubtful wording, since "current definition" is a definition that was already started (according to the terms definitions).

Therefore, it is better to say "new definition".

Suggested wording of the first paragraph

Skip leading space delimiters. Parse name delimited by a space. Enter compilation state and start the new definition for name, producing colon-sys. Append the initiation semantics given below to the current definition.

ruvavatar of ruv

Perhaps, in place of:

start the new definition for name, producing colon-sys

it is better to say:

start compilation of the new definition for name, producing colon-sys

To be in sync with the term definition:

current definition: The definition whose compilation has been started but not yet ended.

AntonErtlavatar of AntonErtl

Instead of the proposed wording, the committee accepted the following wording change (Vote #13: 11Y:0N:1A):

Replace the first paragraph of 6.1.0450 : (colon)

Skip leading space delimiters. Parse name delimited by a space. Create a definition for name, called a "colon definition". Enter compilation state and start the current definition, producing colon-sys. Append the initiation semantics given below to the current definition.

with the following

Skip leading space delimiters. Parse name delimited by a space. Create a definition for name. Enter compilation state and start the current definition, producing colon-sys. Append the initiation semantics given below to the current definition.

Accepted
Reply New Version