I think the complicated scoping rules are inevitable in Julia as it is a 
dynamic language.

Every layer of flexibility in the language comes with a  cost.

static languages normally have simple scoping rules (And IDE can help a lot 
with static analysis).
Functional languages have even simpler rules.

On Tuesday, April 12, 2016 at 10:16:48 AM UTC+1, Didier Verna wrote:
>
>
>   Hi, 
>
> I'm quite puzzled by the complication of Julia's scoping rules, and in 
> particular this way of constantly and implicitly mixing binding and 
> assignment, with varying semantics according to the context. 
>
> The manual is not convincing (at least to me) in justifying what's 
> happening. Most of the scoping behavior looks like a big DWIM machinery 
> which is evil. 
>
> What's the history behind all this? Technical debt? Inspiration from 
> other languages (certainly not Scheme!)? Actual, arbitrary design 
> decisions? 
>
> Thank you! 
>
> -- 
> ELS'16 registration open! http://www.european-lisp-symposium.org 
>
> Lisp, Jazz, Aïkido: http://www.didierverna.info 
>

Reply via email to