Software Engineering and Functional Programming (with Haskell)

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Software Engineering and Functional Programming (with Haskell)

Sukit Tretriluxana
Hi all,

I'm a Software Engineering (SE) Master's degree student at CMU. As part of the program, each of us needs to present a topic that's related to SE. I am picking Functional Programming with Haskell as the topic as I believe it has a lot of direct impact on SE due to its nature that requires a the whole new world of thinking process, design, analysis, development, testing, and deployment.

Unfortunately my instructor disagrees that the topic is relevant. In his response, he mentioned that he will accept the topic only if I can prove the following.

Haskell has been around for quite a while.  To convince me,
you'll have to give me references that I can read about
nontrivial examples of significant software systems already
built exclusively with Haskell which includes the software
engineering principles applied in this environment and the
software measures that demonstrate the claims. I
welcome the opportunity for you to provide me with such
in-depth research references to support your viewpoint.

Straight of the bat, I have very limited visibility in terms of finding him the resources to prove this. I am wondering if any of you all here could shed some light where I can find a couple compelling evidences to convince him. In fact, my presentation topic is not specifically tied to Haskell but more to FP. So any resources that provide such information on FP in general would do as well.

Thanks,
Ed




_______________________________________________
Haskell mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell
Reply | Threaded
Open this post in threaded view
|

Re: Software Engineering and Functional Programming (with Haskell)

Paul Johnson-2
Sukit Tretriluxana wrote:

> Unfortunately my instructor disagrees that the topic is relevant. In
> his response, he mentioned that he will accept the topic only if I can
> prove the following.
>
> Haskell has been around for quite a while.  To convince me,
> you'll have to give me references that I can read about
> nontrivial examples of significant software systems already
> built exclusively with Haskell which includes the software
> engineering principles applied in this environment and the
> software measures that demonstrate the claims. I
> welcome the opportunity for you to provide me with such
> in-depth research references to support your viewpoint.
For FP in general you could look at Erlang.  Its an functional
programming language used for telecom systems.  www.erlang.org has a
bunch of references, including some very significant software systems.

I would suggest broadening your scope to include Erlang, and then look
at some of the issues with Erlang and the way in which Haskell purity
helps, like deforestation.  In Erlang you can write a function as a
pipeline of maps, filters and folds, but it tends to be very inefficient
because all the intermediate data structures have to be created.  In
Haskell the compiler can strip out these structures because the order of
execution does not matter.

I know that Haskell has been used for chip design software.  Simon
Peyton-Jones' recent paper on the history of Haskell has some references.

Paul.
_______________________________________________
Haskell mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell
Reply | Threaded
Open this post in threaded view
|

Re: Software Engineering and Functional Programming (withHaskell)

John Hughes-4
In reply to this post by Sukit Tretriluxana
Take a look at "World Class Product Certification using Erlang" by Ulf Wiger et al. It's about a real project, not a scientific experiment, but even so it aims to demonstrate some of the claims made for FP. It's Erlang, not Haskell, but that doesn't really matter. The product is certainly a "significant system"--it's 1.5 million lines of Erlang, and is in use in Ericsson-supplied telephone networks around the world. But it's not built exclusively with Erlang, and actually I think that's an unreasonable demand--virtually any large system is built with a mixture of languages. In this case there are 2 million lines of C doing low-level data transport.
 
I'm sure you'll find the Commercial Users of Functional Programming workshops interesting too, although there are only slides available in most cases, not papers. There are many "success stories" there.
 
John
----- Original Message -----
Sent: Tuesday, April 03, 2007 10:06 PM
Subject: [Haskell] Software Engineering and Functional Programming (withHaskell)

Hi all,

I'm a Software Engineering (SE) Master's degree student at CMU. As part of the program, each of us needs to present a topic that's related to SE. I am picking Functional Programming with Haskell as the topic as I believe it has a lot of direct impact on SE due to its nature that requires a the whole new world of thinking process, design, analysis, development, testing, and deployment.

Unfortunately my instructor disagrees that the topic is relevant. In his response, he mentioned that he will accept the topic only if I can prove the following.

Haskell has been around for quite a while.  To convince me,
you'll have to give me references that I can read about
nontrivial examples of significant software systems already
built exclusively with Haskell which includes the software
engineering principles applied in this environment and the
software measures that demonstrate the claims. I
welcome the opportunity for you to provide me with such
in-depth research references to support your viewpoint.

Straight of the bat, I have very limited visibility in terms of finding him the resources to prove this. I am wondering if any of you all here could shed some light where I can find a couple compelling evidences to convince him. In fact, my presentation topic is not specifically tied to Haskell but more to FP. So any resources that provide such information on FP in general would do as well.

Thanks,
Ed




_______________________________________________
Haskell mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell

_______________________________________________
Haskell mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell
Reply | Threaded
Open this post in threaded view
|

Re: Software Engineering and Functional Programming (withHaskell)

Heinrich Apfelmus
John Hughes wrote:
> Take a look at "World Class Product Certification using Erlang" by Ulf Wiger et al.
> It's about a real project, not a scientific experiment,

Though I find the scientific experiment described in "Haskell vs. Ada
vs. C++ vs. Awk vs. ..., An Experiment in Software Prototyping
Productivity" by Paul Hudak and Mark P. Jones particularly amusing ("in
their minds the use of higher-order functions to capture regions was
just a trick that would probably not be useful in other contexts").

A link to the paper can be found on
   http://haskell.org/haskellwiki/Haskell_in_practice

Regards,
apfelmus

_______________________________________________
Haskell mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell
Reply | Threaded
Open this post in threaded view
|

Re: Software Engineering and Functional Programming (with Haskell)

S. Doaitse Swierstra-2
In reply to this post by Paul Johnson-2
There have been a series on workshop about the commercial use of  
functional programming. You can find the slides of presentations at:

http://cufp.galois.com/

Some companies even use knowledge of FP to filter out the good  
applicants ;-}} What is your instructor's opinion about that?

  Doaitse Swierstra


On Apr 3, 2007, at 11:40 PM, Paul Johnson wrote:

> Sukit Tretriluxana wrote:
>> Unfortunately my instructor disagrees that the topic is relevant.  
>> In his response, he mentioned that he will accept the topic only  
>> if I can prove the following.
>>
>> Haskell has been around for quite a while.  To convince me,
>> you'll have to give me references that I can read about
>> nontrivial examples of significant software systems already
>> built exclusively with Haskell which includes the software
>> engineering principles applied in this environment and the
>> software measures that demonstrate the claims. I
>> welcome the opportunity for you to provide me with such
>> in-depth research references to support your viewpoint.
> For FP in general you could look at Erlang.  Its an functional  
> programming language used for telecom systems.  www.erlang.org has  
> a bunch of references, including some very significant software  
> systems.
>
> I would suggest broadening your scope to include Erlang, and then  
> look at some of the issues with Erlang and the way in which Haskell  
> purity helps, like deforestation.  In Erlang you can write a  
> function as a pipeline of maps, filters and folds, but it tends to  
> be very inefficient because all the intermediate data structures  
> have to be created.  In Haskell the compiler can strip out these  
> structures because the order of execution does not matter.
>
> I know that Haskell has been used for chip design software.  Simon  
> Peyton-Jones' recent paper on the history of Haskell has some  
> references.
>
> Paul.
> _______________________________________________
> Haskell mailing list
> [hidden email]
> http://www.haskell.org/mailman/listinfo/haskell

_______________________________________________
Haskell mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell
Reply | Threaded
Open this post in threaded view
|

Re: Software Engineering and Functional Programming (with Haskell)

Sukit Tretriluxana
Thank you so much everyone who have been so helpful in pointing out the resources that I can use to convince my prof. And guess what, he's finally convinced!!!

I wholehearted appreciate everyone and the strong support from this Haskell community.

Ed

On 4/4/07, Doaitse Swierstra <[hidden email]> wrote:
There have been a series on workshop about the commercial use of
functional programming. You can find the slides of presentations at:

http://cufp.galois.com/

Some companies even use knowledge of FP to filter out the good
applicants ;-}} What is your instructor's opinion about that?

  Doaitse Swierstra


On Apr 3, 2007, at 11:40 PM, Paul Johnson wrote:

> Sukit Tretriluxana wrote:
>> Unfortunately my instructor disagrees that the topic is relevant.
>> In his response, he mentioned that he will accept the topic only
>> if I can prove the following.
>>
>> Haskell has been around for quite a while.  To convince me,
>> you'll have to give me references that I can read about
>> nontrivial examples of significant software systems already
>> built exclusively with Haskell which includes the software
>> engineering principles applied in this environment and the
>> software measures that demonstrate the claims. I
>> welcome the opportunity for you to provide me with such
>> in-depth research references to support your viewpoint.
> For FP in general you could look at Erlang.  Its an functional
> programming language used for telecom systems.   www.erlang.org has
> a bunch of references, including some very significant software
> systems.
>
> I would suggest broadening your scope to include Erlang, and then
> look at some of the issues with Erlang and the way in which Haskell
> purity helps, like deforestation.  In Erlang you can write a
> function as a pipeline of maps, filters and folds, but it tends to
> be very inefficient because all the intermediate data structures
> have to be created.  In Haskell the compiler can strip out these
> structures because the order of execution does not matter.
>
> I know that Haskell has been used for chip design software.  Simon
> Peyton-Jones' recent paper on the history of Haskell has some
> references.
>
> Paul.
> _______________________________________________
> Haskell mailing list
> [hidden email]
> http://www.haskell.org/mailman/listinfo/haskell



_______________________________________________
Haskell mailing list
[hidden email]
http://www.haskell.org/mailman/listinfo/haskell