Web Images Videos Maps News Shopping Gmail more »
Recently Visited Groups | Help | Sign in
Google Groups Home
What does Haskell have to do with C++?
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  4 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Alex Queiroz  
View profile  
 More options Oct 23, 7:04 am
From: Alex Queiroz <asand...@gmail.com>
Date: Fri, 23 Oct 2009 11:04:22 +0000
Local: Fri, Oct 23 2009 7:04 am
Subject: What does Haskell have to do with C++?
    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Eric Chiesse  
View profile   Translate to Translated (View Original)
 More options Oct 23, 8:31 am
From: Eric Chiesse <echie...@gmail.com>
Date: Fri, 23 Oct 2009 09:31:53 -0300
Local: Fri, Oct 23 2009 8:31 am
Subject: Re: [ccppbrasil] What does Haskell have to do with C++?

Muito legal !!

Abraços.

Eric.

2009/10/23 Alex Queiroz <asand...@gmail.com>


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Thiago Adams  
View profile   Translate to Translated (View Original)
 More options Oct 23, 12:52 pm
From: Thiago Adams <thiago.ad...@gmail.com>
Date: Fri, 23 Oct 2009 09:52:50 -0700 (PDT)
Local: Fri, Oct 23 2009 12:52 pm
Subject: Re: What does Haskell have to do with C++?

Não sei exatamente para onde as novas linguagens estão nos levando.
Existem muitos desejos sobre o que uma linguagem de programação deve
ser e fazer.
Um destes desejos é tornar a linguagem de programação mais
declarativa. É dizer o que deve ser feito sem precisar dizer como
fazer. Um exemplo é o SQL, onde se diz qual a consulta se deseja, mas
não é necessário dizer como fazer a consulta.
Isto faz parte do dia-a-dia do programador em vários níveis
diferentes. Por exemplo, quando usamos um vector estamos dizendo que
precisamos de uma lista, sem precisarmos dizer como será feita a
alocação e deslocação dos itens. No entanto, ainda temos o “como
fazer” em mente, pois afinal por que escolhemos um vector ao invés de
um list?
Quanto maior e mais completo o framework que se usa mais declarativo
se torna o programa. No C++ vivemos entre estes dois mundos, e
declarativo e o imperativo aonde dizemos as operações e trocas de
estado das variáveis. São níveis de abstrações sobrepostos.
Algumas pessoas têm grande dificuldade de criar esta camada
declarativa e acabam criando um código que é um aglomerado de
operações. A manutenção deste software é uma engenharia reversa, pois
a lógica do que deve ser feito é perdida.
O C++ evolui de uma forma que a parte imperativa é importante, pois é
uma linguagem aonde se tem pleno controle do código gerado. E a parte
das abstrações é o desafio de tornar o código mais declarativo sem
prejuízo no desempenho. Existe ajuda de todos os lados. Acho que as
linguagens vão progredir na forma declarativa toda vez que for
descoberto uma maneira de gerar o código eficiente para tal declaração
e seja um problema genérico. O LINQ do C# é um exemplo.

Me parece que o Haskell e outras linguagem como F# se encaminham para
criar outras formas de declarações. Este artigo do link foi
interessante por mostrar esta ligação dos conceitos com vários
exemplos no C++.

Apenas como exemplo, recentemente coloquei aqui um link para um
exemplo na minha página (http://www.thradams.com/codeblog/pattern.htm)
aonde é feito um expressão regular de forma declarativa e o código é
gerado automaticamente. Não é a solução ideal de implementação pois
não minimiza estados etc..
Acho que a metaprogramaçào pode evoluir ( e esta evoluindo) de forma
que consigamos fazer o compilador programar por nós.
Mas existe um ponto também em que eu acho que vale mais a pena criar
uma representação separada e fazer um gerador de código. Por exemplo,
acho melhor pegar uma gramática EBNF e gerar um parser do que tentar
fazer isso com metaprogramaçao.


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Hermann Rodrigues  
View profile   Translate to Translated (View Original)
 More options Oct 23, 4:59 pm
From: Hermann Rodrigues <hermann.rodrig...@gmail.com>
Date: Fri, 23 Oct 2009 13:59:35 -0700 (PDT)
Local: Fri, Oct 23 2009 4:59 pm
Subject: Re: What does Haskell have to do with C++?
Olá,

Só uma nota: eu não colocaria Haskell como uma linguagem nova. Ela
existe desde o início dos anos 80 e é uma adaptação de linguagens que
já existiam bem antes disso. Nesse aspecto, ela é tão antiga quando o
próprio C++. O que está acontecendo atualmente é que os programadores
tem voltado os olhos cada vez mais para linguagens funcionais como uma
possível solução para os novos desafios programação do hardware
paralelo atual.

Parte dessa popularização se deve inclusive a caras como Tim Sweeney,
fundador da Epic Games (e o cara por trás de Unreal1/2/3), que tem
sempre defendido o uso de linguagem com um jeitão funcional e cita
Haskell em várias de suas palestras.

F# é apenas mais uma implementação de uma linguagem funcional, assim
como Scala e outras. O ponto interessante aqui é que F# é da Microsoft
e a própria Microsoft financia o desenvolvimento de Haskell, inclusive
de compiladores. E isso já é feito a muitos anos mesmo.

Abraço,

On 23 out, 14:52, Thiago Adams <thiago.ad...@gmail.com> wrote:


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google