`[<<][compsci][>>][..]`
Wed Apr 8 15:17:26 CEST 2009

## Evaluation Strategies or Lambda Calculi?

```Been reading a bit on dave's blog the posts surrounding this[1].  The
main idea being that it makes little sense to talk about a single
lambda calculus (LC) with different reduction strategies like
applicative order or normal order.  It's better to make a
special-purpose calculus to model call-by-value and call-by-name
languages (the CBV-LC and CBN-LC).  This generalizes to other language
extensions.

This one[2] was informative:

In call-by-name lambda calculus, the definition of a reducible
expression is an application whose operator is a value. The operand
can be any arbitrary expression. As a result, non-values end up
being passed as arguments to functions. In call-by-value, we
likewise only perform reduction when the operator is a value, but we
also require that the operand be a value as well.

[1] http://calculist.blogspot.com/2009/02/history-lesson.html
[2] http://calculist.blogspot.com/2006/03/observable-differences-between.html

```
`[Reply][About]`
`[<<][compsci][>>][..]`