[plt-scheme] Re: Thinking in FP vs OOP for large scale apps

From: Shriram Krishnamurthi (sk at cs.brown.edu)
Date: Wed May 16 22:26:17 EDT 2007

> Thanks Greg, appreciated - I understand that neither FrTime & Flapjax is
> pure functional, but it allows me to think differently on how program can be
> structured, and it's great to see a different way.

Flapjax and FrTime force you to be clear about what you mean when you
say "purely functional".  Both languages let you write declarative
programs over imperative values.

To me, the problem with state is not that it exists in programs, but
that it causes us to have to maintain dependencies by hand that, by
default, would fall out of sync.  In these (and similar dataflow)
languages, the language is responsible for keeping the values in sync
in some semantically-sensible way, making it unobjectionable for the
language to permit state.  Indeed, one could say that in Flapjax and
FrTime, *all* programs are *always* imperative.

Shriram


Posted on the users mailing list.