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 concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 8A6A5BDDB for ; Sat, 3 Sep 2005 13:17:31 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j83BHUqI027543 for ; Sat, 3 Sep 2005 13:17:30 +0200 Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id NAA22323 for ; Sat, 3 Sep 2005 13:17:30 +0200 (MET DST) Received: from smtp7.wanadoo.fr (smtp7.wanadoo.fr [193.252.22.24]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j83BHTcw030225 for ; Sat, 3 Sep 2005 13:17:30 +0200 Received: from me-wanadoo.net (localhost [127.0.0.1]) by mwinf0708.wanadoo.fr (SMTP Server) with ESMTP id CABEE1C000AF for ; Sat, 3 Sep 2005 13:17:29 +0200 (CEST) Received: from [81.53.200.116] (ANantes-154-1-45-116.w81-53.abo.wanadoo.fr [81.53.200.116]) by mwinf0708.wanadoo.fr (SMTP Server) with ESMTP id 2ED941C000A6; Sat, 3 Sep 2005 13:17:29 +0200 (CEST) X-ME-UUID: 20050903111729191.2ED941C000A6@mwinf0708.wanadoo.fr In-Reply-To: <1125664781.7262.51.camel@localhost.localdomain> References: <20050830174757.99765.qmail@web30510.mail.mud.yahoo.com> <200508302001.58080.jon@ffconsultancy.com> <3d13dcfc05083101487092acd5@mail.gmail.com> <43168841.9000302@havenrock.com> <1125580528.7192.23.camel@localhost.localdomain> <1125646841.735.57.camel@acerf.exomi.com> <1125664781.7262.51.camel@localhost.localdomain> Mime-Version: 1.0 (Apple Message framework v728) Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: Cc: Ville-Pertti Keinonen , Matt Gushee , caml-list@inria.fr Content-Transfer-Encoding: 7bit From: yoann padioleau Subject: Re: [Caml-list] Re: Feeding the OCaml GUI troll Date: Sat, 3 Sep 2005 13:10:05 +0200 To: skaller X-Mailer: Apple Mail (2.728) X-Miltered: at concorde with ID 4319864A.002 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at nez-perce with ID 43198649.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 ocaml:01 gui's:01 stdin:01 stdout:01 gtk:01 widget:01 vbox:01 vertically:01 hbox:01 caml-list:01 beginner's:01 ocaml:01 beginners:01 bug: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 > > IMHO the *key* problem with GUI's -- and why real (TM) developers > hate using them -- is the lack of automation: unix script > sucks, but it does provide automation. If we're going to make > a new GUI it has to have full automation capability. > I am not sure I understand what you think by automation. But indeed what I like with shell script is that I can automate some tasks over traditionnal programs (or even other scripts). I can do some "for", "while" over programs, ... That is because the interface of a command line is simpe, stdin and stdout with text as value. But in fact there is some works do to the same with GUI. AppleScript is one such thing. You can do script that send commands to apps and so you can automate some task. The problem is that the application must be AppleScript aware, and that you have to know what it exports. I once had a great idea, "let's make the interface of a GUI application be its interface" :) That is let's be able to write in a sctipt: tell Musicplayer MENUBAR(OPEN("/tmp/staying-alive.mp3")) Unfortunatly Apple already had the same idea, http://www.apple.com/applescript/uiscripting/03.html > The only way I can think of to do that is to base the > core components of the GUI on Category Theory -- for example > have 'product' widgets and 'sum' widgets which represent > a collection and a set of alternatives, respectively, > Interesting, but it sounds like we have already this in current GUI toolkit (ok they dont use terms from category theory). The product is called boxing in gtk (and tk I guess) and the sum is represented via the typing systems, the widget all inherits from the same base class. > and a standard way to combine them graphically. > Well you have vbox (vertical box) to pack them guess what, vertically, and hbox. And you have various options. > -- > John Skaller > > _______________________________________________ > Caml-list mailing list. Subscription management: > http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list > Archives: http://caml.inria.fr > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs >