Re: [Haskell-cafe] Byte Histogram

2011-02-07 Thread Johan Tibell
On Mon, Feb 7, 2011 at 11:57 PM, John Lato jwl...@gmail.com wrote: I think the real problem we have with container classes has a lot more to do with what we would use them for.  That is, Haskell already has Monoid, Foldable and Traversable.  These three (especially Foldable) cover nearly

Re: [Haskell-cafe] Byte Histogram

2011-02-06 Thread Johan Tibell
On Sat, Feb 5, 2011 at 4:16 PM, Andrew Coppin andrewcop...@btinternet.com wrote: Random fact: Data.Map.insertWith' exists. Data.IntMap.insertWith' does *not* exist. The containers library is a mess. For example, Data.Map has 10+ functions (e.g. adjust) that don't have strict counterparts even

Re: [Haskell-cafe] Byte Histogram

2011-02-06 Thread Johan Tibell
On Sun, Feb 6, 2011 at 8:48 PM, Andrew Coppin andrewcop...@btinternet.com wrote: In particular, I get strange looks from people in the OOP community when I say I'm using a language that doesn't have any abstractions at all for dealing polymorphically with containers. In general, it's almost

Re: [Haskell-cafe] Byte Histogram

2011-02-06 Thread Johan Tibell
On Sun, Feb 6, 2011 at 10:12 PM, Alexey Khudyakov alexey.sklad...@gmail.com wrote: Well Foldable and Traversable provide set of generic operations for containers. Although they are quite limited, containter must be polymorphic (e.g. no IntMap) and parameter must be of any type (e.g. no unboxed

Re: [Haskell-cafe] Byte Histogram

2011-02-03 Thread Johan Tibell
Hi, Thanks for bringing up these issues. It's something we could be better at addressing as a community. First, we need to stop pretending that you can use Haskell effectively without first learning to reason about program evaluation order. Learning how is not terrible difficult, but there's

Re: [Haskell-cafe] Byte Histogram

2011-02-03 Thread Johan Tibell
On Thu, Feb 3, 2011 at 11:10 PM, Andrew Coppin andrewcop...@btinternet.com wrote: Wouldn't that still mean that the spine of the map is still lazy though? No, Data.Map and Data.Set are both spine strict (which should be documented!). Data.Map is key strict in addition. Both are value lazy.

Re: [Haskell-cafe] Byte Histogram

2011-02-03 Thread Johan Tibell
Hi, For what it's worth I saw the problems in your counting examples right away, without reading the explanatory text below. Hopefully that means that it's possibly to learn how to spot such things without resorting to e.g. running the program or reading Core *gasp*. Johan

Re: [Haskell-cafe] Byte Histogram

2011-02-03 Thread Johan Tibell
On Thu, Feb 3, 2011 at 11:40 PM, Richard O'Keefe o...@cs.otago.ac.nz wrote: Back in the days when systems other than Wintel and maybe sort of intel Linux were supported by Clean, I used to really love one of the features of the Clean compiler. One simple command line switch and the compiler

Re: [Haskell-cafe] Byte Histogram

2011-02-03 Thread Johan Tibell
On Fri, Feb 4, 2011 at 12:38 AM, Erik de Castro Lopo mle...@mega-nerd.com wrote: However, one of the Haskell projects I work on is Ben Lippmeier's DDC compiler. Thats about 5 lines of Haskell code and finding performance issues there is really difficult. Right. It can still be tricky. I

Re: Kernel panic when building HEAD on OS X 10.6.4

2011-02-02 Thread Johan Tibell
The issue seems to be related to PGP encryption of the disk. Creating a new disk image, mounting it, and building GHC on it works. Johan ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org

Re: [Haskell-cafe] timely shutdown of timer threads

2011-02-02 Thread Johan Tibell
On Wed, Feb 2, 2011 at 10:42 PM, Warren Harris warrensomeb...@gmail.com wrote: Interesting. I hadn't thought of this solution. You're forking the timer to yet a third thread so that if it continues waiting beyond the checkpoint thread shutdown it doesn't really matter. I guess that works as

Re: Kernel panic when building HEAD on OS X 10.6.4

2011-01-31 Thread Johan Tibell
On Mon, Jan 31, 2011 at 4:33 AM, Manuel M T Chakravarty mchakrava...@mac.com wrote: Are you building inside a Parallels VM?  If so, it is probably a Parallels bug (which also explain why compiling GHC can lead to a kernel panic). If the GHC build is not in a Parallels VM, I would suggest to

Re: Kernel panic when building HEAD on OS X 10.6.4

2011-01-31 Thread Johan Tibell
On Mon, Jan 31, 2011 at 10:15 AM, John Meacham j...@repetae.net wrote: Any chance a cooling fan inside died and you are overheating it? Can you reproduce the failure with other heavy load programs, can you run a widget that monitors the internal temperatures and other sensors during the

Kernel panic when building HEAD on OS X 10.6.4

2011-01-28 Thread Johan Tibell
Hi, My computer dies a horrible death (i.e. kernel panic) whenever I build GHC from HEAD (currently using the quickest build configuration). Anyone had the same problem in the past? Any workarounds? Johan ___ Glasgow-haskell-users mailing list

Re: Kernel panic when building HEAD on OS X 10.6.4

2011-01-28 Thread Johan Tibell
On Fri, Jan 28, 2011 at 2:44 PM, Johan Tibell johan.tib...@gmail.com wrote: My computer dies a horrible death (i.e. kernel panic) whenever I build GHC from HEAD (currently using the quickest build configuration). Anyone had the same problem in the past? Any workarounds? Here are some details

Re: [Haskell-cafe] Wondering about networking programming in Haskell.

2011-01-20 Thread Johan Tibell
On Thu, Jan 20, 2011 at 4:19 AM, Magicloud Magiclouds magicloud.magiclo...@gmail.com wrote: Hi,  Originally, my idea for networking programming is like: read some bytes, judge if this is enough for a packet (defined in certain protocol), if not, read more until the packet is complete, then

Re: [Haskell-cafe] Adding a builder to the bytestring package?

2011-01-19 Thread Johan Tibell
On Wed, Jan 19, 2011 at 6:51 PM, John Millikin jmilli...@gmail.com wrote: Most people who work with binary data have had to construct bytestrings at some point. The most common solution is to use a Builder, a monoid representing how to construct a bytestring. There are currently three packages

Re: [Haskell-cafe] Adding a builder to the bytestring package?

2011-01-19 Thread Johan Tibell
On Wed, Jan 19, 2011 at 8:37 PM, Michael Snoyman mich...@snoyman.com wrote: Isn't Simon Meier working on migrating his code from blaze-builder into binary? So I heard (although not directly from Simon). I think it would be nice to port the blaze-builder implementation to binary, but to keep

Re: [Haskell-cafe] Adding a builder to the bytestring package?

2011-01-19 Thread Johan Tibell
On Wed, Jan 19, 2011 at 9:51 PM, John Millikin jmilli...@gmail.com wrote: Can any of the blaze-builder optimizations be translated to the Text builder? When I benchmark it against binary and cereal, blaze-builder is approximately 2-3 times faster for most use cases. Yes, but I haven't had time

Re: [Haskell-cafe] Adding a builder to the bytestring package?

2011-01-19 Thread Johan Tibell
On Wed, Jan 19, 2011 at 10:30 PM, Michael Snoyman mich...@snoyman.com wrote: What's the advantage to moving in into binary as opposed to bytestring? To test that the implementation can indeed be ported to that interface. We could of course skip that step if we want to. Johan

Re: [Haskell-cafe] Adding a builder to the bytestring package?

2011-01-19 Thread Johan Tibell
On Thu, Jan 20, 2011 at 12:16 AM, John Millikin jmilli...@gmail.com wrote: blaze-builder already implements the binary builder interface, minus the putWord* functions. I think those would be trivial to reimplement on top of Write. Since it sounds like everyone agrees with / has already

Can't make sense of newArray# docs

2011-01-18 Thread Johan Tibell
Hi, The docs for newArray# states: Create a new mutable array of specified size (in bytes), in the specified state thread, with each element containing the specified initial value. Why is the size in bytes? Is Array# meant to be used both for boxed and unboxed values? For arrays of boxed values

Re: [Haskell-cafe] Needed: A repeatable process for installing GHC on Windows

2011-01-15 Thread Johan Tibell
I've managed to set up a working MinGW/MSYS environment, build the network package, and document the steps here: http://blog.johantibell.com/2011/01/setting-up-haskell-development.html Johan ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org

[Haskell-cafe] Needed: A repeatable process for installing GHC on Windows

2011-01-14 Thread Johan Tibell
Hi, Earlier today I was trying to set up a Windows build bot for the 'network' package. That turned out to be quite difficult. Too much playing with PATHs, different gcc versions, etc. Does anyone have a repeatable, step-by-step process to install GHC and get a build environment (where I could

Re: git repos for testing (was: Re: RFC: migrating to git)

2011-01-13 Thread Johan Tibell
On Thu, Jan 13, 2011 at 4:03 PM, Simon Marlow marlo...@gmail.com wrote: I've made git mirrors of the current GHC HEAD repos (all of them), so people can try out their workflows with git. Poking around in the different repos works for me and is fast. For example: Find new files in base: $ cd

Re: RFC: migrating to git

2011-01-10 Thread Johan Tibell
On Mon, Jan 10, 2011 at 12:19 PM, Simon Marlow marlo...@gmail.com wrote: We're intrested in opinions from both active and potential GHC developers/contributors.  Let us know what you think - would this make life harder or easier for you?  Would it make you less likely or more likely to

Re: RFC: migrating to git

2011-01-10 Thread Johan Tibell
On Mon, Jan 10, 2011 at 2:02 PM, Max Bolingbroke batterseapo...@hotmail.com wrote: Naturally other workflows are possible and I'm sure other list members will chime in with their own favourites :-) Here's the flow I use: http://nvie.com/posts/a-successful-git-branching-model/ with the

Re: Mercurial? Re: RFC: migrating to git

2011-01-10 Thread Johan Tibell
On Mon, Jan 10, 2011 at 2:34 PM, Pavel Perikov peri...@gmail.com wrote: Please please consider Mercurial if migration from darcs is inevitable :) While Mercurial is a fine choice, I think there are more Haskellers that use Git than Mercurial. Probably because GitHub is such an awesome service.

Re: Mercurial? Re: RFC: migrating to git

2011-01-10 Thread Johan Tibell
On Mon, Jan 10, 2011 at 2:43 PM, Pavel Perikov peri...@gmail.com wrote: On 10.01.2011, at 16:40, Johan Tibell wrote: While Mercurial is a fine choice, I think there are more Haskellers that use Git than Mercurial. Probably because GitHub is such an awesome service. Interesting

Re: RFC: migrating to git

2011-01-10 Thread Johan Tibell
On Mon, Jan 10, 2011 at 5:25 PM, Nils Anders Danielsson n...@cs.nott.ac.uk wrote: Even if GitHub is used you should probably arrange some other kind of backup solution, because GitHub reserves the right to delete your repository for any reason at any time (http://help.github.com/terms/). If

Re: [Haskell-cafe] parsec2 vs. parsec3... again

2010-12-23 Thread Johan Tibell
On Thu, Dec 23, 2010 at 3:03 PM, Felipe Almeida Lessa felipe.le...@gmail.com wrote: Michael Snoyman wants attoparsec-text as well [1]. [1] http://docs.yesodweb.com/blog/wishlist/ It's on my Christmas wishlist too. Johan ___ Haskell-Cafe mailing

HEAD doesn't build on OS X

2010-12-14 Thread Johan Tibell
Starting with a clean tree I get: /usr/bin/ghc -H32m -O -Wall -Werror -H64m -O0 -package-conf libraries/bootstrapping.conf -package-name ghc-7.1 -hide-all-packages -i -icompiler/basicTypes -icompiler/cmm -icompiler/codeGen -icompiler/coreSyn -icompiler/deSugar -icompiler/ghci -icompiler/hsSyn

Re: [Haskell-cafe] threadWaitRead and threadWaitWrite on multiple fds

2010-12-13 Thread Johan Tibell
On Mon, Dec 13, 2010 at 9:06 AM, Mathijs Kwik bluescreen...@gmail.com wrote: Just to reply to myself once again, System.Event (which isn't hidden) re-exports (un)registerFd and other functions I need for this. So I can implement all this myself. The only thing I can't do is ask the RTS's

Re: [Haskell-cafe] threadWaitRead and threadWaitWrite on multiple fds

2010-12-12 Thread Johan Tibell
On Mon, Dec 13, 2010 at 1:37 AM, Mathijs Kwik bluescreen...@gmail.com wrote: Hi all, I read the paper about the new ghc7 event handling IO manager goodies. This is all very exciting stuff. I didn't know GHC's RTS had these smart async-IO facilities. The paper pointed me at

Re: [darcs-users] How to develop on a (GHC) branch with darcs

2010-12-08 Thread Johan Tibell
On Wed, Dec 8, 2010 at 12:31 PM, Edward Z. Yang ezy...@mit.edu wrote: I like Git for Computer Scientists [1] and Git in pictures [2].  It also sounds like a Git for Darcs users might be in order. Once you got the general ideas down I'd recommend

Re: [Haskell-cafe] haskell2010 and state question.

2010-12-08 Thread Johan Tibell
On Wed, Dec 8, 2010 at 11:46 AM, Henk-Jan van Tuyl hjgt...@chello.nl wrote: the state monad is in both the mtl and the transformers package (mtl is deprecated). mtl is not deprecated. mtl-2 depends on transformers. ___ Haskell-Cafe mailing list

Re: Parallel, Incremental Linking

2010-12-07 Thread Johan Tibell
On Tue, Dec 7, 2010 at 12:00 PM, Bulat Ziganshin bulat.zigans...@gmail.com wrote: Hello John, Tuesday, December 7, 2010, 11:54:22 AM, you wrote: The bottleneck for building on my multi-core machine is ld, which afaik, there was some alternative linker, at least for linux systems gold,

[Haskell-cafe] OverloadedStrings mixed with type classes leads to boilerplate type signatures

2010-12-04 Thread Johan Tibell
Hi, I'm trying to generalize my string substitution library (http://hackage.haskell.org/package/template) to allow users to provide different kinds of key/value mappings (e.g. functions and association lists) for filling in the placeholders in a template. Here are two examples I'd like to work:

Re: [Haskell] haskell.org migration complete

2010-12-01 Thread Johan Tibell
On Wed, Dec 1, 2010 at 3:28 PM, Henk-Jan van Tuyl hjgt...@chello.nl wrote: On Tue, 30 Nov 2010 22:47:30 +0100, Ian Lynagh ig...@earth.li wrote: Hi all, The haskell.org server migration is now complete. Please let us know if you have any problems. I noticed that the following images are

[Haskell-cafe] Re: ANN: network-2.2.3, merger with network-bytestring

2010-11-11 Thread Johan Tibell
On Sun, Oct 31, 2010 at 4:14 PM, Johan Tibell johan.tib...@gmail.com wrote: Hi all, I like to announce a new version of the network package, network-2.2.3. You can install the latest version by running:    cabal update cabal install network This version marks the end of the network

Re: [Haskell-cafe] call for a better timing method

2010-11-04 Thread Johan Tibell
On Thu, Nov 4, 2010 at 8:09 PM, Jiansen He jianse...@googlemail.com wrote: Hello, I want to write a timing method to test sub steps in my program. Benchmarking is really tricky. I suggest you use the excellent Criterion benchmarking package: http://hackage.haskell.org/package/criterion

Re: [Haskell-cafe] Benchmark

2010-11-03 Thread Johan Tibell
Hi André, Have a look at the Criterion benchmarking package: http://hackage.haskell.org/package/criterion Johan ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

[Haskell-cafe] ANN: network-2.2.3, merger with network-bytestring

2010-10-31 Thread Johan Tibell
Hi all, I like to announce a new version of the network package, network-2.2.3. You can install the latest version by running: cabal update cabal install network This version marks the end of the network-bytestring package, which has now been merged into the network package. This means

Re: [Haskell-cafe] fundata1 -- Karmic Social Capital Benchmark and Shootout

2010-10-30 Thread Johan Tibell
On Fri, Oct 29, 2010 at 1:17 PM, Daryoush Mehrtash dmehrt...@gmail.com wrote: In the lessons you say: Haskell proved too slow with String Map, so we ended up interning strings and working with an IntMap and a dictionary to disintern back to strings as a last step.  Daniel Fisher was

Re: [Haskell-cafe] New repo location for the network package

2010-10-28 Thread Johan Tibell
On Thu, Oct 28, 2010 at 12:19 AM, Magnus Therning mag...@therning.org wrote: If I, as the developer of the FOO Haskell package, want to move to use github, can I get a source repo under that organisation as well? I'm asking since I am considering taking some of my packages from patch-tag to

Re: [Haskell-cafe] New repo location for the network package

2010-10-28 Thread Johan Tibell
On Thu, Oct 28, 2010 at 2:41 AM, John Lato jwl...@gmail.com wrote: Similarly, what's the remit of the Haskell organization on github?  Is the intention to be an umbrella for any haskell package, or more restricted?  I have the same question as Magnus (although in my case I took over something

Re: [Haskell-cafe] New repo location for the network package

2010-10-28 Thread Johan Tibell
On Thu, Oct 28, 2010 at 8:06 AM, Magnus Therning mag...@therning.org wrote: Fair enough.  Do you have enough buy-in to make sure that the github organisation becomes the best location for *all* HP packages? That is, can I stop going to Hackage to find the home for HP packages? Probably not. I

Re: [Haskell-cafe] fundata1 -- Karmic Social Capital Benchmark and Shootout

2010-10-28 Thread Johan Tibell
Great stuff! I have an improvements to HashMaps that I'm working on that will hopefully work well here. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

[Haskell-cafe] New repo location for the network package

2010-10-27 Thread Johan Tibell
Hi all, To ease my maintenance burden, I've moved the network package repo to: http://github.com/haskell/network Patches are accepted either in the git mbox format, as normal (diff) patch files, or as GitHub pull requests. P.S. If you want to get added to the haskell GitHub organization,

Unaligned word-sized reads on ByteArray#

2010-10-24 Thread Johan Tibell
Hi, I noticed that indexWordArray# only allows for aligned reads (by forcing the offset to be in words, rather than in bytes.) Is it possible to perform unaligned reads on a ByteArray# e.g. going via Addr#? There's the byteArrayContent# primitive but I don't know how to force the ByteArray# to

Re: [Haskell-cafe] Parsec in Haskell platform

2010-10-24 Thread Johan Tibell
On Sun, Oct 24, 2010 at 11:57 AM, Andrew Coppin andrewcop...@btinternet.com wrote: It would be nice to have a page that lists everything included in every HP release, together with their version numbers. (So that, e.g., I can see at a glance what version of GHC, Haddock or cabal-install is in

Re: [Haskell] Haskell Weekly News: Issue 155 - October 20, 2010 (Originally posted to Haskell-Cafe)

2010-10-22 Thread Johan Tibell
On Fri, Oct 22, 2010 at 10:41 AM, Colin Paul Adams co...@colina.demon.co.uk wrote: I do. But note I also subscribe to the cafe. The annoying thing is people cross-post to both lists, which IS spamming, IMHO. A good email client (like Gmail), deals with this without a problem by collapsing the

Re: [Haskell-cafe] [ANNOUNCE] text 0.10.0.0 - fast Unicode text handling

2010-10-22 Thread Johan Tibell
On Fri, Oct 22, 2010 at 10:30 AM, Ivan Lazar Miljenovic ivan.miljeno...@gmail.com wrote: For example, I assume that it's better to try and use Text throughout rather than continually packing String values (in my case, I'm looking at using Text for I/O in graphviz; should I then start using Text

Re: [Haskell-cafe] The Haskell theme

2010-10-13 Thread Johan Tibell
On Wed, Oct 13, 2010 at 5:49 AM, Mark Lentczner ma...@glyphic.com wrote: I'd lean toward us putting these thoughts down in the wiki, and developing a set of guide posts for styling Haskell, rather than a strict set of policies. Here's a strawman proposal for a very first guideline: Body

Re: [Haskell-cafe] Coding conventions for Haskell?

2010-09-26 Thread Johan Tibell
I usually align the in under the let. On Sep 26, 2010 11:40 AM, Petr Pudlak d...@pudlak.name wrote: Hi Johan, On Sat, Sep 25, 2010 at 01:44:07PM +0200, Johan Tibell wrote: Quite a few people follow my style guide http://github.com/tibbe/haskell-style-guide/blob/master/haskell-style.md which

Re: [Haskell-cafe] Re: Coding conventions for Haskell?

2010-09-26 Thread Johan Tibell
On Sun, Sep 26, 2010 at 12:31 PM, Maciej Piechotka uzytkown...@gmail.com wrote: May I ask clarification about formatting (according to your convention) doSomething :: (a - a - a) - a - a - a doSomething f x = f y y                  where y = f x x I always put 2 spaces before the where

Re: [Haskell-cafe] Coding conventions for Haskell?

2010-09-26 Thread Johan Tibell
On Sun, Sep 26, 2010 at 12:50 PM, Henning Thielemann schlepp...@henning-thielemann.de wrote: Coding conventions are often a matter of individual taste. You may find some suggestions under  http://www.haskell.org/haskellwiki/Category:Style and choose the ones that you like. Absolutely.

Re: [Haskell-cafe] Coding conventions for Haskell?

2010-09-25 Thread Johan Tibell
On Sat, Sep 25, 2010 at 11:24 AM, Petr Pudlak d...@pudlak.name wrote: sometimes I have doubts how to structure my Haskell code - where to break lines, how much to indent, how to name functions and variables etc. Are there any suggested/recommended coding conventions? I searched a bit and I

Re: [Haskell-cafe] Coding conventions for Haskell?

2010-09-25 Thread Johan Tibell
On Sat, Sep 25, 2010 at 5:06 PM, Donn Cave d...@avvanta.com wrote: Though it's common practice for sure, maybe universal, does the Don't insert a space after a lambda rule make sense? I found it confusing at first sight, because of course it looks like something else - in \n m - ..., to the

[Haskell-cafe] ANN: network-2.2.1.8 (GHC 7.0 compatibility release)

2010-09-23 Thread Johan Tibell
Hi all, network-2.2.1.8 is now out. This release makes network compatible with GHC 7.0. There are no API changes. Cheers, Johan ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Re: Collecting all external names in a module

2010-09-20 Thread Johan Tibell
On Mon, Sep 20, 2010 at 12:47 PM, Simon Peyton-Jones simo...@microsoft.comwrote: Thomas had it right; it’s just a particular kind of fold. The key parts of the traversal would be: ·Occurrences.getExpr g (HsVar v) = g_occ g v Don't I need to work on LHsExpr rather than

Re: Collecting all external names in a module

2010-09-20 Thread Johan Tibell
More hacking leads to more questions! IDs occur in many places in the AST and I'm not sure which ones I should record (by calling g_occ) during my traversal. Should I only gather the ones in HsVar or are there other IDs of interest? As I explained in my first email, I'm looking for occurrences of

Re: Collecting all external names in a module

2010-09-18 Thread Johan Tibell
Hi Simon, Thanks for the pointers! On Fri, Sep 17, 2010 at 6:29 PM, Simon Peyton-Jones simo...@microsoft.comwrote: GHC already collects all RdrNames for imported things, for use when reporting unused imports. But it doesn’t collect the SrcSpan of the occurrences, nor does it collect

Collecting all external names in a module

2010-09-10 Thread Johan Tibell
Hi, I have a question regarding the GHC API. Given a module, I'm trying to collect * the Name and SrcSpan of all top-level definitions, * the Name and SrcSpan of all (local) uses of these top-level definition * the Name and SrcSpan of all uses of imported definitions. For example, given the

Re: [Haskell-cafe] problems using macports?

2010-09-09 Thread Johan Tibell
See if http://stackoverflow.com/questions/2726248/ghc-6-12-and-macports/3601842#3601842 is of any help. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Re: [Haskell-cafe] First questions!

2010-09-02 Thread Johan Tibell
Hi! 2010/9/2 Eoin C. Bairéad ebair...@gmail.com Example 2 Prelude let fac n = if n == 0 then 1 else n * fac (n-1) How does it know to stop ? When fac is called with n=0 it returns 1 and stops the recursion. and why does fac 2.5 hang? fac, as you defined it, is only defined for

Re: Confusing warnings from GHC HEAD

2010-08-31 Thread Johan Tibell
On Tue, Aug 31, 2010 at 11:06 AM, Simon Peyton-Jones simo...@microsoft.comwrote: I can’t reproduce this. With the enclosed module and HEAD, I get the warning; but when I add –fspec-constr-count=5, the warning goes away and I get the specialised rules. Is this the right fix in general? I

Re: [Haskell-cafe] Announce: Significant performance improvements for Data.Map

2010-08-29 Thread Johan Tibell
On Sun, Aug 29, 2010 at 3:41 PM, Daniel Fischer daniel.is.fisc...@web.dewrote: That is great. Have you any data about the speedup relative to map sizes? Milan Straka's benchmarks ran only on very small maps (= 2^10 elements), I'd be interested in whether size plays a significant role in the

HEAD unbuildable

2010-08-26 Thread Johan Tibell
I'm having trouble building HEAD, to the point where even running make clean fails. $ make clean make maintainer-clean make -r --no-print-directory -f ghc.mk clean CLEANING=YES rm -rf inplace rm -rf rm -rf docs/users_guide/users_guide docs/users_guide/users_guide.pdf

Re: [Haskell-cafe] non-blocking recv from UDP socket

2010-08-26 Thread Johan Tibell
Hi Thu, On Thu, Aug 26, 2010 at 11:13 AM, Vo Minh Thu not...@gmail.com wrote: Is is possible to get Network.Socket.ByteString.recv to be non-blocking (i.e. return directly even if no data is available) ? Unfortunately not. I have tried ti use setSocketOption sock NoDelay 1 but then I

Re: [Haskell-cafe] non-blocking recv from UDP socket

2010-08-26 Thread Johan Tibell
On Thu, Aug 26, 2010 at 1:08 PM, Vo Minh Thu not...@gmail.com wrote: Ok, that explains also why using fcntl directly on the fd didn't work either. So, I think I will go the FFI road and create my socket the way I want. Do you see another way? Not if you want a solution right now. You can

Re: [Haskell-cafe] Re: cabal-install profiling libraries

2010-08-20 Thread Johan Tibell
On Fri, Aug 20, 2010 at 4:07 PM, Johannes Waldmann waldm...@imn.htwk-leipzig.de wrote: Of course I understand lack of developer time. Could any of this be forked out as student projects? These kind of projects are perfect for Google Summer of Code. We had two Cabal projects this year

Surprising strictness properties of pre-order fold over a Data.Map

2010-08-18 Thread Johan Tibell
Hi, I was adding a strict pre-order fold to the Data.Map module and I ran into this slightly surprising behavior. Modeled on foldl' for lists I defined foldlWithKey' :: (b - k - a - b) - b - Map k a - b foldlWithKey' f z0 m = go z0 m where go z Tip = z

Re: Surprising strictness properties of pre-order fold over a Data.Map

2010-08-18 Thread Johan Tibell
On Wed, Aug 18, 2010 at 2:47 PM, Ian Lynagh ig...@earth.li wrote: On Wed, Aug 18, 2010 at 12:01:54PM +0200, Johan Tibell wrote: foldlWithKey' :: (b - k - a - b) - b - Map k a - b foldlWithKey' f z0 m = go z0 m where go z Tip = z go z (Bin

Re: Surprising strictness properties of pre-order fold over a Data.Map

2010-08-18 Thread Johan Tibell
On Wed, Aug 18, 2010 at 4:38 PM, Lennart Augustsson lennart.augusts...@gmail.com wrote: You don't know that f is strict in its first argument so you cannot deduce that go is strict in z in the first case. I'm not sure I understand. f :: Int - Int - Int - Int f = \x y z - x + y + z in this

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-18 Thread Johan Tibell
On Wed, Aug 18, 2010 at 2:12 AM, John Meacham j...@repetae.net wrote: ranty thing to follow That said, there is never a reason to use UTF-16, it is a vestigial remanent from the brief period when it was thought 16 bits would be enough for the unicode standard, any defense of it nowadays is

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-18 Thread Johan Tibell
Hi Michael, On Wed, Aug 18, 2010 at 4:04 PM, Michael Snoyman mich...@snoyman.comwrote: Here's my response to the two points: * I haven't written a patch showing that Data.Text would be faster using UTF-8 because that would require fulfilling the second point (I'll get to in a second). I

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-18 Thread Johan Tibell
On Wed, Aug 18, 2010 at 4:12 AM, wren ng thornton w...@freegeek.org wrote: There was a study recently on this. They found that there are four main parts of the Internet: * a densely connected core, where from any site you can get to any other * an in cone, from which you can reach the core

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-18 Thread Johan Tibell
On Wed, Aug 18, 2010 at 7:12 PM, Michael Snoyman mich...@snoyman.comwrote: On Wed, Aug 18, 2010 at 6:24 PM, Johan Tibell johan.tib...@gmail.comwrote: Sorry, I thought I'd sent these out. While working on optimizing Hamlet I started playing around with the BigTable benchmark. I wrote two

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-17 Thread Johan Tibell
On Tue, Aug 17, 2010 at 9:08 AM, Ketil Malde ke...@malde.org wrote: Benedikt Huber benj...@gmx.net writes: Despite of all this, I think the performance of the text package is very promising, and hope it will improve further! I agree, Data.Text is great. Unfortunately, its internal use of

Re: Re[2]: [Haskell-cafe] Re: String vs ByteString

2010-08-17 Thread Johan Tibell
Hi Bulat, On Tue, Aug 17, 2010 at 10:34 AM, Bulat Ziganshin bulat.zigans...@gmail.com wrote: It's not clear to me that using UTF-16 internally does make Data.Text noticeably slower. not slower but require 2x more memory. speed is the same since Unicode contains 2^20 codepoints Yes, in

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-17 Thread Johan Tibell
Hi Ketil, On Tue, Aug 17, 2010 at 12:09 PM, Ketil Malde ke...@malde.org wrote: Johan Tibell johan.tib...@gmail.com writes: It's not clear to me that using UTF-16 internally does make Data.Text noticeably slower. I haven't benchmarked it, but I'm fairly sure that, if you try to fit

Re: Re[2]: [Haskell-cafe] Re: String vs ByteString

2010-08-17 Thread Johan Tibell
On Tue, Aug 17, 2010 at 12:39 PM, Bulat Ziganshin bulat.zigans...@gmail.com wrote: Hello Tom, Tuesday, August 17, 2010, 2:09:09 PM, you wrote: In the first iteration of the Text package, UTF-16 was chosen because it had a nice balance of arithmetic overhead and space. The arithmetic

Re: Re[2]: [Haskell-cafe] Re: String vs ByteString

2010-08-17 Thread Johan Tibell
On Tue, Aug 17, 2010 at 1:05 PM, Bulat Ziganshin bulat.zigans...@gmail.comwrote: Hello Tako, Tuesday, August 17, 2010, 3:03:20 PM, you wrote: Unless a Char in Haskell is 32 bits (or at least more than 16 bits) it con NOT encode all Unicode points. it's 32 bit Like Bulat said it's 32

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-17 Thread Johan Tibell
On Tue, Aug 17, 2010 at 1:36 PM, Tako Schotanus t...@codejive.org wrote: Yeah, I tried looking it up but I could find the technical definition for Char, but in the end I found that maxBound was 0x10 making it basically 24 bits :) I think that's enough to represent all the assigned

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-17 Thread Johan Tibell
On Tue, Aug 17, 2010 at 2:23 PM, Yitzchak Gale g...@sefer.org wrote: Michael Snoyman wrote: Regarding the data: you haven't actually quoted any statistics about the prevalence of CJK data True, I haven't seen any - except for Google, which I don't believe is accurate. I would like to see

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-17 Thread Johan Tibell
On Tue, Aug 17, 2010 at 6:19 PM, John Millikin jmilli...@gmail.com wrote: Ruby, which has an enormous Japanese userbase, solved the problem by essentially defining Text = (Encoding, ByteString), and then re-implementing text logic for each encoding. This allows very efficient operation with

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-17 Thread Johan Tibell
On Tue, Aug 17, 2010 at 9:30 PM, Donn Cave d...@avvanta.com wrote: Quoth John Millikin jmilli...@gmail.com, Ruby, which has an enormous Japanese userbase, solved the problem by essentially defining Text = (Encoding, ByteString), and then re-implementing text logic for each encoding. This

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-15 Thread Johan Tibell
Hi Colin, On Sun, Aug 15, 2010 at 9:34 AM, Colin Paul Adams co...@colina.demon.co.ukwrote: But UTF-16 (apart from being an abomination for creating a hole in the codepoint space and making it impossible to ever etxend it) is slow to process compared with UTF-32 - you can't get the nth

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-14 Thread Johan Tibell
On Sat, Aug 14, 2010 at 12:15 PM, Florian Weimer f...@deneb.enyo.de wrote: * Bryan O'Sullivan: If you know it's text and not binary data you are working with, you should still use Data.Text. There are a few good reasons. 1. The API is more correct. For instance, if you use

Re: Using associated data types to create unpacked data structures

2010-08-13 Thread Johan Tibell
On Fri, Aug 13, 2010 at 1:14 AM, Max Bolingbroke batterseapo...@hotmail.com wrote: On 12 August 2010 20:31, Johan Tibell johan.tib...@gmail.com wrote: Yes and dead code elimination should also be able to get rid of much of the code duplication even before it reaches the linker. I don't

Re: [Haskell-cafe] String vs ByteString

2010-08-13 Thread Johan Tibell
Hi Erik, On Fri, Aug 13, 2010 at 1:32 PM, Erik de Castro Lopo mle...@mega-nerd.commle%2...@mega-nerd.com wrote: Since the files are large I'm using ByteString, but that leads me to wonder what is the best way to handle clashes between Prelude functions like putStrLn and the ByteString

Re: [Haskell-cafe] String vs ByteString

2010-08-13 Thread Johan Tibell
On Fri, Aug 13, 2010 at 1:47 PM, Michael Snoyman mich...@snoyman.comwrote: Use qualified imports, like so: import qualified Data.ByteString as B main = B.putStrLn $ B.pack test If you want to pack a String into a ByteString, you'll need to import Data.ByteString.Char8 instead. Very

Re: [Haskell-cafe] String vs ByteString

2010-08-13 Thread Johan Tibell
On Fri, Aug 13, 2010 at 4:03 PM, Pierre-Etienne Meunier pierreetienne.meun...@gmail.com wrote: Hi, Why don't you use the Data.Rope library ? The asymptotic complexities are way better than those of the ByteString functions. PE For some operations. I'd expect it to be a constant factor

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-13 Thread Johan Tibell
On Fri, Aug 13, 2010 at 4:24 PM, Kevin Jardine kevinjard...@gmail.comwrote: I'm interested to see this kind of open debate on performance, especially about libraries that provide widely used data structures such as strings. One of the more puzzling aspects of Haskell for newbies is the large

Re: [Haskell-cafe] Re: String vs ByteString

2010-08-13 Thread Johan Tibell
2010/8/13 Bryan O'Sullivan b...@serpentine.com 2010/8/13 Gábor Lehel illiss...@gmail.com How about the case for text which is guaranteed to be in ascii/latin1? ByteString again? If you know it's text and not binary data you are working with, you should still use Data.Text. There are a few

Re: Using associated data types to create unpacked data structures

2010-08-12 Thread Johan Tibell
On Thu, Aug 12, 2010 at 11:28 AM, Simon Marlow marlo...@gmail.com wrote: On 11/08/2010 17:03, Johan Tibell wrote: Inspired by the generic maps example at http://www.haskell.org/haskellwiki/GHC/Indexed_types I tried to use associated data types to create a generic finite map that unpacks

Re: Using associated data types to create unpacked data structures

2010-08-12 Thread Johan Tibell
On Thu, Aug 12, 2010 at 12:25 PM, Simon Marlow marlo...@gmail.com wrote: I'm not sure I want lookup (and other operations) to be inlined at every call site though. That's a good point. If inlining isn't a the right option in every case we would have to duplicate the implementation. I had a

Re: Using associated data types to create unpacked data structures

2010-08-12 Thread Johan Tibell
On Thu, Aug 12, 2010 at 1:47 PM, Max Bolingbroke batterseapo...@hotmail.com wrote: None of the mechanism for making this stuff happen is available at the moment. It's an engineering problem that just needs time to be thrown at it. If we could figure out which mechanisms are needed we would

Re: Using associated data types to create unpacked data structures

2010-08-12 Thread Johan Tibell
On Thu, Aug 12, 2010 at 11:28 AM, Simon Marlow marlo...@gmail.com wrote: Rather than try to solve this problem in one go, I would go for a low-tech approach for now: write a TH library to generate the code, and ask the user to declare the versions they need. To make a particular version, the

<    1   2   3   4   5   6   7   8   9   >