Re[2]: [Haskell-cafe] mapping unfreeze over an IntMap of IOUArrays

2008-11-11 Thread Bulat Ziganshin
Hello Max, Tuesday, November 11, 2008, 11:50:28 PM, you wrote: btw, i made here some time ago proposal about pure hashtables implented over a pure arrays (via accumArray operaion). may be it is somewhat helpful for you using unsafeFreeze. I'm getting stuck here, since the IntMap library

Re: [Haskell-cafe] Re: What *not* to use Haskell for

2008-11-11 Thread Bulat Ziganshin
Hello Mauricio, Tuesday, November 11, 2008, 2:26:21 PM, you wrote: imho, Haskell isn't worse here than any other compiled language - C++, ML, Eiffel and beter tnan Java or C#.every language has its own object model and GC. the only ay is to provide C-typed interfaces between languages (or use

Re[2]: [Haskell-cafe] Re: What *not* to use Haskell for

2008-11-11 Thread Bulat Ziganshin
would love to, as one library in particular I hold near and dear -- OpenSceneGraph -- is entirely written in C++. -- Jeff On Tue, Nov 11, 2008 at 6:35 AM, Bulat Ziganshin [EMAIL PROTECTED] wrote: Hello Mauricio, Tuesday, November 11, 2008, 2:26:21 PM, you wrote: imho, Haskell isn't

Re[2]: [Haskell-cafe] mapping unfreeze over an IntMap of IOUArrays

2008-11-11 Thread Bulat Ziganshin
Hello Don, Wednesday, November 12, 2008, 12:51:33 AM, you wrote: btw, i made here some time ago proposal about pure hashtables Did you end up implementing this? yes, i have published here all the 10 lines of implementation :))) citing letter to you: actually, writing HT module from scratch

Re[2]: [Haskell-cafe] What *not* to use Haskell for

2008-11-11 Thread Bulat Ziganshin
Hello Don, Wednesday, November 12, 2008, 12:51:10 AM, you wrote: Do you have an example of a mutable state/ IO bound application, like, hmm, a window manager or a revision control system or a file system...? not I/O, but IO :) btw, i use C++ for speed-critical code (compression encryprion)

Re[2]: [Haskell-cafe] mapping unfreeze over an IntMap of IOUArrays

2008-11-11 Thread Bulat Ziganshin
Hello Don, Wednesday, November 12, 2008, 1:21:18 AM, you wrote: If this structure is useful, you should release it on Hackage. You've not tested the performance though, I imagine, versus say, hasing into an IntMap? you know that making all these things need a time. sorry, ATM i think that my

Re: [Haskell-cafe] Exporting a Type Class for Type Signatures

2008-11-10 Thread Bulat Ziganshin
Hello Dominic, Monday, November 10, 2008, 10:56:37 PM, you wrote: but this generates an error. Is there a way of allowing someone to use AESKey in a type signature but not allow them to declare new instances? afaik module AES (class AESKey,...) -- Best regards, Bulat

Re: [Haskell-cafe] How to getCh on MS Windows command line?

2008-11-09 Thread Bulat Ziganshin
흐壹o 鉅, 工賊嫂, 膠墮將奄 굅, 껐갭, 맏굡별9 죌, 闔u 破訂佯 羸受 I 張灑 戌 銳遷h 稶 淸e 全縡醇連奄抑 全縡憶寥抑 墮膣旭n 湞 銳遷矮枳 婆芋h 흽奧 出抑 剃 倧貞藕抑 修 灑 予輒塡旭n 醇t 全t 灑y 獐鎭. 괼 派姪s 烈r 張 彧 預屎 銳凸藕鴨狙矮r = 一厭M ⓦ嶢.說碇퇀蹴) 伸銳諜h 烈鎭遇n 勖卒蛭 娠刷l 軸愴蓮 ㏂禎旭.h 銳諜熬 伸銳諜h 볶 IO 촁塼 껍 暢踐祝蓮侄蹟工鴨 彩昻n 膠찢連奄彧g 全t 輒彩抑 낟 出e 彧輒賑辛. i 鴨鳶迹輒稔 鎭張將奄 淸受 i 矮d 臆蓮辛 闔u 赤抑 淸稶 投陂

Re[2]: [Haskell-cafe] Re: Efficient parallel regular expressions

2008-11-06 Thread Bulat Ziganshin
Hello wren, Thursday, November 6, 2008, 12:00:22 PM, you wrote: the trie automaton I mentioned in my previous post: just add a (?{ $value = ... }) action to the end of each component regex and read out the value of $value after you match. $value? in haskell? :) -- Best regards, Bulat

Re: [Haskell-cafe] Monad.Reader with updates

2008-11-06 Thread Bulat Ziganshin
Hello Mauricio, Thursday, November 6, 2008, 2:30:00 PM, you wrote: Is there some abstraction in current ghc library that implements something like Reader, but where the value of the environment is updated at every step? do-it-yourself? you can start from reader definition and add what you

Re: [Haskell-cafe] Re: Monad.Reader with updates

2008-11-06 Thread Bulat Ziganshin
Hello Mauricio, Thursday, November 6, 2008, 2:52:16 PM, you wrote: that. But I wanted to know if there's already the right way to do it instead of my newbie way to do it :) All about monads doesn't mention it, at least :) -- Best regards, Bulatmailto:[EMAIL

Re: [Haskell-cafe] Bit Field Marshalling

2008-11-06 Thread Bulat Ziganshin
Hello Michael, Friday, November 7, 2008, 8:51:46 AM, you wrote: Have others run into this problem before? What options are there for working around it? if your goal is to maximize portability and not speed, one option is to make another structure without bit fields, and add C helper function

Re: [Haskell-cafe] Undefined symbols base_DataziTuple_ZxxxT_con_info

2008-11-05 Thread Bulat Ziganshin
Hello dmitry, Wednesday, November 5, 2008, 10:46:20 PM, you wrote: (.text+0x66dd7):fake: undefined reference to `base_DataziTuple_Z110T_con_info looks like you omitted --make on cmdline. without this switch, ghc don't automaticaly links in packages used in you program. alternatively you may

Re[2]: [Haskell-cafe] Re: Problems with strictness analysis?

2008-11-05 Thread Bulat Ziganshin
Hello Luke, Thursday, November 6, 2008, 2:34:36 AM, you wrote: The example being discussed in this thread is a good one: sum [1..10^8] + length [1..10^8] With Haskell's semantics, we know we can write this as: let xs = [1..10^8] in sum xs + length xs But it causes a change in memory

Re[2]: [Haskell-cafe] a minimal Windows program in Haskell?

2008-11-04 Thread Bulat Ziganshin
Hello Nun, Monday, November 3, 2008, 11:53:08 PM, you wrote: 2) the Win32 package in this link gives a type error during the setup build phase (expecting exception and given ioerror?) but you can compile the example against the Win32 package in ghc 6.8.3 of course - it's written against

Re: [Haskell-cafe] Syntax question regarding 'import'

2008-11-04 Thread Bulat Ziganshin
Hello Maurí­cio, Tuesday, November 4, 2008, 3:47:17 PM, you wrote: Haskell syntax allows a comma at the end of names to be imported or exported, like in the second line. What does that mean? it simplifies editiing of lists: you can add/remove lines without changing surrounding ones: import

Re: [Haskell-cafe] pure programs

2008-11-04 Thread Bulat Ziganshin
Hello Jason, Wednesday, November 5, 2008, 3:12:29 AM, you wrote: Many useful programs that I would like to write in Haskell don't fall into this category -- for example, network servers -- but a lot of their components do. Can these components can be Haskell functions without IO in

Re: [Haskell-cafe] Re: Automatic parallelism in Haskell, similar to make -j4?

2008-11-04 Thread Bulat Ziganshin
Hello Chad, Wednesday, November 5, 2008, 6:34:01 AM, you wrote: ghc --make -j4 Foo.hs afair, it was implemented and not shown speed improvements. ask Simon -- Best regards, Bulatmailto:[EMAIL PROTECTED] ___

Re: [Haskell-cafe] view patterns

2008-11-04 Thread Bulat Ziganshin
Hello Cetin, Wednesday, November 5, 2008, 8:34:14 AM, you wrote: let emp (has - True) = False; emp (has - False) = True     Warning: Pattern match(es) are overlapped proibably it's because GHC can't check view patterns for overlaps? -- Best regards, Bulat

Re: [Haskell-cafe] a minimal Windows program in Haskell?

2008-11-03 Thread Bulat Ziganshin
Hello Nun, Monday, November 3, 2008, 6:18:12 AM, you wrote: How do I make a minimal Windows application in Haskell?  I know you should look at Win32 package sources which includes small example using WinAPI for hello world GUI application but note that Win32 binding is far from complete. if i

Re: [Haskell-cafe] Re: [Haskell] ANNOUNCE: RefSerialize-0.2.1

2008-11-02 Thread Bulat Ziganshin
Hello Alberto, Sunday, November 2, 2008, 5:02:10 PM, you wrote: Read, Show and Data.Binary do not check for repeated references to the same data address. afair, SerTH does it, using GHC's internal address compare function what way to check for copies you use? -- Best regards, Bulat

Re: [Haskell-cafe] Re: Syntax question: class (Monad m) = MonadReader r m | m - r where

2008-11-02 Thread Bulat Ziganshin
Hello Mauricio, Sunday, November 2, 2008, 6:13:15 PM, you wrote: It's called a functional dependency. This is not part of the Haskell-98 language standard; check the GHC manual. The documentation says There should be more documentation, but there isn't (yet). Yell if you need it. :) you

Re: [Haskell-cafe] ANNOUNCE: zlib and bzlib 0.5 releases

2008-11-02 Thread Bulat Ziganshin
Hello Duncan, Sunday, November 2, 2008, 6:46:00 PM, you wrote: People have also asked for a continuation style api to give more control over dynamic behaviour like flushing the compression state (eg in a http server). Unfortunately this does not look easy. can you gove more details on these?

Re: [Haskell-cafe] Automatic parallelism in Haskell, similar to make -j4?

2008-11-02 Thread Bulat Ziganshin
Hello T, Monday, November 3, 2008, 2:28:08 AM, you wrote: What would it take to implement a -j equivalent for, say, GHC? Or if this is not possible, what is wrong with my reasoning? problem is that make have rather large pices of work which it can run parallel. if ghc will try to parallel

Re[2]: [Haskell-cafe] Automatic parallelism in Haskell, similar to make -j4?

2008-11-02 Thread Bulat Ziganshin
Hello T, Monday, November 3, 2008, 3:42:49 AM, you wrote: On Sun, Nov 2, 2008 at 6:44 PM, Bulat Ziganshin [EMAIL PROTECTED] wrote: What would it take to implement a -j equivalent for, say, GHC? Or if this is not possible, what is wrong with my reasoning? problem is that make have rather

Re: [Haskell-cafe] Making 'community' server our social network

2008-11-02 Thread Bulat Ziganshin
Hello Maurí­cio, Monday, November 3, 2008, 4:43:26 AM, you wrote: darcs add .emacs darcs get http://code.haskell.org/MauricioAntunes thank, it's a great ideas! and don't forget that you can use code.haskell.org as online backup of history of your config files -- Best regards, Bulat

Re[2]: [Haskell-cafe] Array bug?

2008-11-01 Thread Bulat Ziganshin
Hello Bertram, Saturday, November 1, 2008, 5:14:30 PM, you wrote: Yes, it's a known bug - a conscious choice really. See http://hackage.haskell.org/trac/ghc/ticket/2120 does it possible to do both checks? -- Best regards, Bulatmailto:[EMAIL PROTECTED]

Re[2]: [Haskell-cafe] Password hashing

2008-10-30 Thread Bulat Ziganshin
Hello Thomas, Thursday, October 30, 2008, 3:32:46 PM, you wrote: No salt, but apart from that, should be fine, right? 1) without salt, it's not serious - easily breaked by dictionary attack 2) afair, md5 isn't condidered now as cryptographic hash -- Best regards, Bulat

Re[2]: [Haskell-cafe] Password hashing

2008-10-29 Thread Bulat Ziganshin
Hello Bit, Wednesday, October 29, 2008, 4:32:51 PM, you wrote: It's a good idea to salt your passwords before hashing, though. See What can be used for generating a random salt? Is System.Random secure enough? if you use mkStdRNG it's good enough for non high-secure programs. it inits rnd

Re: [Haskell-cafe] Password hashing

2008-10-28 Thread Bulat Ziganshin
Hello Bit, Tuesday, October 28, 2008, 6:42:34 PM, you wrote: What library can be used to securely hash passwords? From what I any secure hash, say SHA512 -- Best regards, Bulatmailto:[EMAIL PROTECTED] ___ Haskell-Cafe

[Haskell-cafe] Re: [Haskell] IORef sharing

2008-10-27 Thread Bulat Ziganshin
Hello Rodney, Tuesday, October 28, 2008, 1:27:26 AM, you wrote: Now I define an IORef and a couple of counters that share the IORef, iio :: IO (IORef Int) iio = newIORef 0 ic1 = do { io - iio ; count io 0 } ic2 = do { io - iio ; count io 0 } So apparently my mental picture of an IORef

Re: [Haskell-cafe] duplicate instance declarations. Why?

2008-10-24 Thread Bulat Ziganshin
Hello Alberto, Friday, October 24, 2008, 12:20:39 PM, you wrote: instance  R a = A a instance S a = A a   Duplicate instance declarations Why? because you may write in other module instance R Int instance S Int if class A includes functions, it may be problematic to determine which

Re: [Haskell-cafe] External Sort: Sort a 10-million integer file with just 256M of ram.

2008-10-23 Thread Bulat Ziganshin
Hello Thomas, Thursday, October 23, 2008, 8:41:04 PM, you wrote: The problem is not fitting a 10^8 element list in memory, the following works fine (when compiled, though not in ghci): t = putStrLn . show . last $ [1..10^8::Int] this runs in 1k space, thanks to lazy evaluation. 10^8-length

Re[2]: [Haskell-cafe] Crash!

2008-10-23 Thread Bulat Ziganshin
Hello Andrew, Thursday, October 23, 2008, 11:42:04 PM, you wrote: Theoretically, feeding invalid coordinates to the program might make it run off the end of the IOUArray (or maybe off the beginning of it), but I don't see what that has to do with GTK+... replace unsafe writes with simple

Re: [Haskell-cafe] Re: A heretic question

2008-10-22 Thread Bulat Ziganshin
Hello Mauricio, Wednesday, October 22, 2008, 2:23:55 PM, you wrote: Well, one thing I miss from C++ is the idea of acquiring resources in constructors and releasing them in destructors, as explained here: (Haskell uses that in 'with...' functions, like 'withFile', but the syntax in C++

Re: [Haskell-cafe] Re: A heretic question

2008-10-21 Thread Bulat Ziganshin
Hello Benjamin, Tuesday, October 21, 2008, 8:13:55 AM, you wrote: Maybe this is just me, but if I had to choose a tool, I'd choose one that would be easy to use well. and what tool you choose in 80's? :) -- Best regards, Bulatmailto:[EMAIL PROTECTED]

Re[2]: [Haskell-cafe] Re: A heretic question

2008-10-21 Thread Bulat Ziganshin
Hello Colin, Tuesday, October 21, 2008, 12:56:30 PM, you wrote: Bulat and what tool you choose in 80's? :) A TARDIS. and why it not ruled the world? :) -- Best regards, Bulatmailto:[EMAIL PROTECTED] ___

[Haskell-cafe] Installing ghc + gtk2hs on linux

2008-10-21 Thread Bulat Ziganshin
Hello haskell-cafe, i'm linux freshman what's the simplest way to install ghc + gtk2hs on Ubuntu x86 system? -- Best regards, Bulat mailto:[EMAIL PROTECTED] ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org

Re[2]: [Haskell-cafe] Installing ghc + gtk2hs on linux

2008-10-21 Thread Bulat Ziganshin
Hello Ketil, Tuesday, October 21, 2008, 10:56:40 PM, you wrote: what's the simplest way to install ghc + gtk2hs on Ubuntu x86 system? Untested, but try: sudo apt-get install libghc6-gtk-dev thanks to everyone who answered. this one was shortest and it works. i don't tested other answers

Re[2]: [Haskell-cafe] is 256M RAM insufficient for a 20 million element Int/Int map?

2008-10-19 Thread Bulat Ziganshin
Hello Bertram, Sunday, October 19, 2008, 6:19:31 AM, you wrote: That's 5 words per elements ... that, like everything else, should be multiplied by 2-3 to account GC effect -- Best regards, Bulatmailto:[EMAIL PROTECTED]

Re[3]: [Haskell-cafe] is 256M RAM insufficient for a 20 million element Int/Int map?

2008-10-19 Thread Bulat Ziganshin
Hello Philippa, Sunday, October 19, 2008, 3:25:26 PM, you wrote: ... that, like everything else, should be multiplied by 2-3 to account GC effect Unless I'm much mistaken, that isn't the case when you're looking at the minimum heap size because the GC'll run more frequently when you hit the

Re[4]: [Haskell-cafe] is 256M RAM insufficient for a 20 million element Int/Int map?

2008-10-19 Thread Bulat Ziganshin
Hello Philippa, Sunday, October 19, 2008, 3:58:35 PM, you wrote: what you mean? max heap size is 2gb probably. it may be configured on Ah, so you can't trust GHC to pick a max heap size within what the OS actually has available? hm, this includes virtual memory too. there are code snippets

Re: [Haskell-cafe] A heretic question

2008-10-19 Thread Bulat Ziganshin
Hello Achim, Monday, October 20, 2008, 1:08:06 AM, you wrote: thinking Haskell or Scheme, and if I'm thinking performance, C itself more than suffices. ... and machine code too :D C++ is the highest level language that provide asm-like speed, so it's hard to find reasons to use C instead.

Re[2]: [Haskell-cafe] A heretic question

2008-10-19 Thread Bulat Ziganshin
Hello ajb, Monday, October 20, 2008, 4:50:45 AM, you wrote: The trouble is that C++ is a tool that's hard to use well. But that's why they pay us the big bucks, right? i think that one day we will hear that ML was too easy language and they invented Haskell in order to keep future salaries

Re[2]: [Haskell-cafe] Flexible instances

2008-10-15 Thread Bulat Ziganshin
Hello Albert, Wednesday, October 15, 2008, 7:51:06 AM, you wrote: Illegal instance declaration for `Stringable [Char]' (All instance types must be of the form (T a1 ... an) where a1 ... an are distinct type *variables* Just in case: n=0 for instance Eq Blah, i.e., T a1 ...

Re: [Haskell-cafe] Haskell newbie indentation query.

2008-10-15 Thread Bulat Ziganshin
Hello Vivek, Wednesday, October 15, 2008, 3:39:54 PM, you wrote: i think that practical answer is suggestion to use `case` instead: case () of _ | x 5 - do abc def ... | x==5 - do ... | otherwise - do ... it's pretty common

Re: [Haskell-cafe] Type safety in foreign pointer

2008-10-15 Thread Bulat Ziganshin
Hello Mauricio, Wednesday, October 15, 2008, 5:40:16 PM, you wrote: newtype SomeStruct = SomeStruct () data SomeStruct = SomeStruct looks even simpler. you don't need to shell around () since you anyway will not use its value :) -- Best regards, Bulat

Re[2]: [Haskell-cafe] Re: What I wish someone had told me...

2008-10-15 Thread Bulat Ziganshin
Hello David, Wednesday, October 15, 2008, 7:16:09 PM, you wrote: I've read a lot of the Monad tutorials, and I feel like I only get most of it to be 100% honest.  The State Monad still boggles my mind a little bit.  I understand what it's supposed to do and I get the idea about how it works.

Re[2]: [Haskell-cafe] Re: What I wish someone had told me...

2008-10-15 Thread Bulat Ziganshin
Hello Daryoush, Wednesday, October 15, 2008, 10:56:39 PM, you wrote: If you notice  java generics has all sort of gotchas (e.g. http://www.ibm.com/developerworks/java/library/j-jtp01255.html).  I large prob;em of OOP languages with generics is interaction between those two types of

Re: [Haskell-cafe] Writing a function isPrime using recursion.

2008-10-15 Thread Bulat Ziganshin
Hello Kalashnikov, Thursday, October 16, 2008, 2:41:05 AM, you wrote: I'm supposed to write a function isPrime that checks whether or not a given integer is a prime number or not. The function has to use recursion. The only advice I was given, was to use a helper function. seems that russian

Re[2]: [Haskell-cafe] Query regarding Type classes

2008-10-13 Thread Bulat Ziganshin
Hello Arun, Monday, October 13, 2008, 2:50:27 PM, you wrote: I agree that this does look more succinct... but what if I write some generic code for the in the render method of the Drawable class and package it into a library.. i recommend you to read

Re[2]: [Haskell-cafe] Could not build win32 dll..

2008-10-13 Thread Bulat Ziganshin
Hello Ian, Monday, October 13, 2008, 9:47:12 PM, you wrote: http://www.haskell.org/ghc/docs/6.8.3/html/users_guide/win32-dlls.html this page says Since this Haskell DLL depends on a couple of the DLLs that come with GHC, make sure that they are in scope/visible. i just checked 6.8.3

Re: [Haskell-cafe] Very silly

2008-10-13 Thread Bulat Ziganshin
Hello Andrew, Monday, October 13, 2008, 10:51:43 PM, you wrote: Suffice it to say, you *can* make Haskell support arbitrary overloading of function names like C++ has, _if_ you abuse the type system violently enough. Please, won't somebody think of the children?!? people that make critique

Re[2]: [Haskell-cafe] Very silly

2008-10-13 Thread Bulat Ziganshin
Hello Andrew, Tuesday, October 14, 2008, 12:15:04 AM, you wrote: people that make critique on haskell type classes, don't take into account that it's unlike C++ templates, implemented via run-time dictionaries and other modules may define new instances Personally, I have no clue how C++

Re[2]: [Haskell-cafe] newbie questions (read, etc., with Data.ByteString.Lazy.Char8)

2008-10-07 Thread Bulat Ziganshin
Hello wman, Tuesday, October 7, 2008, 8:44:48 AM, you wrote: btw, why is the example #2 (http://shootout.alioth.debian.org/gp4/benchmark.php?test=sumcollang=ghcid=2) (which kicks collective asses of all other participants) not considered in the shootout ? Too much optimizations ? it's

Re[2]: [Haskell-cafe] newbie questions (read, etc., with Data.ByteString.Lazy.Char8)

2008-10-07 Thread Bulat Ziganshin
Hello Brandon, Tuesday, October 7, 2008, 7:59:06 AM, you wrote: is there a reason why -O2 shouldn't be made the default (and allowing to turn off optimizations by -O0 perhaps) ? it compiles ~2x slower and firces more recompilation (because it does inter-module inlining). so it's not perfect

Re: [Haskell-cafe] Type classes question

2008-10-07 Thread Bulat Ziganshin
Hello Roly, Tuesday, October 7, 2008, 4:13:25 PM, you wrote: I'm reasonably well versed in Haskell but fairly new to defining type classes. http://haskell.org/haskellwiki/OOP_vs_type_classes may be useful -- Best regards, Bulatmailto:[EMAIL PROTECTED]

Re: [Haskell-cafe] Name for Haskell based VPN Client/Server

2008-10-06 Thread Bulat Ziganshin
Hello John, Monday, October 6, 2008, 10:29:09 PM, you wrote: I'm working on a Haskell based VPN. I can't think of any good names, so I'm crowd sourcing it. octopus? (it was a good serial about italian mafia spreading its palpi all over the country :) -- Best regards, Bulat

Re[2]: [Haskell-cafe] Re: Hmm, what license to use?

2008-10-02 Thread Bulat Ziganshin
Hello Don, Thursday, October 2, 2008, 12:07:47 PM, you wrote: Don, I usually agree with almost everything you say -- but not this! and i usually answer only in those few cases when i disagree ;) My point was really that investing the effort required to get nhc98 into the shape that we could

Re: [Haskell-cafe] A question about constraints

2008-10-02 Thread Bulat Ziganshin
Hello jean-christophe, Thursday, October 2, 2008, 1:46:20 PM, you wrote: If one wants to use pattern matching, afaik we had so-called views in early haskell versions. they proivide way to define two-way constructors - used for deconstruction via pattern-matching too views wa removed from

Re[2]: [Haskell-cafe] One liner?

2008-10-02 Thread Bulat Ziganshin
Hello Neil, Thursday, October 2, 2008, 7:26:23 PM, you wrote: shortly speaking, getDirectoryContents is an action (having IO a type) while second mapM_ argument should be a value returned by this action. by using dc variable or = operator, you can evaluate action and pass its result to mapM_. of

Re[2]: [Haskell-cafe] Hmm, what license to use?

2008-10-02 Thread Bulat Ziganshin
Hello Wolfgang, Thursday, October 2, 2008, 11:25:52 PM, you wrote: You mean shared libraries without the opportunity to inline library code? This would result in a huge performance loss, I think. Usually _mild_ performance loss, in exchange for major code-size savings, I would think. C

Re[2]: [Haskell-cafe] Hmm, what license to use?

2008-10-02 Thread Bulat Ziganshin
Hello Don, Friday, October 3, 2008, 2:22:49 AM, you wrote: and type classes. once i've forget to addinline pragma, my program (serializing arrays) becomes 200x slower. it was due to use of hieararchy of several type classes. afaiu, their dictionaries are also lazily evaluated plus we have

Re: [Haskell-cafe] about logical computation

2008-09-29 Thread Bulat Ziganshin
Hello z_axis, Monday, September 29, 2008, 11:22:22 AM, you wrote: hi, friends I am a Haskell newbie however i like it very much. After starting learn haskell, i donot find the corresponding , | , ~, , logical computation of C language. import Data.Bits just its exports: module Data.Bits

Re[2]: [Haskell-cafe] Hmm, what license to use?

2008-09-27 Thread Bulat Ziganshin
Hello Magnus, Saturday, September 27, 2008, 3:48:27 PM, you wrote: AFAIU you are saying that the linker is reaching into the module's .a file, pulling out the .o file, and then reaching into that .o file to pull out an individual function's ASM code. I believe that's a bit more than regular

Re[2]: [Haskell-cafe] The container problem

2008-09-27 Thread Bulat Ziganshin
Hello Andrew, Saturday, September 27, 2008, 9:23:47 PM, you wrote: Can anybody actually demonstrate concretely how FDs and/or ATs would solve this problem? (I.e., enable you to write a class that any container can be a member of, despite constraints on the element types.) you may find

Re[2]: [Haskell-cafe] The container problem

2008-09-26 Thread Bulat Ziganshin
Hello Andrew, Saturday, September 27, 2008, 1:37:12 AM, you wrote: answering your questions 1) there is 2 libs providing common Java-like interfaces to containers: Edison and Collections. almost noone uses it 2) having common type class for various things is most important when you write

Re[2]: [Haskell-cafe] pure Haskell database

2008-09-25 Thread Bulat Ziganshin
Hello jean-christophe, Thursday, September 25, 2008, 1:52:26 PM, you wrote: columns = [ (trackId, conT ''Int ) It looks like a not ended string literal unless I still have sth to learn about Haskell. it's TemplateHaskell, look for Reification in http://www.haskell.org/bz/thdoc.htm --

Re[2]: [Haskell-cafe] Climbing up the shootout...

2008-09-25 Thread Bulat Ziganshin
Hello Ketil, Thursday, September 25, 2008, 8:57:05 PM, you wrote: John Van Enk [EMAIL PROTECTED] writes: I'm going to have to agree with David... even if you ignore the multi-threaded projects, why couldn't the C programs just implement very specific version of the third party library

Re: [Haskell-cafe] Injecting Haskell into C

2008-09-24 Thread Bulat Ziganshin
Hello Roman, Wednesday, September 24, 2008, 2:04:38 PM, you wrote: As I understand, there are two ways to do that. Either Haskell code is called from C, or C code is called for Haskell. So my questions are: 1. Are they both possible? yes. foreign export exports Haskell functions to C world,

Re[8]: [Haskell-cafe] Climbing up the shootout...

2008-09-24 Thread Bulat Ziganshin
Hello Brandon, Wednesday, September 24, 2008, 9:36:56 PM, you wrote: Because he's convinced himself it's pointless because Haskell will never be able to run faster than C taking into account that C compilers are very close to maximum speed possible, and this required many years of developemnt

Re[10]: [Haskell-cafe] Climbing up the shootout...

2008-09-24 Thread Bulat Ziganshin
Hello Brandon, Wednesday, September 24, 2008, 11:13:14 PM, you wrote: can come up with, including amorphous and vacuous ones (you can almost always write something faster, but with how much effort?) as i said, eddorts to optimize Haskell code is several times larger while the result is

Re[12]: [Haskell-cafe] Climbing up the shootout...

2008-09-24 Thread Bulat Ziganshin
Hello Brandon, Thursday, September 25, 2008, 12:43:55 AM, you wrote: as i said, eddorts to optimize Haskell code is several times larger while the result is several times slower ...and we're back to dons demonstrated otherwise, so you have to please show me example that you mean and i

Re[12]: [Haskell-cafe] Climbing up the shootout...

2008-09-24 Thread Bulat Ziganshin
Hello Brandon, Thursday, September 25, 2008, 12:43:55 AM, you wrote: as i said, eddorts to optimize Haskell code is several times larger while the result is several times slower ...and we're back to dons demonstrated otherwise, so you have to invent reasons to disqualify him. If all you

Re[14]: [Haskell-cafe] Climbing up the shootout...

2008-09-24 Thread Bulat Ziganshin
Hello david48, Thursday, September 25, 2008, 1:38:55 AM, you wrote: please show me example that you mean and i will show exact reasons why this Haskell code wasn't compared to the best C code The shootout seems pretty popular, and there's still a lot of C programmers around, so I wonder why

Re[2]: [Haskell-cafe] Climbing up the shootout...

2008-09-23 Thread Bulat Ziganshin
Hello Manlio, Tuesday, September 23, 2008, 1:36:16 PM, you wrote: Any roadmap for improve support in intensive IO multiplexing? Or, at least, some papers about how this is implemented in GHC? Af far as I understand, select is used in two separate places. How much effort it takes to

Re[4]: [Haskell-cafe] Climbing up the shootout...

2008-09-23 Thread Bulat Ziganshin
Hello Sterling, Tuesday, September 23, 2008, 5:13:57 AM, you wrote: Oh, and it simply and naively loops with the following: while (fgets_unlocked (line, MAXLINELEN, stdin)) If Bulat's point is that the shootout has inspired work on Haskell performance, and in the stdlibs no less, then

Re[2]: [Haskell-cafe] Climbing up the shootout...

2008-09-23 Thread Bulat Ziganshin
Hello Jules, Tuesday, September 23, 2008, 2:21:34 PM, you wrote: performance. what we have on prcatice is 10-20% speedup of ghc 6.8 and several libs which may improve speed in some usages If you understand performance as well as you claim to - and from your previous postings, I believe you

Re[2]: [Haskell-cafe] Climbing up the shootout...

2008-09-23 Thread Bulat Ziganshin
Hello Manlio, Tuesday, September 23, 2008, 3:14:58 PM, you wrote: Maybe improve GHC to make Haskell suitable to write high reliable internet servers is not of interest? well if it's interesting - do it :) various people do that they find most exciting/important. actually, alt-network package

Re[2]: [Haskell-cafe] Climbing up the shootout...

2008-09-23 Thread Bulat Ziganshin
Hello Manlio, Tuesday, September 23, 2008, 3:43:03 PM, you wrote: Maybe improve GHC to make Haskell suitable to write high reliable internet servers is not of interest? well if it's interesting - do it :) Unfortunately, I no more have the time for do it your self, unless there is

Re[6]: [Haskell-cafe] Climbing up the shootout...

2008-09-23 Thread Bulat Ziganshin
Hello John, Tuesday, September 23, 2008, 4:27:05 PM, you wrote: amount of work required to do this is much much more than amount of work required to write optimal C/asm code I'm sorry, but no it's not. I've been using Haskell for a little under two years now, and I'm already able to

Re[8]: [Haskell-cafe] Climbing up the shootout...

2008-09-23 Thread Bulat Ziganshin
Hello John, Tuesday, September 23, 2008, 5:39:17 PM, you wrote: Probably not, but I think you completely missed my point. Perhaps I should have originally written my original C equivalents rather than the. You're probably just a better C programmer than me. well, i don't say about me

Re[10]: [Haskell-cafe] Climbing up the shootout...

2008-09-23 Thread Bulat Ziganshin
Hello Donnie, Tuesday, September 23, 2008, 7:16:04 PM, you wrote: I don't understand why you are willing to criticize GHC, but unwilling to help improve GHC.  Personally, I think it is a waste of everyone's time for you to just complain about GHC without offering suggestions on how to

Re[2]: [Haskell-cafe] Climbing up the shootout...

2008-09-22 Thread Bulat Ziganshin
Hello Manlio, Monday, September 22, 2008, 1:46:55 PM, you wrote: This is cheating, IMHO. Some test comparisons are unfair. this overall test is uselles for speed comparison. afair, there are only 2-3 programs whose speed isn't heavily depend on libraries. in DNA test, for example, Tcl (or

Re: [Haskell-cafe] Re: ANNOUNCE: protocol-buffers-0.2.9 for Haskell is ready

2008-09-22 Thread Bulat Ziganshin
Hello Chris, Monday, September 22, 2008, 2:48:16 PM, you wrote: used a very unreliable trick. And the use castToSTUArray suggested alternative is a really poor one since I am not using arrays at all. castToSTUArray does the same as your code, only in ST monad so you can skip unsafePerformIO

Re[4]: [Haskell-cafe] Climbing up the shootout...

2008-09-22 Thread Bulat Ziganshin
Hello Simon, Monday, September 22, 2008, 9:03:52 PM, you wrote: With bytestrings, unboxed arrays, light-weight threads and other tricks, we can usually replace all those ugly low-level programs with nice high-level haskell ones i don't think that these 3 libs allows to write high-level

Re[6]: [Haskell-cafe] Climbing up the shootout...

2008-09-22 Thread Bulat Ziganshin
Hello Graham, i don't think that these 3 libs allows to write high-level high-performance code in *most* cases. just for example, try to write wc without using words. To a newbie, that's a cryptic statement. Are you saying that these libs aren't needed to make a high-performance wc, and

Re[2]: [Haskell-cafe] Line noise

2008-09-22 Thread Bulat Ziganshin
Hello Luke, Monday, September 22, 2008, 11:00:12 PM, you wrote: mapM_ (\(n,v) - putStrLn $ [ ++ show n ++ ] = ++ show v) (zip [0..] vs) forM_ (zip [0..] vs) $ \(n,v) - putStrLn $ [ ++ show n ++ ] = ++ show v for (zip [0..] vs) $ \(n,v) - do putStrLn $ [ ++ show n ++ ] = ++ show

Re[8]: [Haskell-cafe] Climbing up the shootout...

2008-09-22 Thread Bulat Ziganshin
Hello Isaac, Monday, September 22, 2008, 11:49:30 PM, you wrote: i mean that naive haskell code is very slow and 3 or 5 or twelve libs can't solve the problem of ghc generating slow code Is there something particularly fascinating about naive code written in any language? yes, in asm

Re[10]: [Haskell-cafe] Climbing up the shootout...

2008-09-22 Thread Bulat Ziganshin
Hello Jonathan, Tuesday, September 23, 2008, 12:30:19 AM, you wrote: yes, in asm number of instructions executed more or less define number of CPU cycles used. well, i more or less know all this stuff. but are you really compare to Haskell??? does Haskell programs typically written in

Re[8]: [Haskell-cafe] Climbing up the shootout...

2008-09-22 Thread Bulat Ziganshin
Hello Donnie, Tuesday, September 23, 2008, 2:53:17 AM, you wrote: i mean that naive haskell code is very slow and 3 or 5 or twelve libs can't solve the problem of ghc generating slow code I'm fairly new to Haskell and the Haskell community, but I can say from my experience of hacking on

Re[2]: [Haskell-cafe] Climbing up the shootout...

2008-09-22 Thread Bulat Ziganshin
Hello Gwern, Tuesday, September 23, 2008, 3:33:02 AM, you wrote: high-performance code in *most* cases. just for example, try to write wc without using words http://haskell.org/haskellwiki/Wc seems to do fine; you'll notice it drops lines after the first version. actually it counts lines

Re[2]: [Haskell-cafe] Climbing up the shootout...

2008-09-22 Thread Bulat Ziganshin
Hello Don, Tuesday, September 23, 2008, 4:22:19 AM, you wrote: bulat.ziganshin: when gcc developers will start to add to C libraries functions performing shootout benchmarks we will continue this discussion :D atoi(3). it isn't the same as readInt which was added specifically for this

Re[2]: [Haskell-cafe] Climbing up the shootout...

2008-09-22 Thread Bulat Ziganshin
Hello Don, Tuesday, September 23, 2008, 4:36:55 AM, you wrote: it isn't the same as readInt which was added specifically for this test. it doesn't support arbitrary-size streams and doesn't return rest of stream Hmm? That is wrong. These functions explicitly work on arbitrarily long lazy

Re[4]: [Haskell-cafe] Climbing up the shootout...

2008-09-22 Thread Bulat Ziganshin
Hello Chaddaï, Tuesday, September 23, 2008, 4:39:18 AM, you wrote: it isn't the same as readInt which was added specifically for this test. it doesn't support arbitrary-size streams and doesn't return rest of stream I think we should write all the entries in Haskell98 and disable any

Re: [Haskell-cafe] OpenSPARC project applicant chosen

2008-09-21 Thread Bulat Ziganshin
Hello Duncan, Saturday, September 20, 2008, 7:37:08 PM, you wrote: http://haskell.org/opensparc/ the page says that you still search for a student how community server may be used to measure performance? i'm interested in doing some benchmarks but afaiu this needs exclusive access for some

Re[2]: [Haskell-cafe] Drawing an existing image into a cairo surface?

2008-09-21 Thread Bulat Ziganshin
Hello Rafal, Sunday, September 21, 2008, 5:43:14 PM, you wrote: withImageSurfaceFromPNG file $ \png - do w - renderWith png $ imageSurfaceGetWidth png h - renderWith png $ imageSurfaceGetHeight png this is very idiomatic Haskell, consider it as a sort of RAII. you may

Re[2]: [Haskell-cafe] performance of map reduce

2008-09-19 Thread Bulat Ziganshin
Hello Don, Friday, September 19, 2008, 9:12:43 PM, you wrote: It is possible to implement a map reduce version that can handle gzipped log files? Using the zlib binding on hackage.haskell.org, you can stream multiple zlib decompression threads with lazy bytestrings, and combine the

Re: [Haskell-cafe] a question about concurrent haskell

2008-09-18 Thread Bulat Ziganshin
Hello Manlio, Thursday, September 18, 2008, 11:01:10 PM, you wrote: you just need to handle it in a message-passing way. this type of problem (serializing access to unique resource) is rather common, for example it's used in GUI libs. std way is to create thread that will do actual work in

Re[2]: [Haskell-cafe] Re: Windows details

2008-09-13 Thread Bulat Ziganshin
Hello Andrew, Saturday, September 13, 2008, 5:13:21 PM, you wrote: Well, you must either be running under a different OS or have Cygwin installed, because when I try it, it just complains constantly. (Can't find gcc, can't find cc1, can't find crt.o, and so forth.) At this point, I'm giving

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