home *** CD-ROM | disk | FTP | other *** search
/ ftp.pasteur.org/FAQ/ / ftp-pasteur-org-FAQ.zip / FAQ / portable-GUI-software / part4 < prev   
Encoding:
Internet Message Format  |  1997-03-02  |  20.7 KB

  1. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!cam-news-hub1.bbnplanet.com!news.bbnplanet.com!howland.erols.net!newspump.sol.net!newsfeeds.sol.net!uwm.edu!msunews!harbinger.cc.monash.edu.au!news.mel.connect.com.au!news.syd.connect.com.au!phaedrus.kralizec.net.au!not-for-mail
  2. From: rosko@zeta.org.au (Ross McKay)
  3. Newsgroups: comp.windows.misc,comp.answers,news.answers
  4. Subject: Portable GUI Development Kits FAQ, part 4/4
  5. Followup-To: comp.windows.misc
  6. Date: 2 Mar 1997 21:00:42 +1100
  7. Organization: Kralizec Dialup Unix Sydney, +61-2-837-1183 V.32bis
  8. Lines: 507
  9. Approved: news-answers-request@MIT.EDU
  10. Expires: Sun, 30 Mar 1997 00:00:00 GMT
  11. Message-ID: <5fbj4a$gai@godzilla.zeta.org.au>
  12. Reply-To: rosko@zeta.org.au
  13. NNTP-Posting-Host: godzilla.zeta.org.au
  14. Summary: This posting discusses many of the various platform-independent
  15.     Graphical User Interface (GUI) development software libraries/
  16.     packages.
  17. Keywords: PIGUI
  18. Xref: senator-bedfellow.mit.edu comp.windows.misc:33555 comp.answers:24598 news.answers:96031
  19.  
  20. Archive-name: portable-GUI-software/part4
  21. Posting-Frequency: monthly
  22. Last-modified: 1997/03/02
  23. Version: 3.1
  24. URL: http://www.zeta.org.au/~rosko/pigui.htm
  25.  
  26.                       PLATFORM INDEPENDENT FAQ PART FOUR
  27.                                        
  28.      _________________________________________________________________
  29.    
  30.     Copyright 1996 Ross McKay. Last released $Date: 1997/03/02 09:04:40 $
  31.     Copyright 1993-1995 Wade Guthrie. Permission is granted to copy and
  32.     redistribute this document so long as it is unmodified (including the
  33.     part that explains where to get the FAQ free-of-charge) and the
  34.     copyright remains in-tact. I'd appreciate it if you told me about any
  35.     redistribution, but that's not strictly necessary.
  36.     
  37.      _________________________________________________________________
  38.    
  39. VI. VENDOR REPORTS - cont.
  40.  
  41.    The different PIGUI kits are classified by the language they support.
  42.    These are the ones which support languages other than C and C++. PIGUI
  43.    kits for C and C++ can be found in Part 2 and Part 3 of the FAQ.
  44.    
  45.    PIGUI Kits for languages other than C and C++:
  46.    
  47.    _Ada_
  48.           OpenUI
  49.           Screen Machine
  50.           
  51.    _Eiffel_
  52.           EiffelVision
  53.           
  54.    _Lisp_
  55.           Common Lisp Interface Manager
  56.           Garnet
  57.           
  58.    _Java_
  59.           Java Abstract Window Toolkit
  60.           
  61.    _Oberon_
  62.           Oberon/F
  63.           
  64.    _Python_
  65.           wxWindows
  66.           
  67.    _Smalltalk_
  68.           VisualWorks
  69.           VisualAge
  70.           
  71.    _Tcl_
  72.           Tcl/Tk 4
  73.           
  74.      _________________________________________________________________
  75.    
  76.   Common Lisp Interface Manager, V2.0
  77.   
  78.    _VENDOR:_
  79.           Well, this gets kind-of complicated. It was started by a
  80.           company called `Internation Lisp Associates', or ILA, but was
  81.           adopted by several Lisp vendors. The current active CLIM
  82.           parters are:
  83.           
  84.           Franz, Berkeley, CA
  85.           
  86.         email
  87.                info@franz.com
  88.         www
  89.                http://www.franz.com/
  90.                
  91.           Harlequin
  92.           
  93.         email
  94.                web@harlequin.com
  95.         www
  96.                http://www.harlequin.com/full/products/sp/clim2.html
  97.                
  98.           Illudium
  99.           
  100.    _SOFTWARE CONFIGURATION:_
  101.           CLIM is a de-facto extension to the Common Lisp language. It
  102.           supports standard shape-drawing primitives with a portable
  103.           color model. Full 2D affine transforms are supported. In
  104.           addition, a platform-independent typeface specification
  105.           mechanism is included.
  106.           
  107.           CLIM contains an intensional type system, known as
  108.           presentations, whereby any piece of output can be associated
  109.           with an application-object. On input, the same type-system
  110.           allows context-sensitive input, driven by the
  111.           application-types.
  112.           
  113.           CLIM also contains high-level facilities for table-formatting,
  114.           graph-formatting, window layout, dialogs, etc.
  115.           
  116.           CLIM operates through a back-end for each underlying GUI.
  117.           Back-end efforts exist for Motif (which is shipping), OpenLook,
  118.           the Macintosh and MS-Windows. CLIM can also run in a
  119.           CLIM-look-and-feel mode as a fallback.
  120.           
  121.           For additional information, see the comp.lang.lisp FAQ, part 7.
  122.           
  123.    _COMMENTS:_
  124.           I have been advised that a former "active CLIM partner"
  125.           Symbolics have "gone Chapter 11", risen again, but probably
  126.           have little time now for CLIM.
  127.           
  128.           Also, Lucid Lisp, from another former "active CLIM partner",
  129.           has been acquired by Harlequin.
  130.           
  131.      _________________________________________________________________
  132.    
  133.   EiffelVision
  134.   
  135.    _VENDOR:_
  136.           ISE
  137.           
  138.           Voice: 1-805-685-1006
  139.           Fax: 1-805-685-6869
  140.           
  141.         email
  142.                info@eiffel.com
  143.         www
  144.                http://www.eiffel.com
  145.         news
  146.                comp.lang.eiffel
  147.                
  148.    _SOFTWARE CONFIGURATION:_
  149.           EiffelVision is a platform-independent GUI framework developed
  150.           by ISE for ISE Eiffel. The EiffelVision library provides
  151.           classes for the standard widgets (buttons, fields, panels,
  152.           geometry management) as well as graphical functionality (lines,
  153.           polygons, circles etc.)
  154.           
  155.           EiffelVision is currently available for Motif, Open Look and
  156.           Microsoft Windows.
  157.           
  158.    _OPTIONS:_
  159.           A graphical application builder called EiffelBuild, which
  160.           generates Eiffel code utilising EiffelVision classes.
  161.           
  162.    _COMMENTS:_
  163.           This product is apparently stronger on Motif than on Windows,
  164.           but the current efforts for the next version will redress that.
  165.           
  166.    _FUTURE:_
  167.           Macintosh support is on the way, and a greater level of
  168.           abstraction in the GUI classes to increase platform
  169.           independence.
  170.           
  171.      _________________________________________________________________
  172.    
  173.   Garnet
  174.   
  175.    _VENDOR:_
  176.           Carnegie Mellon University
  177.           
  178.         email
  179.                garnet@cs.cmu.edu - to get on the mailing list
  180.         www
  181.                http://www.cs.cmu.edu/~garnet/
  182.         ftp
  183.                ftp://a.gp.cs.cmu.edu/usr/garnet/garnet/
  184.         news
  185.                comp.windows.garnet
  186.                
  187.    _SOFTWARE CONFIGURATION:_
  188.           Garnet is a GUI development environment for X/windows and
  189.           Macintosh, under Common Lisp. Garnet is an acronym for
  190.           _G_enerating an _A_malgam of _R_eal-time, _N_ovel _E_ditors and
  191.           _T_oolkits, and was developed by the User Interface Software
  192.           Group of Carnegie Mellon University.
  193.           
  194.           Garnet provides basic API emulation, a fairly complete set of
  195.           widgets (GUI objects), and some tools for WYSIWYG design. Two
  196.           look-and-feel's are provided for: Garnet's custom look, and the
  197.           Motif look.
  198.           
  199.           Garnet works with MCL 2.0.1 on the Macintosh, and any Lisp for
  200.           Unix that implements CLX (X11), including: Allegro, Lucid, CMU,
  201.           Harlequin Lispworks, AKCL, CLISP, TI Explorer Lisps.
  202.           
  203.    _COMMENTS:_
  204.           Garnet can not be supported by the UISG at Carnegie Mellon any
  205.           longer, because the people who know enough about Garnet to
  206.           support it have either left the UISG or have been moved on to
  207.           Garnet's `successor', Amulet. There is still a good number of
  208.           users out there who can help with problems and bug fixes
  209.           though, and they are accessable through the above email and
  210.           newsgroup.
  211.           
  212.           Garnet does not use CLOS, instead using a system called KR
  213.           (Knowledge Representation). I don't know if that means it is
  214.           incompatible with CLOS though; can anyone fill me in ?
  215.           
  216.      _________________________________________________________________
  217.    
  218.   Java Abstract Window Toolkit 1.0
  219.   
  220.    _VENDOR:_
  221.           Sun Microsystems
  222.           2550 Garcia Ave.,
  223.           Mtn. View, CA 94043-1100 USA
  224.           
  225.         email
  226.                java@java.sun.com
  227.         www
  228.                http://java.sun.com/
  229.         news
  230.                comp.lang.java
  231.                
  232.    _SOFTWARE CONFIGURATION:_
  233.           Java is an Object Oriented language developed by Sun
  234.           Microsystems, out of a project targetting smart devices such as
  235.           TV set-top boxes. The Java language describes a Virtual Machine
  236.           (VM) to which Java source code is compiled, providing a
  237.           platform-neutral binary format for Java programs. All that is
  238.           needed to port programs written in Java (excluding GUI) is an
  239.           implementation of the Java VM for that platform. So far, SunOS,
  240.           Solaris, Win32 and MacOS for PowerMac have VM interpreters.
  241.           
  242.           The Java AWT is a platform-independent class library including
  243.           classes for data primitives, containers, system objects,
  244.           communications, and GUI (among other things). When the Java VM
  245.           is ported to a platform, the Java AWT is ported with it.
  246.           
  247.           Sun, Borland, Microsoft, Symantec, and a raft of others have
  248.           produced nice IDE's for Java, allowing developers to build Java
  249.           applets and Web pages `visually' in much the same style as
  250.           Visual Basic et al.
  251.           
  252.    _COMMENTS:_
  253.           By now, most people know _something_ about what Java is, even
  254.           most software developers! Java is being [over]hyped as the
  255.           [latest] silver bullet for cross-platform, distributed, client
  256.           / server, object oriented, Web-enabled and generally
  257.           buzzword-compliant systems for today's applications. In truth,
  258.           it looks like it actually can deliver this, and certainly is
  259.           worth consideration when developing platform independent
  260.           applications.
  261.           
  262.           While the class library could be considered quite comprehensive
  263.           in a general sense, there is not much in the way of high level
  264.           GUI objects. For example, there is a text field object, but no
  265.           number or date fields. There are no high-level dialog objects
  266.           either. If you need these (and most business apps do) then you
  267.           must either find a third-party source or subclass your own from
  268.           the AWT classes. For a good list of third-party tools, check
  269.           out http://www.cybercom.net/~frog/javaide.html
  270.           
  271.           Much of the push behind Java is getting application code
  272.           running in Web browser pages. Netscape, Internet Explorer,
  273.           HotJava, and the latest Mosaic all support embedded `applets'
  274.           in HTML pages. What is often overlooked about Java is that you
  275.           can also write stand-alone applications in it, which don't rely
  276.           on a Web browser.
  277.           
  278.      _________________________________________________________________
  279.    
  280.   Oberon/F
  281.   
  282.    _VENDOR:_
  283.           Oberon Microsystems, Inc.
  284.           Technopark
  285.           Technoparkstr. 1
  286.           CH-8005 Zurich
  287.           Switzerland
  288.           
  289.         email
  290.                www@oberon.ch
  291.                oberonf-request@math.tau.ac.il - subscribe to mailing list
  292.         www
  293.                http://is.eunet.ch/Customers/omi/
  294.         ftp
  295.                ftp://ftp.inf.ethz.ch/pub/software/Oberon/OberonF/
  296.         news
  297.                comp.lang.oberon
  298.                
  299.    _SOFTWARE CONFIGURATION:_
  300.           Oberon/F is a commercial implementation of Niklaus Wirth's
  301.           Oberon language, including an Integrated Development
  302.           Environment and a platform-independent framework. Oberon/F
  303.           currently supports MS-Windows 3.1, Win32, and Macintosh.
  304.           
  305.           Oberon/F supports the typical GUI objects (windows, dialogs,
  306.           fields) and supports unlimited undo/redo, direct Win API / Mac
  307.           Toolbox calls, Windows DLLs or Macintosh code fragments,
  308.           hypertext help. A form/dialog editor is included, which
  309.           generates resource files (in Oberon/F format).
  310.           
  311.    _OPTIONS:_
  312.           
  313.           Direct-to-COM compiler
  314.           Source-code analyser and Profiler
  315.           Arbitrary Sized Integer Library
  316.           SQL subsystem (single-user ot client/server)
  317.           
  318.    _SUPPORT:_
  319.           Email assistence is available in 10-packs for about $450, and a
  320.           training course is also available.
  321.           
  322.    _COMMENTS:_
  323.           Oberon/F is available for download free for non-commercial use.
  324.           
  325.      _________________________________________________________________
  326.    
  327.   Screen Machine, V1.43
  328.   
  329.    _VENDOR:_
  330.           Objective Interface Systems, Inc.
  331.           1892 Preston White Drive
  332.           Reston, Virginia 22091-5448
  333.           
  334.           (800) 800-OIS7 (inquiries)
  335.           (703) 295-6500 (voice)
  336.           (703) 295-6501 (fax)
  337.           
  338.         email
  339.                info@ois.com
  340.                
  341.    _SOFTWARE CONFIGURATION:_
  342.           This is an Ada PIGUI which includes a WYSIWYG GUI builder.
  343.           
  344.           The product fully supports Ada's built in multi-threading
  345.           capabilities (protects against non-re-entrant code in the
  346.           native windowing systems). This allows SQL applications and
  347.           such to continue processing input from the user while waiting
  348.           on one or more database transactions.
  349.           
  350.           Screen Machine (I have to give them two points for the name
  351.           alone) includes an Ada code generator that generates layered
  352.           Ada GUI code that follows the presentation/dialog/application
  353.           scheme.
  354.           
  355.    _SUPPORT:_
  356.           Free (with updates) for one year. After that, call for pricing.
  357.           
  358.    _FUTURE PLANS:_
  359.           OIS is currently developing an Ada95 (fully O-O) parallel
  360.           implementation of the CORBA-based Fresco/C++ (the new Xt
  361.           replacement technology in X11R6). This technology is part of
  362.           OIS's Acumentor product development suite and is known as
  363.           Acumentor/GUI.
  364.           
  365.           Acumentor/GUI will offer the same:
  366.           
  367.           + object embedding (via CORBA)
  368.           + multi-threading support
  369.           + resolution independence
  370.           + multiple look-and-feel emulation, and
  371.           + structured graphics
  372.             
  373.    in the C++ version of Fresco. The CORBA interface will allow Ada
  374.           applications to transparently interoperate with C++
  375.           applications. OIS is extending the product to include a full
  376.           MVC paradigm and fully automatic memory reclaimation. Windows
  377.           95/NT versions are in progress in addition to the VMS and Unix
  378.           X Windows versions.
  379.           
  380.      _________________________________________________________________
  381.    
  382.   Tcl/Tk 4
  383.   
  384.    _VENDOR:_
  385.           Sun Microsystems Laboratories
  386.           
  387.         email
  388.                john.ousterhout@eng.sun.com
  389.         www
  390.                http://www.sunlabs.com/research/tcl/
  391.                http://www.neosoft.com/tcl/ - archives
  392.         ftp
  393.                ftp://ftp.smli.com/pub/tcl/
  394.                ftp://ftp.neosoft.com/pub/tcl - archives
  395.         news
  396.                comp.lang.tcl
  397.                
  398.    _SOFTWARE CONFIGURATION:_
  399.           Tk is a graphical user interface toolkit for adding X/Windows
  400.           GUI objects to Tcl, a scripting language. Tcl and Tk were
  401.           developed by Dr. John Ousterhout at the University of
  402.           California, Berkeley. He now works at Sun Microsystems who have
  403.           employed him to do some further development of Tcl / Tk.
  404.           
  405.           There are versions of Tcl/Tk for X-Windows (many platforms),
  406.           MS-Windows 3.1 (Win32s), Win32, Macintosh; and ports underway
  407.           for OS/2 and MS-DOS.
  408.           
  409.           A GUI builder tool called SpecTcl is available from Sun, for
  410.           Unix platforms.
  411.           
  412.    _COMMENTS:_
  413.           Tcl/Tk presents the X/Windows look-and-feel, regardless of what
  414.           platform it is run on. There is some effort underway to get
  415.           native look-and-feel on Windows and Macintosh, but it's a
  416.           little way off yet.
  417.           
  418.           Because Tcl has been designed as an embeddable language, you
  419.           can use Tcl/Tk from C, C++ and Java quite easily. The Tk
  420.           functions can be called from these languages directly, and
  421.           extensions to Tk can be supported by creating a callback which
  422.           has some embedded Tcl.
  423.           
  424.           There is a shell for calling Tk from Ada, called TASH (Tcl Ada
  425.           SHell). For details, see http://www.ocsystems.com/xada/tash.
  426.           
  427.           The Tk toolkit has also been modified to work with Perl and
  428.           other languages. For details, check out
  429.           http://w4.lns.cornell.edu/~pvhp/ptk/ptkFAQ.html
  430.           
  431.      _________________________________________________________________
  432.    
  433.   VisualWorks v2.5
  434.   
  435.    _VENDOR:_
  436.           ParcPlace-Digitalk
  437.           
  438.           1-800-759-7272 or 408-481-9090
  439.           
  440.         email
  441.                webinfo@parcplace.com
  442.         www
  443.                http://www.parcplace.com/
  444.                
  445.    _SOFTWARE CONFIGURATION:_
  446.           VisualWorks is a Smalltalk application development environment
  447.           and class library for client-server GUI products. The
  448.           VisualWorks software includes a set of interactive development
  449.           tools to help you, well, develop your GUI software
  450.           interactively. In addition, one can use the Chameleon View
  451.           product to preview the look of an application as if it were
  452.           running under different windowing managers on the various
  453.           supported platforms.
  454.           
  455.           In addition to all of this, VisualWorks includes an external
  456.           database interface, currently for Oracle and Sybase.
  457.           
  458.    _OPTIONS:_
  459.           Advanced Tools - performance benchmarks, complex numbers,
  460.           extended browser, metanumbers, parser compiler, space use
  461.           profiler, class analysis and reports (e.g., variables used but
  462.           not defined).
  463.           
  464.           + Business Graphics - pie, bar, line, etc., charts
  465.           + DLL & C Connect - parse C header files, call out to DLLs and
  466.             shared libraries
  467.           + Oracle Connect 2.0
  468.           + Sybase Connect 2.0
  469.             
  470.    _WHAT THE USERS SAY:_
  471.           Some users simply prefer programming in Smalltalk over C++
  472.           anyway, others say that language differences aside, VisualWorks
  473.           is a better toolset than any C++ kit they've seen.
  474.           
  475.    _COMMENTS:_
  476.           Apparently (I haven't seen the article, personally) the June
  477.           14,1993 issue of Computerworld ranks ParcPlace pretty highly.
  478.           
  479.      _________________________________________________________________
  480.    
  481. VII. ACKNOWLEDGEMENTS
  482.  
  483.    Many thanks to the previous maintainer and original author of this
  484.    FAQ, Wade Guthrie. Wade has done a marvellous job since the inception
  485.    of the Platform Independent GUI FAQ, aka Portable GUI FAQ, and I
  486.    personally owe him a debt of gratitude for the assistance he has given
  487.    me in getting this FAQ out the door. I also have benefited from his
  488.    FAQ over time, in making the tough decision about which PIGUI kit to
  489.    go for.
  490.    
  491.    Wade can still be contacted at wade@nb.rockwell.com, where he is
  492.    probably just settling back into a nice cold beer right now and
  493.    enjoying return to a FAQ-reduced life. Please leave Wade in peace, and
  494.    address all correspondence related to this FAQ to me,
  495.    rosko@zeta.org.au
  496.    
  497.    Thanks to the many netters that have helped give information and
  498.    general impressions of the software packages listed here. Also thanks
  499.    to the vendors for keeping this FAQ accurate and up-to-date.
  500.    
  501.    In specific, I'd like to thank Eric Raymond (esr@snark.thyrsus.com),
  502.    'cause [Wade] stole his UNIX FAQ format for use here. Thanks, Eric.
  503.    
  504.    Some articles which have contributed to the pool of knowledge about
  505.    Platform Independent GUI programming:
  506.      * Steve Apiki, "Paths to Platform Independence", Byte, January 1994,
  507.        pp. 172-178
  508.      * Richard Chimera, carm@cs.umd.edu, "Evaluation of Platform
  509.        Independent Interface Builders", Human-Computer Interaction
  510.        Laboratory, University of Maryland, dated March 1993.
  511.      * Carl Dichter, "One For All. . .", UNIX Review, October 1993, pp.
  512.        65-74
  513.      * Thomas Murphy, "Looking at the world through cheap sunglasses",
  514.        Computer Language, February 1993, pp. 63-85
  515.      * UNIX Review Staff, "Outstanding Products of 1993", UNIX Review,
  516.        December 1993, pp. 47-54
  517.      * Scott Mace, "Windows-to-Mac bridge now open", InfoWorld, Nov. 7,
  518.        1994, p21
  519.        
  520.      _________________________________________________________________
  521.    
  522.     Ross McKay
  523.     email:rosko@zeta.org.au
  524.     $RCSfile: pigui4.txt,v $; $Revision: 3.1 $; $Date: 1997/03/02
  525.     08:36:20 $
  526.