comparison lisp/oobr/BR-FEATURES @ 70:131b0175ea99 r20-0b30

Import from CVS: tag r20-0b30
author cvs
date Mon, 13 Aug 2007 09:02:59 +0200
parents 4103f0995bd7
children 4be1180a9e89
comparison
equal deleted inserted replaced
69:804d1389bcd6 70:131b0175ea99
2 # SUMMARY: Summary of OO-Browser features 2 # SUMMARY: Summary of OO-Browser features
3 # 3 #
4 # AUTHOR: Bob Weiner 4 # AUTHOR: Bob Weiner
5 # 5 #
6 # ORIG-DATE: 15-Oct-90 6 # ORIG-DATE: 15-Oct-90
7 # LAST-MOD: 21-Feb-97 at 16:37:30 by Bob Weiner 7 # LAST-MOD: 3-May-96 at 21:30:00 by Harri Pasanen
8 # 8 #
9 # Copyright (C) 1990-1995 Free Software Foundation, Inc. 9 # Copyright (C) 1990-1995 Free Software Foundation, Inc.
10 # See the file BR-COPY for license information. 10 # See the file BR-COPY for license information.
11 # 11 #
12 # This file is part of the OO-Browser. 12 # This file is part of the OO-Browser.
16 16
17 The OO-Browser is a multi-windowed, interactive object-oriented class browser 17 The OO-Browser is a multi-windowed, interactive object-oriented class browser
18 similar in use to the well-known Smalltalk browsers. It is unique in a 18 similar in use to the well-known Smalltalk browsers. It is unique in a
19 number of respects foremost of which is that it works well with a 19 number of respects foremost of which is that it works well with a
20 multiplicity of object-oriented languages. It provides both textual 20 multiplicity of object-oriented languages. It provides both textual
21 views within an editor and graphical views under the X and NEXTSTEP window 21 views within an editor and graphical views under the X window system.
22 systems.
23 22
24 23
25 * Support for all popular OO Languages on UNIX 24 * Support for all popular OO Languages on UNIX
26 ---------------------------------------------- 25 ----------------------------------------------
27 26
28 ** Support for C, C++, Common Lisp and its Object System (CLOS), Eiffel, 27 ** Contains support for Eiffel, C++, Objective-C, Common Lisp and its
29 Java, Objective-C, Python and Smalltalk class browsing is included. 28 Object System (CLOS), Java, Python, and Smalltalk class browsing.
30 Additionally, support for browsing large amounts of material in Info 29 Additionally, support for browsing large amounts of material in Info
31 format by node name (a popular online documentation format with cross 30 format by node name (a popular online documentation format with cross
32 references and hierarchical structure) is included. All languages 31 references and hierarchical structure) is included.
33 provide class browsing via either a textual or a graphical interface.
34 32
35 ** Method and typically attribute browsing is supported for all languages 33 ** Method browsing is supported for C++, Objective-C, Eiffel, Java,
36 except Smalltalk. CLOS supports browsing all elements defined with 34 Python and CLOS. CLOS supports browsing all elements defined with
37 (def* constructs. In-source feature browsing is also supported for all 35 (def* constructs. In-source feature browsing is also supported for
38 of these languages. One simply selects a feature name to jump to its 36 all of these languages. One simply selects a feature name to jump to
39 corresponding source. Method name overloading in C++ and inherited 37 its corresponding source. Method name overloading in C++ and inherited
40 feature renaming in Eiffel are fully supported. 38 feature renaming in Eiffel are fully supported.
41 39
42 ** C code browsing is supported for C++, Objective-C and C source code. 40 ** C code browsing is supported for C++, Objective-C and C source code.
43 41
44 ** Objective-C category and formal protocol browsing are supported. 42 ** Objective-C category and formal protocol browsing are supported.
45 43
46 ** C++ parameterized template classes and methods are supported. 44 ** C++ parameterized template classes and methods are supported.
47
48 ** Java abstract and native (externally defined) methods are supported.
49 45
50 ** Immediate switching among languages is allowed. One can switch 46 ** Immediate switching among languages is allowed. One can switch
51 from Eiffel browsing to C++ browsing in an instant, if so desired. 47 from Eiffel browsing to C++ browsing in an instant, if so desired.
52 Or simply run two OO-Browsers side by side. 48 Or simply run two OO-Browsers side by side.
53 49
54 ** Multiple inheritance support is built-in, where applicable. 50 ** Multiple inheritance support is built-in, where applicable.
55 51
56 ** Statistics on classes and Environments may be displayed. 52 ** Statistics on classes and Environments may be displayed.
57 53
58 ** Language-specific class information may be shown. Presently this 54 ** Language-specific class information may be shown. Presently this
59 feature is supported only for Eiffel. A listing of class parents, 55 feature is supported only for Eiffel and Python. For Eiffel, a
60 attributes, routines and best guess (highly accurate) list of 56 listing of class parents, attributes, routines and best guess
61 routine calls may be displayed. Outputs from the Eiffel `short' 57 (highly accurate) list of routine calls may be displayed. Outputs
62 and `flat' commands may also be shown. 58 from the Eiffel 'short' and 'flat' commands may also be shown.
59 For Python this feature is used to browse documentation strings in
60 classes and methods.
63 61
64 62
65 * For Serious Use 63 * For Serious Use
66 ---------------------- 64 ----------------------
67 65
69 maintained and listed separately or together. Any number of 67 maintained and listed separately or together. Any number of
70 Libraries and Systems may be combined for listing in a single 68 Libraries and Systems may be combined for listing in a single
71 Environment. There are no fixed limits on the number of classes per 69 Environment. There are no fixed limits on the number of classes per
72 Environment nor on the number of Environments that may be browsed. 70 Environment nor on the number of Environments that may be browsed.
73 71
74 ** All source code, over 400 kilobytes, is included and is heavily 72 ** All source code, over 400 kilobytes, is included and is heavily
75 documented. 73 documented.
76 74
77 75
78 * Ease of Use 76 * Ease of Use
79 ------------- 77 -------------
80 78
81 ** Machine-independent mouse support is included along with an extremely 79 ** Machine-independent mouse support is included along with an extremely
82 intuitive point and click interface that uses just two mouse keys. The 80 intuitive point and click interface that uses just two mouse keys. The
83 OO-Browser is pre-configured for use with the X window system, NEXTSTEP, 81 OO-Browser is pre-configured for use with the X window system, NEXTSTEP,
84 Sunview or Apollo's DM window system under InfoDock, Emacs V19, XEmacs, 82 Sunview or Apollo's DM window system under InfoDock, Emacs V19, XEmacs,
85 Epoch, and Emacs V18. Online mouse usage help is always one key away. 83 Epoch, and Emacs V18. Online mouse usage help is always one key away.
86 (Don't try that level of platform independence with Java!)
87 84
88 ** Popup and pulldown command menus are available under InfoDock, Emacs V19 85 ** Popup and pulldown command menus are available under InfoDock, Emacs V19
89 and XEmacs. 86 and XEmacs.
90 87
91 ** The OO-Browser help display gives short descriptions of all of 88 ** The OO-Browser help display gives short descriptions of all of
130 a class or element name immediately jumps to it in the editor, providing 127 a class or element name immediately jumps to it in the editor, providing
131 rapid, visual browsing. One can pop up several graphical browsers to 128 rapid, visual browsing. One can pop up several graphical browsers to
132 gain several views of classes in the same or in multiple environments. 129 gain several views of classes in the same or in multiple environments.
133 All graphical browsers can communicate with a single textual browser, so 130 All graphical browsers can communicate with a single textual browser, so
134 one can quickly display and edit classes from different environments 131 one can quickly display and edit classes from different environments
135 (even different languages). Multiple inheritance is handled through 132 (even different languages).
136 repetition of nodes throughout the tree; repeated nodes are followed by
137 ellipses to indicate multiple inheritance.
138 133
139 ** The OO-Browser uses class source code only, hence no compiler is 134 ** The OO-Browser uses class source code only, hence no compiler is
140 necessary for proper browser operation. This allows one to explore 135 necessary for proper browser operation. This allows one to explore
141 class libraries without the need for additional tools. 136 class libraries without the need for additional tools.
142 137