Moonscript - LinuxMagazine

22 views
Skip to first unread message

Italo Maia

unread,
Aug 18, 2011, 1:48:09 PM8/18/11
to lua...@googlegroups.com
Senhores, ví esta reportagem sobre moonscript na javamagazine http://www.linux-magazine.com.br/noticia/aumentando_o_brilho_do_lua

Não conhecia o MoonScript mas não me impressionou muito. Na verdade, a sintaxe me pareceu bem suja. Tipo, algumas ideias da sintaxe do lua
não me parece funcionar bem com indentação "whitespace sensitive" aí virou uma mistura confusa.

Parece que o moonscript pega várias ideias do ruby para sua sintaxe (o que na minha opinião não é algo bom). 

Particularmente, achei o seguinte muito interessante:

* a adição da palavra chave with (não gostei como foi adicionado. Acho que utilizá-la como é feito em python é o ideal)
* a adição dos operadores +=-=/=*=%= (realmente já deveria estar no lua como syntatic sugar, no mínimo)
* suporte a classes! (a sintaxe está mais ou menos. Falta, no mínimo, um end para fechar a classe.)

Sobre "All variable declarations are local by default" ainda estou em dúvida se é algo bom ou ruim. Particularmente, acho que lua deveria exigir que a pessoa 
colocasse a visibilidade da variável no momento que a declara. Gosto de ver o local e global no código, quando estou lendo. Me dá segurança sobre aquela variável.

Table comprehension também é uma ideia muito boa que, na minha opinião, seria muito legal ser portada:
tuples = [{k, v} for k,v in ipairs(my_table)]
Só é meio problemático pois lua não utiliza cochetes Talvez algo assim: (preferência!)
tuples =  {k, v} for k,v in ipairs(my_table)
ou
tuples = begin {k, v} for k,v in ipairs(my_table) end

O import from também me pareceu uma ideia a se pensar. Talvez não seja lá tão útil, sem falar que contribui para sujar o namespace.

De resto, não vi muita vantagem no moonscript. Mas a ideia é muito boa.

--
"A arrogância é a arma dos fracos."

===========================
Italo Moreira Campelo Maia
Bacharel em Ciência da Computação - UECE
Desenvolvedor WEB e Desktop (Java, Python, Lua)
Coordenador do Pug-CE
-----------------------------------------------------
http://www.italomaia.com/
http://twitter.com/italomaia/
http://eusouolobomau.blogspot.com/
-----------------------------------------------------
Turtle Linux  9.10 - http://tiny.cc/blogturtle910
Turtle Linux 10.10 - http://bit.ly/cEw4ET
===========================

Elias Barrionovo

unread,
Aug 18, 2011, 4:46:18 PM8/18/11
to lua...@googlegroups.com
A linguagem parece divertida. Na verdade, segundo o autor ela é baseada em CoffeScript, que por sua vez, se inspira um pouco em Ruby.
De fato, a linguagem tem que melhorar em alguns aspectos sintáticos (por exemplo, espaço entre operadores aritméticos).

Alias, também sinto muita falta de operadores +=, *= etc. na linguagem. E "table comprehension" é sonho! =)

2011/8/18 Italo Maia <italo...@gmail.com>



--
NI!

Italo Maia

unread,
Aug 19, 2011, 2:35:29 PM8/19/11
to lua...@googlegroups.com
Estava olhando o código do moonscript. Um pouco complexo. O cara não coloca 1 linha de comentário em arquivos inteiros! Dedos coçando para fazer um fork.

Pois é Elias, não tinha visto mas a grande inspiração foi o coffee que, na minha opinião, é uma grande ideia mal executada. 

Danilo

unread,
Sep 16, 2011, 1:21:58 PM9/16/11
to Lua BR
Que sintaxe feia!!!

On Aug 18, 5:46 pm, Elias Barrionovo <elias.tan...@gmail.com> wrote:
> A linguagem parece divertida. Na verdade, segundo o autor ela é baseada em
> CoffeScript, que por sua vez, se inspira um pouco em Ruby.
> De fato, a linguagem tem que melhorar em alguns aspectos sintáticos (por
> exemplo, espaço entre operadores aritméticos).
>
> Alias, também sinto muita falta de operadores +=, *= etc. na linguagem. E
> "table comprehension" é sonho! =)
>
> 2011/8/18 Italo Maia <italo.m...@gmail.com>
>
>
>
>
>
>
>
>
>
> > Senhores, ví esta reportagem sobre moonscript na javamagazine
> >http://www.linux-magazine.com.br/noticia/aumentando_o_brilho_do_lua
>
> > Não conhecia o MoonScript mas não me impressionou muito. Na verdade, a
> > sintaxe me pareceu bem suja. Tipo, algumas ideias da sintaxe do lua
> > não me parece funcionar bem com indentação "whitespace sensitive" aí virou
> > uma mistura confusa.
>
> > Parece que o moonscript pega várias ideias do ruby para sua sintaxe (o que
> > na minha opinião não é algo bom).
>
> > Particularmente, achei o seguinte muito interessante:
>
> > * a adição da palavra chave *with* (não gostei como foi adicionado. Acho
> > que utilizá-la como é feito em python é o ideal)
> > * a adição dos operadores *+=*, *-=*, */=*, **=*, *%= *(realmente já
> > deveria estar no lua como *syntatic sugar*, no mínimo)
> > * suporte a classes! (a sintaxe está mais ou menos. Falta, no mínimo, um *
> > end* para fechar a classe.)
>
> > Sobre *"All variable declarations are local by default" *ainda estou em
> > dúvida se é algo bom ou ruim. Particularmente, acho que lua deveria exigir
> > que a pessoa
> > colocasse a visibilidade da variável no momento que a declara. Gosto de ver
> > o *local* e *global* no código, quando estou lendo. Me dá segurança sobre
> > aquela variável.
>
> > *Table comprehension* também é uma ideia muito boa que, na minha opinião,
> > seria muito legal ser portada:
>
> > tuples = [{k, v} for k,v in ipairs(my_table)]
>
> > Só é meio problemático pois lua não utiliza cochetes Talvez algo assim:
> > (preferência!)
>
> > tuples =  {k, v} for k,v in ipairs(my_table)
>
> > ou
>
> > tuples = *begin* {k, v} for k,v in ipairs(my_table) *end*
>
> > O *import* *from* também me pareceu uma ideia a se pensar. Talvez não seja
> > lá tão útil, sem falar que contribui para sujar o namespace.
>
> > De resto, não vi muita vantagem no moonscript. Mas a ideia é muito boa.
>
> > --
> > "A arrogância é a arma dos fracos."
>
> > ===========================
> > Italo Moreira Campelo Maia
> > Bacharel em Ciência da Computação - UECE
> > Desenvolvedor WEB e Desktop (Java, Python, Lua)
> > Coordenador do Pug-CE
> > -----------------------------------------------------
> >http://www.italomaia.com/
> >http://twitter.com/italomaia/
> >http://eusouolobomau.blogspot.com/
> > -----------------------------------------------------
> > Turtle Linux  9.10 -http://tiny.cc/blogturtle910
> > Turtle Linux 10.10 -http://bit.ly/cEw4ET
Message has been deleted

Italo Maia

unread,
Mar 14, 2012, 8:52:43 PM3/14/12
to lua...@googlegroups.com
Pois é, essa inspiração no coffeescript foi longe demais, na minha opinião. É legal ter o moonscript como uma meta linguagem, mas acho que houve exageros, principalmente no assemelhamento com o ruby.

Sim, pois é, eu achei ótimo o projeto por "adiantar" o lua em algumas coisas, sem falar que serve como um laboratório vivo para possíveis melhorias na linguagem. Cheguei até a falar com o autor sobre como eu poderia modificar o moonscript para algo mais leve e sem o excesso de símbolos e "atalhos". Acho que um moonscript mais parecido com lua e sem o bocado de símbolos e exageros sintáticos inseridos atualmente seria mais útil.

Em 9 de março de 2012 21:15, Hallison Batista <hallison...@gmail.com> escreveu:
Italo,

O projeto é muito bom. Na verdade, por ser inspirada em CoffeeScript, trás bastante da sintaxe e o suporte a POO é excelente. Entretanto, ambas DSLs possuem uma sintaxe cacofônica, fato. Mas o foco é simplificação.

O que realmente se destaca é a importância de nossa linguagem.

Att.

--
Reply all
Reply to author
Forward
Message has been deleted
0 new messages