[Haskell] (no subject)

2015-07-23 Thread lel416
Can u still purchase general admission tkts

Sent from my iPhone
___
Haskell mailing list
Haskell@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell


[Haskell] (no subject)

2012-09-16 Thread Clint Moore


smime.p7s
Description: S/MIME cryptographic signature
___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] (no subject)

2012-09-16 Thread Clint Moore


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


Re: [Haskell] (no subject)

2012-05-31 Thread Alexander Kantardjiev

wow look into this http://www.stenews.net/biz/?read=3610300


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


[Haskell] (no subject)

2012-04-02 Thread Mark Snyder
http://isukeworld.com/test/cat13/02efpk.html";> 
http://isukeworld.com/test/cat13/02efpk.html___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] (no subject)

2012-02-21 Thread Dan Burton
Haskellers,

I'm pleased to announce the first public release of NetSpec, a little
Network library to simplify networking tasks that involve a fixed number of
connections, using Erlang-esque send and receive primitives.

Check out the docs: http://hackage.haskell.org/package/netspec
And the repo on github (with examples): https://github.com/DanBurton/netspec

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


[Haskell] (no subject)

2011-11-15 Thread Benjamin L. Russell
http://www.myvisionview.com/images/scan.php

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


[Haskell] (no subject)

2011-11-15 Thread Benjamin L. Russell
http://poorogies.com/wp-content/plugins/scan.php

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


[Haskell] (no subject)

2009-06-24 Thread Stephanie Weirich

=
Call for Participation

   ACM SIGPLAN Haskell Symposium 2009

  http://haskell.org/haskell-symposium/2009/

   Edinburgh, Scotland, 3 September 2009
=

 The ACM SIGPLAN Haskell Symposium 2009 will be co-located with the
   2009 International Conference on Functional Programming (ICFP).

   The purpose of the Haskell Symposium is to discuss experiences with
   Haskell and future developments for the language. The scope of the
   symposium includes all aspects of the design, semantics, theory,
   application, implementation, and teaching of Haskell.

Preliminary program:
 * http://haskell.org/haskell-symposium/2009/schedule.html

REGISTRATION IS NOW OPEN:
 * http://www.regmaster.com/conf/icfp2009.html
 * Early registration deadline: July 30, 2009

Local arrangements (including travel and accommodation):
 * http://www.haskell.org/haskellwiki/ICFP_2009_Local_Arrangements
 * Conference reservation/rate deadline: July 20, 2009
 * ICFP09 & Haskell 09 coincides with the final week of the Edinburgh
   Festival, one of the premier arts and cultural festivals in the
   world.  The opportunity to attend the Festival is a plus!  Due to
   the popularity of Edinburgh during the festival period, we
   strongly recommend booking accommodation early.

See you in Edinburgh,

  Stephanie Weirich
  Haskell 2009 Program Chair

=

p.s., don't forget about the ICFP Programming Contest this weekend!!

 * http://www.icfpcontest.org
 * Friday, June 26 to Monday, June 29
 * Organizers: Computer Systems Design Laboratory (University of  
Kansas)


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


[Haskell] (no subject)

2009-05-25 Thread Oege de Moor
To: 
Subject: 10 jobs in declarative programming

   TEN DECLARATIVE PROGRAMMING CONSULTANTS SOUGHT


Semmle and LogicBlox are creating a platform for declarative
programming in Datalog, a pure logic programming language.
Semmle is based in Oxford, headed by Oege de Moor;
LogicBlox is based in Atlanta, headed by Molham Aref.

To configure our solution at a number of large corporate
clients in the retail, insurance and software quality
industries, we urgently require 10 full-time staff to 
act as consultants. These consultants will work with 
clients to write custom queries in Datalog, and to create 
user interfaces in a declarative framework.

This is a unique opportunity to change the way enterprise 
software is constructed, and to become part of the revolution
to adopt declarative programming in mainstream applications.

Semmle and LogicBlox offer a vibrant, intellectually
stimulating environment to work on exciting applications of
cutting-edge technology. 

Requirements:
You must be passionate about simplifying the construction
of complex software systems. A good undergraduate degree in 
computer science or related discipline is necessary. Substantial 
programming experience, and familarity with declarative 
programming (both functional and logic) is a must. Some 
travel will be required.

Starting date and renumeration:
The openings are available immediately. The renumeration depends
on experience and qualifications; it is especially competitive 
for recent graduates.

Further information:
To find out more about this opportunity, write to
Oege de Moor (o...@semmle.com) and Molham Aref 
(mol...@logicblox.com).

To apply:
Send a CV and the names of three referees (at least two of
whom must be able to comment on your programming abilities)
to recr...@semmle.com, by June 12.


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


[Haskell] (no subject)

2008-04-18 Thread Samir Genaim

   *
   * The Fourth International Workshop *
   * on*
   *   Programming Language Interference and Dependence*
   *   *
   * co-located with LOPSTR'08, PPDP'08 and SAS'08 *
   *   *
   *   15 July, 2008, Valencia, Spain  *
   *   *
   *  Venue: The Technical University of Valencia  *
   *   *
   *  2nd Call for Contributions   *
   *   *
   *   http://www.clip.dia.fi.upm.es/Conferences/PLID08*
   *   *
   *



Important Dates
===

Expression of interest  June 1,  2008
Extended abstract   June 15, 2008
WorkshopJuly 15, 2008



Workshop Description


Interference and  dependence are  closely related concepts,  the first
being the observable phenomenon  connected to the second. Interference
essentially means that behaviour of some parts of a dynamic system may
influence  the behaviour  of other  parts of  the  system.  Dependence
specifies the  relation between the  semantics of sub-components  of a
dynamic system.

Discovering,  measuring and controlling  interference is  essential in
many aspects  of modern computer  science, in particular  in security,
program analysis  and verification, debugging,  systems specification,
model  checking,   program  manipulation,  program   slicing,  reverse
engineering,   data   mining,   distributed  databases   and   systems
biology. Doing  these things  requires theories, models  and semantics
for interference and  dependence, as well as algorithms  and tools for
analysis and reasoning about interference and dependence.

The aim of this workshop is to gather together the community of people
that study  dependence and interference  from the different  points of
view in order  to generate new possible research  directions.  PLID is
devoted to bridging all these communities and assisting work towards a
common goal, providing the appropriate environment for reasoning about
the state of the art in interference and dependence.

Topics of interest include but are not limited to:

 * Security against unwanted interference and dependence
 * Models and theories of program interference
 * Algorithms for reducing or removing interference or for
   ameliorating its effects
 * Theory and foundations of program slicing and related dependence
   analyses
 * Resource declassification theories
 * Semantics of dependence and interference
 * Analyses based on interference and dependence
 * Abstract interpretation for dependence and interference
 * Dependence and interference in specifications
 * Slicing models and specifications
 * Interaction between dependence and refinement



Keynote Speaker
===

Gilles Barthe, IMDEA-software (Madrid, Spain)



Submission
==

The workshop welcomes contributions of  on-going work and ideas in the
field  of dependence and  interference.  Those  who are  interested in
having a  talk at the  workshop and/or discussing issues  related with
these  subjects are  invited to  send your  expression of  interest to
Samir Genaim (samir at clip.dia.fi.upm.es) before June 1st, 2008.

There will  be no  formal publication of  papers.  A web-page  will be
organised  collecting  all   the  workshop  contributions.   Submitted
extended abstracts should be of at most 10 pages LNCS-style and should
be sent before June 15th 2008.



Program Committee
=

David Clark Kings College, London, UK
Sebastian Danicic   University of London, UK
Samir Genaim (chair)Technical University of Madrid, Spain
Roberto Giacobazzi  University of Verona, Italy
Daniele Gorla   University of Roma, Italy
Sebastian Hunt  City University, London, UK
Herbert WiklickyImperial College, London, UK
Steve Zdancewic University of Pennsylvania, USA



Local organization chair


Christophe Joubert  Technical University of Valencia / DSIC
___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


Re: [Haskell] (no subject)

2007-09-05 Thread Chris Mears
"Tomi Owens" <[EMAIL PROTECTED]> writes:

> Hi there. I'm a teacher of Maths and am working my way through the
> Euler Project problems for fun. I have mostly been using Basic, but
> have read up about Haskell and think it looks like a sensible way to
> solve many of the problems.

It certainly is.

> Prelude> let f (a,b) = a * floor (10/b)

>From the floor and the rest of your message, it looks like you want
truncating integer division here.  So, instead of floor and (/), use
div.

let f (a,b) = a * 10 `div` b

With that change the rest of your program should work.

The other replies explain why the interpreter couldn't figure out which
type to use.
___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


Re: [Haskell] (no subject)

2007-09-05 Thread Brent Yorgey
On 9/5/07, Tomi Owens <[EMAIL PROTECTED]> wrote:
>
> Hi there. I'm a teacher of Maths and am working my way through the Euler
> Project problems for fun. I have mostly been using Basic, but have read up
> about Haskell and think it looks like a sensible way to solve many of the
> problems.
>
>
I see others have already answered your immediate question; however, I
thought I'd throw in some general comments.  Project Euler is indeed a great
way to learn some Haskell, but you will certainly run into problems with the
numeric types (as you already have).  Haskell is very picky about numeric
types (for good reason!), and until you get used to it, it can be a big pain
and a source of some confusion.  I highly recommend that you read about type
classes, and you may also want to read something like
http://haskell.org/haskellwiki/Converting_numbers.  As someone else already
mentioned, asking questions in the #haskell IRC channel on
irc.freenode.netis also an excellent way to learn things and get past
error messages and
things like this which are probably simple, but you just can't figure out.

Hope this helps,
-Brent
___
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell


Re: [Haskell] (no subject)

2007-09-05 Thread Chaddaï Fouché
2007/9/5, Tomi Owens <[EMAIL PROTECTED]>:
>  So now I try to apply the function to the list:
>
>  Prelude> map (f) [(a2+b2,a)| a <- [1..4] , b<- [1..4], a2+b2<20, b<=a]
>
>  and I get this result:
>
>  :1:5:
> Ambiguous type variable `t' in the constraints:
>   `Integral t' arising from use of `f' at :1:5
>   `RealFrac t' arising from use of `f' at :1:5
> Probable fix: add a type signature that fixes these type variable(s)
>
>
>  I'm sorry, but I don't quite get how to set the type signature and how it
> will apply to my function...
>

It's because f need a real, not an integer as the second element of
its parameter (since it use (/) in (1/b)), and as it also needs an
integer as it's first, the type checker don't know what the type of a
should be (it can't be both an integer and a floating value at the
same time).
The easiest IMO is to keep a as an integer, but use "fromIntegral" to
convert it to a real in the second part of the tuple :

map f [( a^2+b^2, fromIntegral a) | a <- [1..4] , b<- [1..4], a^2+b^2<20, b<=a]

You would get more help and faster from an IRC channel like
[EMAIL PROTECTED] though.

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


Re: [Haskell] (no subject)

2007-09-05 Thread Brandon S. Allbery KF8NH


On Sep 5, 2007, at 21:10 , Tomi Owens wrote:


Prelude> let f (a,b) = a * floor (10/b)
Prelude> f(2,5)
4

This function works just as I want it to.

Now I try creating a list:

Prelude> [(a2+b2,a)| a <- [1..4] , b<- [1..4], a2+b2<20, b<=a]
[(2,1),(5,2),(8,2),(10,3),(13,3),(18,3),(17,4)]

and this works
So now I try to apply the function to the list:

Prelude> map (f) [(a2+b2,a)| a <- [1..4] , b<- [1..4], a2+b2<20, b<=a]

and I get this result:

:1:5:
   Ambiguous type variable `t' in the constraints:
 `Integral t' arising from use of `f' at :1:5
 `RealFrac t' arising from use of `f' at :1:5
   Probable fix: add a type signature that fixes these type variable 
(s)



I'm sorry, but I don't quite get how to set the type signature and  
how it will apply to my function...


The problem here is that (assuming the a\sup{2} etc. are actually  
a^2) the (^) operator expects and returns Integrals, but (/) requires  
a RealFrac.  Thus, the type of your list comprehension is inferred to  
be [(Integer,Integer)] but needs to be RealFrac a => [(Integer,a)]  
(or, more simply, [(Integer,Double)].


  Prelude> let f (a,b) = a * floor (10/b)
  Prelude> :t f
  f :: (RealFrac t1, Integral t) => (t, t1) -> t
  Prelude> let v :: [(Integer,Double)]; v = [(a^2 + b^2,fromIntegral  
a) | a <- [1..4], b <- [1..4], a^2 + b^2 < 20, b <= a]

  Prelude> :t v
  v :: [(Integer, Double)]
  Prelude> map f v
  [20,25,40,30,433329,54,425000]

--
brandon s. allbery [solaris,freebsd,perl,pugs,haskell] [EMAIL PROTECTED]
system administrator [openafs,heimdal,too many hats] [EMAIL PROTECTED]
electrical and computer engineering, carnegie mellon universityKF8NH


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


[Haskell] (no subject)

2007-09-05 Thread Tomi Owens
Hi there. I'm a teacher of Maths and am working my way through the Euler
Project problems for fun. I have mostly been using Basic, but have read
up about Haskell and think it looks like a sensible way to solve many of
the problems.

OK, so I've downloaded GHCi and am trying to teach myself.

So far I have done this:

  ___ ___ _

 / _ \ /\  /\/ __(_)

/ /_\// /_/ / /  | |  GHC Interactive, version 6.6.1, for Haskell 98.

/ /_\\/ __  / /___| |  http://www.haskell.org/ghc/
\/\/ /_/\/|_|  Type :? for help.

Loading package base ... linking ... done.

Prelude> let f (a,b) = a * floor (10/b)

Prelude> f(2,5)

4

This function works just as I want it to.

Now I try creating a list:

Prelude> [(a2+b2,a)| a <- [1..4] , b<- [1..4], a2+b2<20, b<=a]

[(2,1),(5,2),(8,2),(10,3),(13,3),(18,3),(17,4)]

and this works

So now I try to apply the function to the list:

Prelude> map (f) [(a2+b2,a)| a <- [1..4] , b<- [1..4], a2+b2<20, b<=a]

and I get this result:

:1:5:

   Ambiguous type variable `t' in the constraints:

 `Integral t' arising from use of `f' at :1:5

 `RealFrac t' arising from use of `f' at :1:5

   Probable fix: add a type signature that fixes these type variable(s)

I'm sorry, but I don't quite get how to set the type signature and how
it will apply to my function...

Thanks,

Tomi


Department for Education, Sport and Culture E Mail
This message is for the named person's use only.  It may contain
confidential, proprietary or legally privileged information.  No
confidentiality or privilege is waived or lost by any mistransmission.
If you receive this message in error, please immediately delete it and all 
copies of it from your system, destroy any hard copies of it and notify the 
sender.  You must not, directly or indirectly, use, disclose, distribute, 
print, or copy any part of this message if you are not the intended recipient. 
The Department for Education, Sport and Culture and any of its establishments 
each reserve the right to monitor all e-mail communications through its 
networks. 



Any views expressed in this message are those of the individual sender, except 
where the message states otherwise and the sender is authorised to state them 
to be the views of any such entity. 



The Department for Education, Sport and Culture shall not be liable to the 
recipient or any third party for any loss or damage, however it appears, from 
this e-mail or its content. This includes loss or damage caused by viruses. It 
is the responsibility of the recipient to ensure that the opening of this 
message and its attachments shall not adversely affect systems or data.

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


[Haskell] (no subject)

2007-06-04 Thread Boyko Bantchev
Hi all!

The List module provides isPrefixOf, isSuffixOf, and --
since
recently -- isInfixOf, to check whether a list is a prefix,
a suffix, or an infix to another list.  Similarly, we have
inits and tails to obtain the prefixes and the suffixes of
a list, but there is no standard function that would return
a list of infixes.  For reasons of symmetry, perhaps it is
worth having a function in List returning, say, a list of
infixes of fixed length, such as e.g.,

infixes n as = map (take n) $ take (length as - n + 1)
(tails as)

Or, instead, there might be included a function that lists
all
infixes lexicographically  (map (tail . inits) . tails)
or perhaps otherwise, e.g. in the order of
increasing/decreasing
lengths.  (In the latter case, the result might be a list of
lists of same-length infixes each.)

What do you think?

Regards,
  Boyko

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


[Haskell] (no subject)

2006-12-11 Thread Ralf Lammel
[Foundations of AOP and AO languages have benefitted from the functional 
programming community for a while now. Haskellers, please have a look. Thanks! 
Ralf]

   Call For Papers
 FOAL: Foundations of Aspect-Oriented Languages 2007

A one day workshop affiliated with AOSD 2007 in Vancouver, British Columbia.

Submission Deadline: 23:00 GMT, 10 January 2007
Notification of Acceptance: 2 February 2007
Final Versions of Papers Due:   1 March 2007
Workshop:   13 March 2007

Themes and Goals

FOAL is a forum for research in foundations of aspect-oriented programming 
languages. Areas of interest include but are not limited to:

 * Semantics of aspect-oriented languages
 * Specification and verification for such languages
 * Type systems
 * Static analysis
 * Theory of testing
 * Theory of aspect composition
 * Theory of aspect translation (compilation) and rewriting

The workshop aims to foster work in foundations, including formal studies, 
promote the exchange of ideas, and encourage workers in the semantics and 
formal methods communities to do research in the area of aspect-oriented 
programming languages. All theoretical and foundational studies of this topic 
are welcome.

The goals of FOAL are to:

 * Make progress on the foundations of aspect-oriented programming
   languages.
 * Exchange ideas about semantics and formal methods for
   aspect-oriented programming languages.
 * Foster interest within the programming language theory and types
   communities in aspect-oriented programming languages.
 * Foster interest within the formal methods community in
   aspect-oriented programming and the problems of reasoning about
   aspect-oriented programs.

Workshop Format

The planned workshop format is primarily presentation of papers and group 
discussion. Talks will come in three categories: long (30 minutes plus 15 
minutes of discussion), regular (20 minutes plus 5 minutes of
discussion) and short (7 minutes plus 3 minutes of discussion). The short talks 
will allow for presentations of topics for which results are not yet available, 
perhaps for researchers who are seeking feedback on ideas or seek 
collaborations.

We also plan to ensure sufficient time for discussion of each presentation by 
limiting the overall number of talks.

Submissions

Invitation to the workshop will be based on papers selected by the program 
committee; those wishing to attend but not having a paper to submit should 
contact the organizers directly to see if there is sufficient space in the 
workshop.

FOAL solicits long, regular, and short papers on all areas of formal 
foundations of AOP languages. Submissions will be read by the program committee 
and designated reviewers. Papers will be selected for long, regular, and short 
presentation at the workshop based on their length, scientific merit, 
innovation, readability, and relevance. Papers previously published or already 
being reviewed by another conference are not eligible. Some papers may not be 
selected for presentation, and some may be selected for presentation in shorter 
talks than their paper length would otherwise command. We will limit the length 
of paper presentations and the number of papers presented to make sure that 
there is enough time for discussion.

Papers presented at the workshop will be included in a technical report (from 
Iowa State University). Authors will retain their own copyright to the papers. 
Publication of papers at other venues will thus remain possible. We will also 
investigate having a special issue of a journal for revisions of selected 
papers after the workshop.

Authors should note the following details:

 * Submissions are due no later than 23:00 GMT, 10 January 2007.
   (This is a firm deadline.)
 * Authors must indicate whether they wish to be considered for a
   long, regular, or short presentation.
 * Papers for long presentations must not exceed 10 pages in length;
   those for regular presentations must not exceed 7 pages in length,
   and those for short presentations must not exceed 3 pages in length.
 * Some papers may not be selected for presentation, and some may be
   selected for presentation in shorter talks than requested.
 * We encourage use of the ACM Conference format
    for
   submissions, as this will be required for accepted papers. You
   must add page numbers (which are not part of the standard format)
   to your submissions, to make adding comments easier.
 * Submissions are to be made to the following URL:
   http://continue.cs.brown.edu/servlets/foal07/continue.ss

We will notify the corresponding author of papers that are selected for 
presentation at the workshop by 2 February 2006. Early registration for AOSD 
(you must register for AOSD to attend the workshop) is 9 F

[Haskell] (no subject)

2005-05-18 Thread John C. Peterson
From: John Peterson <[EMAIL PROTECTED]>
To: haskell@haskell.org
Subject: Blown disk on haskell.org

Sorry for the downtime - haskell.org lost a disk today.  Everything is
back to normal (I hope).  If you have software installed there, we
upgraded to a new OS.  Hope this doesn't break anything!

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


[Haskell] (no subject)

2005-03-01 Thread Duncan Coutts
Gtk2Hs - A Haskell GUI library based on the Gtk+ GUI Toolkit.
 
Version 0.9.7.1 is now available from:
 
http://gtk2hs.sourceforge.net/

This release is only needed for Windows users. If you have version 0.9.7
working there is no need to upgrade.

Source and binary packages are available for Windows.
There are binary packages for Gtk+ 2.4.x and 2.6.x. The binary packages require
GHC 6.2.2.

You may wish to use Gtk+ 2.6 since it follows the Windows native look
and themes whereas Gtk+ 2.4 did not.

Installation on Windows is fairly straightforward. There is an installer
for Gtk+ on Windows and installing Gtk2Hs just involves unzipping and
running a batch file. Instructions are here:
http://gtk2hs.sourceforge.net/archives/2005/02/17/installing-on-windows/

For future Gtk2Hs releases we hope to provide an MSI installer to make
it even easier.

Changes since 0.9.7: 
  * build fixes for Windows
  * almost all modules now carry LGPL 2.1 license
  * a couple of extra functions are now bound

Other changes and news since the last release announcement:
  * there is an introductory article by Kenneth Hoste in the first
issue of The Monad.Reader:
  http://www.haskell.org/hawiki/TheMonadReader_2fIssueOne
  * a complete website redesign
  * many new screenshots: 
  http://sourceforge.net/project/screenshots.php?group_id=49207
  * packages of version 0.9.7 are available for Gentoo and FreeBSD

Please report all problems to [EMAIL PROTECTED] .
Contributions and feedback are also most welcome.

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


[Haskell] (no subject)

2005-02-09 Thread Javier García-Vivó Albors
Hi.
I'm trying to use the hs-plugins with ghci for Windows. Do you know how to do
it? I've tried several ways to install the and I haven't managed it. Thanks for
your help


This message was sent using IMP, the Internet Messaging Program.

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


Re: Module Initialisation? (was Re: [Haskell] (no subject))

2004-10-17 Thread Remi Turk
On Sun, Oct 17, 2004 at 07:20:28PM +0100, Ben Rudiak-Gould wrote:
> Remi Turk wrote:
> 
> > On Sun, Oct 17, 2004 at 05:11:02PM +0100, Ben Rudiak-Gould wrote:
> >
> >> I don't think there's any problem with
> >>
> >> type MVar = STMVar RealWorld
> >>
> >> newMVar :: a -> ST s (STMVar s a)
> >> withMVar :: STMVar s a -> (a -> ST s b) -> ST s b ...
> >>
> >> For that matter it seems like we could (should?) have
> >>
> >> forkST :: ST s () -> ST s (STThreadId s) forkIO = forkST
> >
> > But what semantics would they have? It cannot be the normal
> > concurrency as AFAIK runST is supposed to be deterministic.
> 
> Okay, so I'm being silly. Forget forkST then. But STMVar is still okay, 
> isn't it? The only MVars you could use in a state thread would be those 

I won't ever remind you of your being silly if you tell me about
the current state of your implicit-(parameter|return)-IO story ;)

STMVar does indeed still seem okay, except that I have no idea if
it actually makes any sense outside of IO.
(That is: newSTMVar x = unsafeIOToST (newMVar x) seems a bit
pointless and might be the actual way it needs to be implemented.
Has a vague feeling of being silly too now...)

By the way, I'm still in favour of `type IO a = ST RealWorld a':
It just seems wrong to either "let's just make it IO" or having
to sprinkle stToIO's around...

> you'd created in the same state thread, and without forkST they can't be 
> accessed in a nondeterministic way. Their presence is pointless, true, 
> but at least not unsafe.
> 
> It does seem a bit of a hack, but it still seems preferable to the other 
> alternatives currently on the table (namely unrestricted IO, a new 
> SafeIO, or unsafeIOToST.newMVar).
> 
> -- Ben

I'm waiting to be convinced either way ;)

Groetjes,
Remi

-- 
Nobody can be exactly like me. Even I have trouble doing it.
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


Re: Module Initialisation? (was Re: [Haskell] (no subject))

2004-10-17 Thread Ben Rudiak-Gould
Remi Turk wrote:
 On Sun, Oct 17, 2004 at 05:11:02PM +0100, Ben Rudiak-Gould wrote:
> I don't think there's any problem with
>
> type MVar = STMVar RealWorld
>
> newMVar :: a -> ST s (STMVar s a)
>> withMVar :: STMVar s a -> (a -> ST s b) -> ST s b ...
>
> For that matter it seems like we could (should?) have
>
> forkST :: ST s () -> ST s (STThreadId s) forkIO = forkST
 But what semantics would they have? It cannot be the normal
 concurrency as AFAIK runST is supposed to be deterministic.
Okay, so I'm being silly. Forget forkST then. But STMVar is still okay, 
isn't it? The only MVars you could use in a state thread would be those 
you'd created in the same state thread, and without forkST they can't be 
accessed in a nondeterministic way. Their presence is pointless, true, 
but at least not unsafe.

It does seem a bit of a hack, but it still seems preferable to the other 
alternatives currently on the table (namely unrestricted IO, a new 
SafeIO, or unsafeIOToST.newMVar).

-- Ben
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


Re: Module Initialisation? (was Re: [Haskell] (no subject))

2004-10-17 Thread Adrian Hey
On Sunday 17 Oct 2004 4:45 am, Wolfgang Thaller wrote:
> Adrian Hey wrote:
> > I'm puzzled about this idea of "module init action" in a declarative
> > language. Perhaps, if it's desirable to have some module initialisation
> > applied to a module if anything from it is used, the way to do this
> > would
> > be to have a reserved identifier specially for the purpose, like
> > "main", but at the module level. (Though this idea still seems a
> > bit strange to me).
>
> I don't see what's so strange about that.

What's strange about it IMHO is that at the moment the mere presence of
some definition in a module has no effect on actual programs. What counts
is whether or not defined thing is actually connected to the top
level main via some chain of explicit (I.E. named) dependency. This
is a property I would like to preserve. If I've understood the proposal
correctly, we'd lose this.

> At least, it's not any
> stranger than on-demand execution of IO actions in a pure functional
> language. And the toplevel "<-" is definitely a natural syntax for
> that.

True, but maybe this isn't neccessary, and even if it is, performing the
IO creation acts only if the created thing is actually used by a
program still seems the lesser of two evils to me. Of course "used"
could mean one of at least two different things..
 1- The compiler does some kind of dependency analysis and mops up
all referenced "things which must be created" into some kind of
pre-main action.
 2- Things which must be created are just compiled into some kind of
thunk which gets reduced (post-main), if and when it is actually
required by a running program.

Option 1 seems like quite a difficult thing to implement, but does
have the advantage that well defined semantics could be given to
arbitrary IO operations. It also has the disadvantage that a some
of these may be redundant (just because something is referenced
doesn't imply that is will actually be used in any given program
run).

Option 2 seems easier to implement and is nice and lazy, but
suffers from semantic ambiguity if arbitrary IO operations
are allowed (encouraged). But do we need to do this? I'm
begining think maybe we don't. The only reason it seems like
we do is because currently the only way of creating IORefs
and wotnot is via the IO monad, but this need not be so IMO.

> You're taking away a feature I want to use.

Sorry, I didn't mean to deprive you of something you would find useful.
But maybe it should be considered as a separate issue. It's not clear to
me how the compiler (or Joe programmer for that matter) would determine
and/or control which modules initialisation actions would be executed or
not, if there's no obvious "connection" to the top level main.

> 1) Initialising global IORefs is a good thing, no matter when it's
> actually done.

Yes, the hypothetical SafeIO monad allows you to do this (what you can't
do is read or write IORefs).

> 2) Being able to initialize things at program startup is a good thing,
> even if they're not explicitly referred to.

Well here is where we disagree I think. Not that I think this is a bad
thing as such, but the rules that determine which modules init actions
do or don't get invoked seem quite unclear to me if there's no requirement
that they are referenced from "main", directly or indirectly.

But maybe you could clarify what you have in mind?

Regards
--
Adrian Hey

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


Re: Module Initialisation? (was Re: [Haskell] (no subject))

2004-10-17 Thread Remi Turk
On Sun, Oct 17, 2004 at 05:11:02PM +0100, Ben Rudiak-Gould wrote:
> Remi Turk wrote:
> 
> >It definitely sounds nice, but is it actually possible to generalize e.g. 
> >MVar from "RealWorld" to "forall s" or are we always going to have to say:
> >
> >v <- unsafeIOToST (newMVar / newChan ... )
> > 
> >
> I hadn't thought of that, but I don't think there's any problem with
> 
>type MVar = STMVar RealWorld
> 
>newMVar  :: a -> ST s (STMVar s a)
>withMVar :: STMVar s a -> (a -> ST s b) -> ST s b
>...
> 
> For that matter it seems like we could (should?) have
> 
>forkST :: ST s () -> ST s (STThreadId s)
>forkIO = forkST
> 
> and so on.
> 
> -- Ben

But what semantics would they have?
It cannot be the normal concurrency as
AFAIK runST is supposed to be deterministic.

Groetjes,
Remi

-- 
Nobody can be exactly like me. Even I have trouble doing it.
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


Re: Module Initialisation? (was Re: [Haskell] (no subject))

2004-10-17 Thread Ben Rudiak-Gould
Remi Turk wrote:
It definitely sounds nice, but is it actually possible to generalize e.g. MVar from "RealWorld" 
to "forall s" or are we always going to have to say:
v <- unsafeIOToST (newMVar / newChan ... )
 

I hadn't thought of that, but I don't think there's any problem with
   type MVar = STMVar RealWorld
   newMVar  :: a -> ST s (STMVar s a)
   withMVar :: STMVar s a -> (a -> ST s b) -> ST s b
   ...
For that matter it seems like we could (should?) have
   forkST :: ST s () -> ST s (STThreadId s)
   forkIO = forkST
and so on.
-- Ben
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


Re: Module Initialisation? (was Re: [Haskell] (no subject))

2004-10-17 Thread Remi Turk
On Sun, Oct 17, 2004 at 01:53:22PM +0100, Ben Rudiak-Gould wrote:
[snip]
> >> Since a lot of the concerns expressed about this seem to centre
> >> around possible abuse of arbitrary IO operations in these top level
> >> constructions, maybe the problem could be addressed by insisting
> >> that a restricted monad was used, call it SafeIO say.
> 
> How about (forall s. ST s)?
> 
> We can require module init actions to have a type (forall s. ST s a) 
> instead of IO a. The compiler or RTS wraps the actions with stToIO 
> (which is a safe function) before executing them.
> 
> Benefits:
> 
>* It's just as easy as before to allocate global refs (and global 
> mutable arrays).
>* It's still possible to perform arbitrary IO actions (e.g. FFI 
> calls), but you have to wrap them in unsafeIOToST -- a good thing since 
> they really are unsafe. unsafeIOToST is much safer than unsafePerformIO 
> when used in this way.
> 
> Problems:
> 
>* stToIO (newSTRef 'x') doesn't have type IO (IORef Char).
> 
> This problem can be solved by adopting a reform that I've wanted for a 
> long time anyway: make IO, IORef, etc. aliases for (ST RealWorld), 
> (STRef RealWorld), etc. instead of completely different types. Then 
> stToIO is the identity function and we only need a single set of 
> state-thread functions instead of the parallel IO and ST equivalents 
> that we have currently.

It definitely sounds nice, but is it actually possible to
generalize e.g. MVar from "RealWorld" to "forall s" or are we
always going to have to say:

v <- unsafeIOToST (newMVar / newChan ... )

GHC's definition:
data MVar a = MVar (MVar# RealWorld a)


-- 
Nobody can be exactly like me. Even I have trouble doing it.
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


Re: Module Initialisation? (was Re: [Haskell] (no subject))

2004-10-17 Thread Ben Rudiak-Gould
Wolfgang Thaller wrote:
 Adrian Hey wrote:
> I'm puzzled about this idea of "module init action" in a
> declarative language. Perhaps, if it's desirable to have some
> module initialisation applied to a module if anything from it is
> used, the way to do this would be to have a reserved identifier
> specially for the purpose, like "main", but at the module level.
> (Though this idea still seems a bit strange to me).
 I don't see what's so strange about that.
I think his point is that some module init actions are run while others 
aren't, and it's not entirely clear how the distinction should be made. 
Currently it's possible to think of import declarations as simply 
bringing names into scope, but in the presence of module init actions 
import declarations have side effects.

In many languages you can refer to a function in another module by its 
fully qualified name even if that module hasn't been explicitly 
imported. This is a nice feature and I'd like to see it added to 
Haskell, but there's a tension between it and the module-init-action 
feature as currently specified: we would have to look through the whole 
program source for fully-qualified names in order to figure out which 
module actions will be run.

There would be no semantic problem if all module actions were always 
run, but this is impossible because it would have to include modules not 
installed on the user's machine, as well as modules that haven't even 
been written yet.

There is also no semantic problem if only "safe" actions like newIORef 
are used, but the current proposal provides no static guarantee of this.

In any case, I have an idea of how to solve this problem -- see below.
> Since a lot of the concerns expressed about this seem to centre
> around possible abuse of arbitrary IO operations in these top level
> constructions, maybe the problem could be addressed by insisting
> that a restricted monad was used, call it SafeIO say.
How about (forall s. ST s)?
We can require module init actions to have a type (forall s. ST s a) 
instead of IO a. The compiler or RTS wraps the actions with stToIO 
(which is a safe function) before executing them.

Benefits:
   * It's just as easy as before to allocate global refs (and global 
mutable arrays).
   * It's still possible to perform arbitrary IO actions (e.g. FFI 
calls), but you have to wrap them in unsafeIOToST -- a good thing since 
they really are unsafe. unsafeIOToST is much safer than unsafePerformIO 
when used in this way.

Problems:
   * stToIO (newSTRef 'x') doesn't have type IO (IORef Char).
This problem can be solved by adopting a reform that I've wanted for a 
long time anyway: make IO, IORef, etc. aliases for (ST RealWorld), 
(STRef RealWorld), etc. instead of completely different types. Then 
stToIO is the identity function and we only need a single set of 
state-thread functions instead of the parallel IO and ST equivalents 
that we have currently.

-- Ben
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


Re: Module Initialisation? (was Re: [Haskell] (no subject))

2004-10-16 Thread Wolfgang Thaller
Adrian Hey wrote:
I'm puzzled about this idea of "module init action" in a declarative
language. Perhaps, if it's desirable to have some module initialisation
applied to a module if anything from it is used, the way to do this 
would
be to have a reserved identifier specially for the purpose, like
"main", but at the module level. (Though this idea still seems a
bit strange to me).
I don't see what's so strange about that. At least, it's not any 
stranger than on-demand execution of IO actions in a pure functional 
language. And the toplevel "<-" is definitely a natural syntax for 
that.

I've interpreted this correctly this means that someAction will always
get executed, whether or not foo (or anything dependent on foo) is used
elsewhere? This seems like a bad thing to me.
It's a feature. I'd actually _want_ to use that one independently.
It may be harmless enough
if all it does is create a few IORefs which are then promptly garbage
collected, but in some situations it could involve quite complex
and expensive initialisation operations on foreign libraries
(for example).
Well if you want those IO operations to be lazily interleaved with the 
rest of the program (or not executed at all), you can use

valueToBeInitedLazily <- unsafeInterleaveIO $ do
blah
... which explicitly says what you are doing that might be slightly 
unsafe.

Since a lot of the concerns expressed about this seem to centre
around possible abuse of arbitrary IO operations in these top
level constructions, maybe the problem could be addressed by
insisting that a restricted monad was used, call it SafeIO say.
You're taking away a feature I want to use.
1) Initialising global IORefs is a good thing, no matter when it's 
actually done.
2) Being able to initialize things at program startup is a good thing, 
even if they're
not explicitly referred to.
3) Lazy, on-demand initialization of things is a good thing, if you 
know what you're doing.
4) Lazy, on-demand initialization of things (with potential side 
effects) is a bad thing, if you don't know what you're doing.

If we define toplevel IO bindings to be just like the unsafePerformIO 
hack, we get 1,3 and 4 (and 4 is actually a bad thing).
If we define toplevel IO bindings as mdo-style module initialisation, 
we get 1 and 2 directly, and 3 with an obvious use of 
unsafeInterleaveIO. We don't get 4, because obviously, when you use 
unsafeInterleaveIO, you're already claiming to know what you're doing.

Also note that if useless initialization of IORefs ever becomes a 
problem, we can still use lots of nasty hacks inside the compiler to 
optimize for those common functions. But I don't think we'll ever have 
to do this.

Cheers,
Wolfgang
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


Module Initialisation? (was Re: [Haskell] (no subject))

2004-10-14 Thread Adrian Hey
On Thursday 14 Oct 2004 10:18 am, Simon Marlow wrote:
> On 13 October 2004 16:17, Wolfgang Thaller wrote:
> > We could get away with "desugaring" them to some very "unsafe" non-IO-
> > bindings and having the "module init action" do something evil to
> > make the IO happen in the right order... should be possible to make
> > that look exactly like mdo from the outside.
> > We'll end up using the unsafePerformIO hack inside the implementation
> > again, so that people end up with two IORefs instead of one, but that
> > should be cheap enough:
> >
> > foo <- someAction
> >
> > ... could be transformed into ...
> >
> > foo_var = unsafePerformIO $ newIORef (throw NonTermination)
> > foo_action = someAction >>= writeIORef foo_var
> > foo = unsafePerformIO $ readIORef foo
> >
> > ... with the appropriate NOINLINEs.
> > The module init action would then make sure that foo_action gets
> > invoked.
>
> Yes, we could do that.  The fact that we're using NOCSE/NOINLINE
> internally still seems very fragile, though.  Oh well, perhaps we have
> to live with that if we don't want the pain of a special binding type
> throughout the compiler.

I'm puzzled about this idea of "module init action" in a declarative
language. Perhaps, if it's desirable to have some module initialisation
applied to a module if anything from it is used, the way to do this would
be to have a reserved identifier specially for the purpose, like
"main", but at the module level. (Though this idea still seems a
bit strange to me).

Also, I'm still not convinced that mdo is something I want emulated
anyway, (well not if it means doing something like the above). If
I've interpreted this correctly this means that someAction will always
get executed, whether or not foo (or anything dependent on foo) is used
elsewhere? This seems like a bad thing to me. It may be harmless enough
if all it does is create a few IORefs which are then promptly garbage
collected, but in some situations it could involve quite complex
and expensive initialisation operations on foreign libraries
(for example).

Since a lot of the concerns expressed about this seem to centre
around possible abuse of arbitrary IO operations in these top
level constructions, maybe the problem could be addressed by
insisting that a restricted monad was used, call it SafeIO say.

So we'd have something like this:
initIORef :: a -> SafeIO (IORef a)
initMVar  :: a -> SafeIO (MVar a)
initEmptyMVar :: SafeIO (MVar a)
liftSafeIO:: SafeIO a -> IO a

The idea being that from within SafeIO you couldn't read or modify IORefs
or do any other IO operation, all you could do is create new ones (or
incorporate existing ones into the data structure). Wouldn't this + mdo
suffice for the safe construction and initialisation of complex mutable data
structures (which is probably all people want most of the time)?

I guess you'd still need a get out occasionally, especially for FFI..
flakyLiftIO :: IO a -> SafeIO a
:-)

So at the top level you'd probably have..

myThing :: Thing
myThing <- safeNewThing

safeNewThing :: SafeIO Thing
safeNewThing = mdo ...

newThing :: IO Thing
newThing = liftSafeIO safeNewThing

Now that all seems so simple, I'm certain I must have overlooked
something :-(

Regards
--
Adrian Hey

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


RE: [Haskell] (no subject)

2004-10-14 Thread Simon Marlow
On 13 October 2004 16:17, Wolfgang Thaller wrote:

> We could get away with "desugaring" them to some very "unsafe" non-IO-
> bindings and having the "module init action" do something evil to
> make the IO happen in the right order... should be possible to make
> that look exactly like mdo from the outside.
> We'll end up using the unsafePerformIO hack inside the implementation
> again, so that people end up with two IORefs instead of one, but that
> should be cheap enough:
> 
> foo <- someAction
> 
> ... could be transformed into ...
> 
> foo_var = unsafePerformIO $ newIORef (throw NonTermination)
> foo_action = someAction >>= writeIORef foo_var
> foo = unsafePerformIO $ readIORef foo
> 
> ... with the appropriate NOINLINEs.
> The module init action would then make sure that foo_action gets
> invoked. 

Yes, we could do that.  The fact that we're using NOCSE/NOINLINE
internally still seems very fragile, though.  Oh well, perhaps we have
to live with that if we don't want the pain of a special binding type
throughout the compiler.

Cheers,
Simon

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] (no subject)

2004-10-13 Thread Wolfgang Thaller
> b) Some predetermined order, with semantics like mdo:

Hmm, I just realized that this also means we can execute moduke 
intialisation code that returns no result using:
_ <- do ...

I like that, I desperately need that for my Objective-C binding...
So the extension with the specified order actually allows one to do more 
things than the unsafePerformIO hack. I wouldn't care about specifying the 
order otherwise. If the default order is wrong, people can still use 
unsafeInterleaveIO.

> GHC already has an initialisation procedure for each module in the
> program which could be adapted to run the initialisation-time IO
> actions, with a little effort.

Hmm, doesn't the initialisation procedure run before the Stg machine is 
properly set up? I guess all the GHC init code could do is to register IO 
actions to be executed later (but before main is run). We probably want 
all the GHC module init procedures to be run before we execute any IO 
actions.

> I'm more worried about what other changes we have to make to the
> compiler: if we can avoid having to flag top-level bindings as
> monadic/non-monadic all the way through the compiler, then we could
> avoid a pervasive change to the compiler.  At the moment I can't see an 
> obvious way to do that.

We could get away with "desugaring" them to some very "unsafe" non-IO-
bindings and having the "module init action" do something evil to make the 
IO happen in the right order... should be possible to make that look 
exactly like mdo from the outside.
We'll end up using the unsafePerformIO hack inside the implementation 
again, so that people end up with two IORefs instead of one, but that 
should be cheap enough:

foo <- someAction

... could be transformed into ...

foo_var = unsafePerformIO $ newIORef (throw NonTermination)
foo_action = someAction >>= writeIORef foo_var
foo = unsafePerformIO $ readIORef foo

... with the appropriate NOINLINEs.
The module init action would then make sure that foo_action gets invoked.

So we'd only need to annotate modules with a list of init actions and 
extend the RTS appropriately for that...


Cheers,

Wolfgang

-- 
GMX ProMail mit bestem Virenschutz http://www.gmx.net/de/go/mail
+++ Empfehlung der Redaktion +++ Internet Professionell 10/04 +++

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


[Haskell] (no subject)

2004-06-22 Thread Alfonso








Hello dear haskellers:

 

My name is Alfonso Meléndez I work in Computer
Science in  a Colombian
 University.

Right now, I am developing an application for
discrete mathematics and I need to comunicate Java with Haskell, 

more precisely  I use Java for the interface of the
application and from here  I need to call several  Haskell Functions.

In Haskell.org  there are two libraries  ( Java Bridge
and JNI) that communicate Haskell with Java (but not viceversa).

 

Is there and easy and direct way to do this job?

 

Thank you!!!

 

 

 

Alfonso  Meléndez

Dirección de Proyectos

Facultad de Ingeniería de Sistemas

Escuela Col de Ingeniería

Tels: 676266,6763888, Ext: 224,  371 

Cel:  (315) 8938216

 





This e-mail message has been scanned for Viruses and Content and cleared by 
NetIQ MailMarshal 




___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


(no subject)

2003-05-28 Thread Stefano Bistarelli

===
  5th International Workshop on
 Soft Constraints
  Held in conjunction with
   9th International Conference on
   Principles and Practice of Constraint Programming, CP2003
  Actons Hotel, Kinsale, County Cork, Ireland.
   29 September - 3 October, 2003

  http://www.sci.unich.it/~bista/organizing/soft-2003/



  Call for Paper




Soft-constraints augment the classical CSP framework by allowing the
user to express preferences among potential solutions. Given a
well-defined mechanism to express and combine preferences, the goal is
to find the "best" solution. Therefore, solving soft constraints becomes
an optimization task, harder than the satisfaction tasks in classical
CSP. Sometimes optimization becomes multi-objective, making the solving
process even more complex. The interest of the community on soft
constraints has increased in the last years. Several theoretical
frameworks have been developed to allow soft constraints in problem
modeling. For these frameworks, new algorithms have been built. The main
motivation for this line of research is the existence of many real
problems involving preferences among potential solutions, which demand
an effective solving method.

Also in this edition, we want to enlarge the workshop scope by
encouraging submissions from domains where soft constraints have
specific semantics such as propositional logic formulae (i.e. MAX-SAT),
probability distributions (i.e. probabilistic reasoning) or uncertainty.


Workshop topics include (but are not limited to):

 1. theoretical frameworks for soft constraints
 2. problem modeling with soft constraints
 3. solving algorithms for soft constraints
 4. interlacing satisfaction and optimization techniques
 5. multi-objective optimization and soft constraints
 6. constraint languages including soft constraints
 7. combining/integrating soft constraint frameworks and algorithms into
the Constraint Programming framework
 8. comparative studies
 9. real-life applications


Delivery & Submissions
This workshop is intended to build on the experience and success of the
CP99, CP2000, CP2001 and CP2002 workshops on the same subject, and its aim
is to provide a forum where researchers currently working in this area can
discuss their most recent ideas and developments and think together about
the most promising new directions.
Therefore we encourage the presentation of work in progress or on
specialized aspects of soft constraints. Papers that bridge the gap between
theory and practice are especially welcome.

Prospective attendees can Submit a paper, which can be up to 15 pages in
length.

We encourage authors to submit papers electronically in postscript or pdf
format. Papers should be formatted using the Lecture Notes in Computer
Science (LNCS) style.

Please send your submissions by email to [EMAIL PROTECTED] using the
subject line Soft-2003 Workshop Submission.


Important Dates
The proposed schedule of important dates for the workshop is as follows:

Paper Submission deadline June 24th
Notification of acceptance July 24th
Camera-ready version deadline August 14th
Workshop Date September 29th


Workshop Organizers:

   Stefano Bistarelli
   Istituto per l'Informatica e la Telematica, C.N.R., Pisa, Italy
   [EMAIL PROTECTED]
   Dipartimento di Scienze, Universita' degli Studi "G. D'Annunzio",
Pescara, Italy
   [EMAIL PROTECTED]

   Javier Larrosa
   Universitat Politècnica de Catalunya, Barcelona, Spain
   [EMAIL PROTECTED]

   Thomas Schiex
   Institut National de La Recherche Agronomique, Castanet Tolosan Cedex -
France
   [EMAIL PROTECTED]


Program Committee:

Fadi Aloul (Electrical Engineering & Computer Science University of Michigan
- Ann Arbor, USA)
Hélène Fargier (IRIT, Université Paul Sabatier, France)
Thom Fruehwirth (University of Ulm, Germany)
Carmen Gervet (IC-Parc, Imperial College, UK)
Ulrich Junker (ILOG, France)
Jimmy H. M. Lee (The Chinese University of Hong Kong, Hong Kong)
Pedro Meseguer (IIIA-CSIC, Bellaterra, Spain)
Barry O'Sullivan (University College Cork, Ireland)
Francesca Rossi (University of Padova, Italy)

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


(no subject)

2003-03-05 Thread b . i . mills
To <[EMAIL PROTECTED]>
Subject: Re: int to float problem
In-Reply-To: <[EMAIL PROTECTED]>

Yo,

> Haskell Integers are not a proper subset of Haskell Floats or
> Doubles.  Haskell does not support real numbers.

I'd just like to add ...

Real numbers are not implementable on a digital computer. This
is not a "practical" matter of resources, or a design decision
in by the language designer, but the fact that any data type 
each of whose elements are represented in a finite number of 
bytes can't have more than a countable number of data elements. 
Integers, and Rationals can be represented. Even the so-called 
computable-real-numbers, (still countable) don't work as well 
as you would want, since things such as "is this number bigger 
than that one" can't always be computed.

Add to this the fact that the generic float type does not 
satisfy algebraic constraints such as associativity, and so 
can't, from the axiomatic point of view, be considered to be 
a representation of rational numbers (let alone reals).

Basically, from the algebraic perspective, the float type is
a messy fudge, and does not fit in nicely with any of the 
"pure" types. In general the containment 

Complex ---> Real --> Rational ---> integer ---> whatever.

Does not apply in this simple way to numerical types on a
computer, because data types are often constructed on the
basis of not just what they represent, but also how they
represent these things. The computable world (constructive
mathematics) is a lot more complicated and open ended than
the existential approach.

Regards,

Bruce.

ps: I've made previous comments about this sort of thing:

``Algebraic Conversions'', A mathematical paper introducing
a generalisation of homomorphism of universal algebras.
In Research Letters in the Information and Mathematical
Sciences Vol 2, May 2001. (pub by Massey University New Zealand).
see also, \verb|http://www.massey.ac.nz/~wwiims/rlims|

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


(no subject)

2002-09-07 Thread John Hatcliff

 [ Apologies for multiple copies received ]


   CALL FOR PAPERS
 

  Ninth International Conference on
TOOLS AND ALGORITHMS
FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS
 (TACAS 2003)

7-11 April 2003   Warsaw, Poland


   URL:  http://www.mimuw.edu.pl/etaps03


 A member conference of the
   European Joint Conferences on Theory and Practice of Software
   (ETAPS 2003)
 

CONFERENCE DESCRIPTION

TACAS is a forum for researchers, developers and users interested in
rigorously based tools for the construction and analysis of
systems. The conference serves to bridge the gaps between different
communities --- including but not limited to those devoted to formal
methods, software and hardware verification, static analysis,
programming languages, software engineering, real-time systems, and
communications protocols --- that have traditionally had little
interaction but share common interests in, and techniques for, tool
development. In particular, by providing a venue for the discussion of
common problems, heuristics, algorithms, data structures and
methodologies, TACAS aims to support researchers in their quest to
improve the utility, reliability, flexibility and efficiency of tools
for building systems.

Tool descriptions and case studies with a conceptual message and
theoretical papers with a clear link to tool construction are all
encouraged. The specific topics covered by the conference include, but
are not limited to, the following.

   Specification and verification techniques 
   Theorem-proving and model-checking
   System construction and transformation techniques
   Static and run-time analysis 
   Compositional and refinement-based methodologies 
   Testing and test-case generation 
   Analytical techniques for real-time, hybrid and safety-critical systems 
   Tool environments and tool architectures 
   Applications and case studies 


As TACAS addresses a heterogeneous audience, potential authors are
strongly encouraged to write about their ideas in general and
jargon-independent, rather than application- and domain-specific,
terms.

Authors reporting on tools or case studies are strongly encouraged
to indicate how their experimental results can be reproduced and
confirmed independently.

TACAS is a member of the European Joint Conference on Theory and
Practice of Software (ETAPS), which is the primary European forum
for academic and industrial researchers working on topics related to 
Software Science. After ETAPS 98 in Lisbon, ETAPS 99 in Amsterdam,
ETAPS 2000 in Berlin, ETAPS 2001 in Genova, and ETAPS 2002 in Grenoble,
ETAPS 2003 is the sixth joint conference in this series.


SUBMISSION GUIDELINES

As with other ETAPS conferences, TACAS accepts two types of
contributions:

 - Research papers (up to 16 pages) cover one or more of the topics
above, including tool development and case studies from a perspective 
of scientific research. Research papers are evaluated by the TACAS Program 
Committee under the direction of the Conference Co-chairs.  
See http:///www.cis.ksu.edu/tacas03 for details.

 - Tool demonstration papers (up to 4 pages) present tools based on
aforementioned technologies (e.g., theorem-proving, model-checking, static
analysis, or other formal methods) or fall into the above application areas
(e.g., system construction and transformation, testing, analysis of real-time
and hybrid systems, etc.). Tool demonstration papers are evaluated by the
TACAS Tool Chair with the help of the Program Committee.
See http://www.inrialpes.fr/vasy/tacas03/tool.html for details.

Both types of contributions will appear in the proceedings and be allocated
thirty-minute slots during the conference.

In brief, submitted papers must 
- be in English
- present original research which is unpublished and not submitted elsewhere
- use the Springer-Verlag LNCS style (see 
  http://www.springer.de/comp/lncs/Authors.html)
- be submitted electronically in Postscript/PDF format

Submissions deviating from these instructions may be rejected without review.
Any question regarding this policy should be directed to the Conference 
Co-chairs prior to submission.

IMPORTANT DATES

TACAS is a member conference of ETAPS.  ETAPS 2003 conferences and other 
satellite events will be held April 5-13, 2003. 

As a part of ETAPS, TACAS adheres to ETAPS submission and notification
deadlines.

October 18, 2002Submission deadline
December 13, 2002   Notification of authors
January 17, 2003Final versions due
April 7-11, 2003Conference dates


INVITED SPEAKER

Peter Lee
School of Computer Science
Carnegie Mellon University, USA

PROGRAM COMMITTEE

Rajeev Alur
University of Pennsylvania (USA)

Albert Benveniste
IRISA Rennes (France)

Ahmed Bouajjani
  

(no subject)

2002-07-25 Thread MDjekic




 


(no subject)

2002-06-09 Thread JOSEPH EDWARD

STRICTLY CONFIDENTIAL & URGENT.

I am Mr, Joseph Edward a native of Cape Town in
South Africa and I am an Executive Accountant with
the
South Africa MINISTRY OF MINERAL RESOURCES AND ENERGY
First and foremost, I apologized using this medium to
reach you for a transaction/business of this
magnitude, but this is due to
Confidentiality and prompt access reposed on this
medium.

I have decided to seek a confidential
co-operation with you in the execution of the deal
described Hereunder for the benefit of all parties
and
hope you will keep it as a top secret because of the
nature of this transaction.

Within the Department of Mining & Natural Resources
where I work as an Executive Accountant and with the
cooperation of four other top officials, we have in
our possession as overdue payment bills totaling
Twenty! - One Million, Five Hundred Thousand U. S.
Dollars ($21,500,000.) which we want to transfer
abroad with the assistance and cooperation of a
foreign company/individual to receive the said fund
on
our behalf or a reliable foreign non-company account
to receive such funds. More so, we are handicapped in
the circumstances, as the South Africa Civil Service
Code of Conduct does not allow us to operate offshore
account hence your importance in the whole
transaction.
This amount $21.5m represents the balance of the
total
contract value executed on behalf of my Department by
a foreign contracting firm, which we the officials
over-invoiced deliberately. Though the actual
contract
cost have been paid to the original contractor,
leaving the balance in the Tune of the said amount
which we have in principles gotten approval to remit
by Key tested Telegraphic Transfer (K.T.T) to any
foreign bank account you will provide by fi! ling in an
application through the Justice Ministry here in
South Africa for the transfer of rights and privileges of
the former contractor to you.

I have the authority of my partners involved to
propose that should you be willing to assist us in
the
transaction, your share of the sum will be 25% of the
$21.5 million, 70% for us and 5% for taxation and
miscellaneous expenses. The business itself is 100%
safe, on your part provided you treat it with utmost
secrecy and confidentiality. Also your area of
specialization is not a hindrance to the successful
execution of this transaction. I have reposed my
confidence in you and hope that you will not
disappoint me. Endeavor to contact me immediately my
e-mail address whether or not you are
interested in this deal. If you are not, it will enable me scout
for another foreign partner to carry out this deal I want
to assure you that my partners and myself are in a
positio! n to make the payment of this claim possible
provided you can give us a very strong Assurance and
guarantee that our share will be secured and please
remember to treat this matter as very confidential
matter, because we will not comprehend with any form
of exposure as we are still in active Government
Service and remember once again that time is of the
essence in this business.kindly furnish us with your all your
contacts,telephone and fax number for more details.
I wait in anticipation of your fullest co-operation.

Yours faithfully,
JOSEPH EDWARD


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-06-07 Thread JOSEPH EDWARD


STRICTLY CONFIDENTIAL & URGENT.

I am Mr, Joseph Edward a native of Cape Town in
South Africa and I am an Executive Accountant with
the
South Africa MINISTRY OF MINERAL RESOURCES AND ENERGY
First and foremost, I apologized using this medium to
reach you for a transaction/business of this
magnitude, but this is due to
Confidentiality and prompt access reposed on this
medium.

I have decided to seek a confidential
co-operation with you in the execution of the deal
described Hereunder for the benefit of all parties
and
hope you will keep it as a top secret because of the
nature of this transaction.

Within the Department of Mining & Natural Resources
where I work as an Executive Accountant and with the
cooperation of four other top officials, we have in
our possession as overdue payment bills totaling
Twenty - One Million, Five Hundred Thousand U. S.
Dollars ($21,500,000.) which we want to transfer
abroad with the assistance and cooperation of a
foreign company/individual to receive the said fund
on
our behalf or a reliable foreign non-company account
to receive such funds. More so, we are handicapped in
the circumstances, as the South Africa Civil Service
Code of Conduct does not allow us to operate offshore
account hence your importance in the whole
transaction.
This amount $21.5m represents the balance of the
total
contract value executed on behalf of my Department by
a foreign contracting firm, which we the officials
over-invoiced deliberately. Though the actual
contract
cost have been paid to the original contractor,
leaving the balance in the Tune of the said amount
which we have in principles gotten approval to remit
by Key tested Telegraphic Transfer (K.T.T) to any
foreign bank account you will provide by filing in an
application through the Justice Ministry here in
South Africa for the transfer of rights and privileges of
the former contractor to you.

I have the authority of my partners involved to
propose that should you be willing to assist us in
the
transaction, your share of the sum will be 25% of the
$21.5 million, 70% for us and 5% for taxation and
miscellaneous expenses. The business itself is 100%
safe, on your part provided you treat it with utmost
secrecy and confidentiality. Also your area of
specialization is not a hindrance to the successful
execution of this transaction. I have reposed my
confidence in you and hope that you will not
disappoint me. Endeavor to contact me immediately my
e-mail address whether or not you are
interested in this deal. If you are not, it will enable me scout
for another foreign partner to carry out this deal I want
to assure you that my partners and myself are in a
position to make the payment of this claim possible
provided you can give us a very strong Assurance and
guarantee that our share will be secured and please
remember to treat this matter as very confidential
matter, because we will not comprehend with any form
of exposure as we are still in active Government
Service and remember once again that time is of the
essence in this business.please kindly provide your contacts addresses including your 
telephone and fax number for more details.
I wait in anticipation of your fullest co-operation.

Yours faithfully,
JOSEPH EDWARD


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-05-30 Thread S.J.Thompson


 Functional and Declarative Programming in Education (FDPE02)
 A one day workshop at PLI'02
 Monday 7 October 2002, Pittsburgh, PA, USA


 SECOND (AND FINAL) CALL FOR SUBMISSIONS

 *   *   Deadline June 25 2002   *   *

 Functional and declarative programming plays an increasingly
 important role in computing education at all levels. The aim of this
 workshop is to bring together educators and others who are interested in
 exchanging ideas on how to use a functional or declarative programming
 style in the classroom.

 Submissions are sought in a variety of forms, including:
   - Standard presentations (30 minutes)
   - Short talks or "tricks of the trade" presentations (10 minutes)
 The organisers would also welcome other sorts of submissions, such as software 
 demos, panels, very short talks and so on.

 Participants who choose to deliver a standard presentation are
 asked to submit a draft PostScript paper of five pages; presenters
 of short talks are asked to submit an abstract of 250 words. These
 should be submitted by June 25, 2002. 

 Michael Hanus, University of Kiel, Germany
 Shriram Krishnamurthi, Brown University, RI, USA
 Simon Thompson, University of Kent, UK

 More details at the FPDE02 website:

 FDPE02: http://www.cs.ukc.ac.uk/people/staff/sjt/fdpe02/description.html
 PLI'02: http://pli2002.cs.brown.edu/


Subject: Functional and Declarative Programming in Education (FDPE02)


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-05-21 Thread matush23

Hi.
Im a new haskell user, I already have gfl library, and I need instructions to manage 
it, and some examples, as prim, djikstra, kirchkoff.
Thanks


__
Your favorite stores, helpful shopping tools and great gift ideas. Experience the 
convenience of buying online with Shop@Netscape! http://shopnow.netscape.com/

Get your own FREE, personal Netscape Mail account today at http://webmail.netscape.com/

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-05-18 Thread Unknown
Title: Untitled Document





  


  


   

  
 
  

 
  

 
  


  

  

 
  

  ¾­¹ý´óÁ¿Ñо¿¹¤×÷£¬¼ÓÄôóÂê¿Æ˹ÆóÒµÓÐÏÞ¹«Ë¾ÍƳöÐÂÒ»´úÕÅÁ¦Òõ¾¥Ôö´óÆ÷¡£Ëü²»ÓÃÊÖÊõ£¬²»ÓøºÑ¹ÆÈʹÒõ¾¥³äѪ¡¢ÎÞÍâ·óÒ©£¬ÎÞ¸±×÷Ó㬰²È«£¬×ÔÈ»£¬Ê¹Óüòµ¥£¬ÊʺÏÈκÎÄêÁä¶ÎµÄÄÐ×ÓʹÓá£ËüµÄÔ­ÀíÊÇÔÚÒ»¶¨Á¬Ðø½×¶ÎÄÚ¶¨ÆÚ¸øÒõ¾¥Ê©ÒÔÕÅÁ¦£¬ÒÔ´ïµ½Òõ¾¥¿ìËÙÓÀ¾ÃÔö´óÄ¿µÄ¡£ 
ÕÅÁ¦Òõ¾¥Ôö´óÆ÷²úÆ·È«²¿ÓɼÓÄôó½ø¿Ú£¬²úÆ·ÅäÓÐÖÐÎÄ˵Ã÷Êé¡£
90ÌìÔö³¤5ÀåÃ× Ã¿¸öÄÐÐÔ¶¼Ï£ÍûÓÐÒ»¸ö˶´óµÄÒõ¾¥£¬ÒÔÕ¹ÏÖÄÐ×ÓººµÄÑô¸ÕÍþÃÍ£¬Ìá¸ßÐÔÉú»îµÄÖÊÁ¿¡£ 

  

  


   
 
  
  É̳ÇÊ×Ò³


  ÐÔ±£½¡Æ·

 
  ÏãË®ÊÎÆ·

 
  ±£½¡Æ·

 
  ÇéȤÄÚÒÂ

 
  Õí±ßÓÎÏ·

 
  ÄÐÐÔÔöÇ¿

  


   

  


   
 
  1999-2001°æȨËùÓÐ SINO555.COM

  
   
 
  
 
  °´ÕÕ¹ú¼Ê¹ßÀý£¬Ö»Òª±¾Óʼþ°üÀ¨¡°ÁªÏµÐÅÏ¢¡±ºÍ¡°ÒƳýÐÅÏ¢¡±£¬¾Í²»Ó¦±»¿´×öÀ¬»øÐżþ¡£Èç¹ûÄúÏëÎÒÃÇ´ÓÓʼþÁбíÖÐÒƳýÄúµÄÓʼþµØÖ·£¬ÇëÓÃÄúÏëÒƳýµÄÐÅÏäµã´Ë·¢ÐÅ£¬ÐżþÖ÷Ì⣺¡°Remove"£¬Èç¹û±¾Óʼþ¸øÄú´øÀ´Á˲»±ã£¬ÎÒÃÇÉî±íǸÒâ¡£

  

  
   
 
  
 
  Under Bill s.1618 Title III passed 
by the 105th U.S. Congress this mail cannot be considered Spam as 
long as we include contact information and a remove link for removal 
from our mailing list. To be removed from our mailing list reply with 
"remove" and include your "original email address/addresses" in the 
subject heading send to here. 
Include complete address/addresses and/or domain to be removed. We 
will immediately update it accordingly. We apologize for the inconvenience 
if any caused. 

  

  



___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell


(no subject)

2002-05-14 Thread LAURENT MPETI KABILA

REQUEST FOR URGENT BUSINESS ASSISTANCE
--
I stumbled into your contact by stroke of luck after a
long search for an honest and trust worthy person who
could handle issue with high confidentiality.
I was so dilghted when i got your contact and i decided
to contact you  and solicite for your kind assistance.
i hope you will let this issue to remain confidential even
if you are not interested because of my status.

I am Laurent Mpeti Kabila (Jnr) the second son of
Late President LAURENT DESIRE KABILA the immediate
Past president of the DEMOCRATIC REPUBLIC OF CONGO in
Africa who was murdered by his opposition through his personal
bodyguards in his bedroom on Tuesday 16th January, 2001.
I have the privilege of being mandated by my father,s
colleagues to seek your immediate and urgent co-operation
to receive into your bank account the sum of US $25m.
(twenty-five million Dollars) and some thousands carats
of Diamond. This money and treasures was lodged in a vault with a
security firm in Europe and South-Africa.

SOURCES OF DIAMONDS AND FUND
In August 2000, my father as a defence minister and
president has a meeting with his cabinet and armychief about the
defence budget for 2000 to 2001 which was US $700m.
so he directed one of his best friend. Frederic Kibasa Maliba
who was a minister of mines and a political party leader known
as the Union Sacree de,opposition radicale et ses allies (USORAL)
to buy arms with US $200m on 5th January 2001; for him to finalize
the arms deal,my father was murdered. f.K. Maliba (FKM) and I have
decided to keep the money with a foreigner after which he will use
it to contest for the political election. Inspite of all this we
have resolved to present you or your company for the firm to pay
it into your nominated account the above sum and diamonds.
This transaction should be finalized within seven (7) working
days and for your co-operation and partnership, we have unanimously
agreed that you will be entitled to 5.5% of the money when successfully
receive it in your account. The nature of your business is not relevant to
the successful execution of this transaction what we require is your
total co-operation and commitment to ensure 100%risk-free transaction at
both ends and to protect the persons involved in this transaction  strict
confidence and utmost secrecy is required even after the uccessful conclusion
of this transaction. If this proposal is acceptable to you, kindly provide me
with your personal telephone and fax through my E-mail box for immediate
commencement of the transaction. I count on your honour to keep my
secret, SECRET.

Looking forward for your urgent reply

Thanks.
Best Regards

MPETI L. KABILA (Jnr)






___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-05-05 Thread timeismonie


SPECIAL SITUATION ALERTS NEWSLETTER HOT PICK OF THE YEAR

Environmental Remediation Holding Corp.  
(d.b.a. Chrome Energy Corp) (OTCBB: ERHC)


RECENT PRICE: $.20

SELL TARGET: $1.25


INVESTORS: WE HAVE FOUND THE HIDDEN GEM: (OTCBB: ERHC) The IMF (International Monetary 
Fund) states in a worldwide published report [February 2002 IMF Country Report No. 
02/30 (page 10 of 82)] that ERHC's working interest in their offshore West African oil 
blocks will generate $1,446,800,000 in cumulative income over the next 22 years.



The IMF provides this evaluation to its 183 Member Nations while promoting 
international monetary exchange and fostering economic trade and growth with an 
arsenal of $272 Billion!


Dow Jones News: ERHC enters into joint-venture license agreements with Schlumberger 
LTD (NYSE: SLB, $53) and Baker Hughes, INC. (NYSE: BHI, $34) for seismic data on some 
of the richest offshore oil blocks in West Africa, where ERHC controls a huge working 
interest.

Investor Alert: ERHC's joint-venture with SCHLUMBERGER and BAKER HUGHES puts them in 
world class company with these leaders in oil exploration and reservoir imaging 
services. The involvement of SLB and BHI reinforces the MULTI-BILLION DOLLAR VALUE 
that has been placed in this offshore drilling haven. ERHC's goal is to maximize 
shareholder value from existing contractual rights, making them a significant player 
in this region. 
THE BIG MONEY ROLLS IN: The seismic data from this joint venture is being made 
available for further involvement by the LARGEST OIL COMPANIES IN THE WORLD over the 
next 2 weeks! Bidding wars have already developed between major oil companies such as: 
SHELL, CHEVRON/TEXACO, CONOCO, EXXON/MOBIL, PHILIPS, and MARATHON who are willing to 
pay Hundreds of Millions to drill in the oil blocks that border on ERHC's offshore 
zones.

STOCK SET TO EXPLODE ON EARNINGS BOOM: "UPSTREAM", the International Oil and Gas 
Newspaper considered to be the equivalent of the "Wall Street Journal" for the Oil 
Industry, has stated in a number of articles that EXXON/MOBIL believes that the oil 
blocks "housing ERHC's working interest" contain over 8 BILLION BARRELS OF RECOVERABLE 
OIL

TAKEOVERS RUNNING RAMPANT: Oil Companies of all sizes have been the target of 
significant mergers and takeovers during the past year. Many of these takeovers or 
buyouts have occurred due to the value of the acquired Company's offshore oil holdings 
in West Africa. One such example is Marathon Oil (NYSE: MRO, $28) paying $900 MILLION 
for the West African holdings of CMS Energy (NYSE: CMS, $23). We believe that ERHC 
and/or the Company's offshore oil interests could be the next target of a takeover. 
This is largely because of their exclusive right to participate in exploration and 
production along with OIL INDUSTRY GIANTS, as these oil blocks are adjacent to Billion 
Barrel producing regions!

Global Stock Participation - On March 27, 2002--Chrome Energy Corporation ("Chrome") 
(OTCBB:ERHC), announced that its common stock has been approved for listing on the 
Berlin Stock Exchange in Germany. The Berlin Stock Exchange is the leading stock 
exchange in Europe for dual listings with over 6,000 American companies listed. 
Chrome's common stock began trading on March 28, 2002



Special Situation Alerts' Newsletter offers valuable research for serious investors 
with our Hot Pick Of The Year - ERHC 

This is a commercial email only and if you want to be removed email 
[EMAIL PROTECTED] 
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-05-04 Thread mpeti laurent kabila

REQUEST FOR URGENT BUSINESS ASSISTANCE
--
I stumbled into your contact by stroke of luck after a
long search for an honest and trust worthy person who
could handle issue with high confidentiality.
I was so dilghted when i got your contact and i decided
to contact you  and solicite for your kind assistance.
i hope you will let this issue to remain confidential even
if you are not interested because of my status.

I am Laurent Mpeti Kabila (Jnr) the second son of
Late President LAURENT DESIRE KABILA the immediate
Past president of the DEMOCRATIC REPUBLIC OF CONGO in
Africa who was murdered by his opposition through his personal
bodyguards in his bedroom on Tuesday 16th January, 2001.
I have the privilege of being mandated by my father,s
colleagues to seek your immediate and urgent co-operation
to receive into your bank account the sum of US $25m.
(twenty-five million Dollars) and some thousands carats
of Diamond. This money and treasures was lodged in a vault with a
security firm in Europe and South-Africa.

SOURCES OF DIAMONDS AND FUND
In August 2000, my father as a defence minister and
president has a meeting with his cabinet and armychief about the
defence budget for 2000 to 2001 which was US $700m.
so he directed one of his best friend. Frederic Kibasa Maliba
who was a minister of mines and a political party leader known
as the Union Sacree de,opposition radicale et ses allies (USORAL)
to buy arms with US $200m on 5th January 2001; for him to finalize
the arms deal,my father was murdered. f.K. Maliba (FKM) and I have
decided to keep the money with a foreigner after which he will use
it to contest for the political election. Inspite of all this we
have resolved to present you or your company for the firm to pay
it into your nominated account the above sum and diamonds.
This transaction should be finalized within seven (7) working
days and for your co-operation and partnership, we have unanimously
agreed that you will be entitled to 5.5% of the money when successfully
receive it in your account. The nature of your business is not relevant to
the successful execution of this transaction what we require is your
total co-operation and commitment to ensure 100%risk-free transaction at
both ends and to protect the persons involved in this transaction  strict
confidence and utmost secrecy is required even after the uccessful conclusion
of this transaction. If this proposal is acceptable to you, kindly provide me
with your personal telephone and fax through my E-mail box for immediate
commencement of the transaction. I count on your honour to keep my
secret, SECRET.

Looking forward for your urgent reply

Thanks.
Best Regards

MPETI L. KABILA (Jnr)






___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-05-04 Thread laurent mpeti kabila

REQUEST FOR URGENT BUSINESS ASSISTANCE
--
I stumbled into your contact by stroke of luck after a
long search for an honest and trust worthy person who
could handle issue with high confidentiality.
I was so dilghted when i got your contact and i decided
to contact you  and solicite for your kind assistance.
i hope you will let this issue to remain confidential even
if you are not interested because of my status.

I am Laurent Mpeti Kabila (Jnr) the second son of
Late President LAURENT DESIRE KABILA the immediate
Past president of the DEMOCRATIC REPUBLIC OF CONGO in
Africa who was murdered by his opposition through his personal
bodyguards in his bedroom on Tuesday 16th January, 2001.
I have the privilege of being mandated by my father,s
colleagues to seek your immediate and urgent co-operation
to receive into your bank account the sum of US $25m.
(twenty-five million Dollars) and some thousands carats
of Diamond. This money and treasures was lodged in a vault with a
security firm in Europe and South-Africa.

SOURCES OF DIAMONDS AND FUND
In August 2000, my father as a defence minister and
president has a meeting with his cabinet and armychief about the
defence budget for 2000 to 2001 which was US $700m.
so he directed one of his best friend. Frederic Kibasa Maliba
who was a minister of mines and a political party leader known
as the Union Sacree de,opposition radicale et ses allies (USORAL)
to buy arms with US $200m on 5th January 2001; for him to finalize
the arms deal,my father was murdered. f.K. Maliba (FKM) and I have
decided to keep the money with a foreigner after which he will use
it to contest for the political election. Inspite of all this we
have resolved to present you or your company for the firm to pay
it into your nominated account the above sum and diamonds.
This transaction should be finalized within seven (7) working
days and for your co-operation and partnership, we have unanimously
agreed that you will be entitled to 5.5% of the money when successfully
receive it in your account. The nature of your business is not relevant to
the successful execution of this transaction what we require is your
total co-operation and commitment to ensure 100%risk-free transaction at
both ends and to protect the persons involved in this transaction  strict
confidence and utmost secrecy is required even after the uccessful conclusion
of this transaction. If this proposal is acceptable to you, kindly provide me
with your personal telephone and fax through my E-mail box for immediate
commencement of the transaction. I count on your honour to keep my
secret, SECRET.

Looking forward for your urgent reply

Thanks.
Best Regards

MPETI L. KABILA (Jnr)






___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-05-02 Thread laurent mpeti kabila



REQUEST FOR URGENT BUSINESS ASSISTANCE
--
Your contact was availed to me by the chamber of
commerce. It was given
to me because of my diplomatic status as I did not
disclose the actual
reasons for which I sought your contact. But I was
assured
That you are reputable and trustworthy if you will be
of assistance. I am Laurent Mpeti Kabila (Jnr) the
second son of
Late President LAURENT DESIRE KABILA the immediate
Past president of the DEMOCRATIC REPUBLIC OF CONGO in
Africa who was
murdered by his opposition through his personal
bodyguards in his bedroom
on Tuesday 16th January, 2001. I have the privilege of
being mandated
by my father colleagues to seek your immediate and
urgent co-operation
to receive into your bank account the sum of US $25m.
(twenty-five million Dollars) and some thousands carats
of Diamond. This
money and treasures was lodged in a vault with a
security firm in
Europe and South-Africa.

SOURCES OF DIAMONDS AND FUND
In August 2000, my father as a defence minister and
president has a
meeting with his cabinet and armychief about the
defence budget for 2000
to 2001 which was US $700m. so he directed one of his
best
friend. Frederic Kibasa Maliba who was a minister of
mines and a political party leader known as the Union
Sacree de, I
opposition radicale et ses allies (USORAL) to buy arms
with US $200m on
5th January 2001; for him to finalized the arms deal,
my father was
murdered. f.K. Maliba (FKM) and I have decided to keep
the money with a
foreigner after which he will use it to contest for
the political
election. Inspite of all this we have resolved to
present your or your company
for the firm to pay it into your nominated account the
above sum and
diamonds. This transaction should be finalized within
seven (7) working
days and for your co-operation and partnership, we
have unanimously
agreed that you will be entitled to 5.5% of the money
when successfully
receive it in your account. The nature of your
business is not relevant to
the successful execution of this transaction what we
require is your
total co-operation and commitment to ensure 100%
risk-free transaction at
both ends and to protect the persons involved in this
transactio!
n, strict confidence and utmost secrecy is required
even after the
successful conclusion of this transaction. If this
proposal is acceptable
to you, kindly provide me with your personal telephone
and fax through
my E-mail box for immediate commencement of the
 transaction. I count on your honour to keep my
secret, SECRET.

Looking forward for your urgent reply
Thanks.
Best Regards

MPETI L. KABILA (Jnr)













___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-04-29 Thread patrick mwananaga

CONFIDENTIAL
FROM
MR PATRICK  MWANANAGA.
PHONE+31-612-798-459.
REF: TRANSACTION REQEST.
DEAR PARTNER.
I am aware that it is amazing when a business proposal letter come From Some one that 
you Don"t know however, you address was to the consideration of your profile and i 
became aware of your credibility and co-operation in this transaction that would be 
profitable to both of us.
I am Mr Patrick Mwananaga. The son of Dr Nanapanga Mwananaga.Finance Minister of 
Democratic Republic of Congo(DRC),presently i am in the Netherlands on a senior Legal 
Management course. Recently I was contacted by my father over the issue am to 
explain.Dr Nanapanga Mwananaga was appointed the finance Minister in the government of 
president Laurent Desire Kabila of the Democratic Republic of congo(DRC),Being close 
friend and also old school mate of president Laurent Desire Kabila, make them have 
trust in each other.
Early Last year,a contract was awarded to a foreign company in congo minig corporation 
on Diamond mining.Before the contract was awarded to the foreign firm,a required 
amount was Agreed upon and was paid by the contrecting company to ensure that it is 
their favour. The money paid was (US$15. 500.000.00 Million United State Dollars) and 
was paid to the then president kabila through his finance minister Dr Nanapanga 
Mwananaga.There after the whole money was de-faced to avoid being traced by their 
political rivals,and was moved out to the Netherland through diplomatic channel. Now 
the box containing the money is with a financial deposit company in the Netherlands. 
Deposited as photographic materials with out the deposit company knowing the exact 
contents of the box, because the entire money was intentionally de-faced out mint 
stage. The code to the deposited box and the certificate of deposit and all the 
transfer documents are still with my father in congo,which will be send as soon as a 
trusted confident partner is found.Unfortunately president Laurent Kabila whom my 
father had his arrangement with was attacked in his home town, by one of his own body 
guard, but did not survive.now that his son has succeeds him,l will want us to use 
this opportunity to move the money out from the Netherlands to another safe place you 
will provide.lf you accept this proposal and ready to corporate with out directives 
you will be rewarded with 25% of the total sum,All areas for the smooth transaction is 
already being taken care off.Be rest assured that this business will attract no 
risk.For more clarification,you are to use the above telephone or e-mail.
Yours sincerely
Mr Patrick Mwananaga.



___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-04-29 Thread Ricky Kurniawan



 


(no subject)

2002-04-29 Thread laurent mpeti kabila

REQUEST FOR URGENT BUSINESS ASSISTANCE
--
Your contact was availed to me by the chamber of commerce. It was given
to me because of my diplomatic status as I did not disclose the actual
reasons for which I sought your contact. But I was assured
That you are reputable and trustworthy if you will be
of assistance. I am Laurent Mpeti Kabila (Jnr) the second son of
Late President LAURENT DESIRE KABILA the immediate
Past president of the DEMOCRATIC REPUBLIC OF CONGO in Africa who was
murdered by his opposition through his personal bodyguards in his bedroom
on Tuesday 16th January, 2001. I have the privilege of being mandated
by my father colleagues to seek your immediate and urgent co-operation
to receive into your bank account the sum of US $165m. (One hundred and
sixty-five million Dollars) and some thousands carats of Diamond. This
money and treasures was lodged in a vault with a security firm in
Europe and South-Africa.

SOURCES OF DIAMONDS AND FUND
In August 2000, my father as a defence minister and president has a
meeting with his cabinet and armychief about the defence budget for 2000
to 2001 which was US $700m. so he directed one of his best
friend. Frederic Kibasa Maliba who was a minister of
mines and a political party leader known as the Union Sacree de, I
opposition radicale et ses allies (USORAL) to buy arms with US $200m on
5th January 2001; for him to finalized the arms deal, my father was
murdered. f.K. Maliba (FKM) and I have decided to keep the money with a
foreigner after which he will use it to contest for the political
election. Inspite of all this we have resolved to present your or your company
for the firm to pay it into your nominated account the above sum and
diamonds. This transaction should be finalized within seven (7) working
days and for your co-operation and partnership, we have unanimously
agreed that you will be entitled to 5.5% of the money when successfully
receive it in your account. The nature of your business is not relevant to
the successful execution of this transaction what we require is your
total co-operation and commitment to ensure 100% risk-free transaction at
both ends and to protect the persons involved in this transactio!
n, strict confidence and utmost secrecy is required even after the
successful conclusion of this transaction. If this proposal is acceptable
to you, kindly provide me with your personal telephone and fax through
my E-mail box for immediate commencement of the
 transaction. I count on your honour to keep my secret, SECRET.

Looking forward for your urgent reply
Thanks.
Best Regards

MPETI L. KABILA (Jnr)




___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-02-10 Thread Patrick McDonnell
Title: Recently your company ran an advertisement which was listed in the
Administrative Assistant section of the newspaper classified








Manchester
Commons

P O Box 191

Gladwyne Pa
19035

1-610-525-2292

Fax
1-610-525-1209

 

 

 

Manchester
Commons performs Word/Data Processing work from our location overseas.

 

We
do these jobs for American companies and because of our location we are able to
complete this business for a very low price.

 

Modern
technology such as the Internet allows domestic companies to benefit from the
wage disparity that prevails between one section of the world and another.

 

Forty
percent of our business requires 12 to 24 hour turn around time.

 

We
charge $4.75 per hour and are versed in most Word/Data Processing demands.

 

Customers
send work to our production facilities through our website, ftp, e-mail, fax
machine or regular delivery services.

 

Our
English speaking typists are highly skilled in the use of the computer for
business purposes having graduated from English concentrated business schools,
and completed a twenty week computer course produced by an American University.

 

Most
of our undertakings are performed in the Microsoft formats but we are also
skilled in the other software disciplines if that is required.

 

We
do Internet Harvesting and other computer related tasks.

 

If you would be interested
in discussing a proposal such as described, please contact the undersigned.

 

Michael
McDonnell








Re: (no subject)

2002-02-07 Thread Zhanyong Wan

bracaman wrote:

> If you can use elem :: Eq a => a -> [a] -> Bool  function, you can do:
>
> f x l= or (map (elem x) l
>
> On Thursday 07 February 2002 20:17, you wrote:
> > hi,how do I define a function to test whether a number
> > is an element of a list of lists of numbers.
> >
> > elem :: Int -> [[Int]] -> Bool

I prefer

f x l = x `elem` concat l

- Zhanyong Wan

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: (no subject)

2002-02-07 Thread bracaman

If you can use elem :: Eq a => a -> [a] -> Bool  function, you can do:

f x l= or (map (elem x) l


On Thursday 07 February 2002 20:17, you wrote:
> hi,how do I define a function to test whether a number
> is an element of a list of lists of numbers.
>
> elem :: Int -> [[Int]] -> Bool
>
> __
> Do You Yahoo!?
> Send FREE Valentine eCards with Yahoo! Greetings!
> http://greetings.yahoo.com
> ___
> Haskell mailing list
> [EMAIL PROTECTED]
> http://www.haskell.org/mailman/listinfo/haskell
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



RE: (no subject)

2002-02-07 Thread Konst Sushenko

One way to do it would be to look at the prelude's elem function.
Otherwise, just scan each list until you find a match.

> -Original Message-
> From: Phil Haymen [mailto:[EMAIL PROTECTED]] 
> Sent: Thursday, February 07, 2002 12:18 PM
> To: [EMAIL PROTECTED]
> Subject: (no subject)
> 
> 
> hi,how do I define a function to test whether a number
> is an element of a list of lists of numbers.
> 
> elem :: Int -> [[Int]] -> Bool
> 
> __
> Do You Yahoo!?
> Send FREE Valentine eCards with Yahoo! Greetings!
> http://greetings.yahoo.com
> ___
> Haskell mailing list
> [EMAIL PROTECTED]
> http://www.haskell.org/mailman/listinfo/haskell
> 
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-02-07 Thread Phil Haymen

hi,how do I define a function to test whether a number
is an element of a list of lists of numbers.

elem :: Int -> [[Int]] -> Bool

__
Do You Yahoo!?
Send FREE Valentine eCards with Yahoo! Greetings!
http://greetings.yahoo.com
___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: (no subject)

2002-01-25 Thread John Hughes


> Those two constructs are not the same

> Compare

> newtype T1 = C1 Bool
>  dataT2 = C2 !Bool

As for as I can tell, the only difference in the Report 
between a newtype and a tuple type with a completely 
strict constructor is in the rules for pattern matching.  
So I am trying to find someone who can explain the reason 
for the difference in the rules!

Right.

case x of C2 b -> ...

forces x, of course: matching on a datatype is always strict, and a strictness
annotation on a component certainly shouldn't change that.

case x of b -> ...

does NOT force x: binding something to a variable is lazy.

case x of C1 b -> ...

does not force x either: the point of newtype is JUST to introduce a new type
isomorphic to, but different from, the old, and therefore the presence or
absence of the newtype constructor should have no effect at all on the
evaluation of the program. Otherwise you couldn't refactor a program to
distinguish between two types previously identified, without potentially
changing its semantics.

Of course this was a design choice, but you can't get away from the fact that
the "natural" matching on T1 is lazy, and on T2 is strict. Given that, I think
it's a cleaner design to have two constructs, than to make do with just data
and settle for "nearly" preserving semantics when making a new type
distinction.

John Hughes


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-01-24 Thread David Feuer

Martin Said:

> Those two constructs are not the same

> Compare

> newtype T1 = C1 Bool
>  dataT2 = C2 !Bool

> the difference is that the constructor C1 does not 
exist, so only the following values exist for T1:

> C1 True  (which is the represented as True)
> C1 False (which is the represented as False)
> C1 _|_   (which is represented as non-termination or 
error)

> however, for T2, another value exist, namely _|_.
> So, pattern matching on (T2 x) may fail it the value is 
> _|_. You are
> right that semantically newtype is the same as always 
matching lazily on the constructor.

The report says clearly that for a newtype like T1,
C1 _|_ = _|_
This is the same as for T2 and C2.
As for as I can tell, the only difference in the Report 
between a newtype and a tuple type with a completely 
strict constructor is in the rules for pattern matching.  
So I am trying to find someone who can explain the reason 
for the difference in the rules!  I really want to know, 
because I think/hope that it will help me understand 
certain things about how to write efficient code.

> The case for a tuple type (a,b,c) for instance, is 
different. Here there
> is a constructor, you can even type it by itself, it is 
> (,,), try ":t
> (,,)" in hugs or ghci.

I don't understand what you're talking about here Of 
course there's a constructor...

This message has been brought to you by the letter alpha and the number pi.


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-01-22 Thread Peter Stuckey

--- Blind-Carbon-Copy

To: pjs
Subject: 
Date: Mon, 21 Jan 2002 13:27:08 +1100
Message-ID: <[EMAIL PROTECTED]>
From: Peter Stuckey <[EMAIL PROTECTED]>


Apologies for Receiving Multiple Copies of this Message
- --

 CALL FOR PAPERS
 ICLP'02
Eighteenth International Conference on Logic Programming

  Copenhagen, Denmark
  July 29th - August 1, 2002

  http://floc02.diku.dk/ICLP/

ICLP'02, the Eighteenth International Conference on Logic
Programming will be be held this year as part of the 2002
Federated Logic Conference (http://floc02.diku.dk/) 
in conjunction with CADE, CAV, FME, LICS, RTA and TABLEAUX.

ICLP'02 is sponsored by IF/Prolog (http://www.ifcomputer.de).

   TOPICS

Since the first ICLP, held in Marseilles in 1982, ICLP has been
the premier international conference for presenting research
into logic programming.  Original papers are sought in all areas
of logic programming including (but not restricted to):

 TheoryImplementation

 Semantic Foundations  Compilation
 FormalismsMemory Management
 Non-monotonic Reasoning   Virtual Machines
 Knowledge Representation  Parallelism

Language IssuesEnvironments

 Constraints   Program Analysis
 Concurrency   Program Transformation
 Objects   Validation and Verification
 Coordination  Debugging 
 Mobilility
 Higher Order  Applications
 Types
 Modes Deductive Databases
 Programming TechniquesSoftware Engineering
   Natural Language
   Web tools
   Internet Agents
   Artificial Intelligence

Papers describing innovative applications of logic programming (in the
broadest sense, e.g. including constraint programming, non-monotonic
systems, etc.) are particularly sought.  We welcome submission in, but
not limited to, the following topics: surveys of an application area,
problems to which logic programming may be applied, experience in
applying logic programming, software engineering aspects of logic
programming and areas where further research is required to meet
industrial needs. There will be an award for the best application paper
sponsored by IF/Prolog.

 SUBMISSION

Papers must describe original, previously unpublished work, be written
and presented in English, not exceed 15 pages (A4 or letter format, up
to 5,000 words), and not be simultaneously submitted for publication
elsewhere.  The proceedings will be published by Springer Verlag in
the Lecture Notes in Computer Science series. Authors are strongly
encouraged to use LaTeX2e and the Springer llncs class file, available
at
   http://www.springer.de/comp/lncs/authors.html
 
Submission is Web-based. In order to submit a paper, authors should
upload it via the web at

   http://www.cs.mu.oz.au/~pjs/ICLP2002/
 
where more detailed instructions are given.  If submission through the
Web is not possible, five hard copies may be sent to the program
chair.  Authors intending to submit a paper are requested to submit an
abstract of their paper, through the same web interface, before
February 10, to help expedite the paper assignment process.

Submission Agenda:

   Submission of abstracts:February 10, 2002
   Submission of papers:   February 17, 2002
   Notification of acceptance: April 14, 2002
   Camera-ready papers due:May 14, 2002

Workshops:

The following workshops will be held in conjunction with ICLP'02.

August 1: CLIMA - Computational Logic In Multi-Agent Systems
July 28: CLPSE - (Constraint) Logic Programming and Software Engineering
July 31: LPE - Workshop on Logic Programming Environments
July 27-28: NLULP - Natural Language Understanding and Logic Programming
July 27: PCL - Paraconsistent Computational Logic
July 27: SAVE - Specification, Analysis and Validation for Emerging Technologies in 
Computational Logic
July 28: UNKB - Updating Non-Monotonic Knowledge Bases


Conference Location:

The conference will be held at the University of Copenhagen. 

Program Chair: Conference Chair:

Peter J. Stuckey   Henning Christiansen
Department of Computer Science Department of Computer Science
 and Software Engineering  Roskilde University
University of MelbournePO Box 260
3010, AUSTRALIADK-4000 Roskilde, DENMARK
Email: [EMAIL PROTECTED] Email: [EMAIL PROTECTED]
Tel: +613-8344-9155   

RE: (no subject)

2002-01-17 Thread Simon Peyton-Jones

Perfectly sensible suggestion, but too late for the H98 Report,
I'm afraid.  It's time to freeze it.

Simon

| -Original Message-
| From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] 
| Sent: 08 January 2002 10:02
| To: [EMAIL PROTECTED]
| Subject: (no subject)
| 
| 
| 
| Hello,
| 
| Is there any reason why the "gap" in a string literal is defined as
| 
|   gap -> \whitechar {whitechar}\
| 
| (in Section 2.6 of the report), rather than 
| 
| gap -> \whitespace\
| 
| ? The second, more liberal, definition of "gap" seems more 
| natural. Moreover, it would allow comments in the gaps, which 
| I would find useful. For example,
| 
| classHeader :: String
| classHeader = "\xca\xfe\xba\xbe\ -- magic number
|   \\x00\x03\ -- minor version
|   \\x00\x2d" -- major version
| 
| David
| --
| -
| Dr. David Wakeling, School of Engineering and Computer Science 
| University of Exeter, Exeter, Devon, EX4 4PT. 
| unofficial web page: http://www.dcs.ex.ac.uk/~david
| --
| -
| 
| ___
| Haskell mailing list
| [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
| 

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-01-08 Thread D . Wakeling


Hello,

Is there any reason why the "gap" in a string literal is
defined as

gap -> \whitechar {whitechar}\

(in Section 2.6 of the report), rather than 

gap -> \whitespace\

? The second, more liberal, definition of "gap" seems more
natural. Moreover, it would allow comments in the gaps, which 
I would find useful. For example,

classHeader :: String
classHeader = "\xca\xfe\xba\xbe\ -- magic number
  \\x00\x03\ -- minor version
  \\x00\x2d" -- major version

David
---
Dr. David Wakeling, School of Engineering and Computer Science 
University of Exeter, Exeter, Devon, EX4 4PT. 
unofficial web page: http://www.dcs.ex.ac.uk/~david
---

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2002-01-08 Thread sekar

Senior Researcher Position Available

We invite applications for a senior researcher position funded by a
DoD University Research Initiative (URI) award in the area of Critical
Infrastructure Protection and High Confidence Software (CIP/SW). This
award is prestigious, with only 20 URI awards having been made
nationwide. The position is available immediately for a period of upto
two years at an annual salary between $65,000 and $75,000.

The CIP/SW fellow will work with researchers from Stony Brook's Center
for Cybersecurity, and especially the faculty from Secure and Reliable
Systems Group and Formal Methods Group. The theme of our CIP/SW
project is Model-Carrying Code (MCC), a new approach for ensuring
security of mobile code. The MCC approach employs a combination of
compile-time verification and runtime monitoring/enforcement
techniques.

Candidates must have a PhD in Computer Science or a closely related
field. Masters Degree with exceptionally strong research experience
will also be considered. Preference will be given to candidates
specializing in one of the following areas: computer/network security,
programming language/compilers, formal methods, operating systems and
networks. Strong background in programming, and/or UNIX operating
systems would be preferred. Applications should be forwarded to
Prof. R. Sekar ([EMAIL PROTECTED])

Stony Brook is situated on Long Island, approximately 50 miles east of
New York City. The University is two miles south of the Long Island
Sound and 20 miles north of the Atlantic Ocean and picturesque Long
Island beaches. The famous beaches and mansions of The Hamptons are
about 40 miles to the southeast.

For additional information, please visit our laboratory web pages at
http://seclab.cs.sunysb.edu/seclab/onrsearch.html,
http://seclab.cs.sunysb.edu and http://www.cs.sunysb.edu/~lmc.

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2001-10-25 Thread Tobias . Haeberlein

After lots of unsuccessful searching and trying:
Does anyone know how to run Fran with the newest 
version of ghc?

-Tobi

-- 
GMX - Die Kommunikationsplattform im Internet.
http://www.gmx.net


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: (no subject)

2001-08-08 Thread Hannah Schroeter

Hello!

On Thu, Aug 09, 2001 at 12:10:12AM +1000, Vincent Tseng wrote:
> hi 
> does anyone know how to do this ?

> a function that will "randomly" takes elements from a list

> eg randomPick 3 ['a','b','c','d','e'] = ['d','a','a']

Your example suggests a type signature like:

randomPick :: Int -> [a] -> [a]

This isn't possible in that way. A pure Haskell function must
return the same thing on *every* invocation.

However, it were possible to either

* thread a random generator through randomPick, giving it the
  type signature:
  randomPick :: (RandomGen g) => g -> Int -> [a] -> ([a], g)
  or
* Make randomPick impure, using an IO type:
  randomPick :: Int -> [a] -> IO [a]

To do that, try one of the following:

randomPickIO :: Int -> [a] -> IO [a]
randomPickIO howMany l = randomPickIO' howMany l (length l)

randomPickIO' howMany l@(hd:tl) len =
| howMany == 0 = return []
| len < howMany = error "randomPickIO: too many items to pick, too few items 
present"
| len == howMany = return l
| otherwise = do
r <- randomRIO (0, len - howMany - 1)
if howMany > r then
do
rest <- randomPickIO' (howMany-1) tl (len - 1)
return (hd:rest)
else
randomPickIO' howMany tl (len - 1)

This might contain some small parse errors or such (untested), but
could be okay.

Kind regards,

Hannah.

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2001-08-08 Thread Vincent Tseng



hi 
does anyone know how to do this ?
 
a function that will "randomly" takes elements from a 
list
 
eg randomPick 3 ['a','b','c','d','e'] = 
['d','a','a']
 
 
thanks


(no subject)

2001-07-13 Thread Nelson



unsubscribe 
[EMAIL PROTECTED]


(no subject)

2001-06-24 Thread Manjula Iyer



 


RE: (no subject)

2001-05-28 Thread Simon Peyton-Jones

This looks like a good thread to move to [EMAIL PROTECTED]

http://haskell.org/mailinglist.html

Simon

| -Original Message-
| From: Rab Lee [mailto:[EMAIL PROTECTED]] 
| Sent: 26 May 2001 08:48
| To: [EMAIL PROTECTED]
| Subject: (no subject)
| 
| 
| hi, i'm having a bit more touble, can anyone help me
| or give me any hints on how to do this :
| "x 2 3 4" = ("x", [2, 3, 4])
| 
| __
| Do You Yahoo!?
| Yahoo! Auctions - buy the things you want at great prices 
http://auctions.yahoo.com/

___
Haskell mailing list
[EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: (no subject)

2001-05-27 Thread Ashley Yakeley

At 2001-05-26 00:47, Rab Lee wrote:

>hi, i'm having a bit more touble, can anyone help me
>or give me any hints on how to do this :
>"x 2 3 4" = ("x", [2, 3, 4])

Generally we don't solve homework for people. Unless they're studying 
under Prof. Karczmarczuk, of course.

-- 
Ashley Yakeley, Seattle WA


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2001-05-26 Thread Rab Lee

hi, i'm having a bit more touble, can anyone help me
or give me any hints on how to do this :
"x 2 3 4" = ("x", [2, 3, 4])

__
Do You Yahoo!?
Yahoo! Auctions - buy the things you want at great prices
http://auctions.yahoo.com/

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2001-05-26 Thread Rab Lee

hi, i'm having a bit more touble, can anyone help me
or give me any hints on how to do this :
"x 2 3 4" = ("x", [2, 3, 4])

__
Do You Yahoo!?
Yahoo! Auctions - buy the things you want at great prices
http://auctions.yahoo.com/

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: (no subject)

2001-01-07 Thread Manuel M. T. Chakravarty

[EMAIL PROTECTED] wrote,

> which is the function in haskell that allows to generate us an amount 
> of aleatory numbers 

I guess, you want to generate random numbers.  Check out

  http://haskell.org/onlinelibrary/random.html

Cheers,
Manuel

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2001-01-07 Thread kh0ndor

which is the function in haskell that allows to generate us an amount 
of aleatory numbers 
 I thank your help 

__
Mensagem enviada pelo Xekmail: webmail grátis do AEIOU
http://xekmail.aeiou.pt

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



Re: (no subject)

2001-01-03 Thread Shlomi Fish

On Wed, 3 Jan 2001 [EMAIL PROTECTED] wrote:

> somebody can tell me where I can find some ideas that help me in the 
> construction of a minesweeper programmed in haskell
>   I thank any type of help because I am a little confused 
>

Check out the Haskell Gtk bindings.

Regards,

Shlomi Fish
 
> __
> Mensagem enviada pelo Xekmail: webmail grátis do AEIOU
> http://xekmail.aeiou.pt
> 
> ___
> Haskell mailing list
> [EMAIL PROTECTED]
> http://www.haskell.org/mailman/listinfo/haskell
> 



--
Shlomi Fish[EMAIL PROTECTED] 
Home Page: http://t2.technion.ac.il/~shlomif/
Home E-mail:   [EMAIL PROTECTED]

The prefix "God Said" has the extraordinary logical property of 
converting any statement that follows it into a true one.


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2001-01-02 Thread kh0ndor

somebody can tell me where I can find some ideas that help me in the 
construction of a minesweeper programmed in haskell
  I thank any type of help because I am a little confused 

__
Mensagem enviada pelo Xekmail: webmail grátis do AEIOU
http://xekmail.aeiou.pt

___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2000-11-14 Thread Juergen Pfitzenmaier

Ashley Yakeley wrote at Sun, 12 Nov 2000 23:20:31 -0800:
>  C++ provides a convenient mechanism for cleaning up stuff, the
>  destructor, which is guaranteed to 

and asked if something like the C++ destructor could be done
in haskell.

Don't try this. One of the main attractions of C++ destructors
is a guaranteed order their execution. This is too ugly for
a lazy language.

pfitzen


___
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell



(no subject)

2000-11-05 Thread Alberto Domínguez



 


(no subject)

2000-10-13 Thread Luciano Caixeta Moreira



unsubscribe [EMAIL PROTECTED]


No Subject

2000-08-18 Thread Pretty9





i wonder if u coul write the following program for 
me. i couldn't get mine to work so i wanna check. my email address 
is   [EMAIL PROTECTED]
--

As we know, SOCOG's effort at allocating the Olympic tickets has been rather 
less than perfect. You're going to demonstrate that you're more capable than 
they are, by writing a few Haskell functions to do just that job. 
The ultimate aim is to write an allocateTickets function, which 
will be given a list of people, the events they want to see, and how important 
their order is considered to be -- that is, the priority of their order. 
As well as this, allocateTickets will be given information about 
how many tickets are available, and for which events. 
On the basis of this information, allocateTickets will then give 
out tickets -- starting with the highest priority orders. Once tickets for an 
event run out, the rest of the (less important) people who want tickets for that 
event are just out of luck -- they miss out. 
Once its run through all the orders, allocateTickets will return 
a list of the tickets that have been sold, as well as information about how many 
tickets are still available for each event. 
 
We've defined some types to 
make it clear what each piece of data is for. These are fully described here. 
As a starting point, we've provided a Haskell file with all the types and 
module skeleton in it here. 
Feel free to use all, part, or none of that file. 
Our ultimate aim is to write the allocateTickets function, which will have 
the type signature: 
allocateTickets :: TicketDB -> [Request] -> ( [IssuedTicket], TicketDB )
the TicketDB input tells us about the tickets available 
initially, and the [Request] gives us a list of the orders that we 
wish to process. The function is to return a list of the tickets that have been 
issued, and the modified TicketDB -- that is, with the issued 
tickets removed from the TicketDB. 
Ticket will be issued to Requests with higher 
Priority first -- see the getHighestRequest 
function to find out how this is worked out. 
Helper functions - ticketAvailable, removeTicket, 
and getHighestRequest
Since allocateTickets is a pretty complicated function to do, 
you don't want to tackle it all in one go. In later assignments, you'll be 
expected to work out how to break up a big task into smaller ones on your own, 
but this time we're going to give you some help: 
(Note that we will be testing these three functions 
(ticketAvailable, removeTicket, and 
getHighestRequest) separately, so you need to write them, 
following the spec, even if you don't end up using them in 
allocateTickets). 
To make the job easier, we'll probably want a function to check if there is a 
ticket available for a particular event: 
ticketAvailable :: TicketDB -> Event -> Bool
Given a TicketDB and an Event, this function is to 
return True if there is at least one ticket available for the event. 
If the Event is not mentioned at all in the 
TicketDB, then there has been an order for a non-existent 
Event. In this case, the function should display an error message 
exactly like this: 
ticketAvailable - unknown Event
(Hugs will add 'Program error: ' to the front of this... thats OK!) 
So far so good. But this still doesn't actually take the ticket out of the 
TicketDB -- it just checks if there is one. So we'll want another 
ticket: 
removeTicket :: TicketDB -> Event -> TicketDB
Given a TicketDB and an Event, this function will 
reduce the number of tickets available for that Event by one, and 
return the modified TicketDB. If an Event becomes sold 
out as a result of this function, you should not remove it from 
the TicketDB - leave it in the TicketDB, listed with 0 
tickets available. 
If the Event is not mentioned at all in the 
TicketDB, then the TicketDB should be returned 
unchanged. 
On the other hand, if the tickets for the Event have all been sold, we should 
return a different error: 
removeTicket - event is sold out
Since we aren't guaranteed that the [Request] given to 
allocateTickets is in any particular order, we'll also need a function to get 
the highest priority request out of a [Request]: 
getHighestRequest :: [Request] -> ( Request, [Request] )
Given a [Request], this function is to return a tuple containing 
the Request with the highest Priority, and the 
[Request] with that (highest priority) one removed. 
When there are multiple Request s with the same 
Priority, then the Person whose name comes first in 
the alphabet should be returned. 
Note that you can use > < >= <= and == to compare 
String s in Haskell. 
If the [Request] is empty, then your program should display the 
following error message: 
getHighestRequest - [Request] is empty
Hint: You may want to write the following functions 
to make getHighestRequest easier: 
lookupHighestRequest
Given a [Request], returns the Request with highest 
Priority. 

No Subject

2000-08-06 Thread Lokesh Sood




dear sirs,
 
I have a problem to solve in haskell but i do 
not know how to go about it. the problem is
 
write a haskell function for computing the 
average value of a list of numbers.
 
I am using Hug 98 for windows and  I tried 
the following  way:
 
average (x:xs) = s/l
    
where
    
s=sum(x:xs) && l=(x:xs)
 
I am a beginner studying on my own. I would 
appreciate it if you could explain what I should and should not do.
 
Thank you
yours sincerely 
Ruhi Sood 
 


No Subject

2000-05-23 Thread Viktor Kuncak

I have 2 questions motivated by modular interpreters, as done by
S. Liang, P. Hudak and M.P. Jones.

1. In POPL'95 paper the lifting of inEnv through ContT (continuation
transfomer) is given. I think I managed to prove this lifting natural,
but I needed another environment axiom:
  do {o <- rdEnv; inEnv o m} = m
It indeed holds when EnvT is introduced, but I did not verify that it is
preserved through the other transformers. It would be nice if this
property could be derived from the other environment axioms from Liang's
PhD thesis, but I didn't manage.

What confuses me is that Liang in the thesis (written 3 years after POPL'95)
says ``We do not know of a desirable way to lift inEnv through ContT''.
Why is the lifting from POPL'95 paper undesirable? Is something more than
naturalness needed to make it desirable, or is it just that the
additional axiom I mention does not hold in general (which would mean it
breaks after applying some monad transformer)?

2. The second question is simpler. The mentioned lifting of
inEnv through ContT with my class and instance declarations
becomes

newtype ContT c m a = Cont {unCont :: (a -> m c) -> m c}
instance EnvMonad e m => EnvMonad e (ContT c m) where
  rdEnv = lift rdEnv
  inEnv e ma = Cont (\k ->
   do old <- rdEnv
  inEnv e (unCont ma (inEnv old . k)))

which does not type check in Hugs98. The problem seems to be with
the first argument of inEnv, when I use

type Enviro = Int
instance EnvMonad Enviro m => EnvMonad Enviro (ContT c m) where
  rdEnv = lift rdEnv
  inEnv e ma = Cont (\k ->
   do old <- rdEnv
  inEnv e (unCont ma (inEnv (old::Enviro) . k )))

all is fine. But it suffices to constrain the 2 occurences of rdEnv to
have the same type in the given expression. I managed to do it using
lambda abstraction:

instance EnvMonad e m => EnvMonad e (ContT c m) where
  rdEnv = lift rdEnv
  inEnv e ma = Cont (\k ->
   (\ie -> -- a trick to make inEnv monomorphic
   do old <- rdEnv
  ie e (unCont ma (ie old . k))) inEnv)

Is there a better way to do it?

  Viktor Kuncak, University of Novi Sad





No Subject

2000-05-17 Thread Viktor Kuncak

I have 2 questions motivated by modular interpreters, as done by
S. Liang, P. Hudak and M.P. Jones.

1. In POPL'95 paper the lifting of inEnv through ContT (continuation
transfomer) is given. I think I managed to prove this lifting natural,
but I needed another environment axiom:
  do {o <- rdEnv; inEnv o m} = m
It indeed holds when EnvT is introduced, but I did not verify that it is
preserved through the other transformers. It would be nice if this
property could be derived from the other environment axioms from Liang's
PhD thesis, but I didn't manage.

What confuses me is that Liang in the thesis (written 3 years after POPL'95)
says ``We do not know of a desirable way to lift inEnv through ContT''.
Why is the lifting from POPL'95 paper undesirable? Is something more than
naturalness needed to make it desirable, or is it just that the
additional axiom I mention does not hold in general (which would mean it
breaks after applying some monad transformer)?

2. The second question is simpler. The mentioned lifting of
inEnv through ContT with my class and instance declarations
becomes

newtype ContT c m a = Cont {unCont :: (a -> m c) -> m c}
instance EnvMonad e m => EnvMonad e (ContT c m) where
  rdEnv = lift rdEnv
  inEnv e ma = Cont (\k ->
   do old <- rdEnv
  inEnv e (unCont ma (inEnv old . k)))

which does not type check in Hugs98. The problem seems to be with
the first argument of inEnv, when I use

type Enviro = Int
instance EnvMonad Enviro m => EnvMonad Enviro (ContT c m) where
  rdEnv = lift rdEnv
  inEnv e ma = Cont (\k ->
   do old <- rdEnv
  inEnv e (unCont ma (inEnv (old::Enviro) . k )))

all is fine. But it suffices to constrain the 2 occurences of rdEnv to
have the same type in the given expression. I managed to do it using
lambda abstraction:

instance EnvMonad e m => EnvMonad e (ContT c m) where
  rdEnv = lift rdEnv
  inEnv e ma = Cont (\k ->
   (\ie -> -- a trick to make inEnv monomorphic
   do old <- rdEnv
  ie e (unCont ma (ie old . k))) inEnv)

Is there a better way to do it?

  Viktor Kuncak, University of Novi Sad





No Subject

2000-04-29 Thread Jan Brosius

Hi,

Is it possible to interrogate the typechecker 
from within a Haskell program

Friendly 
Jan Brosius





No Subject

2000-04-20 Thread gregor . cramer



Hi,

please check your link . At the moment
it is impossible to get the sources for the "happy" library, and without this
sources it is impossible to compile ghc.

Many thanks

Gregor Cramer






No Subject

2000-03-25 Thread Mutsu Tsukumo

Does anyone know how to write a calendar function in Haskell?
__
Get Your Private, Free Email at http://www.hotmail.com





No Subject

2000-03-17 Thread Simao Desousa

Dear Colleagues,

I apologize if you receive multiple copies of this message
and would be grateful if you could distribute the 2nd Summer School 
Call For Participation given below  
  
Best regards,

S. Sousa

--


  2nd C A L L   F O RP A R T I C I P A T I O N

  
   
   INTERNATIONAL SUMMER SCHOOL
  ON APPLIED SEMANTICS
---APPSEM'2000---

  Caminha, Portugal, 9-15 September 2000

http://www-sop.inria.fr/oasis/Caminha00/index.html


OBJECTIVE AND BACKGROUND

Programming languages are the basic tools with which all applications
of computers are built.  It is important, therefore, that they should
be well designed and well implemented. Achieving these goals requires
both a good theoretical understanding of programming language designs,
and practical skills in the development of high quality compilers.

The summer school is addressed to postgraduate students, researchers 
and industrials who want to learn about recent developments in programming 
language research, both in semantic theory and in implementation.

The programme will consist of introductory and advanced courses on the
following themes:  

- description of existing programming language features;

- design of new programming language features;

- implementation and analysis of programming languages;

- transformation and generation of programs;

- verification of programs.

LOCATION

The summer school is located in Caminha, a picturesque village by the 
sea and on the Rio Minho, on the northern border between Portugal and 
Spain.


PROGRAMME

- Andrew Pitts, Cambridge University.
  Operational Semantics.

- John Hughes, Chalmers University, Eugenio Moggi, Genova University,
  and Nick Benton, Microsoft Research.
  Monads and Effects. 
   
- Pierre-Louis Curien, CNRS and Paris 7 University.
  Games and Abstract Machines. 

- Thierry Coquand, Chalmers University, and Gilles Barthe, INRIA.
  Dependent Types in Programming. 

- Olivier Danvy, BRICS and Peter Dybjer, Chalmers University.
  Normalization and Partial Evaluation.

- Cédric Fournet, Microsoft Research and Georges Gonthier, INRIA.
  Join Calculus: a model for distributed programming. 

- Xavier Leroy, INRIA, and Didier Rémy, INRIA. 
  Objects, Classes and Modules in Objective CAML. 

- Martin Odersky, Ecole Polytechnique Federale de Lausanne.
  Functional Nets. 

- Abbas Edalat, Imperial College, and Achim Jung, Birmingham University.
  Exact Real Number Computation. 
  

REGISTRATION

The registration fees covers proceedings, full boarding, refreshments,
social events and a banquet:

- early registration (before April 21st)
   * single room: 120 000 PTE 
   * double room: 100 000 PTE
- late registration 
   * single room: 140 000 PTE
   * double room: 120 000 PTE

There is no deadline for late registration but accommodation is not 
guaranteed  if you applied after the 1st July 2000. 

See http://www-sop.inria.fr/oasis/Caminha00/registration.html for
further information. 

GRANTS

Limited funds will be available for grants.  The deadline for
application for a grant is April 1st. You will receive notification of
acceptance/rejection by April 8th.  

To apply for a grant, see http://www-sop.inria.fr/oasis/Caminha00/grant.html.

FURTHER INFORMATION

For further information, please contact the organizing committee by
email  ([EMAIL PROTECTED]).






No Subject

2000-03-09 Thread Chris Angus

Does anyone know where I can get some
information on Lambada.

I tried 


   http://windows.st-lab.cs.uu.nl/Lambada/

but got a 403 (not authorised to view page)

Cheers

Chris



No Subject

2000-02-09 Thread Stefan Friedel

Hi everybody, I have a problem. I'm new to haskell and
I have to write a function that takes the following
list and finds the average by using recursion and
adding the numbers together. I'm completely STUCK!
Thank you. 

> sales :: Int -> Float
> sales n
>   | n == 0 = 23.89
>   | n == 1 = 89.30
>   | n == 2 = 203.59
>   | n == 3 = 157.67
>   | n == 4 = 58.35
>   | n == 5 = 78.75
>   | n == 6 = 199.35
>   | n == 7 = 359.25
>   | n == 8 = 539.67
>   | n == 9 = 259.58
>   | n > 9 && n < 52 = 350.00


__
Do You Yahoo!?
Talk to your friends online with Yahoo! Messenger.
http://im.yahoo.com



No Subject

2000-02-09 Thread Juergen Pfitzenmaier

Subject: Re: overlapping instances


Maybe I understand why Sergey wants to use overlapping instances in his
DoCon. 2 years ago I tried to the same thing in C++ (also while implementing
a computer algebra system).  Overlapping instances *may* be useful, but
in combination with parametrized containers for algebraic things they are
likely to fail. Just one small example (sorry this is c++ -- I can't think
haskell late in the evening -- but the idea holds the same in haskell):
Take the ring of polynomials over some commutative ring. This *seems*
like a good candidate for a template class.
   template class poly {  }
This is only half way, because we can also take the type of exponents as
a type parameter:
   template class poly {  }
One of the first functions I want to write for this class is the computation
of factors/gcd by using modular images. For this I need an upper bound for the
size of coefficients of the factors. The best bounds consider how the
coefficient interact with the exponents -- that is not just looking at the
given values -- it depends also on the given types. Therefor the computation
of the bound can't be hardcoded inside the class poly and it can't be coded
in any specialization for some *single* type parameter be it either T_coeff or
T_exponent. I can give a specializition involving both types, but looking
at an application the size of DoCon this gets impossible to handle.

There is another way: We see that the type parameters interact - that is their
combination should be treated as an entity *together* with the functions that
depend on that entity (like bounds). I wrote code that looks like this:
  typedef  complex_rational;
  typedef  integer;
  // need a forward declaration>
  template  class poly;
  struct poly_trait {
typedef complex_rational coefficient_type;
typedef integer  exponent_type;
static coefficient_type factor_coeff_bound(const poly &) {
   // here comes the specialization
}
  };

  template  class poly {
 std::list & factorize()  {
 // no need for special things inside the container
 bound = T_poly_trait::factor_coeff_bound(*this);
 ...
 }
  };

In the same way Sergey could handle the special algorithms in his examples
to compute the determinant of a matrix. In this case the matrix container
depends on only one type - the type of the elements - but the algorithms
depend also on the structure of the matrix (dense, sparse, modular,...) and
so we pack the algorithms together with a description of the structure of the
matrix in a type argument for the matrix container.

mail me if someone wants more info or a haskell example; I'm about to write
a paper about implementation strategies for containers of algebraic things.

pfitzen




No Subject

1999-12-20 Thread Dave & Pam Edblom



 


No Subject

1999-12-06 Thread Nguyen Phan Dung


Hello,

I heard that Visual Haskell is under development.
Do you know when it is released? It will provide Haskell programmer an
environment that is similar to Visual J++, Visual Basic, or...?

Besides, if you know, would you please tell me where we can download Uniform
Workbench? 
(I found the paper about Uniform Workbench only)

Thank you very much !
Phan Dung.




No Subject

1999-11-25 Thread Eduardo Costa

I will try to give a collective answer to the reactions to my letter.

Tom Pledger wants this to be constructive. That is my intention, of
course. Since I am not able to program in languages like C or 
Oberon, I would like to have a practical lazy functional compiler
(or a practical prolog compiler). I hope to convince people to implement
such a compiler.

> Please, correct me if I am wrong: Clean is a proprietary language.
Yes. You are right. What is worse: They do not make this point very
clear (for instance, I could not find the price anywhere). You know, I do
not mind if the language is proprietary or not. However, if it is proprietary,
it should offer the services of a good proprietary system: A publisher,
books, advertising to produce a volume of installed system large enough
and competifive prices (a compiler should cost something around 200 dollars).

Simon Peyton Jones.
 You are the person who called my attention to Clean. But let's concentrate
ourselves on Haskell. I infer from your letter that the GHC team has no
interest on building a practical Haskell compiler, but to play and experiment
with the language. Why the Haskell community
do not try to find someone who wants to build an industrial strength compiler? 
I mean, a group who could produce a
competitive compiler, useful not only to people who are interested in testing
the language, but also in using it to produce commercial and industrial tools.
I will call the story of Smalltalk to your attention. They took so long to
produce a commercial compiler, and spent so much time experimenting
 with the language, that people lost their interest in the language.

Fergus Henderson
Why a compiler should be small, and produce small code, etc?
A small compiler proves that its libraries can produce small code.
Besides, it becomes easier to install, and uninstall. For instance,
Dr. Alcimar (that you know quite well) is finishing his prosthetic arm
for amputees. Clean was able to produce code that was small enough,
uses heap sparingly, and was fast enough to do the pattern recognition
of electric myographic signals using a novel algorithm created by Dr. 
Pascoarelli. The program must be small because it runs on a laptop computer, 
with little memory (one can not ask an amputee fetching a large computer).

Conclusion: I think that we should look for groups interested
in producing a Haskell compiler. A friend of mine also suggested trying to
lure Clean team to eliminate the small incompatibilities that their system
have with Haskell. If a Clean feature is important and significative, it would
be let alone (for instance, unique types are fine). If it only makes the code
hard to read for Haskell programmers, it would be changed. An example is
the notation for list patterns (Clean could change [x:y} to (x:y)). Other
examples: Module handling, type declarations, etc.

I think that my posting is long enough.

Ed Costa.


This e-mail has been sent to  you courtesy of OperaMail,  as a  free  service  from
Opera  Software,  makers  of the award-winning Web Browser, Opera. Visit us at
http://www.opera.com/ or our portal at: http://www.myopera.com/ Your free e-mail 
account is waiting at: http://www.operamail.com/





No Subject

1999-08-12 Thread Jaewoo Kim

Thanks, Mark and Kwanghoon. These good online materials would save precious
time of Haskellers.

Jaewoo Kim






No Subject

1999-07-19 Thread Jan Brosius

Hi,

will Haskell compiled programs be faster by using more strictness
annotations; I especially think of Clean where strictness annotations are
"abundantly" used?

Thanks

Jan






No Subject

1999-06-07 Thread Anatoli Tubman

Hello everybody:

{ I post it here, despite the fact I talk about GHC and Hugs.  I suppose
  this is relevant for most implementations, actual and imagined. }

How can I *efficiently* print (i.e. find the decimal, or in
general N-ary, representation of) large Integers, like factorial of 1?

The implementation of showInt taken from Standard Prelude:

(1) wastes memory -- both Hugs and GHC2.1 bail out because of insufficient
heap space (160 megabytes are not enough!)  This can be fixed by adding
some strictness.  I did it like that ($! added in two places):

\begin{code}

showInt n r | n < 0 = error "Numeric.showInt: can't show negative numbers"
| otherwise =
  let (n',d) = quotRem n 10
  r' = ((:) $! 
  (toEnum (fromEnum '0' + fromIntegral d))) r
  in  if n' == 0 then r' else (showInt n') $! r'

\end{code}

though I'm not sure this is the best way.

(2) crawls like hell (when fixed with strictness).
I don't know whether the slowness is because of GC, or because of
slowness of quotRem.  Anyway, 10! can be computed much,
much faster than printed (using GHC).

So, can printing be done any faster?

I realize that the issue is mostly theoretical.  No one in real
life needs to print numbers so large.
--
Anatoli Tubman <[EMAIL PROTECTED]>





No Subject

1999-01-09 Thread Keith Wansbrough

> Hello!
> Anybody has a program that converse natural expresion to inverse polac
> expresion in Haskell...
> 

Assuming you mean "infix to Reverse Polish", I guess you need something that 
will parse mathematical expressions.  You might like to check out Happy... 
it's a parser generator for Haskell, and you could write your own infix to RPN 
program using it.  Alternatively, there is a parsing combinator library that's 
probably a lot easier to work with, but less general.  Both are available at

http://www.haskell.org/libraries/

HTH.

--KW 8-)

-- 
: Keith Wansbrough, MSc, BSc(Hons) (Auckland) :
: PhD Student, Computer Laboratory, University of Cambridge, England. :
:  (and recently of the University of Glasgow, Scotland. [><] )   :
: Native of Antipodean Auckland, New Zealand: 174d47' E, 36d55' S.:
: http://www.cl.cam.ac.uk/users/kw217/  mailto:[EMAIL PROTECTED] :
:-:






No Subject

1999-01-08 Thread Alvaro Enrique Trak Vasquez

Hello!
Anybody has a program that converse natural expresion to inverse polac
expresion in Haskell...






No Subject

1998-11-05 Thread Bruce Mitzit

[EMAIL PROTECTED]

Welcome to the haskell mailing list!

If you ever want to remove yourself from this mailing list,
you can send mail to "Majordomo" with the following command
in the body of your email message:

unsubscribe haskell ->your email address<-





no subject (file transmission)

1998-09-15 Thread S. Achterop IWI-120 3932


Concerning Int vs. Integer:

Wouldn't it be better if Standard Haskell had "save" Int's, that is a version that 
simply
would abort the program when encountering a overflow.
This can be implemented without too much of a penalty on the more relevant benchmarks.

And if Int32 and friends from the Hugs/GHC libs are promoted to the standard library
in some form then the report has to change on two points:
 1. state that an exceptional result (for all fixed precision types?) yield an error,
instead of being undefined.
 2. note that the standard library will contain an integer without overflow checking

That implementations would, for the moment, implement this new Int by just using the 
current
situation only would be a minor temporary inconvenience.

On a general note, should executing a program not always yield a defined result?
That is, either yield the correct result OR produce an error message?


  Sietse Achterop







No Subject

1998-05-17 Thread Walter Ariel Risi


I am writing a Cellular Automata library in Haskell, and I found myself in
need of an efficient hashtable for implementing a rule table.

Does anyone know if there's already something done about hashtables in
Haskell?

Walter.

***
* Walter Ariel Risi   *
* L.I.F.I.A. - Dpto. de Informatica   * 
* Fac. Cs. Exactas - U.N.L.P. *
* E-Mail: [EMAIL PROTECTED]   *
***





No Subject

1998-05-08 Thread Krzysztof Arciszewski

Hi,

I'm a student of Computer Science on Warsaw University.

I look for a theme of my Master Thesis. I've got some ideas.
One of them is to write a Partial Evaluator for Core Haskel.

I've got two questions:

-  Have anybody done Partial Evaluator for Haskel?

-  Is it a good idea to make a PE as Master Thesis?

-  I've got one year to finish my Master Thesis - is it enough to do PE.


I will be very grateful for any advises.


 Krzysztof Arciszewski
 [EMAIL PROTECTED]





  1   2   >