[Haskell-cafe] ANNOUNCE: Cardinality-0.1

2010-01-20 Thread Andrey Sisoyev

Hi everybody!

I developed a new package that you may find handy, when transforming
containers.
With this package we now have unified ways to make safe transforms from a
- Maybe (to a) and from - Maybe to between simple containers like [],
Maybe, Identity, Map.

Test set that returns all True:

((sContTransT []) :: Maybe (Maybe Int)) == Just Nothing
((sContTrans  ()) :: Maybe (Maybe Int)) == Just Nothing
((sContTransT [1]) :: (Maybe (Maybe Int))) == Just (Just 1)
((sContTransT [1, 2]) :: (Maybe (Maybe Int))) == Nothing
((sContTransT $ Just Hello) :: (Maybe (Identity String))) == Just
(Identity Hello)
((sContTransT [Hello]) :: Maybe (Identity String)) == Just (Identity
Hello)
((sContTransT (EmptySet :: EmptySet String)) :: (Maybe [String])) == Just []
((sContTransT Hello) :: Maybe (EmptySet Char)) == Nothing
((sContTransT (key, elem)) :: Maybe (Map String String)) == Just
(singleton key elem)
((sContTrans [(key1, elem1), (key2, elem2)]) :: Maybe (Map String
String)) == Just (fromList [(key1, elem1), (key2, elem2)])
((sContTrans (EmptySet :: EmptySet (String, String))) :: Maybe (Map String
String)) == Just empty
((sContTrans []) :: Maybe ()) == Just ()
((sContTrans (NEL 'H' i!)) :: Maybe String) == Just Hi! --
Data.NeverEmptyList
((sContTrans ()) :: Maybe String) == Just 
((sContTrans ) :: Maybe (Identity Char)) == Nothing
((sContTrans Hi!) :: Maybe ()) == Nothing

Package is to be found here: http://hackage.haskell.org/package/Cardinality
It dances around cardinality - a measure of of the number of elements of the
set (container); and cardinality constraint of the container. Cardinality
constraints:
** (): 0 elements
** Identity a: 1 element
** (Maybe a): 0..1 elements
** [a]: 0..Infinity elements
** Map k e: 0..Infinity elements
** (a,a,a): 3 elements

I also introduced 2 containers (which I found strange not to be in the
Prelude):
** data EmptySet a = EmptySet -- (0 elements)
** data NeverEmptyList a = NEL a [a] -- (1..Infinity elements)

The package provides all sorts of transformation instances between this
types (except for tuples, 3ples, 4ples... I didn't make all transforms fo
them - only list - (N)ple and opposites)

I tried also to deal with transforms like container a - a, a -
container a using OverlappingInstances. But failed to approve them -
probably due to the lack of experience with this extension. I found them
introducing too much unwanted complexity into the reasoning about types. It
was the last straw to me, when GHC started to proving me, that unity is not
less general then any type variable a, and demanding tribute of
IncoherentInstances.
---

Any feedback is appreciated.

Best regards, Andrey.
-- 
View this message in context: 
http://old.nabble.com/ANNOUNCE%3A-Cardinality-0.1-tp27239964p27239964.html
Sent from the Haskell - Haskell-Cafe mailing list archive at Nabble.com.

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


Re: [Haskell-cafe] cabal install glfw

2010-01-20 Thread Ozgur Akgun
Sorry, I cannot install GHC 6.12 right now, so I won't be able to try it.
Thanks anyway.

2010/1/19 Paul L nine...@gmail.com

 The problem you mentioned has long been fixed in the darcs version,
 but then there is also another problem: you need GHC 6.12 in order to
 compile GLFW for Snow Leopard. Here is a detail description of why
 prior versions of GHC fails to work:
 http://hackage.haskell.org/trac/ghc/ticket/3522

 I've just made a new release and bumped GLFW to 0.4.2, you may try it
 with GHC 6.12 on Snow Leopard and see if it now works.


 On 1/19/10, Ozgur Akgun ozgurak...@gmail.com wrote:
  Dear Cafe and Paul,
 
  I am constantly having problems with cabal install in Snow Leopard. Some
 I
  solve, some I cannot unfortunately.
 
  When I run
 
  sudo cabal install glfw -v2
 
  in Snow Leopard, I get the following.
 
  glfw/lib/macosx/macosx_enable.c:1:0:
   error: bad value (apple) for -march= switch
 
  glfw/lib/macosx/macosx_enable.c:1:0:
   error: bad value (apple) for -mtune= switch
  cabal: Error: some packages failed to install:
  GLFW-0.4.1 failed during the building phase. The exception was:
  exit: ExitFailure 1
 
 
  Regards,
 
  --
  Ozgur Akgun
 


 --
 Regards,
 Paul Liu

 Yale Haskell Group
 http://www.haskell.org/yale




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


RE: [Haskell-cafe] Non-ASCII characters in .cabal files break Haddock?

2010-01-20 Thread Bayley, Alistair
 I recently uploaded a package to Hackage[1], which contains a
 non-ASCII character in the .cabal file. That file is encoded with
 UTF-8, and it displays fine in Vim, Firefox, and even the Hackage
 package landing page. However, Haddock is failing to build it[2] --
 apparently it can't handle UTF-8 encoded text properly.
 
 In documentation sections, Haddock supports special syntax for
 escaping non-ASCII. Is there any equivalent syntax for Cabal files?

What happens if you use the Haddock syntax in the cabal file
(description field)?

It's not even certain that Haddock is choking on UTF8 - it might be some
other encoding. The description from the cabal file is written to a temp
file, and this is passed to haddock with the --prologue option. In your
log output we can see:

/usr/local/bin/haddock --use-contents=/package/natural-sort-0.1
--prologue=dist/doc/html/natural-sort/haddock-prolog17177.txt ...
haddock: internal Haddock or GHC error:
dist/doc/html/natural-sort/haddock-prolog17177.txt: hGetContents:
invalid argument (Invalid or incomplete multibyte or wide character)

So it is actually hGetContents that is choking on the
haddock-prolog17177.txt file. That might well depend on the default
encoding for the shell that runs the build. What happens on your own
machine?

Alistair
*
Confidentiality Note: The information contained in this message,
and any attachments, may contain confidential and/or privileged
material. It is intended solely for the person(s) or entity to
which it is addressed. Any review, retransmission, dissemination,
or taking of any action in reliance upon this information by
persons or entities other than the intended recipient(s) is
prohibited. If you received this in error, please contact the
sender and delete the material from any computer.
*

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


[Haskell-cafe] Conditional code for Haddock

2010-01-20 Thread Roel van Dijk
I want to generate documentation for the following code snippet:

 import qualified Data.ByteString as BS ( ByteString, length )

 -- | Foo 'BS.empty' equals 0
 foo ∷ BS.ByteString → Int
 foo = BS.length

Because I do not explicitly import BS.empty haddock will not generate
a nice link.
I can fix it by adding:

 import qualified Data.ByteString as BS ( empty )

But now the compiler rightly warns me:

 Warning: Imported from `Data.ByteString' but not used: `BS.empty'

There is a ticket related to this problem [1], but I do not think making
haddock 'magically' find BS.empty is the right answer. What I would like to
do is:

 #ifdef __DOC__
 import qualified Data.ByteString as BS ( empty )
 #endif

Because I use additional symbols in my comments it feels natural to also
have special imports for them.

I know that cabal used to define the __HADDOCK__ macro. Is it possible to
manually define a preprocessor macro when haddock is run? Perhaps an
equivalent to ghc-options: haddock-options?

Ideally I want only have to add the following to my .cabal file:

 haddock-options: -D__DOC__

Regards,
Roel van Dijk


1 - http://trac.haskell.org/haddock/ticket/78
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Conditional code for Haddock

2010-01-20 Thread Daniel Fischer
Am Mittwoch 20 Januar 2010 12:20:55 schrieb Roel van Dijk:
 I want to generate documentation for the following code snippet:
  import qualified Data.ByteString as BS ( ByteString, length )
 
  -- | Foo 'BS.empty' equals 0
  foo ∷ BS.ByteString → Int
  foo = BS.length

 Because I do not explicitly import BS.empty haddock will not generate
 a nice link.

 I can fix it by adding:
  import qualified Data.ByteString as BS ( empty )

 But now the compiler rightly warns me:
  Warning: Imported from `Data.ByteString' but not used: `BS.empty'

 There is a ticket related to this problem [1], but I do not think making
 haddock 'magically' find BS.empty is the right answer. What I would like
 to

 do is:
  #ifdef __DOC__
  import qualified Data.ByteString as BS ( empty )
  #endif

 Because I use additional symbols in my comments it feels natural to also
 have special imports for them.

 I know that cabal used to define the __HADDOCK__ macro. Is it possible
 to manually define a preprocessor macro when haddock is run? Perhaps an
 equivalent to ghc-options: haddock-options?

Doesn't haddock define __HADDOCK__ by itself?

I would've thought

import qualified Data.ByteString as Bs
( ByteString
, length
#ifdef __HADDOCK__
, empty
#endif
)

should work.


 Ideally I want only have to add the following to my .cabal file:
  haddock-options: -D__DOC__

 Regards,
 Roel van Dijk


 1 - http://trac.haskell.org/haddock/ticket/78

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


Re: [Haskell-cafe] Conditional code for Haddock

2010-01-20 Thread Sean Leather
 Doesn't haddock define __HADDOCK__ by itself?

 I would've thought

 import qualified Data.ByteString as Bs
( ByteString
, length
 #ifdef __HADDOCK__
, empty
 #endif
)

 should work.


I did some conditional Haddocking in EMGM. See, for example:


http://hackage.haskell.org/packages/archive/emgm/0.3.1/doc/html/src/Generics-EMGM-Data-Bool.html

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


Re: [Haskell-cafe] Conditional code for Haddock

2010-01-20 Thread Roel van Dijk
 Doesn't haddock define __HADDOCK__ by itself?

That appears to be a common misconception. The discussion on this
ticket [1] indicates that haddock does *not* define __HADDOCK__. So I
can not rely on it being defined. Therefore I would like to define it
myself, but only in the case that haddock is being run on my code.


1 - http://trac.haskell.org/haddock/ticket/76
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Non-ASCII characters in .cabal files break Haddock?

2010-01-20 Thread Ross Paterson
On Tue, Jan 19, 2010 at 01:00:07PM -0800, John Millikin wrote:
 I recently uploaded a package to Hackage[1], which contains a
 non-ASCII character in the .cabal file. That file is encoded with
 UTF-8, and it displays fine in Vim, Firefox, and even the Hackage
 package landing page. However, Haddock is failing to build it[2] --
 apparently it can't handle UTF-8 encoded text properly.

It seems that openTempFile writes the text without any encoding (#3832).
Haddock quite reasonably fails because it expects encoded text.

 In documentation sections, Haddock supports special syntax for
 escaping non-ASCII. Is there any equivalent syntax for Cabal files?

The Description field is haddock markup, so that should be a workaround.
(or you could use more naive spelling)
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Having a look at XMonad window manager

2010-01-20 Thread michael rice
Hi Ketil,

I was just looking around and found this:

http://xwinman.org/

No mention of XMonad here, even under the Other category.

I got it running but it became unresponsive as soon as I deleted a window, and 
instead of tiling newly opened windows it just displayed them in the top left 
corner, obscuring what was already there (possibly the way it's supposed to 
work?). But the XMonad video I watched on YouTube looked interesting enough to 
pursue it further, so I'm in research mode.

Thanks,

Michael

--- On Wed, 1/20/10, Ketil Malde ke...@malde.org wrote:

From: Ketil Malde ke...@malde.org
Subject: Re: [Haskell-cafe] Having a look at XMonad window manager
To: michael rice nowg...@yahoo.com
Cc: Ivan Lazar Miljenovic ivan.miljeno...@gmail.com, 
haskell-cafe@haskell.org
Date: Wednesday, January 20, 2010, 1:20 AM

michael rice nowg...@yahoo.com writes:

 Perhaps. Is there a Linux distro that's more XMonad friendly?

I use Ubuntu, in the GDM login screen, I get a drop down menu that
includes Xmonad as an option.  Even if Fedora doesn't have this, it
probably has a Failsafe option that will just give you an xterm, from
which you can run xmonad manually?

-k
-- 
If I haven't seen further, it is by standing in the footprints of giants



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


[Haskell-cafe] formatTime doesn't work with local time ??

2010-01-20 Thread Brian Denheyer
My error:

Couldn't match expected type `T.UTCTime'
   against inferred type `T.LocalTime'
In the second argument of `formatTime', namely `date'
In the expression: formatTime %Y/%m/%e %k:%M:%S date
 

But the docs have LocalTime listed as one of the FormatTime instances:

Instances
FormatTime Day
FormatTime UTCTime
FormatTime TimeZone
FormatTime TimeOfDay
FormatTime ZonedTime
FormatTime LocalTime


 ?


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


Re: [Haskell-cafe] Conditional code for Haddock

2010-01-20 Thread Roel van Dijk
On Wed, Jan 20, 2010 at 12:57 PM, Sean Leather leat...@cs.uu.nl wrote:
 I did some conditional Haddocking in EMGM. See, for example:
 http://hackage.haskell.org/packages/archive/emgm/0.3.1/doc/html/src/Generics-EMGM-Data-Bool.html

At first I didn't see what you did differently. Until I checked your
Setup.lhs. It does exactly what I want! Plus a few other things which
I am going to borrow (runtests hook, nolib flag and hpc program
coverage).

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


[Haskell-cafe] Re: Why no merge and listDiff?

2010-01-20 Thread Will Ness
Derek Elkins derek.a.elkins at gmail.com writes:

 
 On Sun, Jan 17, 2010 at 2:22 PM, Will Ness will_n48 at yahoo.com wrote:
  Hello cafe,
 
  I wonder, if we have List.insert and List.union, why no List.merge (:: Ord 
a =
  [a] - [a] - [a]) and no List.minus ? These seem to be pretty general
  operations.
 
 Presumably by List.minus you mean the (\\) function in Data.List. 

No, it has to search its second list over and over from the start, to be able 
to deal with unordered lists, so its performance can't be good. 


 You
 probably also want to look at the package data-ordlist on hackage
 (http://hackage.haskell.org/packages/archive/data-ordlist/0.0.1/doc/html/Data-
OrdList.html)
 which represents sets and bags as ordered lists and has all of the
 operations you mention.


I did, thanks again! Although, that package deals with non-decreasing lists, 
i.e. lists with multiples possibly. As such, its operations produce non-
decreasing lists, i.e. possibly having multiples too. 

I meant strictly increasing ordered lists, without multiples, for which the two 
operations, 'merge' and 'minus', would also have to produce like lists, i.e 
strictly increasing, without multiples.

I guess the first variety is more appropriate for bags, and the second one - 
for sets. The two would have to be de-conflated for that. (?)



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


Re: [Haskell-cafe] formatTime doesn't work with local time ??

2010-01-20 Thread Brian Denheyer
On Wed, 20 Jan 2010 07:15:07 -0800
Brian Denheyer bri...@aracnet.com wrote:

 My error:
 
 Couldn't match expected type `T.UTCTime'
against inferred type `T.LocalTime'
 In the second argument of `formatTime', namely `date'
 In the expression: formatTime %Y/%m/%e %k:%M:%S date
  

Nevermind...

I had defined :

formatTime = T.formatTime defaultTimeLocale

which used the T.formatTime for the UTCTime instance.  The following

 T.formatTime defaultTimeLocale %Y/%m/%e %k:%M:%S date

works just fine (date is Localtime)

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


Re: [Haskell-cafe] formatTime doesn't work with local time ??

2010-01-20 Thread Daniel Fischer
Am Mittwoch 20 Januar 2010 16:42:56 schrieb Brian Denheyer:
 On Wed, 20 Jan 2010 07:15:07 -0800

 Brian Denheyer bri...@aracnet.com wrote:
  My error:
 
  Couldn't match expected type `T.UTCTime'
 against inferred type `T.LocalTime'
  In the second argument of `formatTime', namely `date'
  In the expression: formatTime %Y/%m/%e %k:%M:%S date

 Nevermind...

 I had defined :

 formatTime = T.formatTime defaultTimeLocale

 which used the T.formatTime for the UTCTime instance.  The following

  T.formatTime defaultTimeLocale %Y/%m/%e %k:%M:%S date

 works just fine (date is Localtime)

 Brian

Monomorphism restriction, I presume?
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Conditional code for Haddock

2010-01-20 Thread Sean Leather
On Wed, Jan 20, 2010 at 16:17, Roel van Dijk wrote:

 On Wed, Jan 20, 2010 at 12:57 PM, Sean Leather wrote:
  I did some conditional Haddocking in EMGM. See, for example:
 
 http://hackage.haskell.org/packages/archive/emgm/0.3.1/doc/html/src/Generics-EMGM-Data-Bool.html

 At first I didn't see what you did differently. Until I checked your
 Setup.lhs. It does exactly what I want! Plus a few other things which
 I am going to borrow (runtests hook, nolib flag and hpc program
 coverage).


I'm glad somebody else can make use of that stuff.

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


Re: [Haskell-cafe] Having a look at XMonad window manager

2010-01-20 Thread michael rice
It seems I was doing MUCH more than I needed to do to have a look at XMonad in 
action. I went back and created a .xsession file with just one line:

xmonad

I then disabled Nautilus (unchecked show desktop) and started xmonad as follows

killall metacity; xmonad 

Everything now seems to work fine.

Impressive app!

Thanks all,

Michael



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


[Haskell-cafe] HTML - based GUIs - follow up

2010-01-20 Thread Günther Schmidt

Hello,

in my first post on this subject from 01-10-10 I asked for opinions on 
using HTML to create the gui part of a desktop app instead of using 
Gtkhs or WxHaskell.


The responses were encouraging. It occurred to me that I might now even 
need to run an actual webserver (happs for instance) but that I could 
use either Webkit or a com interface to Internet Explorer to control the 
browser. When it opens, register event sinks and so on.


Still that involves a lot of boilerplate code.

I have seen examples of *formlets* and I'm impressed, the wiring is 
certainly taken care of.


My question is: do formlets only work server based or is it also 
possible to use formlet sans happs?


Günther


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


Re: [Haskell-cafe] HTML - based GUIs - follow up

2010-01-20 Thread Colin Paul Adams
 Günther == Günther Schmidt gue.schm...@web.de writes:

Günther My question is: do formlets only work server based or is it
Günther also possible to use formlet sans happs?

Yes (I think) and yes.
-- 
Colin Adams
Preston Lancashire
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Re: Why no merge and listDiff?

2010-01-20 Thread Christian Maeder
Will Ness schrieb:
 I meant strictly increasing ordered lists, without multiples, for which the 
 two 
 operations, 'merge' and 'minus', would also have to produce like lists, i.e 
 strictly increasing, without multiples.

Why don't you use directly Data.Set?

 I guess the first variety is more appropriate for bags, and the second one - 
 for sets. The two would have to be de-conflated for that. (?)

There are also bags aka multisets:
http://hackage.haskell.org/package/multiset

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


[Haskell-cafe] darcs 2.4 beta 2 release

2010-01-20 Thread Reinier Lamers
Hi all,

The darcs team would like to announce the immediate availability of darcs 2.4
beta 2. darcs 2.4 will contain many improvements and bugfixes compared to
darcs 2.3.1. Highlights are the fast index-based diffing which is now used by
all darcs commands, and the experimental interactive hunk editing. This beta 
is your chance to test-drive these improvements and make darcs even better.

The easiest way to install darcs is using the Haskell Platform [1]. If you 
have installed the Haskell Platform or cabal-install, you can install this 
beta release by doing:

  $ cabal update
  $ cabal install --reinstall darcs-beta

Alternatively, you can download the tarball from 
http://darcs.net/releases/darcs-2.3.98.2.tar.gz , and build it by hand as 
explained in the README file.

Interactive hunk editing


The interactive hunk editing feature is included in this beta. However, be 
aware that we are not entirely sure that the user interface in this version is 
ready yet. You're welcome to try it out, but be prepared for a learning curve 
that's somewhat steeper than usual for darcs.

To try out interactive hunk editing, press 'e' when you are prompted with a 
hunk patch by 'darcs record'. You will then be shown an editor screen in which 
you can edit the contents of the hunk as darcs should consider them to have 
been before and after the hunk patch you edit. You can edit the state you want 
to record between the last two === lines.

You can find more information about the hunk editing feature on 
http://wiki.darcs.net/HunkEditor .

Reporting bugs
--

If you have an issue with darcs 2.4 beta 2, you can report it via the web on 
http://bugs.darcs.net/ . You can also report bugs by email to b...@darcs.net.

What's New
--

A list of important changes since 2.3.1 is as follows (please let me know if 
there's something you miss!):
   * Use fast index-based diffing everywhere (Petr)
   * Interactive patch splitting (Ganesh)
   * An 'optimize --upgrade' option to convert  to hashed format in-place
 (Eric)
   * Hunk matching (Kamil Dworakowski, tat.wright)
   * Progress reporting is no longer deceptive (Roman)
   * A 'remove --recursive' option to remove a directory tree from revision
 control (Roman)
   * 'show files' accepts arguments to show a subset of tracked files (Luca)
   * A '--remote-darcs' flag for pushing to a host where darcs isn't called
 darcs
   * Many miscellaneous Windows improvements (Salvatore, Petr and others)
   * 'darcs send' now mentions the repository name in the email body (Joachim)
   * Handle files with boring names in the repository correctly (Petr)
   * Fix parsing of .authorspellings file (Tomáš)
   * Various sane new command-line option names (Florent)
   * Remove the '--checkpoint' option (Petr)
   * Use external libraries for all UTF-8 handling (Eric, Reinier)
   * Use the Haskell zlib package exclusively for compression (Petr)

A list of issues resolved since 2.3.1:
   *  183: do not sort changes --summary output
   *  223: add --remote-darcs flag to specify name of remote darcs executable
   *  291: provide (basic) interactive patch splitting
   *  540: darcs remove --recursive
   *  835: 'show files' with arguments
   * 1122: get --complete should not offer to create a lazy repository
   * 1216: list Match section in ToC
   * 1224: refuse to convert a repo that's already in darcs-2 format
   * 1300: logfile deleted on unsucessful record
   * 1308: push should warn about unpulled patches *before* patch-selection
   * 1336: sane error message on --last  (empty string to numbers parser)
   * 1362: mention repo name in mail send body
   * 1377: getProgname for local darcs instances
   * 1392: use parsec to parse .authorspelling
   * 1424: darcs get wrongly reports using lazy repository if you ctrl-c 
   old-fashioned get
   * 1447: different online help for send/apply --cc
   * 1488: fix crash in whatsnew when invoked in non-tracked directory
   * 1548: show contents requires at least one argument
   * 1554: allow opt-out of -threaded (fix ARM builds)
   * 1563: official thank-you page
   * 1578: don't put newlines in the Haskeline prompts
   * 1583: on darcs get, suggest upgrading source repo to hashed
   * 1584: provide optimize --upgrade command
   * 1588: add --skip-conflicts option
   * 1594: define PREPROCHTML in makefile
   * 1620: make amend leave a log file when it should
   * 1636: hunk matching
   * 1643: optimize --upgrade should do optimize
   * 1652: suggest cabal update before cabal install
   * 1659: make restrictBoring take recorded state into account
   * 1677: create correct hashes for empty directories in index
   * 1681: preserve log on amend failure
   * 1709: fix short version of progress reporting
   * 1712: correctly report number of patches to pull
   * 1720: fix cabal haddock problem
   * 1731: fix performance regression in check and repair

Kind Regards,
the darcs release manager,
Reinier Lamers


[Haskell-cafe] Extracting all pruned sub trees

2010-01-20 Thread Tom Hawkins
I'm looking for an elegant way to generate a list of all pruned trees
where each pruned tree has one of its leaves removed.  Something like
this:

data Leaf = ...

data Tree = Leaf Leaf | Branch [Tree]

prunedSubTrees :: Tree - [(Leaf, Tree)]-- [(the leaf removed, the
pruned tree)]

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


Re: [Haskell-cafe] Lambda's

2010-01-20 Thread Henning Thielemann


On Thu, 31 Dec 2009, Henk-Jan van Tuyl wrote:


I love lambda's:
http://hawtness.com/2009/12/30/wtf-girl-photo-more-reasons-why-half-life-is-awesome/


cute ... I'm not sharing the collective rejection. A remark would be ok. 
Although I looked up the meaning of NSFW only after following your link. 
:-)

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


[Haskell-cafe] Re: Why no merge and listDiff?

2010-01-20 Thread Will Ness
Christian Maeder Christian.Maeder at dfki.de writes:

 Will Ness schrieb:
  I meant strictly increasing ordered lists, without multiples, for which the 
two 
  operations, 'merge' and 'minus', would also have to produce like lists, i.e 
  strictly increasing, without multiples.
 
 Why don't you use directly Data.Set?

It says it's based on size balanced Trees? I initially wondered why no such 
fundamental operations as merge and minus for _lists_, in the stadard libraries?

Also, its to/from list conversions are O(n), so probably won't work for 
infinite lists. 

I was told the trend is to move specifics to hackage packages, but I wonder why 
shouldn't such fundamental operations be just included in standard Data.List?

 
  I guess the first variety is more appropriate for bags, and the second one
  - for sets. The two would have to be de-conflated for that. (?)
 
 There are also bags aka multisets:
 http://hackage.haskell.org/package/multiset

it's too seems to be based on trees.

Data.Ordlist seems to be a good match, except for its conflation of 
ascending/non-decreasing lists under one ordered category (i.e. sets/bags 
distinction).




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


Re: Re[4]: [Haskell-cafe] Poor man's generic programming

2010-01-20 Thread Neil Mitchell
Hi Bulat,

The intention was always that the manual should be an up-to-date
version that contains everything people need to use the library, but
not the internal details. The paper was revised in to my thesis
chapter, which is probably the best description of the internals of
Uniplate. The thesis chapter is reasonably complete, but the manual
isn't - I'll move some of the interesting material across -
particularly on Biplate.

Thanks, Neil

2010/1/19 Bulat Ziganshin bulat.zigans...@gmail.com:
 Hello Neil,

 Tuesday, January 19, 2010, 10:15:15 PM, you wrote:

 can you give a permission to translate 
 http://community.haskell.org/~ndm/darcs/uniplate/uniplate.htm
 to Russian for http://fprog.ru/ online functional programming journal?

 Yes, that sounds great. However, I'm currently not a particular fan of
 the manual in it's current state - it isn't that well written and some
 bits need expanding. How about I revamp it, then let you know? I can
 probably do it within the next few weeks.

 it would be even better. i just finished reading your paper - tutorial
 doesn't emphasize some details i've found there, in particular
 restrictions of Uniplate and how these are particularly overcomed by
 BiPlate. i.e. it may be derived from tutorial but wasn't obvious for
 me before i've read the paper


 --
 Best regards,
  Bulat                            mailto:bulat.zigans...@gmail.com


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


Re: [Haskell-cafe] Please help me debug my arrow

2010-01-20 Thread Paul Johnson

On 18/01/10 20:33, Paul Johnson wrote:


I'm going nuts looking at this.  Can anyone see what I'm doing wrong?

I found the problem eventually.  Its a scoping problem with rt1 in the 
(.) function when composeSP gets called recursively.



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


[Haskell-cafe] hsql won't install due to system.time

2010-01-20 Thread Brian Denheyer



Database/HaskellDB/HSQL.hs:25:7:
Could not find module `System.Time':
  it is a member of the hidden package `old-time-1.0.0.3'
  it is a member of the hidden package `old-time-1.0.0.2'
  Use -v to see a list of the files searched for.

old-time-1.0.0.2 is installed (via cabal).

Suggestions on how to fix this or which haskell db (for sqlite3) package
will actually install greatly appreciated.

I get a lot of failures in hackages which involve that dreaded hidden
package message.  Anybody care to enlighten us mere mortals as to why
it seems to occur so frequently (at least for me).

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