Qual a importância das linguagens de script? E por que tantos desenvolvedores gostaram da nova especificação que suporta essas linguagens na JVM?
O que ganhamos em termos de “poder”?
flexibilidade e facilidade para fazer as coisas
Mas java não é flexivel?
Facilidade?Em que aspectos?
Tratamento de texto, tarefas otimizadas, algoritimos complexos, rapidez na alteração/execução, etc e tal.
Há situações que uma linguagem puramente interpretada, sem tipagem, com suporte nativo a regular expressions, etc é mais indicada…
Tb é uma questão puramente subjetiva, por exemplo, eu não consigo ver como uma linguagem sem tipagem forte pode ser refatorada com segurança…
Eu programei em PERL antes de programar em Java, e o suporte do PERL a regex me parece perfeito… Java não sei porque conseguiu complicar o óbvio, e o suporte a regular expressions é sofrível na minha opinião… (se vc nunca programou em PERL ou outra linguagem com regex nativo vc pode achar maravilhoso…)
Você deve estar falando de Java quando se referece a não ter tipagem forte. Linguagens como Ruby ou Python possuem tipagem forte mais que Java, inclusive. A diferença entre estas linguagens é se existe anotação explicita de tipos ou não. Refatoração com linguagens dinâmicas é um problema resolvido em 1999 para linguagens com tipagem latente.
Java sofre dos mesmos problemas para as refatorações simples quando envolve reflection e fica ainda pior quando se trata de generics, que é um sistema de tipos quebrado - unsound.
Sérgio, não espalhe meias verdades e opiniões infundadas. Anotação explícita de tipos é uma idiotice que linguagens como Algol e Fortran precisavam na década de 60 para conseguir gerar código razoavel. Desde então avanços como Hindley-Milner tornam esse tipo de estupor quase que 100% opcional. Práticas modernas de engenharia de software e linguagens mostram que ferramentas como o dialyzer (para erlang) são capazes de produzir diagnósticos muito melhores e úteis que os sistemas de tipos primitivos que linguagens mais stream usam.
Sinceramente, acho que você precisa se atualizar com relação aos avanços da última década em linguagens de programação
Recomendo você ler:
Don Roberts. Practical Analysis for Refactoring. PhD thesis, University of Illinois at Urbana-Champaign, 1999.
http://st-www.cs.uiuc.edu/~droberts/thesis.pdf
William F. Opdyke. Refactoring Object-Oriented Frameworks. PhD thesis, University of Illinois at Urbana-Champaign, 1992.
http://citeseer.ist.psu.edu/rd/57254746%2C512095%2C1%2C0.25%2CDownload/http://citeseer.ist.psu.edu/cache/papers/cs/8061/ftp:zSzzSzst.cs.uiuc.eduzSzpubzSzpaperszSzrefactoringzSzopdyke-thesis.pdf/opdyke92refactoring.pdf
Artigos sobre o dialyzer:
http://www.it.uu.se/research/group/hipe/dialyzer/
Vc é uma figura Louds!!!
Leia de novo minha mensagem: “Eu não consigo ver como uma linguagem sem tipagem forte pode ser refatorada com segurança!”
Repare que eu não falei em nenhum momomento que uma linguagem sem tipagem forte não pode ser refatorada com segurança. Eu apenas falei que eu, em particular, não consigo ver. Talvez porque eu não tenha experiencia com isso, não saiba ou talvez porque seja pior mesmo.
O que eu achei é que com tipagem forte estamos trocando flexibilidade por segurança/robustidade. Só um maluco faria um database com tipagem fraca por exemplo.
Acho que eu errei pois quando falei tipagem fraca estava referindo a ausencia de definição de tipos como se dá em PERL.
Mas tudo bem, a questão aqui não é se eu estou certo ou errado. Isso é o de menos. E pra isso que existe esse forum e é pra isso que a gente participa dele: para ensinar e aprender.
Agora o que é triste é ver essa sua resposta agressiva, mandando eu estudar, mandando eu não espalhar informações erradas, etc e tal.
Sinceramente, seja mais humilde e fale com os outros no mesmo nível, mesmo se alguém falar albuma bogagem.
Vc perdeu uma ótima oportunidade de colaborar com o forum, mas ao invés disso prefiriu menosprezar/atacar a minha pessoa… Tudo bem… Só te digo, e isso é estritamente a minha opinião pessoal, é que esse tipo de comportamente não vai te levar a lugar nenhum profissionalmente e pessoalmente…
[quote=saoj]Vc é uma figura Louds!!!
Leia de novo minha mensagem: “Eu não consigo ver como uma linguagem sem tipagem forte pode ser refatorada com segurança!”
Repare que eu não falei em nenhum momomento que uma linguagem sem tipagem forte não pode ser refatorada com segurança. Eu apenas falei que eu, em particular, não consigo ver. Talvez porque eu não tenha experiencia com isso, não saiba ou talvez porque seja pior mesmo.
[/quote]
Pois então, eu fiz o favor de te apontar para links de como pessoas fazem isso com o mesmo sucesso que em linguagens como Java.
Eu concordo inteiramente com você. Começar hoje um banco de dados sem uma linguagem com tipagem forte é maluquice. O engraçado disso, porém, é que todos o grandes nesse segmento tem seus produtos escritos em C, uma linguagem com um sistema de tipos muito fraco e completamente furado. Isso não prova absolutamente nada, de qualquer forma.
O ponto aqui é que você insiste em dizer que linguagem taxas de script, como Ruby ou Python, não tem tipagem forte. Outro ponto é que tipagem forte tem pouca influência na capacidade de uma linguagem ser refatoravel ou não. Anotação de tipos, em contrapartida, torna a implementação de ferramentas muito mais fácil.
eu acho que o problema esta sendo a confusão entre tipagem fraca e tipagem dinâmica
Tipagem dinâmica que seria a falta da anotação de tipos
Uma linguagem utilizar tipagem dinâmica não faz com que ela seja fracamente tipada
Por que vc não respondeu assim de primeira?
Sempre que eu falar alguma besteira, sinta-se a vontade para me corrigir como vc fez no seu último post…
Caramba, não precisavam ficar exaltados.
Mas o suporte a regex de java eu não acho complexo.
è da mesma forma que nativo , não?
Voce compila o pattern e depois usa um matcher para comparar.
Qual o problema disos?Não acho tão sofível assim não.
E por enquanto …Não vi nada de tão estubendo em linguagens de script a não ser a facil “reedição do codigo” sem necessidade de uma recompilação.
Alguem mais tem outras opniões?