On Sat, Aug 14, 2010 at 10:46 PM, Michael Snoyman mich...@snoyman.comwrote:
When I'm writing a web app, my code is sitting on a Linux system where the
default encoding is UTF-8, communicating with a database speaking UTF-8,
receiving request bodies in UTF-8 and sending response bodies in
Quoth John Millikin jmilli...@gmail.com,
I don't see why [Char] is obvious -- you'd never use [Word8] for
storing binary data, right? [Char] is popular because it's the default
type for string literals, and due to simple inertia, but when there's
a type based on packed arrays there's no
On Sat, Aug 14, 2010 at 10:07 PM, Donn Cave d...@avvanta.com wrote:
Am I confused about this? It's why I can't see Text ever being
simply the obvious choice. [Char] will continue to be the obvious
choice if you want a functional data type that supports pattern
matching etc.
Actually,
Bryan == Bryan O'Sullivan b...@serpentine.com writes:
Bryan On Sat, Aug 14, 2010 at 10:46 PM, Michael Snoyman
mich...@snoyman.com wrote:
Bryan When I'm writing a web app, my code is sitting on a Linux
Bryan system where the default encoding is UTF-8, communicating
Bryan with
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
Don Stewart d...@galois.com writes:
* Pay attention to Haskell Cafe announcements
* Follow the Reddit Haskell news.
* Read the quarterly reports on Hackage
* Follow Planet Haskell
And yet there are still many packages that fall under the radar with no
announcements of any
Alexey Karakulov ankaraku...@gmail.com writes:
(Ord b) must be deduced from (Functor (Set b)) but it doesn't. I
don't know whether it's my mistake somewhere or ghc problem.
I've come across this problem as well; the best solution I've seen so
far is the one taken by Ganesh in his rmonad
Conal Elliott co...@conal.net wrote:
On Sat, Aug 14, 2010 at 9:27 AM, Ertugrul Soeylemez e...@ertes.de wrote:
Conal Elliott co...@conal.net wrote:
There are various models. One (the state monad model) of them
would desugar this to:
\world0 -
let (x, world1) = getLine
On 15 August 2010 08:50, Ivan Lazar Miljenovic
ivan.miljeno...@gmail.com wrote:
Yeah, I'm working on something like this at the moment, but I'm
currently stuck on naming: if I want to have Functor for kind * - *,
what's a good name for a type class for kind *?
Conor McBride has suggested
On Sun, Aug 15, 2010 at 10:50 AM, Ivan Lazar Miljenovic
ivan.miljeno...@gmail.com wrote:
Yeah, I'm working on something like this at the moment, but I'm
currently stuck on naming: if I want to have Functor for kind * - *,
what's a good name for a type class for kind *?
I was thinking about
2010/8/15 Ivan Lazar Miljenovic ivan.miljeno...@gmail.com:
Don Stewart d...@galois.com writes:
* Pay attention to Haskell Cafe announcements
* Follow the Reddit Haskell news.
* Read the quarterly reports on Hackage
* Follow Planet Haskell
And yet there are still many
Don Stewart wrote:
So, to stay up to date, but without drowning in data. Do one of:
* Pay attention to Haskell Cafe announcements
* Follow the Reddit Haskell news.
* Read the quarterly reports on Hackage
* Follow Planet Haskell
Interesting. Obviously I look at Haskell Cafe
On Sat, Aug 14, 2010 at 10:11 PM, Bill Atkins watk...@alum.rpi.edu wrote:
On Saturday Aug 14, 2010, at 12:50 AM, Conal Elliott wrote:
And the IO monad is what Jerzy asked about. I'm pointing out that the
state monad does not capture concurrency, and the EDSL model does not
capture FFI.
Vo Minh Thu not...@gmail.com writes:
2010/8/15 Ivan Lazar Miljenovic ivan.miljeno...@gmail.com:
Don Stewart d...@galois.com writes:
* Pay attention to Haskell Cafe announcements
* Follow the Reddit Haskell news.
* Read the quarterly reports on Hackage
* Follow Planet
Hello,
On Aug 14, 2010, at 12:43 PM, Ross Paterson wrote:
When bumping only a.b.c.D, the new version is not installed as a
dependency if the old version already is installed (unless the new
version is explicitly demanded.) It seems bumping a.b.c.D has
advantages for some users and
I don't agree. A concurrent change is the effect of an IO action, not
of the thread. For example if a concurrent thread writes to an MVar,
then that change becomes the effect of the next takeMVar, which gets
executed. If a concurrent thread changes a file on disk, then that
changing
Sebastian Fischer s...@informatik.uni-kiel.de writes:
Hello,
On Aug 14, 2010, at 12:43 PM, Ross Paterson wrote:
When bumping only a.b.c.D, the new version is not installed as a
dependency if the old version already is installed (unless the new
version is explicitly demanded.) It seems
2010/8/15 Ivan Lazar Miljenovic ivan.miljeno...@gmail.com:
Vo Minh Thu not...@gmail.com writes:
2010/8/15 Ivan Lazar Miljenovic ivan.miljeno...@gmail.com:
Don Stewart d...@galois.com writes:
* Pay attention to Haskell Cafe announcements
* Follow the Reddit Haskell news.
* Read
It all began with
class (Vector (Point x)) = HasSpace x where
type Point x :: *
So far, so good.
I was rather surprised that you _can_ write
class (Complete (Completed x)) = Incomplete x where
type Completed x :: *
complete :: x - Completed x
I was almost as surprised to discover
Hi all,
I'm working on merge gio-branch
(https://patch-tag.com/r/AndyStewart/gio-branch/home)
to gtk2hs-0.12.0.
GIO (http://library.gnome.org/devel/gio/stable/)
is cross-platform APIs for file operation, we can use gio APIs
develop file manager or similar application.
If anyone want to use
Andrew Coppin andrewcop...@btinternet.com writes:
It all began with
class (Vector (Point x)) = HasSpace x where
type Point x :: *
So far, so good.
I was rather surprised that you _can_ write
class (Complete (Completed x)) = Incomplete x where
type Completed x :: *
complete
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 8/15/10 03:01 , Bryan O'Sullivan wrote:
On Sat, Aug 14, 2010 at 10:07 PM, Donn Cave d...@avvanta.com
mailto:d...@avvanta.com wrote:
We'll have a three way choice between programming
elegance, correctness and efficiency. If Haskell
No, not really. Linked lists are very easy to deal with recursively and
Strings automatically work with any already-defined list functions.
On Sun, Aug 15, 2010 at 11:17 AM, Brandon S Allbery KF8NH
allb...@ece.cmu.edu wrote:
More to the point, there's nothing elegant about [Char] --- its sole
Patai Gergely patai_gerg...@fastmail.fm wrote:
I don't agree. A concurrent change is the effect of an IO action,
not of the thread. For example if a concurrent thread writes to an
MVar, then that change becomes the effect of the next takeMVar,
which gets executed. If a concurrent
Ertugrul Soeylemez wrote:
let (x, world1) = getLine world0
world2 = print (x+1) world1
If between 'getLine' and 'print' something was done by a
concurrent thread, then that change to the world is captured by 'print'.
But in a world passing interpretation of IO, print is supposed to be
Quoth Bryan O'Sullivan b...@serpentine.com,
On Sat, Aug 14, 2010 at 10:07 PM, Donn Cave d...@avvanta.com wrote:
...
ByteString will continue to be the obvious choice
for big data loads.
Don't confuse I have big data with I need bytes. If you are working with
bytes, use bytestring. If you are
Quoth Bill Atkins watk...@alum.rpi.edu,
No, not really. Linked lists are very easy to deal with recursively and
Strings automatically work with any already-defined list functions.
Yes, they're great - a terrible mistake, for a practical programming
language, but if you fail to recognize the
On Sun, Aug 15, 2010 at 12:50 PM, Donn Cave d...@avvanta.com wrote:
I wonder how many ByteString users are `working with bytes', in the
sense you apparently mean where the bytes are not text characters.
My impression is that in practice, there is a sizeable contingent
out here using
Hello Tillmann,
Sunday, August 15, 2010, 7:40:54 PM, you wrote:
But in a world passing interpretation of IO, print is supposed to be a
pure Haskell function. So the value world2 can only depend on the values
of print and world1, but not on the actions of some concurrent thread.
the whole
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 8/15/10 09:00 , Andrew Coppin wrote:
class (Vector (Point x)) = HasSpace x where
type Point x :: *
(...)
And now things get *really* interesting. Consider this:
data Foo x = Foo !x !(Point x)
Surprisingly, GHC accepts this. This
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 8/15/10 11:25 , Bill Atkins wrote:
No, not really. Linked lists are very easy to deal with recursively and
Strings automatically work with any already-defined list functions.
On Sun, Aug 15, 2010 at 11:17 AM, Brandon S Allbery KF8NH
Bulat Ziganshin wrote:
But in a world passing interpretation of IO, print is supposed to be a
pure Haskell function. So the value world2 can only depend on the values
of print and world1, but not on the actions of some concurrent thread.
the whole World includes any concurrent thread though ;)
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 8/15/10 11:40 , Tillmann Rendel wrote:
But in a world passing interpretation of IO, print is supposed to be a pure
Haskell function. So the value world2 can only depend on the values of print
and world1, but not on the actions of some concurrent
Brandon S Allbery KF8NH wrote:
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 8/15/10 09:00 , Andrew Coppin wrote:
class (Vector (Point x)) = HasSpace x where
type Point x :: *
(...)
And now things get *really* interesting. Consider this:
data Foo x = Foo !x !(Point x)
Donn Cave wrote:
I wonder how many ByteString users are `working with bytes', in the
sense you apparently mean where the bytes are not text characters.
My impression is that in practice, there is a sizeable contingent
out here using ByteString.Char8 and relatively few applications for
the Word8
Brandon S Allbery KF8NH wrote:
I am confused by this discussion. I originally thought some time back that
IO was about world passing, but in fact it's just handing off a baton to
insure that a particular sequence of IO functions is executed in the
specified sequence and not reordered. Nothing
Donn Cave wrote:
Quoth Bill Atkins watk...@alum.rpi.edu,
No, not really. Linked lists are very easy to deal with recursively and
Strings automatically work with any already-defined list functions.
Yes, they're great - a terrible mistake, for a practical programming
language, but if
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 8/15/10 13:53 , Andrew Coppin wrote:
injection attacks, the Y2K bug, programs that can't handle files larger than
2GB or that don't understand Unicode, and so forth. All things that could
have been almost trivially avoided if everybody wasn't so
On Sat, Aug 14, 2010 at 6:05 PM, Bryan O'Sullivan b...@serpentine.comwrote:
- If it's not good enough, and the fault lies in a library you chose,
report a bug and provide a test case.
As a case in point, I took the string search benchmark that Daniel shared
on Friday, and boiled it
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 8/15/10 13:27 , Tillmann Rendel wrote:
Brandon S Allbery KF8NH wrote:
I am confused by this discussion. I originally thought some time back that
IO was about world passing, but in fact it's just handing off a baton to
insure that a particular
Brandon S Allbery KF8NH wrote:
(Remember that Unix is itself a practical example of a research platform
avoiding success at any cost gone horribly wrong.)
I haven't used Erlang myself, but I've heard it described in a similar
way. (I don't know how true that actually is...)
On Sunday 15 August 2010 20:04:01, Bryan O'Sullivan wrote:
On Sat, Aug 14, 2010 at 6:05 PM, Bryan O'Sullivan
b...@serpentine.comwrote:
- If it's not good enough, and the fault lies in a library you
chose, report a bug and provide a test case.
As a case in point, I took the string
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 8/15/10 14:34 , Andrew Coppin wrote:
Brandon S Allbery KF8NH wrote:
(Remember that Unix is itself a practical example of a research platform
avoiding success at any cost gone horribly wrong.)
I haven't used Erlang myself, but I've heard it
On Sun, Aug 15, 2010 at 11:39 AM, Daniel Fischer
daniel.is.fisc...@web.dewrote:
Out of curiosity, what kind of speed-up did your Friday fix bring to the
searching/replacing functions?
Quite a bit!
text 0.7.1.0 and 0.7.2.1:
- 1.056s
darcs HEAD:
- 0.158s
No. As you say the world1 value is immutable, but that's not
contradictory. If between 'getLine' and 'print' something was done by a
concurrent thread, then that change to the world is captured by 'print'.
Well, that's technically true, but it basically amounts to saying that
the 'model' of
Quoth Andrew Coppin andrewcop...@btinternet.com,
...
And if you fail to recognise what a grave mistake placing performance
before correctness is, you end up with things like buffer overflow
exploits, SQL injection attacks, the Y2K bug, programs that can't handle
files larger than 2GB or
On Sunday 15 August 2010 20:53:32, Bryan O'Sullivan wrote:
On Sun, Aug 15, 2010 at 11:39 AM, Daniel Fischer
daniel.is.fisc...@web.dewrote:
Out of curiosity, what kind of speed-up did your Friday fix bring to
the searching/replacing functions?
Quite a bit!
text 0.7.1.0 and 0.7.2.1:
Tillmann Rendel ren...@mathematik.uni-marburg.de wrote:
Bulat Ziganshin wrote:
But in a world passing interpretation of IO, print is supposed to
be a pure Haskell function. So the value world2 can only depend on
the values of print and world1, but not on the actions of some
concurrent
Ivan Lazar Miljenovic ivan.miljeno...@gmail.com writes:
Don Stewart d...@galois.com writes:
* Pay attention to Haskell Cafe announcements
* Follow the Reddit Haskell news.
* Read the quarterly reports on Hackage
* Follow Planet Haskell
And yet there are still many packages
Brandon S Allbery KF8NH allb...@ece.cmu.edu wrote:
On 8/15/10 11:40 , Tillmann Rendel wrote:
But in a world passing interpretation of IO, print is supposed to be
a pure Haskell function. So the value world2 can only depend on the
values of print and world1, but not on the actions of some
Hello.
Yesterday I hit a bug in Network.Browser: connection in the connection
pool is not reused if you are connecting to a destination with
qualified port (not 80 for HTTP or 80 but explicitly provided like
http://www.google.com:80). The reason for the failure is quite trivial,
but I had not
My worry with bumping only the patch level is that
people who explicitly want to depend on the efficient version of my
library need to depend on a.b.c.D and cannot follow the good practice
of depending on a.b.*.
Well, then you have = a.b.c.d a.(b+1).
Ok, it seems this is less of an issue
HI -
I have been struggling to get the Xemacs recognize hs file. I have installed
the Haskell-mode.. However I keep getting the message File mode
specification error: (wrong-number-of-arguments require 3).. How do I go
about fixing this??
Many thanks
Patai Gergely patai_gerg...@fastmail.fm wrote:
No. As you say the world1 value is immutable, but that's not
contradictory. If between 'getLine' and 'print' something was done
by a concurrent thread, then that change to the world is captured by
'print'.
Well, that's technically true,
i use haskell couchdb 0.10 with more luck than others: it works for me
quite well. I have been careful to convert to json strings separately
from the calls to runCouchDB - so i could check that the values were
correct.
i sense there is a difficulty with 'newView' - it does
On Sunday, August 15, 2010, Tillmann Rendel
ren...@mathematik.uni-marburg.de wrote:
Bulat Ziganshin wrote:
But in a world passing interpretation of IO, print is supposed to be a
pure Haskell function. So the value world2 can only depend on the values
of print and world1, but not on the
Hi all,
The darcs team would like to announce the immediate availability of darcs 2.5
beta 3 (also known as darcs 2.4.98.3 due to Cabal restrictions). Important
changes since darcs 2.4.4 are:
* trackdown can now do binary search with the --bisect option
* darcs always stores patch
Hi,
[1] describes how to use hgettext with cabal. When running runhaskell
Setup build this works fine. But cabal build says:
Not in scope: `__MESSAGE_CATALOG_DOMAIN__'
Not in scope: `__MESSAGE_CATALOG_DIR__'
[1] says: __MESSAGE_CATALOG_DOMAIN__ and __MESSAGE_CATALOG_DIR__ are macro
definitions,
CCing the maintainer of the CouchDB package.
On Sun, Aug 15, 2010 at 3:34 PM, Andrew U. Frank
fran...@geoinfo.tuwien.ac.at wrote:
i use haskell couchdb 0.10 with more luck than others: it works for me
quite well. I have been careful to convert to json strings separately
from the calls to
Bryan O'Sullivan wrote:
As a case in point, I took the string search benchmark that Daniel shared
on Friday, and boiled it down to a simple test case: how long does it take
to read a 31MB file?
GNU wc -m:
- en_US.UTF-8: 0.701s
text 0.7.1.0:
- lazy text: 1.959s
- strict text: 3.527s
wren:
Bryan O'Sullivan wrote:
As a case in point, I took the string search benchmark that Daniel shared
on Friday, and boiled it down to a simple test case: how long does it take
to read a 31MB file?
GNU wc -m:
- en_US.UTF-8: 0.701s
text 0.7.1.0:
- lazy text: 1.959s
- strict
Brandon S Allbery KF8NH wrote:
On 8/15/10 09:00 , Andrew Coppin wrote:
class (Vector (Point x)) = HasSpace x where
type Point x :: *
(...)
And now things get *really* interesting. Consider this:
data Foo x = Foo !x !(Point x)
Surprisingly, GHC accepts this. This despite the rather
Brandon S Allbery KF8NH wrote:
only ordering of calls in the *current*
thread of execution. (Which, hmm, implies that unsafePerformIO and
unsafeInterleaveIO are conceptually similar to forkIO.)
Implementationally they are very similar (at least as far as the baton
is concerned). How hard we
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 08/15/2010 08:32 PM, wren ng thornton wrote:
Brandon S Allbery KF8NH wrote:
only ordering of calls in the *current*
thread of execution. (Which, hmm, implies that unsafePerformIO and
unsafeInterleaveIO are conceptually similar to forkIO.)
Gregory Collins g...@gregorycollins.net writes:
Ivan Lazar Miljenovic ivan.miljeno...@gmail.com writes:
Don Stewart d...@galois.com writes:
* Pay attention to Haskell Cafe announcements
* Follow the Reddit Haskell news.
* Read the quarterly reports on Hackage
* Follow
may i suggest that the description of the package, where it lists the
depreciated functions, give also a hint, how the function should be
replaced. i often hit the wall of depreciated functions when i try to
use a packaged not having been compiled for a while and i have to
replace the functions.
Hello Bryan,
Sunday, August 15, 2010, 10:04:01 PM, you wrote:
shared on Friday, and boiled it down to a simple test case: how long does it
take to read a 31MB file?
GNU wc -m:
there are even slower ways to do it if you need :)
if your data aren't cached, then speed is limited by HDD. if
Hello Daniel,
Sunday, August 15, 2010, 10:39:24 PM, you wrote:
That's great. If that performance difference is a show stopper, one
shouldn't go higher-level than C anyway :)
*all* speed measurements that find Haskell is as fast as C, was
broken. Let's see:
D:\testingread MsOffice.arc
68 matches
Mail list logo