[Haskell] ANNOUNCE: Turbinado V0.2 "Still Ugly"

2008-11-26 Thread Alson Kemp
Progress continues on Turbinado.  Turbinado can be found at:
 http://www.turbinado.org

The source can be found at:
 http://github.com/alsonkemp/turbinado/tree/master
   (see the /App directory for the code for www.turbinado.org)

New in V0.2:
  * A better "Environment" type (rather than using Dynamics) (-> a 50%
speed boost?  That's unpossible!);
  * A functional early version of an ORM for PostgreSQL (note: still
needs to handle updates; hdbc-postgresql has a bug with sensing
nullable columns);
  * A prettier website;
  * Licensing -> BSD.

Expect V0.3 in the next week or so with:
  * More view helpers;
  * An ORM which handles INSERT/UPDATE...;
  * A little CMS built using the ORM.

Future release:
  * Separate the website out from the framework.  For now, they're
evolving together, so live together.
___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] Wait for *either* MVar to be set

2008-11-26 Thread Peter Verswyvelen
Maybe this is not the correct mailing list to ask this question, but as a 
similar question was asked seemingly unanswered by Duncan Coutts in 2002 
(http://markmail.org/message/kftpnulks7mbz2ij), and as this most likely has to 
do with the GHC runtime, I might have more luck to get an answer here... Sorry 
for the spam if this is inappropriate; please say so and I will resubscribe to 
the Haskell Cafe mailing list, not polluting this main list anymore...

So here's my question.

GHC provides MVar for nice lightweight concurrency synchronization.

However, preemptive multitasking operating systems offer support for waiting 
for multiple "MVars", until *either* one of them returns (or timeouts).

I see no way of achieving this with GHC's MVar, unless using Conal Elliott's 
unamb package on Hackage that emulates this by spawning and killing two threads 
(which might be an expensive operation, I'm not sure)

Am I wrong in this? If so, is this something that might be considered as a 
future enhancement in the GHC libraries and runtime?

Thanks very much,
Peter Verswyvelen
CTO - Anygma




___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


Re: [Haskell] ANN: "Real World Haskell", now shipping

2008-11-26 Thread Don Stewart
I'd love it if people took a photo of the book arriving.
With enough photos , I could put together a gallery of Haskell around
the world :-)

Here's my copy arriving last night,


http://www.realworldhaskell.org/blog/2008/11/25/real-world-haskell-is-shipping/

And Dino's digital version,

http://galois.com/~dons/images/20081121_dm_838.jpg

Drop me a line with a photo of yours arriving, and your location, and
I'll add it to the gallery.

Cheers,
  Don

donnie:
>Mine arrives in two days; I can't wait!  :)
> 
>Thanks for all your hard work, and to all the members of the community
>which provided comments/suggestions to improve the book.
>__
>Donnie Jones
> 
>On Wed, Nov 26, 2008 at 12:15 AM, Bryan O'Sullivan <[EMAIL PROTECTED]>
>wrote:
> 
>  Good evening -
> 
>  John Goerzen, Don Stewart and I are delighted to announce the
>  availability of our book, "Real World Haskell". It is 710 pages long,
>  and published by O'Reilly Media.
> 
>  This is the first book to comprehensively cover modern Haskell
>  programming. From an introduction to functional programming, it
>  focuses on teaching through many worked examples. We discuss the
>  "awkward squad" of I/O, concurrency, and exceptions. We cover network
>  programming, databases, and system hacking. We motivate and work with
>  monoids, applicative functors, monads, and monad transformers. We show
>  you how to debug code, and how to ship well-tested software.
> 
>  Better yet, the book is available under a Creative Commons license, so
>  you can read as much of it as you please before you buy:
>  [2]http://book.realworldhaskell.org/ We developed this book with the
>  enthusiastic and voluble support of the Haskell community, and we are
>  proud to share our work in a fashion that will help newcomers to our
>  field.
> 
>  And best of all, if you order now (at least in North America), you can
>  have a copy of the book in your hands in a matter of days.
> 
>  Thank you from all of us to our friends in the Haskell world who have
>  been so generous with their feedback and kind words!
>  ___
>  Haskell mailing list
>  [EMAIL PROTECTED]
>  [4]http://www.haskell.org/mailman/listinfo/haskell
> 
> References
> 
>Visible links
>1. mailto:[EMAIL PROTECTED]
>2. http://book.realworldhaskell.org/
>3. mailto:Haskell@haskell.org
>4. http://www.haskell.org/mailman/listinfo/haskell

> ___
> Haskell mailing list
> Haskell@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell

___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


Re: [Haskell] Re: Help : A problem with IO

2008-11-26 Thread Chris Eidhof

On 26 nov 2008, at 17:18, abdullah abdul Khadir wrote:


Hi,

The function getMyLine written by me is intended for getting a  
complete string from the standard input.


import IO

getMyLine :: IO [Char]
getMyLine =  do
c <- getChar
if(c == '\n')
then return ""
elsecs <- getMyLine
return [c]

However I keep getting the following error:

io.hs:14:2: Parse error in pattern
Failed, modules loaded: none.

I fail to understand what the error is. I tried out various  
things such as changing the alignment and so on to no avail. The  
following program, however, compiled successfully though it has the  
same structure as the previous program.


The "else" should be replaced by "else do". Probably you'll also want  
the last line to be "return (c:cs)".


By the way, questions like these might be more appropriate on haskell- 
beginners or haskell-cafe.


-chris




checkd :: IO Bool
checkd = do
c <- getChar
if(c=='d')
thenreturn True
elsereturn False

Prelude> :load ./io.hs
[1 of 1] Compiling Main ( io.hs, interpreted )
Ok, modules loaded: Main.
*Main> checkd
d
True

___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


Re: [Haskell] Re: Help : A problem with IO

2008-11-26 Thread Axel Simon
Hi Abdullah,

On Wed, 2008-11-26 at 21:48 +0530, abdullah abdul Khadir wrote:
> Hi,
> 
> The function getMyLine written by me is intended for getting a
> complete string from the standard input. 
> 
> import IO 
> 
> getMyLine :: IO [Char]
> getMyLine =  do
> c <- getChar
> if(c == '\n')
> then return ""
> elsecs <- getMyLine
> return [c]

a) you forgot a 'do' after 'else'
b) your email would be answered quicker on haskell-beginners or
haskell-cafe since haskell is mainly used for announcements.

Axel.


___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] Re: Help : A problem with IO

2008-11-26 Thread abdullah abdul Khadir
Hi,

The function getMyLine written by me is intended for getting a complete
string from the standard input.

import IO

getMyLine :: IO [Char]
getMyLine =  do
c <- getChar
if(c == '\n')
then return ""
elsecs <- getMyLine
return [c]

However I keep getting the following error:

io.hs:14:2: Parse error in pattern
Failed, modules loaded: none.

I fail to understand what the error is. I tried out various things
such as changing the alignment and so on to no avail. The following program,
however, compiled successfully though it has the same structure as the
previous program.

checkd :: IO Bool
checkd = do
c <- getChar
if(c=='d')
thenreturn True
elsereturn False

Prelude> :load ./io.hs
[1 of 1] Compiling Main ( io.hs, interpreted )
Ok, modules loaded: Main.
*Main> checkd
d
True
___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] Help : A problem with IO

2008-11-26 Thread abdullah abdul Khadir
Hi,



getMyLine :: IO [Char]
getMyLine =  do
c <- getChar
if(c == '\n')
then return ""
elsecs <- getMyLine
return [c]
___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


Re: [Haskell] ANN: "Real World Haskell", now shipping

2008-11-26 Thread David Leimbach
Very excited to receive my copy!  Congrats to the 3 of you!
On Tue, Nov 25, 2008 at 9:15 PM, Bryan O'Sullivan <[EMAIL PROTECTED]>wrote:

> Good evening -
>
> John Goerzen, Don Stewart and I are delighted to announce the
> availability of our book, "Real World Haskell". It is 710 pages long,
> and published by O'Reilly Media.
>
> This is the first book to comprehensively cover modern Haskell
> programming. From an introduction to functional programming, it
> focuses on teaching through many worked examples. We discuss the
> "awkward squad" of I/O, concurrency, and exceptions. We cover network
> programming, databases, and system hacking. We motivate and work with
> monoids, applicative functors, monads, and monad transformers. We show
> you how to debug code, and how to ship well-tested software.
>
> Better yet, the book is available under a Creative Commons license, so
> you can read as much of it as you please before you buy:
> http://book.realworldhaskell.org/ We developed this book with the
> enthusiastic and voluble support of the Haskell community, and we are
> proud to share our work in a fashion that will help newcomers to our
> field.
>
> And best of all, if you order now (at least in North America), you can
> have a copy of the book in your hands in a matter of days.
>
> Thank you from all of us to our friends in the Haskell world who have
> been so generous with their feedback and kind words!
> ___
> Haskell mailing list
> Haskell@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell
>
___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] First CFP: WWV 2009

2008-11-26 Thread demis
[Apologies if you receive multiple copies]

   ***
   *   CALL FOR PAPERS   *
   * *
   *   WWV 2009  *
   * Automated Specification and Verification of Web Systems *
   * 5th International Workshop  *
   * *
   *   Castle of Hagenberg, Austria. July 17, 2009   *
   *   http://www.risc.uni-linz.ac.at/conferences/wwv09/ *
   * *
   *   Part of the RISC Summer 2009  *
   *  http://www.risc.uni-linz.ac.at/conferences/summer2009/ *
   ***

IMPORTANT DATES

Abstract Submission   February 2, 2009
Full Paper Submission February 9, 2009
Acceptance Notification   April 20, 2009
Camera Ready  June 1, 2009
Workshop  July 17, 2009

SCOPE

The increased complexity of Web sites and the explosive growth of
Web-based applications has turned their design and construction into
a challenging problem. Nowadays, many companies have diverted their
Web sites into interactive, completely-automated, Web-based
applications (such as Amazon, on-line banking, or travel agencies)
with a high complexity that requires appropriate specification and
verification techniques and tools. Systematic, formal approaches to
the analysis and verification can address the problems of this
particular domain with automated and reliable tools that also
incorporate semantic aspects.

We solicit original papers on formal methods and techniques applied
to Web sites, Web services or Web-based applications, such as:

* rule-based approaches to Web site analysis, certification,
specification, verification, and optimization
* algebraic methods for verification and certification of
Web systems
* formal models for describing and reasoning about Web sites
* model-checking, synthesis and debugging of Web sites
* abstract interpretation and program transformation applied
to the semantic Web
* intelligent tutoring and advisory systems for Web specifications
authoring
* Web quality and Web metrics
* Web usability and accessibility
* Testing and evaluation of Web systems and applications

The WWV series provides a forum for researchers from the communities
of Rule-based programming, Automated Software Engineering, and
Web-oriented research to facilitate the cross-fertilization and the
advancement of hybrid methods that combine the three areas.

The previous WWV editions were: WWV'08 (Siena, Italy), WWV'07 (Venice,
Italy), WWV'06 (Paphos, Cyprus), and WWV'05 (Valencia, Spain).

LOCATION

WWV'09 will be held at the Research Institute for Symbolic
Computation (RISC), which is an institute of the Johannes Kepler
University in Linz. It is located in the Castle of Hagenberg,
a romantic, medieval castle amidst the lovely, hilly landscape
of the Mühlviertel region, 20 km north east of Linz, the provincial
capital of Upper Austria, located halfway between Salzburg and Vienna.

For more information about RISC, please visit:
http://www.risc.uni-linz.ac.at/

The workshop is a part of the RISC Summer 2009 conference series:
http://www.risc.uni-linz.ac.at/about/conferences/summer2009/

SUBMISSION PROCEDURE

Submissions must be received by February 9, 2009. In addition, an
ASCII version of the title and abstract must be submitted by
February 2, 2009. Submitted papers should be prepared in LaTeX,
formatted according to the Springer llncs style, and should not
exceed 15 pages.

Submission is web-based via this link:
http://www.easychair.org/conferences/?conf=wwv09

PUBLICATION

Accepted papers will be published in a preliminary proceedings
volume, which will be available during the workshop.

After the workshop, a special issue of the Journal of Symbolic
Computation on the topic of the WWV workshop is planned.

PROGRAM CO-CHAIRS

Demis Ballis  University of Udine, Italy
Temur Kutsia  Johannes Kepler University Linz, Austria

WORKSHOP CO-CHAIRS

Temur Kutsia  Johannes Kepler University Linz, Austria
Wolfgang SchreinerJohannes Kepler University Linz, Austria

INVITED SPEAKERS

François Bry  Ludwig Maximilian University of Munich, Germany
Axel Polleres National University of Ireland, Galway, Ireland

PROGRAM COMMITTEE

Maria Alpuente   Technical University of Valencia, Spain
Demis Ballis University of Udine, Italy
Wlodzimierz Drabent  Linköping University, Sweden, and
 Institute Of Computer Science,
 Polish Academy of Sciences, Poland
Santiago Escobar Technical University of Valencia, Spain
Moreno Falaschi  University of Siena, Italy
Mário FloridoUniversity of Porto, Portugal
Temur Kutsia   

[Haskell] Call for papers TAP 2009

2008-11-26 Thread Koen Claessen
[Apologize if you receive multiple copies]



Call for Papers

TAP: Tests And Proofs 2009


The Third International Conference on Tests And Proofs (TAP) will be
held at ETH Zurich, Switzerland on 2 and 3 July 2009. It will be
co-located with TOOLS Europe 2009.

The TAP conference is devoted to the convergence of proofs and tests.
It combines ideas from both sides for the advancement of software
quality.

Purpose and Scope
-
To prove the correctness of a program is to demonstrate, through
impeccable mathematical techniques, that it has no bugs; to test a
program is to run it with the expectation of discovering bugs. The two
techniques seem contradictory: if you have proved your program, it's
fruitless to comb it for bugs; and if you are testing it, that is
surely a sign that you have given up on any hope to prove its
correctness.

Accordingly, proofs and tests have, since the onset of software
engineering research, been pursued by distinct communities using
rather different techniques and tools.

And yet the development of both approaches leads to the discovery of
common issues and to the realization that each may need the other. The
emergence of model checking has been one of the first signs that
contradiction may yield to complementarity, but in the past few years
an increasing number of research efforts have encountered the need for
combining proofs and tests, dropping earlier dogmatic views of
incompatibility and taking instead the best of what each of these
software engineering domains has to offer.

The conference will include a mix of invited and submitted
presentation, and a generous allocation of panels and informal
discussions


Topics
---
Possible topics include (as an indicative rather than exhaustive list):

- Generation of test data, oracles, or preambles by deductive techniques such as
 o theorem proving,
 o model checking,
 o symbolic execution,
 o constraint logic programming, etc.
- Generation of specifications by deduction
- Verification techniques combining proofs and tests
- Program proving with the aid of testing techniques
- Transfer of concepts from testing to proving (e.g., coverage criteria)
- Automatic bug finding
- Formal frameworks
- Tool descriptions and experience reports
- Case studies

Invited speakers

Boutheina CHETALI
Security Labs, Technology & Innovation
Gemalto - France

Sriram K. Rajamani
Microsoft Research India

Contributions
-

Two kinds of contributions are expected:

-  Research papers: full papers of not more than 14 pages
 in LNCS format, which have to be original, unpublished and
 not submitted elsewhere. The research papers proceedings will be
 published in Springer's LNCS series.

- Short presentations of work in progress, industrial
 experience reports and tool demonstrations.  An extended
 abstract of not more than 3 pages is expected and will be
 reviewed. The accepted extended abstracts will be
 made available in supplementary proceedings. They will be
 presented during the cnference days.


Important dates


   * Submission deadline: 15 February 2009
   * Notification of acceptance: 22 March 2009
   * Submission of final camera-ready version: 15 April 2009

The dates are firm; no extension will be granted.

Web site
-

http://tap.ethz.ch/2009
Call for Papers

 TAP: Tests And Proofs 2009


The Third International Conference on Tests And Proofs (TAP) will be held at 
ETH Zurich, Switzerland on 2 and 3 July 2009. It will be co-located with TOOLS 
Europe 2009.

The TAP conference is devoted to the convergence of proofs and tests. It 
combines ideas from both sides for the advancement of software quality.

Purpose and Scope
-
To prove the correctness of a program is to demonstrate, through impeccable 
mathematical techniques, that it has no bugs; to test a program is to run it 
with the expectation of discovering bugs. The two techniques seem 
contradictory: if you have proved your program, it's fruitless to comb it for 
bugs; and if you are testing it, that is surely a sign that you have given up 
on any hope to prove its correctness.

Accordingly, proofs and tests have, since the onset of software engineering 
research, been pursued by distinct communities using rather different 
techniques and tools.

And yet the development of both approaches leads to the discovery of common 
issues and to the realization that each may need the other. The emergence of 
model checking has been one of the first signs that contradiction may yield to 
complementarity, but in the past few years an increasing number of research 
efforts have encountered the need for combining proofs and tests, dropping 
earlier dogmatic views of incompatibility and taking instead the best of what 
each of these software engineering domains has to offer.

The conference will include a mix of invited and submitted presentation, an