Jump to content
Betovsky

Pedidos e sugestões

Recommended Posts

Betovsky

Boas gostava de ver um pouco o Haskell mais activo por estas bandas. Despoletar um pouco mais o interesse do pessoal pela linguagem. Até me pus a desenvolver um artigo para a revista.

Agora... Gostava de saber se há algum assunto/tema que seja do vosso interesse. Por exemplo, fazer um mini-tutorial, artigo, snippets, etc, para a revista ou para a wiki, relativo a esse ponto que vos interessasse.

Obviamente, não sou o senhor de todo o conhecimento, longe disso. Portanto não prometo nada. Mas também não se acanhem caso seja algo difícil, porque se houver algo que não saiba também existe o gosto especial de partir à descoberta.


"Give a man a fish and he will eat for a day; Teach a man to fish and he will eat for a lifetime. The moral? READ THE MANUAL !"

Sign on a computer system consultant's desk

Share this post


Link to post
Share on other sites
edsousa

Podias começar por responder à eterna pergunta que aflige todos os alunos da UM: "Mas para que raio é que isto serve?"

:)


Tharis Fan ClubMay Tharis bless you

Share this post


Link to post
Share on other sites
Betovsky

Podias começar por responder à eterna pergunta que aflige todos os alunos da UM: "Mas para que raio é que isto serve?

Bem, eu não sei se sou a pessoa indicada para responder a isso. Provavelmente devia ser questionado ao director do curso ou os docentes. Acho que a resposta do JBB devia ser algo fantástico.

Mas respondendo à questão. Obviamente Haskell serve para elaborar software, não é para isso que serve as linguagens de programação? Agora, nas linguagens de programação há melhores e piores portanto o porque de aprender Haskell. Bem, na minha opinião aprender Haskell em si, não deva ser necessário na universidade, o que é importante é aprender algo no paradigma funcional, o que leva a ter-se de optar por uma linguagem da família Lisp ou ML. Na minha opinião Haskell é uma excelente aposta, provavelmente deve haver pessoal que prefere Scheme.

Mas voltando a frisar, o importante é aprender o paradigma funcional, só o facto de aprenderes vai mudar a forma do teu pensamento. Eu gosto de Haskell, bastante até, mas não uso no trabalho, programo maioritariamente em C#. Apesar de achar Haskell mais divertido e poderoso que C#, infelizmente não tem a task force que tem o C#, e o meu patrão não deveria achar nada divertido demorar 1 hora a fazer algo que no C# pode ser feito com um duplo-click. Mas no entanto, apesar de programar em C#, acho que só o facto de saber Haskell (mas pode ser outra linguagem funcional qualquer) torna-me melhor programador de C#.

Deixo este link que vale a pena ler.

E para concluir, como o Alan Perlis disse: "A language that doesn't affect the way you think about programming, is not worth knowing."

O que acho que Haskell corresponde fantasticamente, na minha opinião deve ser uma das linguagens que mais afecta o teu pensamento.


"Give a man a fish and he will eat for a day; Teach a man to fish and he will eat for a lifetime. The moral? READ THE MANUAL !"

Sign on a computer system consultant's desk

Share this post


Link to post
Share on other sites
Betovsky

Bem, Monads hehe!

Isso dá pano pra mangas. Pode-se falar de tanta coisa.

Pretendes alguma parte mais especifica ou é tipo um tutorial de introdução aos Monads?


"Give a man a fish and he will eat for a day; Teach a man to fish and he will eat for a lifetime. The moral? READ THE MANUAL !"

Sign on a computer system consultant's desk

Share this post


Link to post
Share on other sites
edsousa

Bem, eu não pretendo lá grande coisa, até pq fiz pp1 com 19, mp1 com 16 e mp3 com 19.. não sou nenhum guru, mas cá me entendo com a coisa..

Mas por exemplo, só percebi para que servia o StateT na última aula do semestre. Era por aí que podias começar: O que é um monad, que tipos de monads são mais utilizados (IO, State, Maybe), os transformers e como e porque razão escreveríamos o nosso próprio monad.


Tharis Fan ClubMay Tharis bless you

Share this post


Link to post
Share on other sites
Betovsky

Pedes pouco pedes

Mas sim, posso ver se faço isso. Mas isso já é algo avançado e tenho que ver qual a melhor forma de fazer isso. Por tudo junto é capaz de ficar uma salgalhada e ninguém compreender nada. Talvez dividir isso em vários artigos. Um primeiro de introdução a Monads e depois outro para cada tipo Monad. Talvez também incluir a Lista juntamente com MonadPlus, é fixe para simular backtracking :P


"Give a man a fish and he will eat for a day; Teach a man to fish and he will eat for a lifetime. The moral? READ THE MANUAL !"

Sign on a computer system consultant's desk

Share this post


Link to post
Share on other sites
Baderous

Bem, eu não pretendo lá grande coisa, até pq fiz pp1 com 19, mp1 com 16 e mp3 com 19.. não sou nenhum guru, mas cá me entendo com a coisa..

bowdownzc9.gif

Não és guru, és um deus! :P

Acho que começar por mostrar qual a importância dos Monads, quais as suas potencialidades, o que é que eles permitem fazer que não é possível fazer de outra forma, seria um bom começo.

Share this post


Link to post
Share on other sites
Betovsky

Encontrei este video sobre Monads, por acaso bastante bom: http://channel9.msdn.com/shows/Going+Deep/Brian-Beckman-Dont-fear-the-Monads/

Enquanto o artigo não é feito, podem se entreter com isso.

Baderous, as Monads não permitem fazer nada que já não fosse possível. Simplesmente permitem fazer de forma mais simplificada. Conferem uma maior abstracção.


"Give a man a fish and he will eat for a day; Teach a man to fish and he will eat for a lifetime. The moral? READ THE MANUAL !"

Sign on a computer system consultant's desk

Share this post


Link to post
Share on other sites
edsousa

O vídeo é bastante interessante. Gostei particularmente da explicação sobre o monóides :D

Acho que o que gostaste mais foi da minha reacção ao filme  :D :D


Tharis Fan ClubMay Tharis bless you

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.