Lambda the Ultimate
Lembrando que no LtU Imperative os modelos semânticos se baseiam apenas em:
Agora acabei de reler essa parte no AIM-349 (o "Scheme: an Interpreter for Extended Lambda Calculus") e vi que esta observação também está lá. Enfim, é difícil ser original, ainda mais considerando que esses artigos têm em média 30 anos de idade.
Seria possível eliminar a atribuição, ficando apenas com expressões lambda para tudo ? Aparentemente não, até porque o lambda-calculus puro é livre de efeitos colaterais, e nós queremos modelar estruturas que apresentam efeitos colaterais. Será que não dá para colocar uma mônada aí no meio ? E mais, fazer isso sem passar para uma extensão do lambda-calculus puro ?
(Nota: se não me engano alguém já provou que ter continuações e atribuição em uma linguagem é equivalente a ter mônadas numa linguagem sem efeitos colaterais, mas qualquer conjunto menor é menos expressivo; depois vou procurar esse artigo)
- expressões lambda
- expressões condicionais
- atribuição
Agora acabei de reler essa parte no AIM-349 (o "Scheme: an Interpreter for Extended Lambda Calculus") e vi que esta observação também está lá. Enfim, é difícil ser original, ainda mais considerando que esses artigos têm em média 30 anos de idade.
Seria possível eliminar a atribuição, ficando apenas com expressões lambda para tudo ? Aparentemente não, até porque o lambda-calculus puro é livre de efeitos colaterais, e nós queremos modelar estruturas que apresentam efeitos colaterais. Será que não dá para colocar uma mônada aí no meio ? E mais, fazer isso sem passar para uma extensão do lambda-calculus puro ?
(Nota: se não me engano alguém já provou que ter continuações e atribuição em uma linguagem é equivalente a ter mônadas numa linguagem sem efeitos colaterais, mas qualquer conjunto menor é menos expressivo; depois vou procurar esse artigo)
0 Comments:
Post a Comment
<< Home