Rodrigo Kumpera Weblog

Meus achados sobre tecnologia

Entries Tagged as 'Programming language Theory'

A beleza do sistema de tipos do C#

July 14th, 2011 · No Comments

Outro dia me apresentaram o código abaixo com um dúvida bem boba. Esse código em C# abusa um pouco de uma das novidades da última revisão da linguagem, tipos genéricos variantes. Vamos ao código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
interface A<in B> { }
 
interface B<in A> { }
 
class X : A<B<X>> { }
 
class Y : B<A<Y>> { }
 
class Test
{
static void Main [...]

[Read more →]

Tags: Programming · Programming language Theory · language design

Implementando Haskell em VMs tradicionais (parte 2)

January 9th, 2010 · 1 Comment

Retomando a questão sobre como implementar Haskell em VMs tradicionais, vamos ver um dos aspectos mais complicados, thunking, de implementar de forma eficiente. Um dos aspectos que surpreende a maioria dos que usam Haskell pela primeira vez é o fato da linguagem ser lazy evaluated, isto é, o valor de uma expressão só é computado [...]

[Read more →]

Tags: Performance · Programming language Theory · language design · mono

Limites da orientação a objetos

August 30th, 2009 · 1 Comment

Toda linguagem de programação pode ser analisada pela sua junção de três elementos distintos: forma, comportamento e taxonomia. Cada um define um aspectodistinto de como o conjunto de valores que compõe um programa é usado.
Cada um destes valores possui um forma, que é a representação concreta para o conceito abstrato que cada um significa. Um [...]

[Read more →]

Tags: Programming · Programming language Theory · language design

Herança não funciona, parte III

December 1st, 2008 · 1 Comment

Em artigos anteriores eu descrevi algum dos problemas associados com herança, ou subtipagem, e questões ligadas a co/contravariância. Porém outra questão me chamou muito a atenção recentemente, é o fato de classes e objetos como normalmente vemos em linguagens com tipagem explícita são uma mistura de conceitos que talvez não deveriam estar juntos.
O que exatamente [...]

[Read more →]

Tags: Programming · Programming language Theory · language design