Lambda the Ultimate

inactiveTopic No FP languages for the real-world
started 10/6/2002; 8:38:06 AM - last post 10/7/2002; 11:52:17 AM
Doug Ransom - No FP languages for the real-world  blueArrow
10/6/2002; 8:38:06 AM (reads: 282, responses: 4)
The real world these days is primarily (IMO) a java or dotnet framework. The days of CORBA, COM, or doing big programs with code all compiled and linked together are fading.

I would love to have a good FP language that lets me program with fold etc. while retaining interop with the massive OO libraries that exists for dotnet/java (i.e. the xmlreader of dotnet cannot be discarded for one written in FP, because someone might provide an xmlreader for me to consume).

Can FP languages (especially lazy ones) interop with data structures from C#/Java/dotnet/CLI/rotor?

Doug

Ehud Lamm - Re: No FP languages for the real-world  blueArrow
10/6/2002; 8:57:10 AM (reads: 305, responses: 0)
The real world these days is primarily (IMO) a java or dotnet framework.

Alas, I think that largest amount of code is still in Cobol (god help us...)

Michael Vanier - Re: No FP languages for the real-world  blueArrow
10/6/2002; 3:12:42 PM (reads: 310, responses: 0)
There are some examples of this. There are a large number of scheme implementations for the JVM, of which I think the most well-developed is Kawa. Implementations of ML and Haskell for the JVM are much rarer, apparently because the design of the JVM would make any ML or Haskell port massively inefficient (such are the subtleties of computer language design). There are similar issues with .NET, although apparently the situation is not as bad (the infrastructure supports tail calls, for one thing). I recommend you look at F#, which is a partial implementation of ocaml under .NET. Even then, there are a LOT of compromises that had to be made. Language interoperability, especially between languages with very different semantics, is a very, very hard problem.

Chris Double - Re: No FP languages for the real-world  blueArrow
10/7/2002; 3:50:56 AM (reads: 303, responses: 0)
I've been slowly banging away at doing a version of Goo for .NET. My current attempt is available for download.

Basically I just recompiled Goo with the .NET C compiler and added support for calling the .NET framework. I plan on exploring this further and seeing how good a 'glue' language Goo can be.

Isaac Gouy - Re: No FP languages for the real-world  blueArrow
10/7/2002; 11:52:17 AM (reads: 307, responses: 0)
The Haskel variant Mondrian.Net was mentioned a couple of years ago previously on LtU

The latest release is available at www.mondrian-script.org

These papers discuss Mondrian.Net and the more general issue of implementing functional languages on the OO API of common VMs:

Mondrian for .NET

Implementing Functional Languages on Object-Oriented Virtual Machines