Difference between revisions of "Latest developments"

From Clean
Jump to navigationJump to search
Line 1: Line 1:
The [[Clean Team]] does its best to deliver reliable software.
+
The [[Clean Team]] does its best to deliver reliable software. It therefore might take some time before a new release is published. On this site we will keep you informed about the latest developments. Please be patient, software development always takes more time than expected.
It therefore might take some time before a new release is published.
+
 
On this site we will keep you informed about the latest developments.
+
== The Clean Compiler ==
Please be patient, software development always takes more time as expected.
+
 
 +
We are adding a new front-end to the Clean compiler that will accept '''Haskell '98''' source code. Which is good news for many people, we hope. Not only there will be another Haskell '98 compiler, but it should be one that compiles fast and produces efficient code. Another important property is that '''''Haskell and Clean code can be mixed'''''! So, Clean users can make use of Haskell libraries, while Haskell users can make use of Clean libraries (such as the iTask library) and Clean features (such as uniqueness typing, [[Dynamics]], generic programming, [[Sparkle], Gast).
 +
 
 +
Although many things already work, we do not dare to say anything about the release date.
  
 
== The [[iTasks]] combinator library for the web ==
 
== The [[iTasks]] combinator library for the web ==
  
At the '''ICFP 2007''' conference we presented '''iTasks''' [http://www.st.cs.ru.nl/papers/2007/plar2007-ICFP07-iTasks.pdf],
+
At the '''ICFP 2007''' conference we presented '''iTasks''' [http://www.st.cs.ru.nl/papers/2007/plar2007-ICFP07-iTasks.pdf]: a multi-user workflow system for the web. With this library, one can assign tasks to users and control the order in which these tasks have to be performed. A user uses a browser to perform the tasks assigned to him or her. The iTask system is therefore also very suited for web programming and web form handling. The tasks are defined on a very high level declarative monadic style. Have a look at the iTask pages [http://www.cs.ru.nl/~rinus/iTaskIntro.html].
a multi-user workflow system for the web.
 
With this library one can assign tasks to users and control the order in which these tasks have to be performed.  
 
A user uses a browser to perform the tasks assigned to him or her.
 
The iTask system is therefore also very suited for  
 
web programming and web form handling.
 
The tasks are defined on a very high level declarative monadic style.
 
 
 
Have a look at the iTask pages [http://www.cs.ru.nl/~rinus/iTaskIntro.html].
 
  
 
The new release of the iTask library we are working on will support:
 
The new release of the iTask library we are working on will support:
Line 20: Line 15:
 
* Client side evaluation of iTasks
 
* Client side evaluation of iTasks
  
With a simple annotation an iTask is evaluated on the client instead of on the server.
+
With a simple annotation an iTask is evaluated on the client instead of on the server. To make this possible we run full blown Clean applications in the browser as Java applet, making use of the fast '''Sapl''' interpreter [http://www.st.cs.ru.nl/papers/2007/janj2007-TFP06-EfficientInterpretationOfSAPL.pdf]. The system automatically switches between client side and server side evaluation when needed.
To make this possible we run full blown Clean applications in the browser as Java applet, making use of the fast '''Sapl''' interpreter [http://www.st.cs.ru.nl/papers/2007/janj2007-TFP06-EfficientInterpretationOfSAPL.pdf].
 
The system automatically switches between client side and server side evaluation when needed.
 
  
 
We used and released this new system at the [[AFP2008|AFP-summerschool]]
 
We used and released this new system at the [[AFP2008|AFP-summerschool]]
 
== The Clean Compiler ==
 
 
We are adding a new front-end to the Clean compiler that will accept '''Haskell '98''' source code.
 
 
Good news for many people, we hope.
 
 
Not only there will be another Haskell '98 compiler, which should be one that compiles fast and produces efficient code.
 
 
Another important property is that '''''Haskell and Clean code can be mixed'''''!
 
 
So, Clean users can make use of Haskell libraries, while Haskell users
 
can make use of Clean libraries (such as the iTask library) and Clean features (such as uniqueness typing, dynamics, generic programming, sparkle, gast).
 
 
Although many things already work, we don't dare to say anything about the release date.
 

Revision as of 13:12, 15 July 2008

The Clean Team does its best to deliver reliable software. It therefore might take some time before a new release is published. On this site we will keep you informed about the latest developments. Please be patient, software development always takes more time than expected.

The Clean Compiler

We are adding a new front-end to the Clean compiler that will accept Haskell '98 source code. Which is good news for many people, we hope. Not only there will be another Haskell '98 compiler, but it should be one that compiles fast and produces efficient code. Another important property is that Haskell and Clean code can be mixed! So, Clean users can make use of Haskell libraries, while Haskell users can make use of Clean libraries (such as the iTask library) and Clean features (such as uniqueness typing, Dynamics, generic programming, [[Sparkle], Gast).

Although many things already work, we do not dare to say anything about the release date.

The iTasks combinator library for the web

At the ICFP 2007 conference we presented iTasks [1]: a multi-user workflow system for the web. With this library, one can assign tasks to users and control the order in which these tasks have to be performed. A user uses a browser to perform the tasks assigned to him or her. The iTask system is therefore also very suited for web programming and web form handling. The tasks are defined on a very high level declarative monadic style. Have a look at the iTask pages [2].

The new release of the iTask library we are working on will support:

  • Ajax handling of iTasks
  • Client side evaluation of iTasks

With a simple annotation an iTask is evaluated on the client instead of on the server. To make this possible we run full blown Clean applications in the browser as Java applet, making use of the fast Sapl interpreter [3]. The system automatically switches between client side and server side evaluation when needed.

We used and released this new system at the AFP-summerschool