Re: [Haskell-cafe] type error

2008-12-10 Thread Janis Voigtlaender

Cetin Sert wrote:

Hi,

Why does this not function?

Prelude> sequence [print 'a', print 2]
'a'
2
[(),()]
*Prelude> let myprint = print*
*Prelude> sequence [myprint 'a', myprint 2]*

:1:18:
Couldn't match expected type `()' against inferred type `Char'
In the first argument of `myprint', namely 'a'
In the expression: myprint 'a'
In the first argument of `sequence', namely
`[myprint 'a', myprint 2]'


The problem is the monomorphism restriction:

~> ghci
GHCi, version 6.8.2: http://www.haskell.org/ghc/  :? for help
Loading package base ... linking ... done.
Prelude> :t print
print :: (Show a) => a -> IO ()
Prelude> let myprint=print
Prelude> :t myprint
myprint :: () -> IO ()
Prelude> :q
Leaving GHCi.
~> ghci -fno-monomorphism-restriction
GHCi, version 6.8.2: http://www.haskell.org/ghc/  :? for help
Loading package base ... linking ... done.
Prelude> let myprint=print
Prelude> :t myprint
myprint :: (Show a) => a -> IO ()

Can providing some type annotations (interactively in ghci or in some 
.hs file) help solve the problem?


Yes.

--
Dr. Janis Voigtlaender
http://wwwtcs.inf.tu-dresden.de/~voigt/
mailto:[EMAIL PROTECTED]
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] type error

2008-12-10 Thread Cetin Sert
Hi,

Why does this not function?

Prelude> sequence [print 'a', print 2]
'a'
2
[(),()]
*Prelude> let myprint = print*
*Prelude> sequence [myprint 'a', myprint 2]*

:1:18:
Couldn't match expected type `()' against inferred type `Char'
In the first argument of `myprint', namely 'a'
In the expression: myprint 'a'
In the first argument of `sequence', namely
`[myprint 'a', myprint 2]'

Can providing some type annotations (interactively in ghci or in some .hs
file) help solve the problem?

Best Regards,
CS
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Retrospective on 2008?

2008-12-10 Thread Don Stewart
I've been kicking the idea around of a 2008 retrospective. How did we do
this year? After all, it has been a dramatic growth period (we're close
to 600 people a day in #haskell now, for example, and many new faces!)

Some ideas:

* 10 best new libraries
* 10 best new apps
* 10 most influential blog posts
* best new library by category

Determing this is an interesting task. To start with, I scanned hackage.
Some stats:

* Hackage currently holds 914 applications and libraries.
* 601 of them were released on Hackage this year:

http://galois.com/~dons/tmp/new-releases-2008.txt

Which is rather impressive, I have to say. We're getting better at the
production of new libraries and apps (I imagine all the releases are
feeding into new apps and libs in new areas not easily reachable
before).

The last couple of months, we're averaging around 10 uploads a day, in
fact. You can see the upload growth here, 

http://galois.com/~dons/images/hackage-daily-graph.png

We've fundamentally transformed the suitability of Haskell and GHC in a
range of domains through the production of these apps and libraries.

Well done everyone!

Now, as for determining which new things make the top 10, a chance to
apply some heuristics? (Most voted on? Most downloaded? Most depended
upon by other things?).

Any thoughts? Anyone have their own top 10 list? Or other key events of
the year?

-- Don
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Re: Can my type be allowed as return type in FFI?

2008-12-10 Thread Richard O'Keefe


On 11 Dec 2008, at 5:17 am, Mauricio wrote:

This would  solve half my problem.  Can I always  trust that? I've
been told before  that everytime a C function  returns a struct it
is actually  returning a pointer, but  I wasn't able  to find that
written  in stone


That's because it isn't true.
In fact one of the classical ways for a C function to
return a struct is to be *GIVEN* a pointer, e.g.,

struct Foo f(..) {
...
return x;
}
=>
void f(struct Foo *_hidden, ..) {
...
*_hidden = x;
return;
}

and obviously a C compiler is entitled to return a small struct
in registers if it feels like it.

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


Re: [Haskell-cafe] Projects that depend on the vty package?

2008-12-10 Thread Don Stewart
coreyoconnor:
> Hello,
> For further development of the vty package I'm really only paying
> attention to the requirements that fall out of the Yi project. Are
> there any other projects that depend on the vty package?
> 
> In addition, the vty project has it's own wiki: http://trac.haskell.org/vty/
> Right now there isn't much information there but it is a great place
> to send bug reports or enhancement requests if you have them.

You can grep the complete .cabal file set on hackage, which I did,
yielding the following versions of the follwoing packages:

./yi-vty/0.3/yi-vty.cabal
./yi-vty/0.2/yi-vty.cabal
./yi-vty/0.2.1/yi-vty.cabal

./yi/0.4.1/yi.cabal
./yi/0.4.6/yi.cabal
./yi/0.3/yi.cabal
./yi/0.5.0.1/yi.cabal
./yi/0.2/yi.cabal
./yi/0.4.3/yi.cabal
./yi/0.4.6.2/yi.cabal
./yi/0.5.2/yi.cabal
./yi/0.4/yi.cabal

./LambdaHack/0.1.20080413/LambdaHack.cabal
./LambdaHack/0.1.20080412/LambdaHack.cabal

--Don
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Haskell project proposals reddit

2008-12-10 Thread Jason Dusek
  I think you are overlooking the Web 2.0 aspect of this.

--
_jsn
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Fram

2008-12-10 Thread Gwern Branwen
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA512

On Wed, Dec 10, 2008 at 2:05 PM, Haakon Meland Eriksen  wrote:
> Dear Haskell community,
>
> It was kindly suggested to me by John Peterson that I might reach you here 
> and tell you a little bit about Fram, a small Mediawiki extension.
>
> Fram lets you intersperse your explanation with actual code, and then Fram 
> extracts and concatenates the code, giving you a file with code for download.
> This means anyone with access to Fram can improve your code, either by 
> explaining it or by enhancing the code itself. It is released under the GNU 
> GPL version 3 at no cost.
>
> Fram is now at version 0.2, and equals the Mediawiki extension RawFile 0.2, 
> written by Belgian developer Philippe Teuwen. Phil and I are collaborating to 
> improve Fram into a fully fledged literate programming tool like "noweb" 
> written by Norman Ramsey. It was originally Ramsey who suggested to me that 
> Fram may be interesting to the Haskell community wiki, so here we are.

What advantages does Fram have over noweb? I've noodled around a
little on the Literate Programs wiki ( http://en.literateprograms.org/
) which uses noweb for providing the source files, and it seemed to
work as it should.

> Yours sincerely,
> Haakon Meland Eriksen

- --
gwern
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEAREKAAYFAklAP0QACgkQvpDo5Pfl1oL8yQCdHfy0beCpMZ/+cnscxjKeiXnY
LysAn216FhM2qZkN1Rh38hVjcO9EYTPT
=mzaa
-END PGP SIGNATURE-
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Source code

2008-12-10 Thread Andrew Coppin
The library documentation pages on Haskell.org used to have helpful 
links to the library source code. But they don't seem to be there any 
more. Anybody know why?


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


[Haskell-cafe] Fram

2008-12-10 Thread Haakon Meland Eriksen
Dear Haskell community,

It was kindly suggested to me by John Peterson that I might reach you here and 
tell you a little bit about Fram, a small Mediawiki extension.

Fram lets you intersperse your explanation with actual code, and then Fram 
extracts and concatenates the code, giving you a file with code for download.
This means anyone with access to Fram can improve your code, either by 
explaining it or by enhancing the code itself. It is released under the GNU GPL 
version 3 at no cost.

Fram is now at version 0.2, and equals the Mediawiki extension RawFile 0.2, 
written by Belgian developer Philippe Teuwen. Phil and I are collaborating to 
improve Fram into a fully fledged literate programming tool like "noweb" 
written by Norman Ramsey. It was originally Ramsey who suggested to me that 
Fram may be interesting to the Haskell community wiki, so here we are.

If this sounds useful, please have a look at

http://far.no/fram/

or go below the main-deck into the cabins to explore the articles

http://far.no/fram/index.php?title=Fram
http://far.no/fram/index.php?title=Test
http://far.no/fram/index.php?title=Usbpix

and if these don't make sense, have a look at our help page

http://far.no/fram/index.php?title=Help:Contents

If you are curious about the name, "Fram" is also the name of a famous ship 
used by Norwegian polar explorers in the last century. It means "Forward".

Yours sincerely,
Haakon Meland Eriksen




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


[Haskell-cafe] Re: ANNOUNCE: haskell-src-exts 0.4.4

2008-12-10 Thread Niklas Broberg
> Indeed, I just found that.  I wonder where in the universe this is
> documented. Oh well.  I also had to change -- $x and -- $( comments.  A
> "darcs diff -u" patch is attached.

Thanks a lot Chris, patch applied to the repo and will appear in the
next release.

Cheers,

/Niklas
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Re: ANNOUNCE: haskell-src-exts 0.4.4

2008-12-10 Thread ChrisK

Ross Paterson wrote:

On Wed, Dec 10, 2008 at 05:34:16PM +, ChrisK wrote:

Is there anyway to track down and fix why haskell-src-exts-0.4.4.1 still gets

"haddock: parse error in doc string"

when I try to get cabal to haddock the package?


Line numbers would be handy.

In this case, the problem is the "Original:" line in some of the module
headers.


Indeed, I just found that.  I wonder where in the universe this is documented. 
Oh well.  I also had to change -- $x and -- $( comments.  A "darcs diff -u" 
patch is attached.


Cheers,
  Chris

diff -rN -u old-haskell-src-exts/Language/Haskell/Exts/Build.hs 
new-haskell-src-exts/Language/Haskell/Exts/Build.hs
--- old-haskell-src-exts/Language/Haskell/Exts/Build.hs 2008-12-10 
17:46:47.0 +
+++ new-haskell-src-exts/Language/Haskell/Exts/Build.hs 2008-12-10 
17:46:47.0 +
@@ -1,7 +1,6 @@
 -
 -- |
 -- Module  :  Language.Haskell.Exts.Build
--- Original:  Language.Haskell.Syntax
 -- Copyright   :  (c) The GHC Team, 1997-2000,
 --(c) Niklas Broberg 2004
 -- License :  BSD-style (see the file LICENSE.txt)
diff -rN -u old-haskell-src-exts/Language/Haskell/Exts/Lexer.hs 
new-haskell-src-exts/Language/Haskell/Exts/Lexer.hs
--- old-haskell-src-exts/Language/Haskell/Exts/Lexer.hs 2008-12-10 
17:46:47.0 +
+++ new-haskell-src-exts/Language/Haskell/Exts/Lexer.hs 2008-12-10 
17:46:47.0 +
@@ -2,7 +2,6 @@
 -
 -- |
 -- Module  :  Language.Haskell.Exts.Lexer
--- Original:  Language.Haskell.Lexer
 -- Copyright   :  (c) The GHC Team, 1997-2000
 --(c) Niklas Broberg, 2004
 -- License :  BSD-style (see the file LICENSE.txt)
@@ -83,8 +82,8 @@
 | THDecQuote-- [d|
 | THTypQuote-- [t| 
 | THCloseQuote  -- |]
-| THIdEscape (String)   -- $x
-| THParenEscape -- $( 
+| THIdEscape (String)   -- dollar x
+| THParenEscape -- dollar ( 
 | THVarQuote-- 'x (but without the x)
 | THTyQuote -- ''T (but without the T)
 
diff -rN -u old-haskell-src-exts/Language/Haskell/Exts/ParseMonad.hs 
new-haskell-src-exts/Language/Haskell/Exts/ParseMonad.hs
--- old-haskell-src-exts/Language/Haskell/Exts/ParseMonad.hs2008-12-10 
17:46:47.0 +
+++ new-haskell-src-exts/Language/Haskell/Exts/ParseMonad.hs2008-12-10 
17:46:47.0 +
@@ -2,7 +2,6 @@
 -
 -- |
 -- Module  :  Language.Haskell.Exts.ParseMonad
--- Original:  Language.Haskell.ParseMonad
 -- Copyright   :  (c) The GHC Team, 1997-2000
 -- License :  BSD-style (see the file libraries/base/LICENSE)
 -- 
diff -rN -u old-haskell-src-exts/Language/Haskell/Exts/ParseUtils.hs 
new-haskell-src-exts/Language/Haskell/Exts/ParseUtils.hs
--- old-haskell-src-exts/Language/Haskell/Exts/ParseUtils.hs2008-12-10 
17:46:47.0 +
+++ new-haskell-src-exts/Language/Haskell/Exts/ParseUtils.hs2008-12-10 
17:46:47.0 +
@@ -2,7 +2,6 @@
 -
 -- |
 -- Module  :  Language.Haskell.Exts.ParseUtils
--- Original:  Language.Haskell.ParseUtils
 -- Copyright   :  (c) Niklas Broberg 2004,
 --(c) The GHC Team, 1997-2000
 -- License :  BSD-style (see the file LICENSE.txt)
diff -rN -u old-haskell-src-exts/Language/Haskell/Exts/Parser.ly 
new-haskell-src-exts/Language/Haskell/Exts/Parser.ly
--- old-haskell-src-exts/Language/Haskell/Exts/Parser.ly2008-12-10 
17:46:47.0 +
+++ new-haskell-src-exts/Language/Haskell/Exts/Parser.ly2008-12-10 
17:46:47.0 +
@@ -2,7 +2,6 @@
 > -
 > -- |
 > -- Module  :  Language.Haskell.Exts.Parser
-> -- Original:  Language.Haskell.Parser
 > -- Copyright   :  (c) Niklas Broberg 2004,
 > --Original (c) Simon Marlow, Sven Panne 1997-2000
 > -- License :  BSD-style (see the file LICENSE.txt)
diff -rN -u old-haskell-src-exts/Language/Haskell/Exts/Pretty.hs 
new-haskell-src-exts/Language/Haskell/Exts/Pretty.hs
--- old-haskell-src-exts/Language/Haskell/Exts/Pretty.hs2008-12-10 
17:46:47.0 +
+++ new-haskell-src-exts/Language/Haskell/Exts/Pretty.hs2008-12-10 
17:46:47.0 +
@@ -2,7 +2,6 @@
 -
 -- |
 -- Module  :  Language.Haskell.Exts.Pretty
--- Original:  Language.Haskell.Pretty
 -- Copyright   :  (c) Niklas Broberg 2004,
 --(c) The GHC Team, Noel Winstanley 1997-2000
 -- License :  BSD-style (see the file LICENSE.txt)
diff -rN -u old-haskell-src-exts/Language/Haskell/Exts/Syntax.hs 
new-haskel

Re: [Haskell-cafe] Re: ANNOUNCE: haskell-src-exts 0.4.4

2008-12-10 Thread Ross Paterson
On Wed, Dec 10, 2008 at 05:34:16PM +, ChrisK wrote:
> Is there anyway to track down and fix why haskell-src-exts-0.4.4.1 still gets
>
> "haddock: parse error in doc string"
>
> when I try to get cabal to haddock the package?

Line numbers would be handy.

In this case, the problem is the "Original:" line in some of the module
headers.
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Re: ANNOUNCE: haskell-src-exts 0.4.4

2008-12-10 Thread ChrisK

Is there anyway to track down and fix why haskell-src-exts-0.4.4.1 still gets

"haddock: parse error in doc string"

when I try to get cabal to haddock the package?

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


[Haskell-cafe] Re: Iteratee-based IO and lightweight monadic

2008-12-10 Thread John Lato
> From: "Artyom Shalkhakov" <[EMAIL PROTECTED]>
>
> Hello,
>
> Is anybody planning to use these shiny new ways for doing IO?
>
> I'm also interested in a fair comparison of ByteString/Binary
> with iteratee-based IO. Has anybody done this?
>

I would like to use Iteratee-based IO, and have been doing some
experiments with it recently for my problem domain (reading sound
files).  There has been a discussion recently on the haskell-art list
about this specific topic.  I posted some timing/memory data, and
links to my test code, which you should be able to find in the
archives if you're interested.

I have found that, with my specific implementations and test case,
Iteratee-based IO is slightly slower than the most performant
ByteString/Binary code I used, however it uses significantly less
memory and has nice composability.  Also note that my ByteString-based
reader actually reads strict ByteStrings and outputs a stream of UArr
Doubles (from the uvector package) using unsafeInterleaveIO rather
than using lazy ByteStrings directly.  Other implementations made
different choices, which I covered in some detail in the mentioned
thread.

Oleg has recently (after I did my tests) published a small library for
reading TIFF files using Iteratees.  This new code offers some
significant advantages over what I was doing with Iteratees, and may
offer performance benefits.  More work for me...

Unfortunately, neither approach (Iteratee nor ByteString) is yet
competitive with hsndfile/libsndfile.  However, an Iteratee layer that
uses hsndfile to read could be implemented, giving the benefits of the
Iteratee approach with high performance.  I believe the hsndfile
authors are interested in this.  It should be very easy to implement.
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Problem with haddock 2.3.0 (again)

2008-12-10 Thread Duncan Coutts
On Wed, 2008-12-10 at 15:30 +0100, Sean Leather wrote:
> [Responding to an old (but still relevant) thread...]
> 
> I'm getting this error as well, both in 2.3.0 and 2.4.1.
> 
> Suppose that I wanted to generate documentation for everything in my
> Cabal package except for the modules with Template Haskell in them. Is
> it enough to add {-# OPTIONS_HADDOCK hide #-} to each of these
> modules? I tried, but it didn't pan out like I hoped. I'm still
> getting the same error. Is there something else I can do?

As I understand it, using hide like that just means there will be no
documentation page for that module. However it still has to parse that
module since things in it may be re-exported from other modules and have
documentation inserted into the docs for those modules.

For example the documentation for the Prelude works this way, it's
mostly re-exported from internal hidden GHC.* modules. (It may
occasionally be broken but that's the way it's supposed to work).

Duncan

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


Re: [Haskell-cafe] Re: Can my type be allowed as return type in FFI?

2008-12-10 Thread Duncan Coutts
On Wed, 2008-12-10 at 14:17 -0200, Mauricio wrote:
> > > > foreign import "nameOfFunction" nameOfFunction
>  > > >  :: IO MyType
>  > >
>  > > > Is it possible to write a  new MyType and make it allowed as
>  > > > a  return  type from  foreign  functions?   Is changing  the
>  > > > compiler the only way to do that?
> 
>  > > Of course you're  not really returning a MyType  but a pointer
>  > > to one. (...)
> 
> This would  solve half my problem.  Can I always  trust that? I've
> been told before  that everytime a C function  returns a struct it
> is actually  returning a pointer, but  I wasn't able  to find that
> written  in stone  so that  I can  trust it  to be  valid anywhere
> Haskell will run and for any return type (like a struct containing
> just a char, for instance).

Sorry, I'm not talking about how C implements passing structures to
functions. The Haskell FFI can only bind functions that pass structures
by pointer, not by value. So if you've got a C function that passes them
by value then you need to write a wrapper function in C and bind to
that.

That way you end up with a pointer on the Haskell side.

> How does  that pointer work?  My  code didn't provide it  to the C
> function, so, I believe I  don't have to deallocate it. Where does
> the memory  it points to live?   Did Haskell FFI  engine gave that
> pointer to  the C  function? How  much time is  it going  to live?
> Enough so I can 'peek' it?

You explicitly pass the pointer and typically you manage the allocation
and de-allocation in Haskell using functions from the Foreign.* modules.

There is no magic. You have to manage all the allocation, writing and
object lifetimes explicitly. The Foreign.* modules provide many
convenience functions that make this simpler in many cases.

> Nice. It  shows unsafePerformIO. Some  functions returning structs
> are  side effect  free.  I'm  writing bindings  I want  to  put on
> hackage,  so what  do  you think  would  fit better  the taste  of
> Haskell  programmers:  pure  functions  using  unsafePerformIO  or
> IO functions?

If the C function is genuinely pure apart from having to allocate and
de-allocate temporary objects (and you treat all such objects by value
using Storable) then it's ok to make it pure in Haskell using
unsafePerformIO. If it mutates any input parameters or uses objects
managed by reference using ForeignPtr then it's not ok. So it really
depends on what the C code is doing.

Duncan

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


Re: [Haskell-cafe] Haskell project proposals reddit

2008-12-10 Thread Don Stewart
josef.svenningsson:
> On Wed, Dec 10, 2008 at 5:34 AM, Don Stewart <[EMAIL PROTECTED]> wrote:
> > I'd like to echo Jason's remarks earlier.
> >
> >http://www.reddit.com/r/haskell_proposals/
> >
> > We've tried for a couple of years now to efficiently track 'wanted
> > libraries' for the community, but never with much success.
> >
> > In particular, two approaches have been tried:
> >
> >* a wiki page
> >* the 200{6,7,8} summer of code trac
> >
> > neither proved workable long term, likely because no one knew about
> > them, they're harder to contribute to and other factors.
> >
> I think this is a wonderful initiative, but I can't shake the feeling
> that reddit is the wrong forum for this. Since reddit is primarily a
> news site it penalises old submissions and eventually moves them out
> of the front page. I can't see how that behavior is good for our
> purposes here. A project proposal that has a thousand upvotes
> shouldn't be moved from the list just because the proposal itself is
> old.
> 
> If we want something that works in the long run we want something like
> reddit but without the "aging" of old submissions. I don't know of any
> such thing but there's bound to be one, this being the internet after
> all.

As Thomas said, the 'top' page is what we're looking for. 

I'm not really interested in the actual number of votes, more in how
cheap it is to add ideas, and the discussion that ensues.

-- Don
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Re: Can my type be allowed as return type in FFI?

2008-12-10 Thread Mauricio

> > > foreign import "nameOfFunction" nameOfFunction
> > >  :: IO MyType
> >
> > > Is it possible to write a  new MyType and make it allowed as
> > > a  return  type from  foreign  functions?   Is changing  the
> > > compiler the only way to do that?

> > Of course you're  not really returning a MyType  but a pointer
> > to one. (...)

This would  solve half my problem.  Can I always  trust that? I've
been told before  that everytime a C function  returns a struct it
is actually  returning a pointer, but  I wasn't able  to find that
written  in stone  so that  I can  trust it  to be  valid anywhere
Haskell will run and for any return type (like a struct containing
just a char, for instance).

How does  that pointer work?  My  code didn't provide it  to the C
function, so, I believe I  don't have to deallocate it. Where does
the memory  it points to live?   Did Haskell FFI  engine gave that
pointer to  the C  function? How  much time is  it going  to live?
Enough so I can 'peek' it?

> > Using raw  Ptrs is not very  nice, so we  would usually either
> > wrap that in a ForeignPtr or  use a Storable instance to get a
> > MyType directly.

OK. I've instances of Storable for all the appropriate types.

> > If do recommend reading the  FFI spec. It's quite readable and
> > explains a lot of the issues.

Sure. It helped a lot. Actually, I've been able to do everything I
needed so far with just the spec and Foreign.*.

> I would also  add the chapter 17 of Real  World Haskell. you can
> read it here:

Nice. It  shows unsafePerformIO. Some  functions returning structs
are  side effect  free.  I'm  writing bindings  I want  to  put on
hackage,  so what  do  you think  would  fit better  the taste  of
Haskell  programmers:  pure  functions  using  unsafePerformIO  or
IO functions?

Thanks,
Maurício

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


Re: [Haskell-cafe] Haskell project proposals reddit

2008-12-10 Thread Thomas DuBuisson
On Wed, Dec 10, 2008 at 1:10 PM, Josef Svenningsson <
[EMAIL PROTECTED]> wrote:

> On Wed, Dec 10, 2008 at 5:34 AM, Don Stewart <[EMAIL PROTECTED]> wrote:
> > I'd like to echo Jason's remarks earlier.
> >
> >http://www.reddit.com/r/haskell_proposals/
> >
> > We've tried for a couple of years now to efficiently track 'wanted
> > libraries' for the community, but never with much success.
> >
> > In particular, two approaches have been tried:
> >
> >* a wiki page
> >* the 200{6,7,8} summer of code trac
> >
> > neither proved workable long term, likely because no one knew about
> > them, they're harder to contribute to and other factors.
> >
> I think this is a wonderful initiative, but I can't shake the feeling
> that reddit is the wrong forum for this. Since reddit is primarily a
> news site it penalises old submissions and eventually moves them out
> of the front page. I can't see how that behavior is good for our
> purposes here. A project proposal that has a thousand upvotes
> shouldn't be moved from the list just because the proposal itself is
> old.
>

This isn't entirely true.  Just go to "top" items instead of the 'hot'
items, which are age-penalized.

For example, the DMCA article from one year ago is 2nd on proggit:
http://www.reddit.com/r/programming/top/

But I do agree that using reddit is not the right method - under the
assumption that its popularity is ever increasing the items on the hot page
will naturally collect more votes than older items, and thus even the 'top'
page is age-biased.  The wiki we already had would be best in my mind, but
people just didn't use it despite a couple ML postings about it.


If we want something that works in the long run we want something like
> reddit but without the "aging" of old submissions. I don't know of any
> such thing but there's bound to be one, this being the internet after
> all.
>
> Cheers,
>
> Josef
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Re: Haskell project proposals reddit

2008-12-10 Thread Jeff Heard
I'm working on this now.  R-Tree, not Oct-tree, but it'll be there
soon.  Also working on GDAL/OGR bindings.

On Wed, Dec 10, 2008 at 4:26 AM, Neal Alexander <[EMAIL PROTECTED]> wrote:
> Don Stewart wrote:
>>
>> I'd like to echo Jason's remarks earlier.
>>
>>http://www.reddit.com/r/haskell_proposals/
>>
>> We've tried for a couple of years now to efficiently track 'wanted
>> libraries' for the community, but never with much success.
>>
>> In particular, two approaches have been tried:
>>
>>* a wiki page
>>* the 200{6,7,8} summer of code trac
>>
>> neither proved workable long term, likely because no one knew about
>> them, they're harder to contribute to and other factors.
>>
>> Now I know there's a lot of spare Haskell capacity in this community.
>> 3000 mailing list readers, but only 70 new libraries a week being
>> uploaded to Hackage --- that's not how we take over the world!
>>
>> So this is your chance to contribute:
>>
>>* propose new libraries, and explain why you'd want them
>>* vote on things you'd like to see
>>* pick up tasks that sound interesting
>>
>> Let's try to make this work!
>>
>> -- Don
>
> A library for spatial data structures would be nice (Octree etc).
>
>
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Re: Haskell project proposals reddit

2008-12-10 Thread Lionel Barret De Nazaris

Reddit is not moderated.

But there is a difference between the new links and the top links.

There you are :
http://www.reddit.com/r/haskell_proposals/comments/7ijor/a_library_or_embedded_language_for_interactive/

(upmodded)

Benjamin L.Russell wrote:

On Tue, 9 Dec 2008 20:34:20 -0800, Don Stewart <[EMAIL PROTECTED]>
wrote:

  

I'd like to echo Jason's remarks earlier.

   http://www.reddit.com/r/haskell_proposals/

We've tried for a couple of years now to efficiently track 'wanted
libraries' for the community, but never with much success.

In particular, two approaches have been tried:

   * a wiki page
   * the 200{6,7,8} summer of code trac

neither proved workable long term, likely because no one knew about
them, they're harder to contribute to and other factors.

Now I know there's a lot of spare Haskell capacity in this community.
3000 mailing list readers, but only 70 new libraries a week being
uploaded to Hackage --- that's not how we take over the world!

So this is your chance to contribute:

   * propose new libraries, and explain why you'd want them
   * vote on things you'd like to see
   * pick up tasks that sound interesting

Let's try to make this work!



After just registering and proposing "A library (or "embedded
language") for interactive animations with 2D and 3D graphics and
sound to replace Fran," thirteen minutes have passed, but my proposal
hasn't appeared yet.

Is your proposal list at http://www.reddit.com/r/haskell_proposals/
moderated?

-- Benjamin L. Russell


  

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


Re: [Haskell-cafe] Problem with haddock 2.3.0 (again)

2008-12-10 Thread Sean Leather
[Responding to an old (but still relevant) thread...]

I'm getting this error as well, both in 2.3.0 and 2.4.1.

Suppose that I wanted to generate documentation for everything in my Cabal
package except for the modules with Template Haskell in them. Is it enough
to add {-# OPTIONS_HADDOCK hide #-} to each of these modules? I tried, but
it didn't pan out like I hoped. I'm still getting the same error. Is there
something else I can do?

Thanks,
Sean

On Tue, Oct 28, 2008 at 01:01, David Waern <[EMAIL PROTECTED]> wrote:

> I think this is a bug in Haddock related to template-haskell
> declarations. It will hopefully be fixed soon, but I'm afraid it won't
> part of the 2.3.0 version that will come with GHC 6.10.1.
>
> David
>
> 2008/10/27 Leonidas Fegaras <[EMAIL PROTECTED]>:
> >
> > Sorry for the previous message. I am sending it again.
> >
> >Dear fellow haskell programmers,
> >I tried to install a package in hackageDB and got a strange error
> from
> >haddock:
> >
> >haddock: internal Haddock or GHC error: Maybe.fromJust: Nothing
> >
> >Here is the complete log:
> >
> http://hackage.haskell.org/packages/archive/HXQ/0.10.0/logs/failure/ghc-6.8
> >When I build it using Cabal 1.6.0.1 and haddock 2.2.2 using
> 'runhaskell
> >Setup.lhs haddock', it works fine (I get warnings but no errors).
> >Also haddock 2.3.0 is not available in hackageDB so I can't test
> it
> >myself. Where I can find haddock 2.3.0?
> >
> >Thank you for your help,
> >Leonidas Fegaras
> >
> > _
> > Stay organized with simple drag and drop from Windows Live Hotmail.
> >
> http://windowslive.com/Explore/hotmail?ocid=TXT_TAGLM_WL_hotmail_102008___
> > Haskell-Cafe mailing list
> > Haskell-Cafe@haskell.org
> > http://www.haskell.org/mailman/listinfo/haskell-cafe
> >
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Re: File name encodings

2008-12-10 Thread ChrisK

Duncan Coutts wrote:

Yet another reason why FilePath /= String (except on Windows where it
does).

Duncan


Well, it is not a "OS" issue but a "FileSystem" issue.

OS X is a Unix, but the main filesystem is HFS+ which has Unicode names, though 
they use a different normalization.


So "FilePath == String" on most OS X systems.

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


Re: [Haskell-cafe] Associated data types

2008-12-10 Thread Andres Loeh
Hi.

> Date: Wed, 10 Dec 2008 13:36:11 +
> From: Lennart Augustsson <[EMAIL PROTECTED]>
> Subject: Re: [Haskell-cafe] Associated data types
> 
> For an associated data type D, we know that the type function D is
> injective, i.e., for different indicies given to D we'll get different
> data types.  This makes much more powerful reasoning possible in the
> type checker.  If associated data types are removed there has to be
> some new mechanism to declare an associated type as injective, or the
> type system will lose power.
> 
>   -- Lennart
> 
> 2008/12/10 Eyal Lotem <[EMAIL PROTECTED]>:
> > If we have associated type synonyms, is there still reason to have
> > associated data types?

[...]

Another, somewhat related, issue is that associated type synonyms cannot
currently be partially applied, whereas associated data types can.

Cheers,
  Andres

-- 

Andres Loeh, Universiteit Utrecht

mailto:[EMAIL PROTECTED] mailto:[EMAIL PROTECTED]
http://www.andres-loeh.de
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Associated data types

2008-12-10 Thread Lennart Augustsson
Sure.  Here's an example.

{-# LANGUAGE TypeFamilies #-}
module Mail where

class C1 a where
data T1 a :: *
f1 :: T1 a -> T1 a

instance C1 Bool where
data T1 Bool = A | B deriving Show
f1 A = B
f1 B = A

class C2 a where
type T2 a :: *
f2 :: T2 a -> T2 a

data D2 = C | D deriving Show
instance C2 Bool where
type T2 Bool = D2
f2 C = D
f2 D = C

If you try to evaluate (f1 A) it works fine, whereas (f2 C) gives a
type error.  In fact, the f2 function is impossible to use.

  -- Lennart

On Wed, Dec 10, 2008 at 1:40 PM, Jules Bean <[EMAIL PROTECTED]> wrote:
> Lennart Augustsson wrote:
>>
>> For an associated data type D, we know that the type function D is
>> injective, i.e., for different indicies given to D we'll get different
>> data types.  This makes much more powerful reasoning possible in the
>> type checker.  If associated data types are removed there has to be
>> some new mechanism to declare an associated type as injective, or the
>> type system will lose power.
>
> Interesting.
>
> Are you able to give an example which exploits this "known distinct types"
> effect?
>
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Associated data types

2008-12-10 Thread Jules Bean

Lennart Augustsson wrote:

For an associated data type D, we know that the type function D is
injective, i.e., for different indicies given to D we'll get different
data types.  This makes much more powerful reasoning possible in the
type checker.  If associated data types are removed there has to be
some new mechanism to declare an associated type as injective, or the
type system will lose power.


Interesting.

Are you able to give an example which exploits this "known distinct 
types" effect?

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


Re: [Haskell-cafe] Associated data types

2008-12-10 Thread Lennart Augustsson
For an associated data type D, we know that the type function D is
injective, i.e., for different indicies given to D we'll get different
data types.  This makes much more powerful reasoning possible in the
type checker.  If associated data types are removed there has to be
some new mechanism to declare an associated type as injective, or the
type system will lose power.

  -- Lennart


2008/12/10 Eyal Lotem <[EMAIL PROTECTED]>:
> If we have associated type synonyms, is there still reason to have
> associated data types?
>
> For example, we can replace:
>
> class C b where
>  data D b
>  ...
>
> instance C Int where
>  data D Int = D | E
>
> with:
>
> class C b where
>  type D b
>  ...
>
> data DInt = D | E
> instance C Int where
>  type D Int = DInt
>
>
> Or perhaps allow, for convenience, this form (which would desugar to the
> above):
>
> class C b where
>  type D b
>  ...
>
> instance C Int where
>  data D Int = D | E
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
>
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Associated data types

2008-12-10 Thread Eyal Lotem
If we have associated type synonyms, is there still reason to have
associated data types?

For example, we can replace:

class C b where
 data D b
 ...

instance C Int where
 data D Int = D | E

with:

class C b where
 type D b
 ...

data DInt = D | E
instance C Int where
 type D Int = DInt


Or perhaps allow, for convenience, this form (which would desugar to the
above):

class C b where
 type D b
 ...

instance C Int where
 data D Int = D | E
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Haskell project proposals reddit

2008-12-10 Thread Josef Svenningsson
On Wed, Dec 10, 2008 at 5:34 AM, Don Stewart <[EMAIL PROTECTED]> wrote:
> I'd like to echo Jason's remarks earlier.
>
>http://www.reddit.com/r/haskell_proposals/
>
> We've tried for a couple of years now to efficiently track 'wanted
> libraries' for the community, but never with much success.
>
> In particular, two approaches have been tried:
>
>* a wiki page
>* the 200{6,7,8} summer of code trac
>
> neither proved workable long term, likely because no one knew about
> them, they're harder to contribute to and other factors.
>
I think this is a wonderful initiative, but I can't shake the feeling
that reddit is the wrong forum for this. Since reddit is primarily a
news site it penalises old submissions and eventually moves them out
of the front page. I can't see how that behavior is good for our
purposes here. A project proposal that has a thousand upvotes
shouldn't be moved from the list just because the proposal itself is
old.

If we want something that works in the long run we want something like
reddit but without the "aging" of old submissions. I don't know of any
such thing but there's bound to be one, this being the internet after
all.

Cheers,

Josef
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Translating RWH into other languages

2008-12-10 Thread Bulat Ziganshin
Hello Don,

There is a team of people which want to translate RWH book into
Russian. is it ok? can you help us by establishing "subversion" of RWH
book on your site. if it will contain copy of the English book for the
beginning and allow team members to further edit it - it will be great!

-- 
Best regards,
 Bulat  mailto:[EMAIL PROTECTED]

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


Re: [Haskell-cafe] Can my type be allowed as return type in FFI?

2008-12-10 Thread Andrea Rossato
On Wed, Dec 10, 2008 at 12:30:56PM +, Duncan Coutts wrote:
> If do recommend reading the FFI spec. It's quite readable and explains a
> lot of the issues. Getting familiar with the Foreign libraries will help
> too. The most important bits are understanding ForeignPtr and the
> Storable class.

I would also add the chapter 17 of Real World Haskell. you can read it
here:

http://book.realworldhaskell.org/read/interfacing-with-c-the-ffi.html

It will guide you through the writing of the bindings to the PCRE
library. Very useful and nicely conceived.

A good collection of Storable instances that I found very helpful in
understanding the subject can be found in the X11 bindings.

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


Re: [Haskell-cafe] File name encodings

2008-12-10 Thread Duncan Coutts
On Tue, 2008-12-09 at 18:17 -0800, Don Stewart wrote:
> Oh, perhaps you want to 'decode' the string that 
> dirOpenDialog returns.
> 
> redcom:
> > Hi Don,
> > 
> > must be doing something wrong.
> > 
> > The messed up string originates from calling Graphics.UI.WX.dirOpenDialog  
> > and selecting a directory with Umlauts.

This is such a huge can of worms.

The Gtk open dialog has two functions for returning the selected file
name. One returns a string suitable to use with operating system
functions like readFile while the other returns a unicode string
suitable to display in the user interface.

These need not be the same, or even inter-convertible. On Windows they
are identical because it uses unicode for file names, however unix uses
byte strings and people sometimes use utf8 and sometimes some other
locale.

So it's not safe to convert a file name to a unicode string and then
back again and expect to be saving the same file. Document editor
programs typically remember both strings so that it can save the file
again even if displaying the file name was lossy (eg due to locale
conversion errors like invalid utf8).

Yet another reason why FilePath /= String (except on Windows where it
does).

Duncan

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


Re: [Haskell-cafe] Can my type be allowed as return type in FFI?

2008-12-10 Thread Duncan Coutts
On Wed, 2008-12-10 at 08:33 -0200, Mauricio wrote:
> Hi,
> 
> When I do:
> 
> foreign import "nameOfFunction" nameOfFunction
>   :: IO MyType
> 
> I can get a function that return MyType only if
> it's a pointer or some of the C* type family. Is
> it possible to write a new MyType and make it
> allowed as a return type from foreign functions?
> Is changing the compiler the only way to do that?

Of course you're not really returning a MyType but a pointer to one. So
use:

foreign import "nameOfFunction" nameOfFunction
 :: IO (Ptr MyType)

Using raw Ptrs is not very nice, so we would usually either wrap that in
a ForeignPtr or use a Storable instance to get a MyType directly. Which
approach to use depends on if you want MyType to have value or reference
semantics. If the C type is abstract and you only access it via a
pointer then the ForeignPtr approach is sensible. If you directly access
all the fields of the C type then using an equivalent Haskell MyType and
converting using Storable is the sensible approach.

If do recommend reading the FFI spec. It's quite readable and explains a
lot of the issues. Getting familiar with the Foreign libraries will help
too. The most important bits are understanding ForeignPtr and the
Storable class.

Duncan

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


Re: [Haskell-cafe] Re: Does ghc use Language.Haskell.*?

2008-12-10 Thread Duncan Coutts
On Wed, 2008-12-10 at 09:32 -0200, Mauricio wrote:
> >> Why can ghc read the program, but not the standard
> >> library parser? Does ghc use something else?
> >> Is it possible to use whatever ghc uses to build
> >> a prettyprinter?
> > 
> > Language.Haskell is known to be incomplete.  The haskell-src-exts 
> > package on http://hackage.haskell.org will be more useful.
> > 
> 
> Haskell-src-exts understands mode features, but I
> just tried using it and it seems it's also not
> Unicode aware.

I'm just guessing here but I expect that haskell-src and
haskell-src-exts are unicode aware but that you're using something like
readFile to read your UTF-8 .hs file. The readFile function (currently)
only reads text files in latin-1, not UTF-8. Try using the utf8-string
package and the System.IO.UTF8.readFile function instead.

Duncan

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


[Haskell-cafe] Re: Does ghc use Language.Haskell.*?

2008-12-10 Thread Mauricio

Why can ghc read the program, but not the standard
library parser? Does ghc use something else?
Is it possible to use whatever ghc uses to build
a prettyprinter?


Language.Haskell is known to be incomplete.  The haskell-src-exts 
package on http://hackage.haskell.org will be more useful.




Haskell-src-exts understands mode features, but I
just tried using it and it seems it's also not
Unicode aware.

Thanks,
Maurício

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


[Haskell-cafe] Iteratee-based IO and lightweight monadic regions in the wild

2008-12-10 Thread Artyom Shalkhakov
Hello,

Is anybody planning to use these shiny new ways for doing IO?

I'm also interested in a fair comparison of ByteString/Binary
with iteratee-based IO. Has anybody done this?

Regards,
Artyom Shalkhakov.
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Re: a haskell_proposals subreddit

2008-12-10 Thread Benjamin L . Russell
On Wed, 10 Dec 2008 19:47:04 +0900, Benjamin L.Russell
<[EMAIL PROTECTED]> wrote:

>On Wed, 10 Dec 2008 10:35:48 +, "Neil Mitchell"
><[EMAIL PROTECTED]> wrote:
>
>>Hi
>>
>>Clicking up once makes you vote up, clicking up again cancels your up
>>vote. i.e. to cancel an upvote, click up again. Similarly clicking
>>down votes down, clicking again removes your down vote. So therefore
>>clicking up, then down, is (+1) then (-2).
>
>Indeed!  That worked.  Thank you!
>
>Now to find a way to get REDDIT to post my contributions somehow.
>Strangely, it lists them separately in my profile, but not in the
>thread.  I don't know how to resolve this.  Logging off and back on
>doesn't help; deleting the original post and reposting it doesn't
>help, either.  Perhaps REDDIT doesn't let users living in a foreign
>country post?
>
>To contribute, the correct procedure is to visit
>http://www.reddit.com/r/haskell_proposals/, then click on the "Submit
>a link" sidebar link on the right, and then to fill in the form that
>appears.  Is this correct?

This time, my earlier contribution, which I had already deleted and
reposted, appeared with one plus vote, but without my username.
Apparently, contributions sometimes appear after a long (about an
hour) wait; sometimes they don't (the first time, it didn't appear
after even two hours).

Since I wanted my username to appear below my contribution, I
re-deleted the contribution (including the plus vote along with it),
and then reposted it (of course, without the vote).  However, now it
doesn't appear again.

I just hope that whoever voted for my contribution resubmits the vote.

-- Benjamin L. Russell
-- 
Benjamin L. Russell  /   DekuDekuplex at Yahoo dot com
http://dekudekuplex.wordpress.com/
Translator/Interpreter / Mobile:  +011 81 80-3603-6725
"Furuike ya, kawazu tobikomu mizu no oto." 
-- Matsuo Basho^ 

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


[Haskell-cafe] Re: a haskell_proposals subreddit

2008-12-10 Thread Benjamin L . Russell
On Wed, 10 Dec 2008 10:35:48 +, "Neil Mitchell"
<[EMAIL PROTECTED]> wrote:

>Hi
>
>Clicking up once makes you vote up, clicking up again cancels your up
>vote. i.e. to cancel an upvote, click up again. Similarly clicking
>down votes down, clicking again removes your down vote. So therefore
>clicking up, then down, is (+1) then (-2).

Indeed!  That worked.  Thank you!

Now to find a way to get REDDIT to post my contributions somehow.
Strangely, it lists them separately in my profile, but not in the
thread.  I don't know how to resolve this.  Logging off and back on
doesn't help; deleting the original post and reposting it doesn't
help, either.  Perhaps REDDIT doesn't let users living in a foreign
country post?

To contribute, the correct procedure is to visit
http://www.reddit.com/r/haskell_proposals/, then click on the "Submit
a link" sidebar link on the right, and then to fill in the form that
appears.  Is this correct?

-- Benjamin L. Russell
-- 
Benjamin L. Russell  /   DekuDekuplex at Yahoo dot com
http://dekudekuplex.wordpress.com/
Translator/Interpreter / Mobile:  +011 81 80-3603-6725
"Furuike ya, kawazu tobikomu mizu no oto." 
-- Matsuo Basho^ 

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


Re: [Haskell-cafe] Re: a haskell_proposals subreddit

2008-12-10 Thread Neil Mitchell
Hi

Clicking up once makes you vote up, clicking up again cancels your up
vote. i.e. to cancel an upvote, click up again. Similarly clicking
down votes down, clicking again removes your down vote. So therefore
clicking up, then down, is (+1) then (-2).

Thanks

Neil

> Then I clicked on the up-arrow next to "An ARM port of GHC that works
> (so we can program the iphone or android) (self.haskell_proposals)",
> and the number below that arrow increased from 18 to 19, so I tried
> resetting it by clicking the down-arrow, and the number then decreased
> back to 17, so I clicked the up-arrow again, and the number increased
> to 19 again.
>
> Is there any way to delete my vote?  I submitted it by mistake to see
> if the REDDIT site was working for me, but even if I log off and back
> on again, the figure and up-arrow both still display in orange.
>
> Since I can't submit my proposal with REDDIT, I'll just have to give
> up there.
>
> -- Benjamin L. Russel
> --
> Benjamin L. Russell  /   DekuDekuplex at Yahoo dot com
> http://dekudekuplex.wordpress.com/
> Translator/Interpreter / Mobile:  +011 81 80-3603-6725
> "Furuike ya, kawazu tobikomu mizu no oto."
> -- Matsuo Basho^
>
> ___
> Haskell-Cafe mailing list
> Haskell-Cafe@haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Can my type be allowed as return type in FFI?

2008-12-10 Thread Mauricio

Hi,

When I do:

foreign import "nameOfFunction" nameOfFunction
 :: IO MyType

I can get a function that return MyType only if
it's a pointer or some of the C* type family. Is
it possible to write a new MyType and make it
allowed as a return type from foreign functions?
Is changing the compiler the only way to do that?

Thanks,
Maurício

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


[Haskell-cafe] Re: a haskell_proposals subreddit

2008-12-10 Thread Benjamin L . Russell
On Wed, 10 Dec 2008 02:00:26 -0800, "Jason Dusek"
<[EMAIL PROTECTED]> wrote:

>  This has happened to some of my proposals, too.
>
>  The reddit is completely open.

That is strange.  I just deleted my proposal and resubmitted it, but
it still didn't appear.

Then I clicked on the up-arrow next to "An ARM port of GHC that works
(so we can program the iphone or android) (self.haskell_proposals)",
and the number below that arrow increased from 18 to 19, so I tried
resetting it by clicking the down-arrow, and the number then decreased
back to 17, so I clicked the up-arrow again, and the number increased
to 19 again.

Is there any way to delete my vote?  I submitted it by mistake to see
if the REDDIT site was working for me, but even if I log off and back
on again, the figure and up-arrow both still display in orange.

Since I can't submit my proposal with REDDIT, I'll just have to give
up there.

-- Benjamin L. Russel
-- 
Benjamin L. Russell  /   DekuDekuplex at Yahoo dot com
http://dekudekuplex.wordpress.com/
Translator/Interpreter / Mobile:  +011 81 80-3603-6725
"Furuike ya, kawazu tobikomu mizu no oto." 
-- Matsuo Basho^ 

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


Re: [Haskell-cafe] Re: a haskell_proposals subreddit

2008-12-10 Thread Jason Dusek
  This has happened to some of my proposals, too.

  The reddit is completely open.

--
_jsn
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Re: a haskell_proposals subreddit

2008-12-10 Thread Benjamin L . Russell
On Tue, 9 Dec 2008 16:22:13 -0800, "Jason Dusek"
<[EMAIL PROTECTED]> wrote:

>  There is a subreddit for people to propose libraries:
>
>http://www.reddit.com/r/haskell_proposals/
>
>  The idea being, that Web 2.0 will help us to allocate our
>  collective talents more efficiently when it comes to
>  extensions (and perhaps clue us in when our pet project is
>  something people really want).

I tried submitting a proposal for "A library (or "embedded language")
for interactive animations with 2D and 3D graphics and sound to
replace Fran" an hour ago, but it hasn't appeared, while a later
proposal has appeared.

Do I need to have somebody add me to the list of contributors to
participate?

-- Benjamin L. Russell
-- 
Benjamin L. Russell  /   DekuDekuplex at Yahoo dot com
http://dekudekuplex.wordpress.com/
Translator/Interpreter / Mobile:  +011 81 80-3603-6725
"Furuike ya, kawazu tobikomu mizu no oto." 
-- Matsuo Basho^ 

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


[Haskell-cafe] Re: Haskell project proposals reddit

2008-12-10 Thread Neal Alexander

Don Stewart wrote:

I'd like to echo Jason's remarks earlier.

http://www.reddit.com/r/haskell_proposals/

We've tried for a couple of years now to efficiently track 'wanted
libraries' for the community, but never with much success.

In particular, two approaches have been tried:

* a wiki page
* the 200{6,7,8} summer of code trac

neither proved workable long term, likely because no one knew about
them, they're harder to contribute to and other factors.

Now I know there's a lot of spare Haskell capacity in this community.
3000 mailing list readers, but only 70 new libraries a week being
uploaded to Hackage --- that's not how we take over the world!

So this is your chance to contribute:

* propose new libraries, and explain why you'd want them
* vote on things you'd like to see
* pick up tasks that sound interesting

Let's try to make this work!

-- Don


A library for spatial data structures would be nice (Octree etc).


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


Re: [Haskell-cafe] Re: ANNOUNCE: haskell-src-exts 0.4.4

2008-12-10 Thread Lemmih
On Wed, Dec 10, 2008 at 1:30 AM, Niklas Broberg
<[EMAIL PROTECTED]> wrote:
>> Are SrcSpan's on the TODO list?
>
> Seeing how this is the first I hear of them, I can't say that they
> have been, but they could be. :-)
>
> Could you give me a rundown on what usecases you'd need SrcSpans for,
> and where HSE currently fails you in this regard?

Many editors can find source spans in error messages and highlight the
indicated code.
Source analysing tools such as HPC or global dead code eliminators
often need to annotate the code.

These are just the use cases I've personally encountered. I'm sure
there are more just waiting to be developed.

-- 
Cheers,
  Lemmih
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Re: ANNOUNCE: haskell-src-exts 0.4.4

2008-12-10 Thread Neil Mitchell
Hi Niklas,

>> I certainly have OPTIONS_DERIVE and CATCH pragmas that I've inserted
>> into various programs over time.
>
> Are you sure that would be a problem? Seems to me that OPTIONS_DERIVE
> would appear in the same position as any other OPTIONS pragma, in
> which case HSE will handle it just fine. I don't know where CATCH
> would appear, but intuitively it sounds like something that would
> appear as an expression (or statement which is really just an
> expression), in which case HSE will handle it too.
> It's only pragmas appearing in "surprising" locations that would cause
> HSE to balk.

Ah, so its not unrecognised pragmas, but pragmas in unrecognised
places? In that case that's fine. The CATCH pragmas go at the
statement level, so are fairly standard in terms of placement.

Thanks

Neil
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe