[Haskell-cafe] To yi or not to yi,
is this really the question? A plea for a cooperative,
ubiquitous, distributed integrated development system.
Claus Reinke
claus.reinke at talk21.com
Mon Jun 18 13:14:58 EDT 2007
>Having just presented a case for the possible rationality of the
>irrational decision of creating an Emacs-like IDE in Haskell, I
>wonder if we should not be even more irrational and contemplate the
>possibility of using Haskell to create a radically different kind of
>IDE.. New technologies are often used to imitate and reimplement the
>artefacts of previous technologies.
don't underestimate those "previous" technologies, though. given your
outline, you're almost certain to find this interesting:
Croquet is a powerful open source software development environment
for the creation and large-scale distributed deployment of
multi-user virtual 3D applications and metaverses that are (1)
persistent (2) deeply collaborative, (3) interconnected and (4)
interoperable. The Croquet architecture supports synchronous
communication, collaboration, resource sharing and computation among
large numbers of users on multiple platforms and multiple devices.
http://croquetconsortium.org
the screenshots can be misleading in their simplicity, so be sure
to browse some of the papers referenced on the 'about' page in
the technology section
http://croquetconsortium.org/index.php/About_the_Technology
>Up to you now, what is your dream?
if you look closely, you'll see that croquet is implemented in squeak,
which in turn is a re-implementation of one of the ancient smalltalks.
squeak is by no means the ideal implementation language for this
kind of project, nor am i completely convinced by the synchronous
approach used for croquet. but while implementation of croquet
in squeak is obviously doable, i see various difficulties for doing
the same in haskell.
where squeak is too dynamic/imperative/flexible, haskell is too
static/unreflective/limited (ever tried to pass functions through
haskell's i/o interface? type Dynamic and dynamic loading are still
outside the language definition [hs-plugins], as are distribution
[gdh], persistence [many starts, no finish, but see Clean's first
class i/o], reflection/meta-programming [Data/Typeable, template
haskell..; meta ml?]). one dream would be successors to haskell and
croquet so that croquet' could be implemented in haskell''.
claus
More information about the Haskell-Cafe
mailing list