Interestingly enough, I have the same feeling with Python!
As for the difficulty with imperative constructs, I agree it's not
even an issue for many (Dylan, ML, et. al.) languages, but for Haskell it
still is, in my humble opinion. I found the task of writing a simple
program
that did a few
- Original Message -
From: Norman Ramsey [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Thursday, May 03, 2001 7:16 AM
Subject: Re: Interesting: Lisp as a competitive advantage
http://www.paulgraham.com/paulgraham/avg.html
I wonder how Haskell compares in this regard.
I loved
[...many lines deleted...]
I think it's important to have a simple model of how many times
expressions
are evaluated. Function bodies are clearly evaluated many times, once for
each
call, but non-function bindings should be evaluated at most once to
respect
call-by-need semantics. Breaking
There is a working GHC-to-.Net runtime available at
www.mondrian-script.org http://www.mondrian-script.org/ ; reving the
Jva a backend should not be too much of a problem.
Erik
Message: 1
Subject: RE: haskell.runtime.* ??
Date: Sun, 29 Apr 2001 12:16:24 -0700
From: Simon Peyton-Jones
As I was not involved in that discussion, why should the keyword "with" not
be introduced?
Just curious,
Erik
- Original Message -
From: "Alastair Reid" [EMAIL PROTECTED]
To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
Sent: Wednesday, April 18, 2001 10:31 AM
Subject: Syntax for implicit
use unsafePerformIO (that's this year's April fools' joke :-).
Do a Google on "Monads Haskell" and you will find plenty of answers; in
short you should "bind" the result of readFile using (=) : IO a - (a -
IO b) - IO b.
Erik
- Original Message -
From: [EMAIL PROTECTED]
To: [EMAIL
Why should we change and not C?
Erik
- Original Message -
From: "Jan Skibinski" [EMAIL PROTECTED]
To: "Jerzy Karczmarczuk" [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]; [EMAIL PROTECTED]
Sent: Friday, February 16, 2001 1:17 AM
Subject: Re: Just for your fun and horror
On Fri, 16 Feb
I would *really* love to see GHC componetized (TM); it would even be better
if it would become easier to use the pieces. I would like to do experiments
on smaller bits of the compiler using Hugs (ideally the whole thing!). When
I was working on the Java/.NET backend I had to rebuild the whole
This is exactly what I proposed when fmap and the other weird names were
introduced. Hopefully there are more allies now.
Erik
- Original Message -
From: "Koen Claessen" [EMAIL PROTECTED]
To: "The Haskell Mailing List" [EMAIL PROTECTED]
Sent: Tuesday, February 06, 2001 6:25 AM
Subject:
Is there any documentation on using the FFI in the just released Hugs beta?
For example, what steps should I take to call the following C function?
#include stdio.h
void Hello () { printf ("Hello from C"); }
Erik
___
Haskell mailing list
Have a look at http://www.mondrian-script.org
Erik
- Original Message -
From: "Chris Angus" [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Friday, November 24, 2000 1:44 AM
Subject: (no subject)
I was wondering if
Has anybody had access to a Haskell - Java compiler/translator.
This one of the reasons why I never use literate programming. I always
forget the blank lines, and then after being puzzled by the error, I
remember it, and get completely turned off.
C Literate comments
[...]
To capture some cases where one omits an "" by mistake,
it is an error
This runtime just needs to be ported to other operating systems
similarily to the Java runtime.
So it's a question of either source availability - or at least a very
complete specification - or Microsoft strategy.
With the SDK that you can download from MS comes a 500 page specification
I'm weird, but not a true 'CS' person. I run Linux -- do I
need to move to NetBSD?
The single Linux box we have in the Microsoft lab was severely hacked from
the outside, they have moved to FreeBSD, which is supposed to be safer (I
hope so).
Erik
Not "at least" but "only". I haven't heard of plans for .NET on any
non-Windows platform.
Then you should listen more closely! a quote from the .NET whitepaper:
Microsoft .NET proactively adapts to what you
want to do, on any of your devices. This inversion
of the traditional
nigel Disclaimer, as Fergus added one: I am working with Microsoft on
.NET
nigel implementation, but I run Windows 2000 on my G3 PowerBook and take
it
nigel to Microsoft with me. I'm biased on everything :-)
Windows 2000 in a G3 Powerbook? I am lost here :((
No, Nigel is not
Erik Meijer [EMAIL PROTECTED] wrote:
^^
Yes, that refers to the computer lab sponsored by MSR Cambridge
and MS Netherlands in Utrecht.
The plan is to have the release out the door by September 1st.
Will that release support Haskell, or just Mondrian?
The compiler
I have to call Java compiled bytecodes from a Haskell program. So,
I am looking for some kind of tool or library that implements this kind of
functionality. The tool should implements this behavior in the same way
as GHC allows calls to foreign C code.
Hi Herman,
This is what Lambada
Have you looked at GHC?
Erik
==
For our research, it would be helpful to have a "demodulizer" for Haskell
--- that is, a program that can translate a Haskell program consisting of
several modules into a single module. Ideally, this tool would
Since it's a Haskell 98 issue, I am in favour of (A):
reverse :: [a] - [a]
reverse xs = Prelude.reverse (tail xs)
Alternative (B) looks rather ugly:
M.reverse :: reverse :: [a] - [a]
reverse xs = Prelude.reverse (tail xs)
Cheers, Ralf
I
Any particular reason for generating Java rather than JVM bytecode?
Does it make a difference?
Yes, we make *heavy* use of innerclasses and exceptions. So we are more than
happy to leave the dirty work to the Java compiler. (We are however
currently working on an "inner classes lifter" so that
Hi Thomas,
Some quick answers in addition to Nigel's
1) tail recursion
We use the usual "trampoline" trick, with a little top-level interpretative
loop. Using the trick has a pleasant side effect that we can pass values on
the arguments stack as well.
2) polymorphism
All type informations
Hi Jan,
When can I safely cheat haskell compiler/interpreter
by pretending that I perform pure computations,
when in fact they are not?
If the computation is not pure, you cannot pretend it is.
Here is a real example,
from my Md5Digest module which works fine
I am doing my final year project related to Haskell COM.
I have to write a program that can read any COM display all the
properties
methods inside.
Do you know how to solve this problem or would you please suggest some
documents about this?
Thank you very much,
Phan Dung.
You will
Hi,
I must admit that I got carried away by new extension, and have not
come around to making a new release yet.
On Oct. 4, 1999, I enquired here about availability
of software described in that paper (Where is "Server
Side Scripting" code?) and Erik's answer was, loosely
So, for a glue language, which one is better: a strongly typed language
like Haskell or a loosely typed language like Perl, Visual Basic,...?
Daan Leijen, Sigbjorn Finne, Simon Peyton Jones, Jim Hook, and myself have
written a number of papers where we argue that Haskell is a great glue
at to Suse. However, the
mod_haskell site http://losser.st-lab.cs.uu.nl:8080/ is up and alive now.
BTW the crew is now working on HSP, the one and only alternative for ASP,
PHP, JSP, PSP, ...
Yours,
Erik Meijer
CGI hackers might be interested in mod_haskell
http://losser.st-lab.cs.uu.nl:8080/ that was developed by Eelco Dolstra
and Armijn Hemel.
Erik
Erik Meijer, in his paper "Server Side Scripting in Haskell", FFP, Jan 98
(www.cs.uu.nl/~erik/) claims that his Haskell/CGI library is a part of the
standard Hugs distribution. He also thanks the teams from Yale and
Nottingham for including it as one of the demos in the standard
di
{HaskellWorkshop1999
, TITLE="Proceedings of the 1999 Haskell Workshop"
, YEAR="1999"
, EDITOR="Erik Meijer"
, SERIES="Technical Reports"
, ORGANISATION="Utrecht University Department of Computer Science"
, NUMBER="UU-CS-1999-28"
, NOTE
[...]
unzip = foldr (\(a,b) ~(as,bs) - (a:as,b:bs)) ([],[])
Not exactly intuitive. Could be better. I'm assuming that George's point
is that this documentation leaves plenty of room for expansion.
OK, you fire up Hugs and type :t unzip and Hugs tells you that
unzip :: [(a,b)] - ([a],[b])
And, as a practical step, writing libraries seems like
an excellent way to get involved --- especially if they're useable with
multiple implementations.
I can reveal a little secret (Sigbjorn is far away in the Norwegian woods :-) namely
that soon H/Direct will directly support .h files,
Whatever happened to the auto-import of java classes?
That's what I am supposed to be working on while Sigbjorn is enjoying the fjords. We
have a nasty bug having to do with the (what we thought as) clever way of representing
JNI objects in Haskell. There is an elegant solution using
)
PROGRAM COMMITTEE
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Koen Claessen (Chalmers)
Byron Cook (OGI)
Sigbjorn Finne (Glasgow)
Gregory Hager (John Hopkins)
Fergus Henderson (Melbourne)
Graham Hutton (Nottingham)
Alexander Jacobson (shop.com)
E
I want to pass some data structure (such as a record ... ) between Haskell
and C.
If you know anybody who did this or you have any ideas about this, would you
please advise me?
Thank you very much !
H/Direct (http://www.dcs.gla.ac.uk/fp/software/hdirect/) is the way to go, or since
you
Koen wrote,
I think Lambert Meertens calls this a "paramorphism".
It is basically a catamorphism (fold), where you also
have access to the structure you are recursing on, not
just the result after recursion.
But since the FP culture changed from:
catamorphism == fold
This is a multi-part message in MIME format.
--=_NextPart_000_006B_01BEBD3E.82A75920
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Hi,
Does anyone have a GIF of (I think Phil Wadler's) Lambda-man? I mean the =
one that appeared with its
I wrote
Does anyone have a GIF of (I think Phil Wadler's) Lambda-man?
I mean the one that appeared with its friend the chip on
the old FPCA proceedings?
Many people pointed me at versions of the gif (including
http://ls5-www.informatik.uni-dortmund.de/~peter/Lambda).
You can see the result
tchlevel 0
Effective command line: -v -o main
Ineffective C pre-processor:
echo '{-# LINE 1 "main.hs" -}' /tmp/ghc1026.cpp cat main.hs
/tmp/ghc1026.cpp
deleting... /tmp/ghc1026.cpp
rm -f /tmp/ghc1026*
bash-2.02$
======
Erik Meijer
This is a multi-part message in MIME format.
--=_NextPart_000_0255_01BEA206.F6CDD2A0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Hi Guys,
John P's April fools joke has caused quite some excitement on the design =
patterns mailing list
Interesting! Phil, Mark, and Jeff all have a different interpretation of
how contexts on how data type declarations work than I did. So unless
some other people chime in, I will therefore adopt their interpretation,
since (a) I'm in the minority and (b) it's not a big deal at all.
I agree
I think that the report should definitly rule out the possiblity that every
evaluation of randomIO uses the *same* initial seed.
I agree. In fact, I would be most happy with a function getRandom :: IO
Double that returns a random number between 0 and 1. I have not been able to
hack such a
Hi Alex,
Ok, then I am officially complaining about the elimination of ++ and
MonadPlus. It is a much more radical change than changing default
default and it will break a lot of MY code at very least.
The existing implementation in hugs allows you to write extremely concise
and clean code.
Another reason is that allowing definitions to be split up
without any special syntax indicating this would harm readability.
If I see a definition, I can't be sure it's complete without
examining the whole module.
Since the order of clauses affects the semantics, I don't think
it would be a
Hi Alex,
[...]
[ describes that he wants interleave the definitions of several functions ]
[ but Haskell does not allow this ]
[...]
This restriction is very frustrating because I want to add names to a
function lookup table as they are derived. Is there a strong reason for
disallowing this
Phil's proposal:
delete class MonadZero, MonadPlus
delete filterM, guard, mfilter, concatM
This is ok by me. Does anyone object?
No, not at all. The prelude should be as small as possible.
Erik
Lennart wrote:
Sorry, I'm not happy with this proposal. Monads are a well
defined mathematical concept and I think the Monad class should
reflect this. Having a mzero (and mfail) method seems weird to
me. I would suggest a MonadZero class having these methods,
and that do notation on works
John,
Of course we would all like Haskell to catch as many errors as possible,
and statically. But a chain is only as strong as its weakest link. When
there are already weak links in a chain, it makes no sense to build others
of some hi-tech super strong material. The most efficient design
Hi, folks. I'm noodling around on some (Unix) sysadmin
ideas, and would like to use Haskell and XML
(http://www.xml.com). Does anyone have code to share that
might be *vaguely* useful for XML-ish things? -- I'm mainly
interested in it as a data-exchange format. Or for any
sysadmin-ish
Hi Tim,
The Haskell Server page claims that one advantage of COM is that it
"ships for free with windows". This suggests that the existence of a
genuinely free CORBA ORB has been overlooked.
IMHO ignoring CORBA is cutting Haskell off from the open software
world (including about 7 million Linux
-Original Message-
From: Wolfgang Beck [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Date: Tuesday, July 21, 1998 10:14 AM
Subject: Re: Could Haskell be taken over by Microsoft?
Step 1: MS introduces Haskell with all their marketing power
Step 2: VisualBasic programmers switch to Haskell
Indeed, I do expect that most of the people on this list will
go straight to (the moving target of) Haskell 2. The purpose of
Std Haskell is to address the needs of people who don't need the
latest greatest, but do need something stable. For example,
the fact that Haskell keeps moving (which in
I am very dubious about making getURL pure.
Right, and I don't understand why people are so afraid
of the IO monad.
Anyway, using the Haskell-COM interface it is easy to
use IWebBrowser, which gives you anything you want in
terms of web access. The downside is that you are
stuck in the brain
In an ideal world, the Haskell grammar would be simplified by merging
the rules for pattern syntax with those for expression syntax.
Yes, Alastair is right once again! Hurray for less syntax but more static
semantics.
Erik
If you want a functional scripting language with H-M type inference and
type
classes and monads, that's great, but maybe it should be something separate
from Haskell.
I have been promoting Haskell exactly for this purpose for some time now,
and I don't buy your points, e.g that
in a scripting
m Hutton's homepage (http://www.cs.nott.ac.uk/~gmh/).
To see some cool applications of Haskell, have a look at
http://www.haskell.org and especially
http://www.haskell.org/active/activehaskell.html
So, that will keep you busy for a few weeks :-)
Erik Meijer
( formerly know as the "Ba
Well done!!
Erik
Hi Alex,
I just started playing with Haskell for CGI applications.
I would like to try writing a more serious CGI app, but
missing infrastructure makes it more difficult than conventional
approaches.
In decreasing order of preference, is there an available implementation of:
* an equivalent to
58 matches
Mail list logo