Yes, the point about metaprogramming is a good one.

On Thu, May 15, 2014 at 4:03 PM, Steven G. Johnson <[email protected]>wrote:

> It's a tradeoff. The cost of having an explicit "end" is a few extra
> characters that you have to type, and an extra line of code at the end of
> each block.  On the other hand, the benefits include less error-prone
> cut-and-paste (as Stefan mentioned), the possibility of automated
> reformatting of code (e.g. think emacs indent-region or gofmt), and
> flexibility in writing one-liners (e.g. "try foo() end").
>
> I think the metaprogramming facilities in Julia also favor the choice of
> explicit block delimiters.  In Julia, code can also be a symbolic
> expression, simply by surrounding it with :(....) or quote ... end, and
> whitespace sensitivity within symbolic expressions seems like it would get
> annoying quickly
>
> Probably this should be in the Julia FAQ or Manual, since our inexplicable
> rejection of the holy whitespace seems to be the first thing that every
> Python programmer asks about.  (If you hate typing extraneous characters,
> the colons in Python must drive you bonkers.)
>
> (People who like maximum terseness in a practical programming language
> should take a look at J.   The J examples on 
> RosettaCode<http://rosettacode.org/wiki/Category:J>are pretty amazing.)
>

Reply via email to