From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 In-Reply-To: References: Date: Fri, 30 Mar 2012 18:56:10 +0300 Message-ID: From: Yaroslav To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [9fans] rc: fn name @{block} Topicbox-Message-UUID: 729dd792-ead7-11e9-9d60-3106f5b1d025 > you've misunderstood the current grammar. =C2=A0you have defined 2 functi= ons > name and '@' as {block}. =C2=A0the binding, illustrated with parens is > =C2=A0 =C2=A0 =C2=A0 =C2=A0fn (name @) {block} > the production in the grammer is > =C2=A0 =C2=A0 =C2=A0 =C2=A0FN words brace > but since once production for words is words -> keyword, a keyword > is a valid function name. Then, how would you explain this: term% fn x @{x=3Dy} term% whatis x fn x {x=3Dy} term% fn 'x @'{x=3Dy} term% whatis 'x @' fn 'x @' {x=3Dy}