lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On Mon, Aug 12, 2013 at 5:58 PM, Javier Guerra Giraldez <javier@guerrag.com> wrote:
- while I don't hate significant whitespace, it usually makes it hard
to write full lambdas.

There I don't follow you. The function body may be indented, and the returned value is the value of the last statement/_expression_... 

- terseness at the cost of readability is ok for low level languages
(hey, I _like_ bit-twiddling in C), but for scripts it creates more
friction between coder and maintainer.

Sometimes these are not different people, just the same person in different modes ;)   But why should this argument not also apply to low-level languages?  Also, the Modest Proposal involves a more informal & private use of a terse dialect - we do not _usually_ save our bash sessions to Github.

- local by default?... i'm skeptical that it could be done well.
I share your skepticism on this one, especially for bigger systems.  
 
- predefined OOP:  i don't mind it as long as it's easy to use (and
extend) from real Lua.
 
It isn't even necessary. I could define a perfectly adequate 'class' in Moonscript in under 30 lines of code, and I knew it would then interoperate with the style I'm accustomed to.  The built-in one basically establishes yet another OOP style that doesn't play so nice with other Lua OOP styles. 

- i guess a prerequisite to using it as a "more comfortable for REPL"
dialect of Lua would be a _very_ low mismatch between both languages.
so that the user finds writing in MS easier even if still thinks in
Lua (because most of the system is still written in Lua).  if that's
right, anything beyond plain text substitutions and some syntax sugar
would increase the impedance and force a "mind context switch" between
REPL conversation and core programming.

That puts it in a nutshell, basically.  If there was a semantic gulf then it would defeat the purpose. All the important stuff is the same; there's a very compact function syntax, and the precedence of a function call is very low. Otherwise it's tables all the way down ;)