[Haskell-cafe] Re: [Haskell] Missing Documentation
This may very well be a FAQ, but I tried to search the archives and could not find a post... Anyway, some documentation seems to be missing, which was there before I thought. For example: http://www.haskell.org/ghc/docs/latest/html/libraries/haskell98/Random.html That's a bug, I've reported it here: http://hackage.haskell.org/trac/ghc/ticket/2886 Thanks, and sorry if this lowers the S/N We usually use haskell@ for annoucements, and haskell-cafe@ for general discussion/questions etc, so in future these kinds of posts snip Neil Thanks... I have been 'away' from Haskell for a while and it is taking me a bit to get re-synced! Anyway, before posting here I also sent an email to Simon Marlow, and he let me know that this bug (or one very similar) was reported for Char in: http://hackage.haskell.org/trac/ghc/ticket/2746 ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] Missing Documentation
This may very well be a FAQ, but I tried to search the archives and could not find a post... Anyway, some documentation seems to be missing, which was there before I thought. For example: http://www.haskell.org/ghc/docs/latest/html/libraries/haskell98/Random.html Thanks, and sorry if this lowers the S/N Ron ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
RE: Help: writing ffi bindings to a C library
One strategy is to wrap that funtion in another function (in C) that encapsulates the 'typical' call you want to make. THen import this function into haskell. In any event, start with something simpler, to get the hang of it. Try to write a function (in C) that adds two integers,or prints something and import that in to haskell. There are some examples floating around to get you started, but I can't find them at the moment on the CVS tree. Anyone? Also, read Tackling the awkward squad (Google it) Ron --- Bayley, Alistair [EMAIL PROTECTED] wrote: So... I'm still trying to write this Oracle OCI ffi binding. Can anyone tell me how to declare the Haskell type for this function: sword OCIEnvCreate (OCIEnv **envp, ub4 mode, dvoid *ctxp, dvoid *(*malocfp)(dvoid *ctxp, size_t size), dvoid *(*ralocfp)(dvoid *ctxp, dvoid *memptr, size_t newsize), void (*mfreefp)(dvoid *ctxp, dvoid *memptr), size_t xtramem_sz, dvoid **usrmempp); Note that when I use it, I'm passing 0 (NULL) into almost all of the args, so the usage in C is typically: rc = OCIEnvCreate(envhp, OCI_DEFAULT, 0, 0, 0, 0, 0, 0); i.e. I don't care about most of the args, so that should make the Haskell declaration simpler. Some of the arguments are pointers to functions, for example. What I can't figure out is how to declare the type of the first arg. Is is Ptr (Ptr OCIEnv) ? Here's what I have so far (not much, I know): module Main where import Foreign import Foreign.C.Types import Foreign.C.String import Foreign.Ptr data OCIEnv foreign import ccall oci.h OCIEnvCreate ociEnvCreate :: Ptr OCIEnv - Int - Int - Int - Int - Int - Int - Int - Int -Original Message- From: Ronald Legere [mailto:[EMAIL PROTECTED] Sent: 21 May 2003 20:32 To: '[EMAIL PROTECTED]' Subject: Re: Help: writing ffi bindings to a C library Agreeing with David, but I like to use types rather than (). YOu can do this because, in ghc, you can write: data Blah with no rhs, and it is understood to be an 'opaque' type. Ghc beleives any claims you make about passing Ptr Blah back and forth to C in your foreign import declarations * Grin *. As for passing structures back and forth, and accessing the components, you can do it from Haskell or from the c-side... I can send you a sample of doing it from haskell if you wish. Ron --- David Roundy [EMAIL PROTECTED] wrote: On Wed, May 21, 2003 at 04:27:10PM +0100, Bayley, Alistair wrote: construct a Ptr a? What type should a be?). Unless you actually need to ever access their contents, I'd just define the pointers to be of type Ptr (), essentially like a void * pointer in C. No need to use Storable if they are only ever accessed through C functions (which I would hope would be the case). -- * The information in this email and in any attachments is confidential and intended solely for the attention and use of the named addressee(s). This information may be subject to legal professional or other privilege or may otherwise be protected by work product immunity or other legal rules. It must not be disclosed to any person without our authority. If you are not the intended recipient, or a person responsible for delivering it to the intended recipient, you are not authorised to and must not disclose, copy, distribute, or retain this message or any part of it. * ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe = - Ronald Legere [EMAIL PROTECTED] - __ Do you Yahoo!? Yahoo! Calendar - Free online calendar with sync to Outlook(TM). http://calendar.yahoo.com ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: Status of Packages, Tools, and Libraries (was: FFI and ODBC connectivity)
--- Claus Reinke [EMAIL PROTECTED] wrote: would still be nice if the status information collected there would make its way into the libraries/tools listings on haskell.org (a simple marker: maintained by X; last heard of in Nov 2001 would be a start), together with the kind of information you suggest. Yes please! THis is a great idea. Maybe even some kind of color coding? (Green means active, yellow means not heard from for some time, red means 'plan on doing a lot of work getting it to function with the latest compilers'. Ok, maybe not those colors, but still. Actually, things have gotten a lot better in terms of libraries wrt ghc over the last few years. Many of the interesting 'batteries' are now included. (To misquote the pythonism). For example, you can now get a pretty good system of the ground by installing the latest ghc. Install HOpenGL and have a heck of a lot of fun. FFI stuff is pretty workable as is now ( I use it), but you will need greencard to build HOpenGL and maybe some other stuff you want. THanks all you library maintainers and writers! (I wish I could contribute in some way myself :() __ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: Type extensions
Thanks to all who responded to my post RE: type systems... If anyone else was wondering about this stuff, I found that one way to get a handle on the basics was to read Types and Programming by Pierce. It doesnt really talk about haskell, and its somewhat technical, but it was the most practical style book I could find :). I am still working through it. In any event, these various extensions don't seem so esoteric to me any more. Esp. explicit universal quantification. I never needed it before... but now it seems like an obvious generalization :) Cheers! --- Ronald Legere [EMAIL PROTECTED] wrote: Greetings. I have decided to try and understand the type system of haskell with extensions. As far as I can tell, the following set of extensions has been included, for example in ghc: multiparameter type classes constructor classes existential types explicit universal quantification scoped type signatures funtional dep?? Etc There is probably some overlap, and probably missed a few, as i do not understand what all these things do! ! My question: How do you get started learning all this? which of these is the most important? Is there a paper out there that explains most or all of these extensions and why you would want them and HOW the heck they work together? Ron Legere __ Do You Yahoo!? Yahoo! Greetings - send holiday greetings for Easter, Passover http://greetings.yahoo.com/ ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell __ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
RE: [Fwd: F#]
I wonder if ghc is the right place to start for H#/haskell.net / whatever? GHC is a (wonderfully) complex beast... it seems to have every feature anyone ever thought to add to haskell (esp in terms of the type system). Maybe one should start with haskell98 + ffi or whatever you need to add to get .net interop? Would that be easier? The problem is that ghc (seems) to be a research language aimed at playing with all kinds of possible type systems and such (which I am not saying is a bad thing..). Of course, I dont really know to much about how ghc is implemented... maybe the bits that do the fancy stuff is easy :) Cheers! Ron Haskell Fan. __ Do You Yahoo!? Yahoo! - Official partner of 2002 FIFA World Cup http://fifaworldcup.yahoo.com ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Type extensions
Greetings. I have decided to try and understand the type system of haskell with extensions. As far as I can tell, the following set of extensions has been included, for example in ghc: multiparameter type classes constructor classes existential types explicit universal quantification scoped type signatures funtional dep?? Etc There is probably some overlap, and probably missed a few, as i do not understand what all these things do! ! My question: How do you get started learning all this? which of these is the most important? Is there a paper out there that explains most or all of these extensions and why you would want them and HOW the heck they work together? Ron Legere __ Do You Yahoo!? Yahoo! Greetings - send holiday greetings for Easter, Passover http://greetings.yahoo.com/ ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: monad thinking process
Cagdas, Is it possible for you to give an example where you think there is too much thinking involved? I dont see it. Writing haskell IO with monads (with the Do notation) is just a straightforward as writing C code for the same steps, isnt it? Just try not to think about it too much :) Cheers! --- Cagdas Ozgenc [EMAIL PROTECTED] wrote: Greetings. I have very little experience with monads. However my first impression is that there is too much thinking process involved in __ Do You Yahoo!? Great stuff seeking new owners in Yahoo! Auctions! http://auctions.yahoo.com ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
GHC 5.03 windows
Greetings, I am not sure if this is the right list... I have installed the GHC-5.03 windows 'release canidate' on windows XP. There is not much else on this particular computer. I have played with some basic things, and with Socket, and so far have not found anything to complain about :) CHeers! __ Do You Yahoo!? Send FREE video emails in Yahoo! Mail! http://promo.yahoo.com/videomail/ ___ Glasgow-haskell-users mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
XML-RPC For Haskell
Is anyone out there working on an XML-rpc binding for haskell? This probably is not so hard, using HaXml and Sockets (as soon as sockets is working again...) But if someone has/is already done/doing it/it then i would rather just use that :) Cheers! __ Do You Yahoo!? Send FREE video emails in Yahoo! Mail! http://promo.yahoo.com/videomail/ ___ Glasgow-haskell-users mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Building dlls with ghc
Dear haskellers, I have been trying to build a dll that has haskell functions in it, but it doesnt seem to be working in the latest 5.02.1 windows installer version. First, ghc --mk-dll .. Doesnt do anything since it cannot find dllwrap, which doesnt come with the windows installer. Then, since I have cygwin (ver 1.3.5) i can put cygwin/bin on my path and try that, but not suprisingly that fails :) dllwrap runs fine, but then the linker complains about multiple definitions of __main, in particular from libm.a(d27.0) and libmingw32.a(gccmain.o). Note that I do routinely link up haskell executables in both dos shells and cygwin shells with no troubles though. I suppose that dll building just doesnt work at the moment, or do I just have a particulalry goofy situation... or should I just try to build my own ghc in the cygwin environment so I am not mixing things?? __ Do You Yahoo!? Buy the perfect holiday gifts at Yahoo! Shopping. http://shopping.yahoo.com ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: ghc 5.00 released??
--- Dylan Thurston [EMAIL PROTECTED] wrote: At http://haskel.org/ghc/, there seems to be an announcement for ghc 5.00, released April 9, 2001. Is this correct? I was surprised not to see an announcement posted here. Yeah, it was announced (yesterday?) on the ghc-users list. I havent had a chance to try it yet, but I browsed the docs a bit. It looks like the biggest things are : GHCi (Interactive GHC! Yeah!!!) and inclusion of some higher level marshalling utilities for the FFI. I like this direction :) Cheers! __ Do You Yahoo!? Get email at your own domain with Yahoo! Mail. http://personal.mail.yahoo.com/ ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: FFI - some comments
--- Marcin 'Qrczak' Kowalczyk [EMAIL PROTECTED] wrote: Here is the story of QForeign, hsc and KDirect. Wow, that really answered my questions about QForeign! My impression was completely wrong. Maybe Marcin can append his story to the README :) I will in my copy:) Marcin's philosophy is pretty close to what I was suggesting in my email: Have a powerfull library to do all marshalling in, and optionally use some tools to automate some of it. I had no idea that these things were planned for ghc 5.00. This is good news to me. I wish I could be on the bleeding edge :) Cheers! __ Do You Yahoo!? Get email at your own domain with Yahoo! Mail. http://personal.mail.yahoo.com/ ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: FFI tutorial??
--- "Manuel M. T. Chakravarty" [EMAIL PROTECTED] wrote: ** about the various interface generators You see - the Haskell developers believe in choice ;-) Cheers, Manuel I guess I have mixed feelings about all the choices. Choices mean you can pick the best one for the job, but it also means more to learn. Which also is good and bad :):) I suppose for the moment I will try to HDirect and KDirect, as I would like to get a bit into understanding how TCLhaskell is implemented. Cheers! Thanks again for the pointers,Wojciech and Manuel ! __ Do You Yahoo!? Get email at your own domain with Yahoo! Mail. http://personal.mail.yahoo.com/?.refer=text ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: A GUI toolkit looking for a friend
--- Simon Peyton-Jones [EMAIL PROTECTED] wrote: Gentle Haskellers Did Clean IO ever find a friend? I wish I had the time and abilities myself, as it does sound interesting. I am still trying to get FFI stuff working. __ Do You Yahoo!? Get email at your own domain with Yahoo! Mail. http://personal.mail.yahoo.com/?.refer=text ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: getEvent Doubts
--- Andre W B Furtado [EMAIL PROTECTED] wrote: [Sorry about the previous email subject :) ] In Hugs Graphics Library, many procedures call the function getEvent with a Window as the parameter. But getEvent is defined as below: getEvent :: Events - IO Event How does this work? I've tryied to do something similar and got the following error message (in GHC): Actually, this can't work (can it?). So there must be another getEvent :: Window - IO Event. (.i.e. Its sort of overloaded). And so , there is at least one, in SOEGraphics.hs getEvent window = getWindowEvent window where getWindowEvent pulls out the Events from a window and calls Events.getEvent :: Events- IO Event (The getEvent :: Events- IO Event is imported qualified from GraphicsEvents.hs. I guess this was done to avoid defining a type class, and probably also because the end user doesnt need the Events.getEvent, or at least very much) Of course I am just speculating. I didnt write it :) __ Do You Yahoo!? Get email at your own domain with Yahoo! Mail. http://personal.mail.yahoo.com/?.refer=text ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
FixIO/ Tackling Awkward Squad
Dear Haskellers, After enjoying "Tackling the Awkward Squad" (Simon Peyton Jones), I wonder what other elements of the squad can be tackled in a simular way? Right now I am thinking about FixIO. This little bugger seems to show up in a lot of code! Can we give it an operational semantics a la Tackling the awkward squad? I am quite stumped on this one, so i wont event post my meager attempts, but rather hope someone brighter then me will :) We need to add a new Value "FixIO N"... Cheers! __ Do You Yahoo!? Get personalized email addresses from Yahoo! Mail - only $35 a year! http://personal.mail.yahoo.com/ ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: FixIO/ Tackling Awkward Squad
I am responding to my own email:) First, I didnt know about the whole mdo thing in hugs98 jan 2001. Also there are some papers that discuss semantics if you search for mdo or recusive monads. Anyway, it turns out that fixIO doenst work the way I wanted anyway. I guess I really need to understand unsafeInterleaveIO. Is there ANYWAY to come up with an operational semantics for this bugger?? It is the most awkward of all, to me! __ Do You Yahoo!? Get personalized email addresses from Yahoo! Mail - only $35 a year! http://personal.mail.yahoo.com/ ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell