Re: Poor man Haskell serialisation using TH, was: Re: [Haskell-cafe] Haskell serialisation

2007-06-21 Thread Bulat Ziganshin
Hello Pasqualino, Thursday, June 21, 2007, 7:35:47 PM, you wrote: > So, the state is both applicable and serialisable (on the receiving side we > should naturally have an interpreter for the TH representation). and this interpreter should have a way to find function definition by its name - it's

Re[2]: Type classes vs C++ overloading Re: [Haskell-cafe] Messing around with types [newbie]

2007-06-21 Thread Bulat Ziganshin
Hello Dan, Thursday, June 21, 2007, 7:39:35 PM, you wrote: >>> class FooOp a b where >>> foo :: a -> b -> IO () >>> >>> instance FooOp Int Double where >>> foo x y = putStrLn $ (show x) ++ " Double " ++ (show y) >> >> this is rather typical question :) unlike C++ which resolves any >> ove

Re[2]: Poor man Haskell serialisation using TH, was: Re: [Haskell-cafe] Haskell serialisation

2007-06-21 Thread Bulat Ziganshin
> equivalent (as produced by TH's pprint) using GHC API or hs-plugins. > Probably not very efficient but quite easy to implement, > Best, > titto > On Thursday 21 June 2007 16:39:58 Bulat Ziganshin wrote: >> Hello Pasqualino, >> >> Thursday, June 21, 2

Re[2]: Poor man Haskell serialisation using TH, was: Re: [Haskell-cafe] Haskell serialisation

2007-06-21 Thread Bulat Ziganshin
Hello Pasqualino, Thursday, June 21, 2007, 8:43:20 PM, you wrote: >> how it can interpret call to "foo" without loading it? :) > What am I missing? i mean that there are no "either .. or .." alternatives as you said - we can't interpret AST without function bindings -- Best regards, Bulat

Re: [Haskell-cafe] Filesystem access

2007-06-21 Thread Bulat Ziganshin
Hello Andrew, Friday, June 22, 2007, 12:19:51 AM, you wrote: > 1. Is there *any* way to determine how large a file is *without* opening > it? The only library function I can find to do with file sizes is > hFileSize; obviously this only works for files that you have permission > to open! std lib

Re[4]: [Haskell-cafe] haskell crypto is reaaaaaaaaaally slow

2007-06-21 Thread Bulat Ziganshin
Hello Duncan, Thursday, June 21, 2007, 8:48:53 AM, you wrote: >> > The smallest possible would be 2 words overhead by just using a >> > ByteArray#, >> >> i tried it once and found that ByteArray# size is returned rounded to 4 - >> there is no way in GHC runtime to alloc, say, exactly 37 bytes. a

Re[2]: [Haskell-cafe] Haskell version of ray tracer code is much slower than the original ML

2007-06-22 Thread Bulat Ziganshin
Hello Philip, Friday, June 22, 2007, 7:36:51 PM, you wrote: > Langauge File Time in seconds > Haskell ray.hs 38.2 > OCamlray.ml 23.8 > g++-4.1 ray.cpp 12.6 can you share sourcecode of this variant? i'm interested to see how much it is obfuscated btw, *their* measurement said that

Re: [Haskell-cafe] A probably-stupid question about a Prelude implementation.

2007-06-22 Thread Bulat Ziganshin
Hello Michael, Friday, June 22, 2007, 7:31:17 PM, you wrote: no surprise - you got a lot of answers :) it is the best part of Haskell, after all :) the secret Haskell weapon is lazy evaluation which makes *everything* short-circuited. just consider standard (&&) definition: (&&) False _ = Fals

Re[2]: [Haskell-cafe] "Graphical Haskell"

2007-06-23 Thread Bulat Ziganshin
Hello Donald, Saturday, June 23, 2007, 8:46:06 AM, you wrote: >> - Regarding performance (for real-time simulations, not GUIs), I think the >> garbage collector will get really stressed using FRP because of all those >> infinite lazy streams; my gut feeling says a generational garbage collector

Re[2]: [Haskell-cafe] Need for speed: the Burrows-Wheeler Transform

2007-06-23 Thread Bulat Ziganshin
Hello Andrew, Saturday, June 23, 2007, 11:21:26 AM, you wrote: > ...OK...so how do I make Haskell go faster still? > Presumably by transforming the code into an ugly mess that nobody can > read any more...? bwt transformation is very good researched area, so probably you will not get decent per

Re[2]: [Haskell-cafe] Need for speed: the Burrows-Wheeler Transform

2007-06-23 Thread Bulat Ziganshin
Hello Andrew, Saturday, June 23, 2007, 2:45:01 PM, you wrote: > Hey, I'm just glad I managed to get within striking distance of Mr C++. > So much for Haskell being "inherently less performant". :-P my little analysis says that it's probably due to different sort() implementations, so this says n

Re[2]: [Haskell-cafe] Parallel + exceptions

2007-06-23 Thread Bulat Ziganshin
Hello Andrew, Saturday, June 23, 2007, 7:12:52 PM, you wrote: > Is everything described in that paper actually implemented now? (And > implemented in exactly the same way as the paper says?) difference may be in subtle details. it just works for me :) >> in my experience, exceptions are rarely

Re: [Haskell-cafe] Parallel + exceptions

2007-06-23 Thread Bulat Ziganshin
Hello Andrew, Saturday, June 23, 2007, 5:59:45 PM, you wrote: > The two things mentioned in the subject line are both things I've never > tried with Haskell. I've seen a lot of papers about these things, but I > don't really understand what the current state of play with this is. Are > any of the

Re[2]: [Haskell-cafe] Need for speed: the Burrows-Wheeler Transform

2007-06-23 Thread Bulat Ziganshin
Hello Andrew, Saturday, June 23, 2007, 4:02:54 PM, you wrote: > The point being that lots of people look at Haskell and go "oh, that's > very cute for writing trivial example code, but it can never be fast; > for that you must use C or C++". and that's true :) as i said, your C++ code is very f

Re[2]: [Haskell-cafe] Practical Haskell question.

2007-06-25 Thread Bulat Ziganshin
Hello Michael, Monday, June 25, 2007, 2:10:28 PM, you wrote: > Does this make more sense now? And can it be done somehow in Haskell? runCheckedCode = checkBeforeRun [actionA x y, actionB z t, actionC] actionA x y b | b = -- check conditions | otherwise = -- perform action

Re[2]: [Haskell-cafe] directory tree?

2007-06-25 Thread Bulat Ziganshin
Hello Chad, Monday, June 25, 2007, 10:47:11 PM, you wrote: > bar = fmap decompress $ B.readFile "myData.gz" try it with non-lazy bytestrings: import qualified Data.ByteString as B -- Best regards, Bulatmailto:[EMAIL PROTECTED] ___

Re: [Haskell-cafe] Re: Propositional logic question

2007-06-26 Thread Bulat Ziganshin
Hello apfelmus, Tuesday, June 26, 2007, 12:45:54 PM, you wrote: > That works for classical logic where ¬A \/ A always holds, but the task > here is to prove it for intuitionistic logic. is it the same as so-called "woman logic"? :) -- Best regards, Bulatmailto:[EM

Re[2]: [Haskell-cafe] Preferred way to get data from a socket

2007-06-27 Thread Bulat Ziganshin
Hello Donald, Wednesday, June 27, 2007, 6:37:07 AM, you wrote: >> I also know Bulat Ziganshin had put together a nice-looking Streams >> library (http://unix.freshmeat.net/projects/streams/) based on John >> Goerzen's previous HVIO work, but I wasn't sure if the Byt

Re[2]: [Haskell-cafe] Preferred way to get data from a socket

2007-06-27 Thread Bulat Ziganshin
Hello Donald, Wednesday, June 27, 2007, 11:40:28 AM, you wrote: >> using my library should allow 30-50 mb/s i/o speed but its >> installation may be tricky since it was not updated over a year > That's interesting, Bulat. Two points I'd like to ask about the streams > library: > What machine d

Re[3]: [Haskell-cafe] Preferred way to get data from a socket

2007-06-27 Thread Bulat Ziganshin
Hello Bulat, Wednesday, June 27, 2007, 3:34:02 PM, you wrote: >> What machine did you do the IO benchmarks on? Since we get well over 10x >> that speed word writing in Data.Binary now, for example, on a fast >> machine. (Duncan, what's the max throughput we've seen?) > test box was Duron 1.2 GHz

Re[2]: [Haskell-cafe] Language semantics

2007-06-28 Thread Bulat Ziganshin
Hello Andrew, Thursday, June 28, 2007, 1:28:05 AM, you wrote: > Wow, wait a sec - case expressions are allowed to have guards too?? btw, it's used to implement boolean switches: case () of _ | a>0 -> 1 | a<0 -> -1 | otherwise -> 0 -- Best regards, Bulat

Re: [Haskell-cafe] advice: instantiating/duplicating modules

2007-06-29 Thread Bulat Ziganshin
Hello Nicolas, Friday, June 29, 2007, 9:07:38 PM, you wrote: > I'm rather unfamiliar with Template Haskell, but it sounds like it > might fit the bill. Although, if I recall correctly, instances and > type declarations splicing are yet to be implemented in GHC? instances - definitely not. i've u

Re: [Haskell-cafe] Abstraction leak

2007-06-30 Thread Bulat Ziganshin
Hello Andrew, Friday, June 29, 2007, 10:39:28 PM, you wrote: > I'm writing a whole bunch of data compression programs. me too :) but i never used Haskell for compression itself, only for managing archives. fast compression routines are written in C++ http://www.haskell.org/bz -- Best regards

Re: [Haskell-cafe] Name Decoration and Undefined References

2007-06-30 Thread Bulat Ziganshin
Hello SevenThunders, Saturday, June 30, 2007, 7:45:57 AM, you wrote: > My own code is half Haskell and half C. My build process is rather complex i have the same. initially C code was compiled by gcc but finally i switched to ghc-only compilation. it's also important to use the same gcc for com

Re[2]: [Haskell-cafe] Abstraction leak

2007-07-01 Thread Bulat Ziganshin
Hello Andrew, Saturday, June 30, 2007, 11:48:19 AM, you wrote: >> me too :) but i never used Haskell for compression itself, only for >> managing archives. fast compression routines are written in C++ >> > What, you're telling me that "fast" software cannot be written in > Haskell? :-P in

Re: [Haskell-cafe] sha1 implementation thats "only" 12 times slower then C

2007-07-01 Thread Bulat Ziganshin
Hello Anatoly, Sunday, July 1, 2007, 3:58:24 AM, you wrote: > Anyone have any pointers on how to get hashElem and updateElem to run > faster, or any insight on what exactly they are allocating. To me it > seems that those functions should be able to do everything they need > to without a malloc.

Re[2]: [Haskell-cafe] Abstraction leak

2007-07-01 Thread Bulat Ziganshin
Hello Andrew, Sunday, July 1, 2007, 1:18:16 PM, you wrote: >> encoding is simple - make this traversal one time and store bit >> sequence for each symbol. for decoding, you can find length of longest >> symbol MaxBits and build table of 2^MaxBits elements which allows to >> find next symbol by di

Re[2]: [Haskell-cafe] XmlSerializer.deserialize?

2007-07-01 Thread Bulat Ziganshin
Hello Hugh, Sunday, July 1, 2007, 8:56:05 PM, you wrote: > Genuine question: please could you tell me what are the truly powerful > features of Haskell? > Anyway, getting back to my question, there's a whole slew of > articles around saying that no-one uses Haskell because they're too > stupid.

Re[2]: [Haskell-cafe] Re: Parsers are monadic?

2007-07-03 Thread Bulat Ziganshin
Hello Gregory, Tuesday, July 3, 2007, 1:02:44 AM, you wrote: > Right, I read more about it and found this out.  The 'main' > function is apparently magical at runtime and allows you to break i recommend you to read two htmls: http://sigfpe.blogspot.com/2006/08/you-could-have-invented-monads-and.

Re: [Haskell-cafe] Haskell's "currying" versus Business Objects Gem Cutter's "burning"

2007-07-03 Thread Bulat Ziganshin
Hello peterv, Tuesday, July 3, 2007, 1:40:11 PM, you wrote: > This burning looks more general to me, but cannot be done using the textual > approach? it's just a matter of syntax :) "foo ? bar" may be replaced with "\x -> foo x bar" although i agree that "burning" syntax is useful. one problem

Re[2]: [Haskell-cafe] Binary serialization, was Re: Abstraction leak

2007-07-04 Thread Bulat Ziganshin
Hello Philip, Wednesday, July 4, 2007, 5:50:42 PM, you wrote: > This doesn't seem to deal with endianness. Am I missing something? alternative: http://haskell.org/haskellwiki/Library/AltBinary http://haskell.org/haskellwiki/Library/Streams -- Best regards, Bulatmail

Re[2]: [Haskell-cafe] Binary serialization, was Re: Abstraction leak

2007-07-04 Thread Bulat Ziganshin
Hello Philip, Wednesday, July 4, 2007, 7:31:56 PM, you wrote: > On Wed, Jul 04, 2007 at 06:52:08PM +0400, Bulat Ziganshin wrote: >>Hello Philip, >> >>Wednesday, July 4, 2007, 5:50:42 PM, you wrote: >>> This doesn't seem to deal with endianness. Am I missing

Re[2]: [Haskell-cafe] Binary serialization, was Re: Abstraction leak

2007-07-04 Thread Bulat Ziganshin
Hello Philip, Wednesday, July 4, 2007, 9:41:27 PM, you wrote: > I'm thinking of the elimination of the boxing of values drawn out of > the input stream where possible, eg if I was writing a stream > processor that folded across the values in the input stream, it would > (presumably) be more effic

Re[2]: [Haskell-cafe] Binary serialization, was Re: Abstraction leak

2007-07-05 Thread Bulat Ziganshin
Hello Paul, Thursday, July 5, 2007, 7:00:46 PM, you wrote: > * Gzip compress a data stream zlib > * Send an email > * Parse an ini file >> The one thing off the top of my head that Python had was Base64, but that's >> 20 MissingH > * Calculate the MD5 checksum of a file crypto -- Best reg

Re[4]: [Haskell-cafe] Binary serialization, was Re: Abstraction leak

2007-07-05 Thread Bulat Ziganshin
Hello Paul, Thursday, July 5, 2007, 8:07:34 PM, you wrote: > note: with Python, I'm used to 3rd party modules being available as > Windows installer packages - does the concept of an installable binary > for something like MissingH, which I can just install and use, make > sense for a compiled la

Re[2]: [Haskell-cafe] A very nontrivial parser

2007-07-06 Thread Bulat Ziganshin
Hello Andrew, Thursday, July 5, 2007, 11:45:14 PM, you wrote: > Personally, I just try to avoid *all* language extensions - mainly > because most of them are utterly incomprehensible. (But then, perhaps > that's just because they all cover extremely rare edge cases?) > MPTCs and ATs look useful

[Haskell-cafe] Re[2]: Modern Haskell books (was "Re: A very nontrivial parser")

2007-07-06 Thread Bulat Ziganshin
Hello peterv, > The problem I face is that most (all?) Haskell books I could find deal with > Haskell 98... Are there any books out that cover the "modern" Haskell > extensions? chapter 7 of ghc manual, *old* hugs manual, and hundreds of papers on haskell site :) -- Best regards, Bulat

Re[2]: [Haskell-cafe] RE: Modern Haskell books (was "Re: A very nontrivial parser")

2007-07-06 Thread Bulat Ziganshin
Hello peterv, Friday, July 6, 2007, 2:03:24 PM, you wrote: > For example, for the brand new F# language I bought the book > http://www.amazon.com/Foundations-F-Robert-Pickering/dp/1590597575 which > covers almost everything you need to create real-world applications, from > GUIs to databases to 2D

Re: [Haskell-cafe] Problem using ap -- No instance for (Monad ((->) [[a]]))

2007-07-06 Thread Bulat Ziganshin
Hello Jim, Friday, July 6, 2007, 7:12:27 PM, you wrote: > No instance for (Monad ((->) [[a]])) :l Control.Monad.Instances -- Best regards, Bulatmailto:[EMAIL PROTECTED] ___ Haskell-Cafe mailing list Haskell-Cafe@hask

Re: [Haskell-cafe] Re: Nix for Hackage/Cabal

2007-07-06 Thread Bulat Ziganshin
Hello apfelmus, Friday, July 6, 2007, 8:19:58 PM, you wrote: >> I was under the impression that it didn't work on Windows. From another > - Added support for Cygwin (Windows, i686-cygwin), Mac OS X on Intel cygwin isn't windows, it's backdoors : -- Best regards, Bulat

Re: [Haskell-cafe] needsaname :: ([a] -> Maybe (b, [a])) -> (b -> [a]) -> [a] -> [a]

2007-07-06 Thread Bulat Ziganshin
Hello Jules, Friday, July 6, 2007, 10:00:12 PM, you wrote: > to think of many more uses of this function. I actually wrote it to do > HTML fix-up, working with the TagSoup library. A few quick definitions > and it becomes easy to express things like 'remove all FONT, BR and U > tags; replace all

Re[2]: [Haskell-cafe] A very edgy language (was: A very nontrivial parser)

2007-07-07 Thread Bulat Ziganshin
Hello Thomas, Sunday, July 8, 2007, 2:36:43 AM, you wrote: > This is certainly true. I've coded up in less than six months, > something that uses better algorithms and finer grained concurrency > than the software I used to work on, and the latter represented 5 or > more man-years of coding. Howev

Re[2]: [Haskell-cafe] Toy compression algorithms [was: A very edgy language]

2007-07-08 Thread Bulat Ziganshin
Hello Donald, Sunday, July 8, 2007, 12:50:36 PM, you wrote: >> too much quoting :( > Good work. Probably worth benchmarking against the other compression > libraries are you really want to totally discredit Haskell? :) they should be hundreds of times slower than any practical compression alg

Re: [Haskell-cafe] Re: Too many packages on hackage? :-)

2007-07-08 Thread Bulat Ziganshin
Hello apfelmus, Sunday, July 8, 2007, 5:20:18 PM, you wrote: >>> > Looks like there's too many packages on hackage.haskell.org now for a it's the nicest problem i can imagine :) > For browsing libraries, I like the wiki pages much more than hackage. > Can't those two be merged into one? may be

Re[2]: [Haskell-cafe] A very nontrivial parser

2007-07-08 Thread Bulat Ziganshin
Hello Andrew, Sunday, July 8, 2007, 4:31:32 PM, you wrote: > Oh, I don't mind not knowing how rank-2 types are *implemented*. ;-) But > it would be nice to know what they *are*... :-S concrete types are rank-0: sin :: Double->Double polymorphic types are rank-1: length :: forall a . [a] -> Int

Re[2]: [Haskell-cafe] Fun with ByteStrings [was: A very edgy language]

2007-07-08 Thread Bulat Ziganshin
Hello Malte, Sunday, July 8, 2007, 6:38:19 PM, you wrote: > The string "a", when read from a UTF-8-encoded file via readFile, has a > length of 2. Anyone with a URI to enlighten me? if you need UTF-8 i/o, look at http://hackage.haskell.org/packages/archive/pkg-list.html -- Best regards, Bu

Re[2]: [Haskell-cafe] Fun with ByteStrings [was: A very edgy language]

2007-07-08 Thread Bulat Ziganshin
Hello Andrew, Sunday, July 8, 2007, 7:16:46 PM, you wrote: >>> [Char] is a linked list of pointers to heap-allocated fullword >>> integers, 20 (40) bytes per character (assuming non-latin1). >>> >> >> Hey, I love ByteStrings! ;-) >> actually only 12 (24 for 64-but cpu) as far as you use lat

Re[2]: [Haskell-cafe] Toy compression algorithms [was: A very edgy language]

2007-07-08 Thread Bulat Ziganshin
Hello Stefan, Sunday, July 8, 2007, 7:22:03 PM, you wrote: > This is very true - but -fvia-C isn't really C. > If you want to see what a difference exists between true C and the NCG, > try compiling your program with -fvia-C -unreg even better, try to to use jhc. it compiles via gcc and unlike

Re[2]: [Haskell-cafe] Fun with ByteStrings [was: A very edgy language]

2007-07-08 Thread Bulat Ziganshin
Hello Andrew, Sunday, July 8, 2007, 9:38:18 PM, you wrote: > (E.g., the inverse BWT makes use of positive integers that are likely to > be way bigger than 255. But there isn't a fast packed Word16 or Word32 > array I can use there...) well, that's true as long as you swear to never use UArray :))

Re: [Haskell-cafe] In-place modification

2007-07-08 Thread Bulat Ziganshin
Hello Andrew, Sunday, July 8, 2007, 9:40:15 PM, you wrote: > I've asked this before and nobody answered, so I take it that nobody > knows the answer... Does GHC *ever* do an in-place update on anything? no. this will break GC's heart :) and it really breaks it as far as you start to work with u

Re[2]: [Haskell-cafe] Toy compression algorithms [was: A very edgy language]

2007-07-08 Thread Bulat Ziganshin
Hello Andrew, Sunday, July 8, 2007, 7:12:38 PM, you wrote: >>> (Realistically though. My program takes a [Word8] and turns it into a >>> [Bool] before running a parser over it. The GHC optimiser doesn't really >>> stand a hope in hell of optimising that into a program that reads a machine >>> wo

Re[2]: [Haskell-cafe] Fun with ByteStrings [was: A very edgy language]

2007-07-08 Thread Bulat Ziganshin
Hello Andrew, Sunday, July 8, 2007, 10:41:53 PM, you wrote: > OTOH, everybody uses ByteString rather than UArray Word8. (And, in fact, > ByteString *exists* even though UArray Word8 was there first.) So one > presumes it's because ByteString has some kind of magic that makes it > faster than a

Re[2]: [Haskell-cafe] Toy compression algorithms [was: A very edgy language]

2007-07-08 Thread Bulat Ziganshin
Hello Stefan, Sunday, July 8, 2007, 11:03:00 PM, you wrote: >> >>> (Realistically though. My program takes a [Word8] and turns it into a >> >>> [Bool] before running a parser over it. The GHC optimiser doesn't really >> >>> stand a hope in hell of optimising that into a program that reads a >>

Re: [Haskell-cafe] Allocating enormous amounts of memory and wondering why

2007-07-08 Thread Bulat Ziganshin
Hello Jefferson, Monday, July 9, 2007, 1:26:18 AM, you wrote: > I'm using the Data.AltBinary package to read in a list of 4.8 million > floats and 1.6 million ints. > coordinates <- get pointsH :: IO [Float] > galaxies <- get pointsH :: IO [Int] thank you for discovering bug in the library!

Re[2]: [Haskell-cafe] Toy compression algorithms [was: A very edgy language]

2007-07-09 Thread Bulat Ziganshin
Hello Andrew, Sunday, July 8, 2007, 7:07:59 PM, you wrote: > Actually, LZW works surprisingly well for such a trivial little > algorithm... When you compare it to the complexity of an arithmetic > coder driven by a high-order adaptive PPM model (theoretically the best > general-purpose algorithm

Re[4]: [Haskell-cafe] Toy compression algorithms [was: A very edgy language]

2007-07-11 Thread Bulat Ziganshin
Hello ajb, Wednesday, July 11, 2007, 7:55:22 AM, you wrote: > Not really. LZW is basically PPM with a static (and flat!) frequency > prediction model. The contexts are build in a very similar way. what you mean by "flat" and "static" applied to PPM? static PPM models exist - they carry probabil

Re[2]: [Haskell-cafe] In-place modification

2007-07-11 Thread Bulat Ziganshin
Hello Alex, Wednesday, July 11, 2007, 12:25:00 AM, you wrote: > So you think we use C because we like it? :-) When this > revolutionary tool of yours arrive that compiles Haskell to PIC > devices, I'm gonna be the first to use it. 20 years ago it was hard to imagine that $30 processor may be

Re[2]: [Haskell-cafe] In-place modification

2007-07-11 Thread Bulat Ziganshin
Hello Hugh, Tuesday, July 10, 2007, 11:26:43 PM, you wrote: > Just a random observation: the competition for Haskell is not > really C or C++.  C is basically dead; C++ is only really useful > when you dont want people to be able to read your source code.  btw, in his HOPL paper http://www.resea

Re[2]: [Haskell-cafe] Type system madness

2007-07-11 Thread Bulat Ziganshin
Hello Andrew, Tuesday, July 10, 2007, 11:49:37 PM, you wrote: >>> ...so the 's' doesn't really "exist", it's just random hackery of the >>> type system to implement uniqueness? >>> >> >> Exactly. >> > Hmm. Like the IO monad's RealWorld object, which isn't really there? ST and IO monads

Re[2]: [Haskell-cafe] Number overflow

2007-07-11 Thread Bulat Ziganshin
Hello Thomas, Thursday, July 12, 2007, 3:14:57 AM, you wrote: > The differences between Int and Integer operations are mostly constant > factors. well, i will be unlucky if in my real-world program Integers would be used instead of Ints. defaulting provides a great way to solve this dilemma, so

Re[4]: [Haskell-cafe] In-place modification

2007-07-12 Thread Bulat Ziganshin
Hello ok, Thursday, July 12, 2007, 3:29:25 AM, you wrote: > own simple IR engine. It's really pretty simple. My model answer > in C is two separate programs, an index builder and a query engine, > and is 804 SLOC in 1075 total lines. Each year, despite our advice, > some student does it in Jav

Re[6]: [Haskell-cafe] Toy compression algorithms [was: A very edgy language]

2007-07-12 Thread Bulat Ziganshin
Hello ajb, Thursday, July 12, 2007, 9:25:35 AM, you wrote: >> what you mean by "flat" and "static" applied to PPM? static PPM models >> exist - they carry probabilities as separate table very like static >> Huffman encoding. is "flat" the same as order-0? > "Static" means that the frequency distr

Re[8]: [Haskell-cafe] Toy compression algorithms [was: A very edgy language]

2007-07-12 Thread Bulat Ziganshin
Hello ajb, Thursday, July 12, 2007, 12:16:22 PM, you wrote: >> well, ppm differs from simple order-0 coder in that it uses previous >> symbols to calculate probability. lzw differs from order-0 coder with >> flat static probabilities in that it encodes a whole word each time. > LZW doesn't have t

Re[8]: [Haskell-cafe] Toy compression algorithms [was: A very edgy language]

2007-07-12 Thread Bulat Ziganshin
Hello ajb, Thursday, July 12, 2007, 12:16:22 PM, you wrote: >> well, ppm differs from simple order-0 coder in that it uses previous >> symbols to calculate probability. lzw differs from order-0 coder with >> flat static probabilities in that it encodes a whole word each time. oh, i just recalled

Re[2]: [Haskell-cafe] Functional dependencies *not* part of the next Haskell standard?

2007-07-12 Thread Bulat Ziganshin
Hello peterv, Thursday, July 12, 2007, 5:03:29 PM, you wrote: > I did not realize one could perform "partial application" on types when > declaring instances (I mean not specifying the type of Vector2 in >). this feature, called "constructor classes" was in Haskell since 1.2 or 1.3 version. you

Re[2]: [Haskell-cafe] Haskell & monads for newbies (was "Functional dependencies *not* part of the next Haskell standard?")

2007-07-12 Thread Bulat Ziganshin
Hello peterv, Thursday, July 12, 2007, 6:01:43 PM, you wrote: > Monads were very confusing because I first looked at Concurrent Clean (it > comes with an IDE and games! :), and that language uses a simple "uniqueness > typing" approach where the "world" or "state" is explicitly passed as an > obj

Re[2]: [Haskell-cafe] Toy compression algorithms

2007-07-12 Thread Bulat Ziganshin
Hello Andrew, Thursday, July 12, 2007, 10:06:52 PM, you wrote: > The idea behind PPM is very simple and intuitive. But working out all > the probabilities such that they always sum to 100% is surprisingly > hard. :-( why? you just add probabilities of all symbols in this context and add 1 for es

Re[2]: [Haskell-cafe] Type system madness

2007-07-12 Thread Bulat Ziganshin
Hello Andrew, Thursday, July 12, 2007, 10:15:00 PM, you wrote: >> While BOMs (Byte Order Mark) are pretty irrelevant to byte-oriented >> encodings like UTF-8, I think programs that fail on their presence can >> be considered buggy. >> > Yay! Haskell's text I/O system is buggy. :-P definitely.

Re[10]: [Haskell-cafe] Toy compression algorithms [was: A very edgy language]

2007-07-12 Thread Bulat Ziganshin
Hello ajb, Friday, July 13, 2007, 4:50:15 AM, you wrote: > To encode a "word" in PPM, you encode the conditional probability > that it takes to get to the end of the word from the start of the word. > It looks like you're encoding single characters (and, programmatically, > you are), but because o

Re: [Haskell-cafe] problem with IO, strictness, and "let"

2007-07-13 Thread Bulat Ziganshin
Hello Michael, Friday, July 13, 2007, 8:22:09 AM, you wrote: > cs <- return $! lines c > hClose h > putStrLn $ show $ length cs > This works. However, I don't understand why this version works and the > previous version doesn't. > Can anyone walk me through the evaluati

Re[2]: [Haskell-cafe] Functional dependencies *not* part of the next Haskell standard?

2007-07-13 Thread Bulat Ziganshin
Hello Simon, Friday, July 13, 2007, 11:37:59 AM, you wrote: > | I think the implementation is some 90% complete though, in GHC head. > | Certainly you can write many associated types programs already -- the > | missing part is finishing off associated type synonyms, iirc. > ...and we have a work

Re[12]: [Haskell-cafe] Toy compression algorithms [was: A very edgy language]

2007-07-13 Thread Bulat Ziganshin
Hello ajb, Friday, July 13, 2007, 12:10:54 PM, you wrote: >> it seems that you either misunderstood PPM or make too wide >> assumptions. > More likely I'm not explaining myself well. >> in classical fixed-order ppm each char probability >> found in context of previous N chars. i.e. when encodin

Re[2]: [Haskell-cafe] Haskell & monads for newbies (was "Functional dependencies *not* part of the next Haskell standard?")

2007-07-13 Thread Bulat Ziganshin
Hello peterv, Thursday, July 12, 2007, 6:01:43 PM, you wrote: > Haskell or typically N times shorter than their imp/OO counterparts, it > would take *me* at least N^2 longer to write them ;) (now I must admit I had > the same feeling when switching from 680x0 assembler to C++, but let's say > N*2

Re[2]: [Haskell-cafe] Newbie question about tuples

2007-07-13 Thread Bulat Ziganshin
Hello peterv, Friday, July 13, 2007, 5:03:00 PM, you wrote: > think the latest compilers are much better). Now when implementing something > like this in Haskell, I would guess that its laziness would allow to > "interleave" many of the math operations, reordering them to be as optimal > as possi

Re[2]: [Haskell-cafe] Newbie question about tuples

2007-07-14 Thread Bulat Ziganshin
Hello Donald, Saturday, July 14, 2007, 6:01:21 AM, you wrote: >> don't forget that laziness by itself makes programs an orders of >> magnitude slower :) >> > Or orders of magnitude faster, depending on your data structure. :) compared to naive implementation - yes, it's possible. compared to ha

Re[4]: [Haskell-cafe] Newbie question about tuples

2007-07-14 Thread Bulat Ziganshin
doesn't GHC have a good "strictness analyzer" (or how is this > called?)? I haven't looked at the generated assembly code yet (if this is at > all readable; but good C/C++ compilers *do* generate reasonably readable > assembly code) > -Original Message

Re: [Haskell-cafe] Indentation Creep

2007-07-14 Thread Bulat Ziganshin
Hello Thomas, Saturday, July 14, 2007, 12:59:16 AM, you wrote: > case re of > False -> writeTVar m Nothing > True -> writeTVar p Empty > All that case analysis causes indentation to creep, and lots of >

Re[2]: [Haskell-cafe] Re: [Haskell] AngloHaskell 2007, dates and venue confirmed

2007-07-14 Thread Bulat Ziganshin
Hello Andrew, Saturday, July 14, 2007, 10:09:03 PM, you wrote: > Ooo... that's not far from here... > Does this mean if I turn up, I can meet random Haskellers? no, you will meet undefined Haskeller because randomness is impure concept -- Best regards, Bulatmailt

Re[2]: [Haskell-cafe] Type system madness

2007-07-14 Thread Bulat Ziganshin
Hello Andrew, Friday, July 13, 2007, 11:01:24 PM, you wrote: >> definitely. for example, on windows it doesn't support unicode >> filenames nor files bigger than 4gb >> so i use my own lib, a thin layer around Windows API > Has a bug been reported for this? Have you (or anyone else) thought > a

Re[6]: [Haskell-cafe] In-place modification

2007-07-15 Thread Bulat Ziganshin
Hello Chaddai, Sunday, July 15, 2007, 3:31:12 AM, you wrote: > Due to the nature of Haskell, it's not so easy to do the same thing > (write a C program in Haskell as you wrote a C program in C#), so the > conclusion is obviously to Haskell disadvantage. it's possible to directly rewrite C code i

Re[6]: [Haskell-cafe] In-place modification

2007-07-15 Thread Bulat Ziganshin
Hello Donald, Sunday, July 15, 2007, 8:22:33 PM, you wrote: > usually 2-4x slower. Really poor at lightweight concurrency. > both systems, I'd have a go in C# at 'chameneos', a concurrency > benchmark, shootout contains only two or three tests that compare quality of code generated by compiler

Re[2]: [Haskell-cafe] Haskell & monads for newbies

2007-07-15 Thread Bulat Ziganshin
Hello Andrew, Monday, July 16, 2007, 1:06:42 AM, you wrote: > I have a vague recollection of somebody muttering something about > ByteStrings and memory-mapped files...? http://www.haskell.org/library/StreamsBeta.tar.gz you can either open m/m file with openBinaryMMFile and use it to read/write

Re[2]: [Haskell-cafe] In-place modification

2007-07-16 Thread Bulat Ziganshin
Hello Jon, Sunday, July 15, 2007, 9:46:42 PM, you wrote: > This should tell you that your C++ is not very good. This is several times > faster, for example: > For some reason you were using C-style allocation rather than the C++ STL to > implement a bit vector. The STL implementation is optimize

Re: [Haskell-cafe] Re: Re[4]: In-place modification

2007-07-16 Thread Bulat Ziganshin
Hello Chris, Monday, July 16, 2007, 8:46:37 AM, you wrote: > Topcoder certainly isn't about benchmarking. Undoubtedly, it would be > absolutely awesome to be able to use Haskell in topcoder... but it > wouldn't say anything about speed. My guess is that practically no > topcoder submissions f

Re[2]: [Haskell-cafe] Ray tracer

2007-07-16 Thread Bulat Ziganshin
Hello ajb, Monday, July 16, 2007, 5:00:54 AM, you wrote: >> But I don't think that means there is no role for Haskell in >> rendering. Examples of places I think Haskell could play a role are: >> the shader language, [...] > For the record, I've written 2.5 production shader compilers. The > 0.5

Re[6]: [Haskell-cafe] In-place modification

2007-07-16 Thread Bulat Ziganshin
Hello Sebastian, Sunday, July 15, 2007, 9:05:14 PM, you wrote: > As we've demonstrated there's nothing stopping you from writing > imperative "C-like" algorithms in Haskell (just like C#), and there > certainly wasn't any major performance difference as Donald mentioned, this test is just limite

benchmarks Re: [Haskell-cafe] Re: SHA1 again

2007-07-16 Thread Bulat Ziganshin
Hello Dominic, Sunday, July 15, 2007, 11:44:10 PM, you wrote: >> forget it if you're interested in performance near a C implementation >> such as GNU sha1sum. >> > I don't think it's unreasonable to think we could get near to C performance > and > we've been getting closer. btw, if someone in

Re: [Haskell-cafe] Haskell for categorists

2007-07-16 Thread Bulat Ziganshin
Hello Miguel, Monday, July 16, 2007, 10:00:21 AM, you wrote: > There are a lot of tutorials ensuring the reader that, although > Haskell is based on category theory, you don't have to know CT to use > Haskell. So, is there ANY Haskell tutorial for those who do know CT? it's like driving courses f

Re[8]: [Haskell-cafe] In-place modification

2007-07-16 Thread Bulat Ziganshin
Hello Sebastian, Monday, July 16, 2007, 2:53:36 PM, you wrote: > But wouldn't you say that in general, if you spend the effort you can > write low-level imperative algorithms in Haskell that perform > reasonably well? Especially compared to e.g. C#? I think your own > libraries demonstrate this!

Re[2]: [Haskell-cafe] Maintaining the community

2007-07-16 Thread Bulat Ziganshin
Hello Malcolm, Monday, July 16, 2007, 4:52:01 PM, you wrote: > After all, we would expect the same attributes (intelligence and > training) from a neurosurgeon, a nuclear scientist, or someone who > calculates how to land a person on the moon. Programming computers may > not seem very skilled to

Re: [Haskell-cafe] Frustrating experience of a wannabe contributor

2007-07-18 Thread Bulat Ziganshin
Hello Andreas, Wednesday, July 18, 2007, 8:17:38 PM, you wrote: > So I tried to find a place where it might have posted or at least fit into. there is a full list of wiki pages -- Best regards, Bulatmailto:[EMAIL PROTECTED]

Re[2]: [Haskell-cafe] Frustrating experience of a wannabe contributor

2007-07-18 Thread Bulat Ziganshin
Hello Andreas, Wednesday, July 18, 2007, 10:36:14 PM, you wrote: > I am not sure what you are refering to. i will go into Special pages -> All pages and not seeing any "dll" here, will go to ask in haskell-cafe/irc -- Best regards, Bulatmailto:[EMAIL PROTECTED] __

[Haskell-cafe] i need wxHaskell compiled for ghc 6.6.1 on Windows

2007-07-20 Thread Bulat Ziganshin
Hello haskell-cafe, can anyone provide wxHaskell already compiled/compilable with ghc 6.6.1 on Windows? -- Best regards, Bulat mailto:[EMAIL PROTECTED] ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell

Re[2]: [Haskell-cafe] Producing MinimumValue

2007-07-20 Thread Bulat Ziganshin
Hello Benja, Friday, July 20, 2007, 6:10:15 PM, you wrote: > My natural instinct is, > allEqual [] = True > allEqual (x:xs) = all (== x) xs > with the same caveat about allEqual [] as in your case. allEqual xs = all (== head xs) xs -- Best regards, Bulatmailto:[

Re[2]: [Haskell-cafe] i need wxHaskell compiled for ghc 6.6.1 on Windows

2007-07-22 Thread Bulat Ziganshin
Hello Neil, Saturday, July 21, 2007, 11:46:59 PM, you wrote: >> can anyone provide wxHaskell already compiled/compilable with ghc 6.6.1 on >> Windows? > This is precisely the reason I switched to Gtk2Hs - Duncan provides > Windows installers as each new GHC release comes out. If wxHaskell > wants

Re[2]: [Haskell-cafe] i need wxHaskell compiled for ghc 6.6.1 on Windows

2007-07-22 Thread Bulat Ziganshin
Hello Eric, Saturday, July 21, 2007, 9:29:30 AM, you wrote: >> can anyone provide wxHaskell already compiled/compilable with ghc 6.6.1 on >> Windows? > Please try the darcs version > darcs get http://darcs.haskell.org/wxhaskell thanks. should i follow building instructions from homepage/ direc

Re: [Haskell-cafe] NDP documentation

2007-07-23 Thread Bulat Ziganshin
Hello Andrew, Monday, July 23, 2007, 11:50:32 PM, you wrote: > Actually, I was just reading through all the Data Parallel Haskell and > Nested Data Parallelism documentation. It says in several places that > "parallel array comprehensions are available since GHC 6.6, but they are > broken; pleas

Re[4]: [Haskell-cafe] i need wxHaskell compiled for ghc 6.6.1 on Windows

2007-07-25 Thread Bulat Ziganshin
Hello shelarcy, Tuesday, July 24, 2007, 2:32:01 AM, you wrote: > So I put newer Windows binary on my project's file space. > http://sourceforge.net/project/showfiles.php?group_id=168626 thank you very much!!! now i'm really happy - it works without any problems. the only question that remains -

Re[4]: [Haskell-cafe] i need wxHaskell compiled for ghc 6.6.1 on Windows

2007-07-25 Thread Bulat Ziganshin
Hello Duncan, Monday, July 23, 2007, 4:02:42 AM, you wrote: >> i've taken a look at gtk2hs, but 2 reasons forced me to give wxHaskell >> a try: >> >> - native appearance > I think that's pretty good these days, the native theme on Windows has > been getting better and better from Gtk+ 2.6 to the

Re[6]: [Haskell-cafe] i need wxHaskell compiled for ghc 6.6.1 on Windows

2007-07-25 Thread Bulat Ziganshin
Hello Duncan, Wednesday, July 25, 2007, 5:54:13 PM, you wrote: >> afaiu, GTK paints all controls itself without using native controls >> and therefore controls look at Windows just the same as in Unix > Gtk+ uses themes too, and on Windows it uses a Windows theme. can you please give screenshot

<    1   2   3   4   5   6   7   8   9   10   >