From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id B78E11F409 for ; Tue, 30 Aug 2005 06:39:03 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j7U4d3Oh025406 for ; Tue, 30 Aug 2005 06:39:03 +0200 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id GAA11047 for ; Tue, 30 Aug 2005 06:39:02 +0200 (MET DST) Received: from mz2.forethought.net (mzpi4.forethought.net [216.241.36.13]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j7U4d1d9007201 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO) for ; Tue, 30 Aug 2005 06:39:02 +0200 Received: from [216.241.35.41] (helo=[10.0.0.2]) by mz2.forethought.net with esmtp (Exim 4.51) id 1E9xtj-0007R7-J2 for caml-list@inria.fr; Mon, 29 Aug 2005 22:39:00 -0600 Message-ID: <4313E30F.1050501@havenrock.com> Date: Mon, 29 Aug 2005 22:39:43 -0600 From: Matt Gushee User-Agent: Mozilla Thunderbird 1.0 (X11/20050108) X-Accept-Language: en-us, en MIME-Version: 1.0 To: caml-list@inria.fr Subject: Re: [Caml-list] Does LablTk have a future? References: <4311DA63.4010104@havenrock.com> <200508292333.59714.jon@ffconsultancy.com> In-Reply-To: <200508292333.59714.jon@ffconsultancy.com> X-Enigmail-Version: 0.86.1.0 X-Enigmail-Supports: pgp-inline, pgp-mime Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Miltered: at nez-perce with ID 4313E2E7.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 4313E2E5.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 labltk:01 labltk:01 ocaml:01 lablgtk:01 non-trivial:01 api:01 ocaml:01 guis:01 fpls:01 guis:01 surgery:98 ...:98 $120:98 wrote:01 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.3 Jon Harrop wrote: >>Regardless of the status of Tk itself, LablTk seems to be going nowhere > > It is odd that you should bring this up now. I've spent the past week writing > a simple database for a new veterinary surgery in OCaml using labltk. I had > tried lablgtk before but failed to get to grips with it. By comparison, the > labktk examples explained everything that I needed and I had a decent GUI up > and running within a few hours. Yes, it does have that simplicity about it. >>1) A Quick Reference > I haven't used anything exotic (or even non-trivial) but it seems to me that > the API is already so simple that there isn't really a need for a quick > reference. Well, you need some source of information other than the OCaml manual. To give just one example, if you want to do anything serious with Listbox widgets, you need to know the Listbox.index type, which isn't described in the manual. Now, I have lately realized that you can explore LablTk with ocamlbrowser, so a reference doc isn't strictly necessary. But you could say the same about any OCaml module ... anyway, the document mostly exists, and some people may find it more convenient/pleasant to use a Web page or a printed document. >>2) A Book > I think labltk is too specific to be commercially viable. Specific in what sense? And do you mean LablTk as a tool, or as a book topic? > Also, unless I've > missed some hidden complexities in Tk programming, I think you'd have a job > filling enough pages to call the result a book. Ever used the Canvas or Text widgets? There's a lot going on there. Besides, there are several mainstream (i.e. published by major tech publishers and available in any well-stocked bookstore) books about Tk programming (including at least Tcl/Tk, Perl/Tk and Tkinter). They've mostly been available for several years, so there must be some market for them. Of course--and as an author/publisher, I'm sure you know this--the questions of what to write about, and how and how much, depend a great deal on the audience. I can tell you that when I read _Effective Tcl/Tk Programming_ in about '98, when my GUI-coding experience was limited to a few toy apps in Visual Basic, I found it tremendously useful, with its in-depth explanation and extended examples of the more complex widgets, geometry managers, and the event handling mechanism. Properly described, it was a book about GUI programming *with* Tk, rather than strictly about Tk itself. Maybe today's OCamlers are by and large beyond needing that sort of book. But it's kind of self-defeating to take for granted that the status quo will continue. I'm inclined to think that as OCaml gains in popularity--as it is certainly doing--there will be more people who need more hand-holding. Which doesn't necessarily mean there's much of market for a book such as I've proposed, just that I see some reason to hope. > However, I would be very interested in a book that described how to write GUIs > using OCaml. That might indeed be a good thing. I don't think, in my current state of knowledge, I'm the one to write it. > As I'm the author of the only existing self-published book on OCaml, you may > be interested to know that it is doing well (~500UKP per month for 6 months > so far). Well, at 85 quid a pop, I should think so (what is that in US money, about $120?)! But you're targeting an audience that has significant institutional support. I doubt very much that any and all OCaml books can be sold for that kind of money. >>3) A Community-based Modernization Project > I think it would be more constructive to create a decent cross-platform GUI > library from the ground up for FPLs/OCaml. Great idea! But it sounds to me like the kind of thing that will never get finished. > This wouldn't need to be anything > fancy, just easy access to the simplest GUI elements to start with. What kind of apps do you envision writing with only the simplest elements? > I'd like to see GUIs described by purely functional data structures. I'm > still factoring my current code so I'll let you know what I come up with. > Also, despite GUI code being a pedagogical example for OO, I'm not yet > convinced that OO adds anything useful. Agreed. Once I too was among the benighted souls, those who worship the false god of OO. But then I saw the functional light, and I was saved! Amen, brother! Thanks for the comments. Lots of good food for thought there. -- Matt Gushee Englewood, CO, USA