Newsgroups: comp.object,comp.answers,news.answers Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!gatech!swrinde!howland.reston.ans.net!vixen.cso.uiuc.edu!uchinews!news From: Bob Hathaway Subject: Comp.Object FAQ Version 1.0.9 (04-02) Part 13/13 X-Nntp-Posting-Host: ford.uchicago.edu Message-ID: Followup-To: comp.object Summary: Frequently Asked Questions (FAQ) List and Available Systems For Object-Oriented Technology Sender: news@midway.uchicago.edu (News Administrator) Organization: Geodesic Systems References: Date: Wed, 3 Apr 1996 04:21:47 GMT Approved: news-answers-request@MIT.Edu Lines: 1422 Xref: senator-bedfellow.mit.edu comp.object:46844 comp.answers:17919 news.answers:68451 Archive-name: object-faq/part13 Last-Modified: 04/02/96 Version: 1.0.9 Product: OOTher OO Documentation & CASE Tool Release 1.06f Environment: MS-Windows 3.1 Short description: The tool is a complete documentation development package for the following methods/notations: - Peter Coad's OOA method (Coad/Yourdon) - State Machine diagrams using a subset of SDL - allocation of objects to processors and processes - Use Case diagrams and Object Interaction diagrams as proposed by Ivar Jacobson in his OOSE book The tool also performs verification of consistency between the diagrams, and by direct coupling assures for consistent naming of objects and methods/services. The tool is build around 5 easy to use graphic editors and is capable of documenting all objects, their attributes, services and also associations between objects. Each service may have a state machine (FSM) diagram. C++ Headers may be generated automatically from the OOA diagram - it assures consistent naming of member functions and attributes. The applied mark-up notation for C++ headers should be powerful to give compiler ready headers for at least 80% of applications. For a better integrability with other windows applications and to allow esthetical control, the tool allows free font selection and a copy-paste transfer of diagrams via clipboard in meta file format to e.g. Word for Windows 2.0. The resulting file is ASCII with open & documented format, i.e. it's easy to add own utilities for data extraction. Complete user documentation is attached in form of a hypertext windows-help file. The tools distributed as: - freeware for students, schools and home users - as shareware for others (USD $170 for corporate 1-5 user license). - free upgrade form 1.0x to 1.06f for registered users if they fetch files from e.g. SimTel Software Repository - free evaluation in 4 weeks - an evaluation copy may be ordered from the author (USD $70, rest of the license fee if/when you register) Roman M. Zielinski Tre Kaellors Vaeg 7 S-145 65 Norsborg Sweden (You may also reach me at conrozi@KK.ericsson.se until July-94) ***** Version 1.06f contains bug corrections and updates of zoom-handling. Roman M. Zielinski [author] ---------------------------------------------------------------------- SimTel id: pub/msdos/windows3/ oot-106f.zip OOTher OO Doc Tool 1.06f CASE OOA+OOSE ---------------------------------------------------------------------- mail a message To: listserv@vm1.nodak.edu (***se below, for other internet server names***) Subject: SimTel-request Body: /PDGET MAIL /SimTel/msdos/windows3/oot-106f.zip uuencode (some TRICKLE-servers don't like the arguments 'MAIL' and 'UUENCODE', so thay may need to be omitted. Thay also may need the old path specification, example for the Swedish TRICKLE: /PDGET oot-106f.zip ) You may also use Archie to find sites storing OOTher. Instructions for archie and paths for OOTher can be fetched via e-mail from e.g. archie@archie.doc.ic.ac.uk with a body: Help find oot [... On Simtel Retrieval ...] or fetch via anonymous ftp or ftpmail from OAK.Oakland.Edu /SimTel/msdos/windows3 or its mirrors: St. Louis, MO: wuarchive.wustl.edu (128.252.135.4) /systems/ibmpc/msdos Corvallis, OR: archive.orst.edu (128.193.2.13) /pub/mirrors/oak.oakland.edu/simtel20/msdos Falls Church, VA: ftp.uu.net (192.48.96.9) /systems/ibmpc/msdos/simtel20 Australia: archie.au (139.130.4.6) /micros/pc/oak England: src.doc.ic.ac.uk (146.169.2.1) /pub/packages/simtel20 Finland: ftp.funet.fi (128.214.6.100) /pub/msdos/SimTel-mirror Germany: ftp.uni-paderborn.de (131.234.2.32) /msdos Israel: ftp.technion.ac.il (132.68.1.10) /pub/unsupported/dos/simtel Switzerland: ftp.switch.ch (130.59.1.40) /mirror/msdos Taiwan: NCTUCCCA.edu.tw (140.111.1.10) /PC/simtel Thailand: ftp.nectec.or.th (192.150.251.32) /pub/mirrors/msdos ---------------------------------------------------------------------- To run ftpmail send e-mail to e.g. ftpmail@doc.ic.ac.uk with the message body: connect ??hostname?? binary uuencode cd pub/msdos/windows get oot-106f.zip quit ---------------------------------------------------------------------- >68 OS Papers (OO?) From: axb@defender.dcrl.nd.edu (Arindam Banerji) Newsgroups: comp.object Subject: The Paper Trail database Date: 21 Sep 1994 14:39:20 GMT Organization: University of Notre Dame THE PAPER TRAIL The "Paper Trail" - an experimental database of ftp'able OS papers is now available through http://pclsys64.dcrl.nd.edu/papers. This database allows users to find and access papers that are available for ftp on the internet. We have initially populated this database with about 5500 entries. Most of these entries reflect our own area of interest, that is Operating Systems and related areas. We'll add entries to the database from time to time. However, it'll probably be very difficult to keep this up-to-date without help from other users of this database. Hence, the database provides any user the added facility to submit entries. We hope that the xmosaic interface to this database is intuitive and simple. If you have any suggestions and criticisms, please do let us know - including how this compares with other such services. ----------------------------------------------------------------------------- Arindam Banerji Michael Casey 384 FitzPatrick Hall Dept. of Computer Science and Engineering University of Notre Dame (219)-631-5772 Notre Dame, IN 46556 (219)-631-5273 axb@cse.nd.edu mrc@cse.nd.edu >69 Trellis From: bruno@tk.telematik.informatik.uni-karlsruhe.de (Bruno Achauer) Subject: Trellis compiler available Date: 23 Oct 1994 00:16:02 GMT Organization: Telematics Department, Karlsruhe University, Germany The beta release of version 0.2 of the TNT Trellis system is now available for anonymous ftp from tk.telematik.informatik.uni-karlsruhe.de. Enclosed is ANNOUNCE file from the distribution: What are Trellis and TNT ~~~~~~~~~~~~~~~~~~~~~~~~ Trellis is an object-oriented language developed within Digital Equipment Corp. The language features compile-time type checking, multiple inheritance, parametrized types, exception handling and iterators. TNT is a new implementation of Trellis, consisting of a compiler, a library of predefined types and a (rudimentary) run time system: - The compiler implements the language as defined by the reference manual (except for a few esoteric constructs), plus a few minor extensions. - Predefined types are standard types such as integers, strings, arrays etc. (in Trellis, no type is built into the language!), an IO system and a (rudimentary) hierarchy of collection types. - The run time system is pretty incomplete right now; in particular, neither garbage collection nor threads are implemented yet. The system is available for several architectures: - the Digital Alpha (running OSF/1), - the HP Precision Architecture (under HP-UX), - the Intel 386 (under Linux), - Digital's Mips workstations, - Sun's Sparc workstations (running SunOS). Both source code and prebuilt kits are available. Further work will concentrate on supporting transparently distributed objects a la DOWL. Changes since last version ~~~~~~~~~~~~~~~~~~~~~~~~~~ * The HP-PA, Linux and Sparc ports. * Building the compiler no longer requires the SFIO library. * The compiler now can use the GNU assembler to generated object files; at least on small MIPS machines, this will speed up compilation considerably. * Several minor bugs have been fixed. Requirements ~~~~~~~~~~~~ The prebuilt kits require disk space ranging from 800 KB (Linux) to 2.4 MB (OSF/1); a C compilation system (assembler, linker and the C library) must be installed. In addition, the Mips and HP-PA versions will benefit if the GNU assembler is present. Building the system from scratch requires from 5.2 MB (Linux) to 16 MB (Alpha). You will also need some auxiliary tools and libraries: - Cocktail V9208 (the Karlsruhe Compiler toolbox), - GNU make V3.68 or later, - patch, - makedepend. Most of these should be available on a nearby ftp site (makedepend is part of the X distribution; GNU make and patch are distributed by the FSF). Cocktail is available from several ftp sites, but most of the versions floating around will not work on the Alpha. A patched version is available on tk.telematik.informatik.uni-karlsruhe.de (see below). If you plan to build the MIPS or the SPARC version, you will also need the GNU C compiler. How to get it ~~~~~~~~~~~~~ A source kit is available via anonymous FTP from tk.telematik.informatik.uni-karlsruhe.de (129.13.3.200) file directory /pub/tnt/tnt-0.1.tar.gz. There are also some additional kits in the same directory: * doc -- PostScript versions of DEC-TR-372 (language reference manual) and DEC-TR-373 (language primer). * prebuilt -- binary kits. * tools -- source kits for Cocktail. Please direct bug reports, requests, comments etc to tnt@tk.telematik.informatik.uni-karlsruhe.de. Acknowledgements ~~~~~~~~~~~~~~~~ The development of TNT has been supported by Digital Equipment's Campus-based Engineering Center in Karlsruhe. Special thanks to Jean Fullerton and Lutz Heuser at Digital for making the technical reports available. Copyright ~~~~~~~~~ Copyright © 1994, Universität Karlsruhe, Germany; parts Copyright © 1994 Digital Equipment Corp, Maynard, Mass. The TNT Trellis software, both binary and source (hereafter, Software) is copyrighted by Universität Karlsruhe, Germany (UKA), and ownership remains with the UKA. Parts of the software are copyrighted by Digital Equipment Corp., Maynard, Mass. The UKA grants you (hereafter, Licensee) a license to use the Software for academic, research and internal business purposes only, without a fee. Licensee may distribute the binary and source code (if released) to third parties provided that the copyright notice and this statement appears on all copies and that no charge is associated with such copies. UKA MAKES NO REPRESENTATIONS ABOUT THE SUITABILITY OF THIS SOFTWARE FOR ANY PURPOSE. IT IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. THE UKA SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY THE USERS OF THIS SOFTWARE. -- --Bruno. --------------------------------------------------------------- | Bruno Achauer, U of Karlsruhe, Telecooperation | | Kaiserstr. 12, D-76128 Karlsruhe, Germany | | bruno@tk.telematik.informatik.uni-karlsruhe.de | | Phone +49-721-6084792, Fax +49-721-388097 | --------------------------------------------------------------- >70 CooL-SPE From: Gerhard.Mueller@sietec.de (Dr. Gerhard Müller) Subject: Announcement of the CooL Software Production Environment Date: Tue, 25 Oct 1994 11:42:28 UNDEFINED Organization: Sietec Systemtechnik ANNOUNCEMENT The CooL-Software Production Environment - a new object- oriented development environment in Public Domain The CooL-SPE is a modern software production environment for the development of object-oriented application systems supporting grafical user interfaces and relational database technology. In the landscape of existing software production technologies the CooL-SPE is more closely settled to 4GL environments than to the usual C++ environments, mostly more dedicated to system programming. The CooL-SPE was developed by Siemens Nixdorf Informationssysteme (SNI) within the ESPRIT project ITHHACA and is used since in a number of large projects. Allthough the CooL-SPE as a programming environment is functional quite rich, it is also very lean and thus comparable fast to learn and reliable tu use. In one project, which we sup- ported recently, we could learn that newly assigned engineers to a fairly large project (400 classes with some 100.000 lines of code) were able to learn the environment, to understand the application and to become productive within a month - and that without any practical experience on object-oriented pro- gramming before. The system has product quality and is implemented in major parts in itself. The CooL-SPE is available for Linux 1.0.1, Solaris 2.3 and SINIX 5.41. You may receive the system (sources and docu- mentation) via ftp.fu-berlin.de in the directoy /pub/unix/lan- guages/cool.The file itself is named cool-2.1.tar.Z. >71 Contra-/Co- Variance From: castagna@oeillet (Giuseppe Castagna) Subject: Paper on covariance and contravariance Date: 25 Oct 1994 17:09:51 GMT Organization: Ecole Normale Superieure PAPER ANNOUNCEMENT ================== The following short (13 pages long) note "COVARIANCE AND CONTRAVARIANCE: CONFLICT WITHOUT A CAUSE" Giuseppe Castagna Laboratoire d'Informatique de l'ENS, Paris is available by anonymous ftp at ftp.ens.fr in the file /pub/reports/liens/liens-94-18.A4.dvi.Z ADVERTISEMENT: This paper tries to explain ------------- 1. What covariance and contravariance serve for. 2. Why covariance and contravariance are not opposing views but both *must* be integrated in a *type-safe* formalism. I.e.: don't choose just one of them. 3. Where the "objects as records" analogy hides covariance. 4. How to type binary methods in the models based on the analogy "objects as records" (i.e. how to have ColorPoint < Point even if they respond to a message "equal") 5. How to have multiple dispatch when objects are modeled by (recursive) records. 6. Why all the previous points are strictly related one to each other. ABSTRACT In type theoretic research on object-oriented programming the ``covariance versus contravariance issue'' is a topic of continuing debate. In this short note we argue that covariance and contravariance appropriately characterize two distinct and independent mechanisms. The so-called contravariance rule correctly captures the {\em substitutivity\/}, or subtyping relation (that establishes which sets of codes can replace {\em in every context\/} another given set). A covariant relation, instead, characterizes the {\em specialization\/} of code (i.e.\ the definition of new code that replaces the old one {\em in some particular cases\/}). Therefore, covariance and contravariance are not opposing views, but distinct concepts that each have their place in object-oriented systems and that both can (and should) be type safely integrated in an object-oriented language. We also show that the independence of the two mechanisms is not characteristic of a particular model but is valid in general, since covariant specialization is present also in record-based models, but is hidden by a deficiency of all calculi that realize this model. As an aside, we show that the lambda&-calculus can be taken as the basic calculus both for an overloading-based and for a record-based model. In that case, one not only obtains a more uniform vision of object-oriented type theories but, in the case of the record-based approach, one also gains multiple dispatching, which is not captured by the existing record-based models. >72 Quality From: melo@umiacs.UMD.EDU (Walcelio Melo) To: drenth@tpd.tno.nl Cc: ami@aut.alcatel.at Subject: Quality Research Paper on these topics can be found by anymous ftp at: ftp.cs.umd.edu:pub/sel/papers or web:http://cs.umd.edu/projects/SoftEng/tame - what quality aspects (of the process and the product) are measured and when are they measured (early on in the development process or merely in the testing phase); - what metrics are used to measure quality aspects (f.e. Lines Of Code, number of Function Points, complexity); - are the measurement results used for prediction of the quality of the final product; - are the measurement results used for process improvement; - what methods for process assessment (and improvement) are used (f.e. CMM, Bootstrap, AMI); - are there certificates (f.e. ISO); Best regards, walcelio >73 Quality Re (to >72): You might try looking at the Softw Engineering Inst technical report "Measurement in Practice," which surveyed the practices of software measurement leaders: Date: Sat, 2 Jul 1994 09:19:19 +0800 (SST) From: Ajith Narayanan Subject: MiP techreport available by ftp To: Stan Rifkin Hi Stan, The GZIP-compressed PostScript of your technical report "Measurement in Practice" is available for anon ftp from ftp:ftp.informatik.uni-stuttgart.de/pub/doc/techreports/Metrics.ps.gz regards --Ajith >74 TRILLIUM (CMM) From: fcoallie@qc.bell.ca (Francois Coallier) To: ami@aut.alcatel.at Subject: TRILLIUM Release 3.0 available. Dear Colleagues, The release 3.0 of the TRILLIUM Model is now available through the Internet. The TRILLIUM model is a software product development and support capablity model based on the SEI's Capability Maturity Model (CMM). TRILLIUM differs from the CMM in its roadmap structure and its product and customer focus. This release of TRILLIUM is substancially different from 2.3d: 1) The introductory chapters explaining the model and its application have been extensively rewritten and expanded. 2) Practices are updated to provide 100% coverage of the CMMM version 1.1, ISO 9001:1994 and ISO 9000-3, and Bellcore TR- NWT-000179. 3) Traceability tables to external source documents are generated automatically. The verification of all references is thorough. 4) The glossary has been updated. The TRILLIUM model is in the public domain. Copies (as a series of uuencoded Poscript files) are distributed freely through the Internet. To receive your copy via E-Mail, all you have to do is to send me a request with your complete coordinates. Bounded hard copies are available from the Bell Canada Acquisitions department. Pricing and shipping information are available on request (Sorry: this is purely for budgetary reasons). Regards, Francois Coallier =========================================================================== Francois Coallier Bell Canada, TEL: +1 (514) 448-5100 2265 Roland Therrien FAX: +1 (514) 448-2090 Longueuil, Quebec or +1 (514) 647-3163 Canada J4N 1C5 Internet: fcoallie@qc.bell.ca Numerical Pager: +1 (514) 749-7937 >75 Dylan From: straz@cambridge.apple.com (Steve Strassmann) [...] Dylan (name derived from "Dynamic Language"), an object-oriented language developed here at Apple. Our home web page is http://www.cambridge.apple.com. Our main ftp site is ftp://cambridge.apple.com/pub/dylan, including experimental implementations, the FAQ, literature, etc. Dylan combines the major efficiency advantages of static languages (C/C++, Pascal) with the flexibility advantages of dynamic languages (Scheme, Smalltalk). Dylan is not proprietary; in addition to Apple's own compiler effort, there are at least 9 non-Apple implementations under way, including alternative and commercial environments for Windows and unix. [...] Steve Strassmann, PhD straz@apple.com >76 Object Domain (Shareware Case Tool) See also appendix D. From: dirkv@netcom.com (Dirk Vermeersch) Date: Thu, 23 Mar 1995 17:09:55 -0800 I've written a shareware program for drawing Booch 93 notation diagrams. All 6 diagrams can be entered in this tool : - Class diagrams - Object diagrams - Module diagrams - State diagrams - Process diagrams - Interaction diagrams C++ stubs can be generated from the diagrams. FTP address: oak.oakland.edu:/SimTel/win3/pgmtools/domain.zip Best Regards, Dirk Vermeersch >77 Cecil From: jdean@pysht.cs.washington.edu (Jeffrey Dean) Subject: Re: Cecil Organization: University of Washington Date: Fri, 18 Nov 1994 10:18:54 GMT In article <1707013D67.UDIS2@earn.cvut.cs>, UDIS2@earn.cvut.cz writes: |> Where can I find info about Cecil language? |> |> Thanks, |> Peter P.B. |> Cecil is a new purely object-oriented language intended to support rapid construction of high-quality, extensible software. Cecil combines multi-methods with a classless object model, object-based encapsulation, and optional static type checking. Ongoing research in the Cecil project is in two major areas: language design issues and type systems for languages like Cecil, and implementation research on making languages like Cecil run faster. Ongoing research in the Cecil project is in two major areas: language design and object-oriented language implementation. Our language design research addresses modules and typechecking for multi-method based languages, and language mechanisms for implicit object classification. Our implementation research is exploring a variety of optimization techniques for object-oriented languages, including profile-guided type feedback, whole program analysis, specialization, and interprocedural type inference algorithms. Further information about Cecil is available from our WWW site: http://www.cs.washington.edu/research/projects/cecil/www/cecil-home.html Papers about Cecil are also available via anonymous ftp from cs.washington.edu in the directory /pub/chambers. See the README file in that directory for a description of the available papers. Check out our WWW site: we'd appreciate any feedback people might have. [...] Producing readable, on-line text versions is difficult, because the papers contain embedded figures and formatted text. Many of the papers are available as UW CSE Technical reports, however. Full details can be via anonymous ftp in: cs.washington.edu:/pub/chambers/README. Hard-copies of the technical reports may also be requested via electronic mail. Send email to: tr-request@cs.washington.edu. Orders will be filled via surface mail, subject to availability. Please be sure to include a complete snail-mail address with your request. As for the compiler, we plan to have an initial release to "friendly, interested parties" sometime in the first half of 1995. The release will include full source code for the compiler (currently about 45,000 lines of Cecil code), and will include both a C-code based back end (for portability) and a native Sparc back end. We're maintaining a list of people who are interested in this initial release. If you would like to be added to this list, send e-mail to me (jdean@cs.washington.edu). -- Jeff -------------------------------------------------------------------------- Jeffrey Dean (jdean@cs.washington.edu) Cecil Project Graduate Student Dept. of Computer Science & Engineering University of Washington http://www.cs.washington.edu/homes/jdean/index.html -------------------------------------------------------------------------- >78 Meta-Case Info From: Ian Ferguson Newsgroups: comp.software-eng Subject: metacase home page available on www Date: 28 Nov 1994 11:50:36 GMT Organization: University of Sunderland ANNOUNCEMENT - please forward as appropriate ============ MetaCASE on the World Wide Web ======== == === ===== ==== === I am developing an new World Wide Web Home-Page on the subject of MetaCASE. Its URL is :- http://osiris.sunderland.ac.uk/rif/metacase/metacase.home.html It contains information on MetaCASE tools, standards, conferences, suppliers, researchers, mailing lists, products, ftp sites etc. I am, however, still looking for information. If you have any information that you think should be included, please let me know and I will be glad to give you full credit when that information is displayed. Regards, Ian Ferguson -------------------------------------------------------------------------------- R.I.Ferguson Research Associate University of Sunderland School of Computing and Information Systems Priestman Building Green Terrace Sunderland Email : ian.ferguson@sunderland.ac.uk Tyne/Wear Tel : (+44) 0191-515-2754 SR1 3SD Fax : (+44) 0191-515-2781 United Kingdom Web : http://osiris.sunderland.ac.uk/rif/welcome.html -------------------------------------------------------------------------------- >79 C++ Std Temp. Lib From: khan@xraylith.wisc.edu (Mumit Khan) Newsgroups: comp.object Subject: Re: C++ Collection Classes Date: 25 May 1995 01:38:05 GMT [...] The C++ standard draft includes the spec for Standard Template Library (STL) which gets you pretty much any collection you need in C++. Check out the C++ faq (somewhere under ftp://rtfm.mit.edu/...) for where to find it. If you're using GNU C++ 2.6.3 (or a more recent snapshot), the hacked version of STL that comes with libg++-2.6.2 (or w/today's 2.6.9 snapshot) is quite usable. ObjectSpace and Modena are two vendors selling STL implementations that cover a wide variety of compiler/platform combos (info@objectspace.com, 1-800-MODENA-1 for more info). Also welcome to take a look at my STL newbie file (http://www.xraylith.wisc.edu/~khan/ and follow the 'STL Newbie doc' link). If you're using Borland 4.5 on a PC, you can use the HP implementation from ftp://butler.hpl.hp.com/stl. Here's a snippet from FAQ: ==== STL HP official site: ftp://butler.hpl.hp.com/stl STL code alternate: ftp://ftp.cs.rpi.edu/stl STL code + examples: http://www.cs.rpi.edu/~musser/stl.html hacks for GCC-2.6.3: ftp://ftp.uni-bremen.de/pub/.mount/ruin/C++/STL ==== btw, c.l.c++ is the group you should watch for this type of info. enjoy mumit -- khan@xraylith.wisc.edu >80 Phantom (Distr Prog) From: acourtny@cs.tcd.ie (Antony Courtney) Subject: Announcing: Phantom language, home page, alpha release Keywords: languages, distributed, interpreted Organization: Computer Science, Trinity College Dublin Date: Mon, 15 May 1995 10:37:36 GMT Announcing: Phantom, an Interpreted Language for Distributed Programming This message is an announcement for the Phantom home page, mailing list, and prototype interpreter for the centralised language core. ------------------------------------------------------------------------------- >From the Phantom home page: What is Phantom? Phantom is a new interpreted language designed to address some of the problems presented by large-scale, interactive, distributed applications such as distributed conferencing systems, multi-player games, and collaborative work tools. Phantom combines the distributed lexical scoping semantics of Obliq with a substantial language core. The language core is based on a safe, extended subset of Modula-3, and supports a number of modern programming features, including: * static structural-equivalence typing * objects * modules and interfaces * lightweight threads * exceptions * garbage collection * higher-order functions and lambda expressions * a keyword binding mechanism * dynamically sized lists and slice indexing notation * type-safe implicit declarations The Phantom interpreter is implemented entirely in ANSI C, and provides a binding to the Tk GUI toolkit. Phantom has similar goals to Java, but was developed independently. ------------------------------------------------------------------------------ Information about Phantom, the mailing lists, differences from Java, documentation on the language, and the current status and availability of the interpreter can be found on the Phantom home page: http://www.cs.tcd.ie/acourtny/phantom/phantom.html (in Europe) or http://www.apocalypse.org/pub/u/antony/phantom/phantom.html (US mirror) Please feel free to drop by and have a look! Antony Courtney Trinity College Dublin Ireland >81 Java (Distr Prog) This recent article discusses and quotes Java. From: Greg Wilkins Newsgroups: comp.object Subject: Java vs. C++ Date: 25 May 1995 03:42:36 GMT Organization: Telstra Corporation I have been reading about the Java language from Sun Labs: http://java.sun.com/index.html The way I use C++ looks like it would transfer to Java very easily, giving me access to the featurs of C++ I like, without the danger of the many extra C++ "features." I'm interested in hearing opinions on Java from the many posters that dislike C++. While the chances of a new language taking off are very very slim, looking at languages like Java are good ways of refining the way we learn/teach/review/use languages like C++. Just to steal a bit of the Java doco: Java: A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-performance, multithreaded, and dynamic language. We wanted to build a system that could be programmed easily without a lot of esoteric training and which leveraged today's standard practice. Most programmers working these days use C, and most programmers doing object-oriented programming use C++. So even though we found that C++ was unsuitable, we designed Java as closely to C++ as possible in order to make the system more comprehensible. >82 Reflection Paper From: lady0065@sable.ox.ac.uk (David Hopwood) Subject: Reflection (was Re: Has C++ had its day?) Organization: Oxford University, England Date: Wed, 31 May 95 02:59:04 BST In article <3pq7eo$e50@nova.umuc.edu>, Ell wrote: [snip] >Curious what you mean by "reflective" design? Reflection is the ability to change aspects of the implementation of a language (eg. method dispatch, memory allocation, synchronization policies), on a per-object (or per-class) basis. For example, reflection can be used to add distributed message passing to a language that doesn't have this hard-wired into the compiler, simply by changing how method dispatch is implemented for remote objects. A typical (but not the only) model of reflection has a 'meta-object' associated with each object. There is a default meta-object which defines the basic capabilities of the language (in practice, calls to this are usually inlined). The code emitted by the compiler for operations like method dispatch, etc. is modified to check whether the object in question is reflective (has a meta-object other than the default). So, the code for a method call "receiver.method (param1, param2, ...)" might look something like: if (receiver is non-reflective) inline code for a standard method call else m := the meta-object for receiver m.perform (receiver, method_id, parameter-list) m can also be reflective (which leads some research papers to talk about an infinite tower of objects and corresponding meta-objects), but normally only one or two levels are used. The meta-object can implement dispatch however it likes, for example using RPC to a distributed object, or whatever. The interface of a meta-object (which includes 'perform' in this case) is called the meta-object protocol. Other applications of reflection include: - memoized calls (the result of a function call is cached, for use on subsequent calls with the same parameters) - future objects (an object is calculated in a parallel thread; any access to the object blocks until it is ready) - transaction messages (as used in ODBMSs) - asynchronous messages (as used in Actor languages) - interfaces to other languages and type systems - implementation of garbage collection - heaps optimized for different granularities of object - persistence - checkpointing - replication and so on. A good summary of reflection is ftp://ftp.gte.com/pub/dom/reports/MANO93d.ps David Hopwood david.hopwood@lmh.ox.ac.uk >83 OZ++ (Distr Env) From: hamazaki@etl.go.jp (Youichi Hamazaki) Subject: OZ++ system released with compiler, execution system and management systems Date: 30 May 1995 12:21:14 GMT Organization: Electrotechnical Laboratory, Tsukuba Science City I'm pleased to announce our second release of OZ++ :an object-oriented distributed environment. This software is copyrighted, but can be used free of charge by anyone. In this release, it includes compiler of object-oriented distributed language oz++, execution system and distributed management systems. You can compile programs written in oz++ language, and execute it in distributed environment. all source codes of distributed management systems and libraries are included also. Version control of classes will be provided on next release at late June. If you are interested in OZ++, please anonymous FTP the file: etlport.etl.go.jp:/pub/OZ++/OZ++-R2.tar.gz *Execution Environment The system of OZ++ should be executed in the following environment: -SunOS 4.1.3, whose kernel has been configured to access shared memory, required. -Disk space of 50MB required. -Swap space of 40MB required at the time of exceution. -Sparc Station 2, or faster desired. *Execution Environment Information about OZ++ project is available on WWW http://www.etl.go.jp/Organization/Bunsan/OZ/OZ.html . Any questions , advices and suggestions are welcome. Please send e-mail to oz++admin@oz.ipa.go.jp === From ReleaseNote.R2 === OZ++ System, Version 1, Release 2 Release Notes Tsukuba Research Laboratory Of Open Fundamental Software Technology Copyright (c) 1994 Information-Technology Promotion Agency, Japan (IPA) All rights reserved. No guarantee. This technology is a result of the Open Fundamental Software Technology Project of the Information-Technology Promotion Agency, Japan (IPA) This document describes the objectives and the configuration of this software and the features of this release. Details on the copyrights of this software are described in the file 'COPYRIGHT'. 1. What is OZ++ ? In the software industry, people throughout the world have been continually developing software with very similar features; and thus "reinventing the wheel" as it were. Such redundancy has been impeding the improvement of software productivity and reliability. Therefore, the sharing and distribution of not only information but also of software is needed over the network (i.e. Internet). However, this cannot be achieved merely by opening the network infrastructure and making software publicly available. The OZ++ system has therefore been developed to solve this problem of software transfer. Based on the concept of object-orientation, the OZ++ system provides distribution, upgrading, and authorization function of software over the network. The high modularity of object-oriented systems and the conformance checking of interface between objects promotes the re-using of software components. The infrastructure is now being put into place so that components of different software products can be combined in much the same way as hardware products. Because the OZ++ systems enables the distribution of software (i.e. program), software can be brought from all over the world; furthermore, it allows such software to run without complicated installation. Because the versions of software are automatically recognized by the system, old and new versions are available at the same time and the newer version is automatically distributed. In addition, validation functions have been included to confirm the source of the software so that everyone can use it without worrying about viruses. Because of these functions, OZ++ system users are always able to use the newest and most appropriate types of software available. 2.The configurations of the OZ++ system In OZ++, the computation takes place by communicating distributed objects placed over the network. Objects are run on processes called executors. An executor can run an arbitrary number of objects and is managed by process called 'nucleus'. Each station is always managed by a nucleus and a nucleus can manage an arbitrary number of executors. See README.first for how to install and startup the OZ++ system. 3. About this release This release contains the following: *Nucleus *Executor *Launcher *Compiler-front-end *Object-images for demonstration By this release you can you can compile and execute OZ++ program. To compile your OZ++ program, you can use the `compiler-front-end'. How to use of it is described in the file doc/README.compile. To execute your OZ++ program, you can use the `launcher'. How to use of it is described in the file doc/README.launcher. To create new object image, a tool called `newimage' is provided. How to use of this tool is described in the file doc/README.newimage Furthermore, you can see two kind of demonstrations of the OZ++ system: *Application 'Encyclopedia' Showing the method invocations between remote stations. *Application 'Object mail system' Showing where a new version of a program is automatically selected and distributed. A tutorial of these demonstrations is provided in doc/DemoTutorial. The Release schedule for future versions is as follows: *Release 3 Around 6/20. You can compile, manage, and run OZ++ programs distinguishing its versions. The first version of debugger will be included. -- Yoichi Hamazaki , ElectroTechnical Laboratory , Tsukuba, Japan E-mail address: hamazaki@etl.go.jp Telephone: (+81)-298-58-5903 >84 OOA/D Example, Java From: Rick van Rein Newsgroups: comp.object,comp.lang.java Subject: Full OOA&D example now has Java Implementation Date: Wed, 07 Feb 1996 16:53:38 -0600 Organization: ICON Computing, Inc. Hello All, Some time ago we anounced a full example of OOA&D to be available on our web site. We are pleased to inform you that the Java implementation is now also available. The exercise available is a small Telephone Switch system, of which the Java/AWT GUI on a Netscape browser provides an excellent means of getting a feel for the application's workings. This is likely to be of great use in understanding the models built during analysis and design. The example is available on: http://www.iconcomp.com/demo/case-Phone/phoneCase.html and the implementation in Java can be accessed by clicking on 'Implementation'. Have fun with it, Rick van Rein ICON Computing, Inc. http://www.iconcomp.com OO Teaching & Consulting services (512) 258 8437 >85 Envelope Engine OORAD Envelope Engine is a 32-bit, visual, object-oriented, rapid application development tool for MS Windows 95 and NT. It is being provided FREE indefinitely to the Internet community and can be downloaded today from the Envelop www site, http://www.envelop.com. Both Envelop Engine and our responsive on-line technical support have received excellent reviews from many of the more than 3,000 developers who have downloaded it to date. Some user comments include: "Extremely good product, and free too! Thanks a lot." "Amazingly complete product." "I like this product a lot. With VB4.0 at > $400, you are offering an amazing deal and excellent service." "Great Work, blows VB Away, object model is very well done." Download your copy today! Envelop Engine -- Born To Be Free! http://www.envelop.com >86 OODB Driver How many drivers do you put on your client to simultaneously access: Oracle Sybase Informix uniVerse Ingres ISAM DB2 And how many more do you add when you have on the same client: Smalltalk apps Visual Basic apps Visual C++ apps Java applets How would you like to have one database driver that is free that you can download off the Internet? And how would you like that driver to be a Web development kit so that any data you access from your OO apps can be brought up simultaneously as a Web database server? If you are a developer that has any variation of these problems you owe it to yourself to take a look at a product that was just announced today: http://www.vmark.com/news/preleases/presrel21.html This is object-oriented middleware built in C++ that does true object passing between the database and application environments. The guy the engineered it wrote the first CORBA spec for the OMG (although this particular product is engineered for high performance DB access and not CORBA). It's taken six months to convince VMARK to put this on the net for free. It is the real stuff and is used in large production sites worldwide. For example, the Kew Royal Botanical Gardens serves the net using this middleware: http://www.rbgkew.org.uk/ Jeff Sutherland jsutherland@vmark.com http://www.tiac.net/users/jsuth/ Only two simultaneous users. >87 C++ VFn Elim "Eliminating Virtual Function Calls in C++ Programs" (see abstract below). The report is available on the WWW via http://www.cs.ucsb.edu/oocsb/papers.html or http://www.cs.ucsb.edu/TRs/ Urz Hoelzle >88 Use Cases From Ed Berard A 15-page article titled "Be Careful With 'Use Cases'" presents a brief introduction to use cases, and discusses the problems that some software engineers, and some software engineering organizations, have in making effective use of use cases. It does include a bibliography. The article is available in several different formats, and via several different mechanisms: If you have access to the World Wide Web: Surf to http://www.toa.com/ and select the "On-Line Documents" button. The article is available in plain text, html (hypertext markup language), and pdf (Adobe's portable document format). Select the appropriate web page and obtain the article. You can also go directly to the appropriate web page by linking to one of the following: http://www.toa.com/pub/html/use_case.html (for the html version) http://www.toa.com/pub/Acrobat/use_case.pdf (for the pdf version) http://www.toa.com/pub/use_case.txt (for the text only version) If you have ftp access: Via anonymous ftp, connect to ftp://ftp.toa.com/pub APPENDIX F MAGAZINES, JOURNALS AND NEWSLETTERS =============================================== ACM --- OOPSLA - Association For Computing Machinery's yearly conference on Object- Oriented Programming Systems, Languages, and Applications. Addison-Wesley Order Dept. Jacob Way Reading, MA 01867 (800) 447-2226 ACM OO Messenger - Quarterly on Object-Oriented Languages and Systems ACM SigPlan Notices - Special Interest Group on Programming Languages Publications Office ACM, 1515 Broadway NY, NY 10056 (212)869-7440, FAX: (212)869-0481 Additional information can be obtained from ACMpubs@acm.org. American Programmer (Yourdon's Newsletter) ------------------------------------------ Monthly Newsletter on Software Engineering including quality, the CMM, object- oriented technology, and etc. $395/year. Send for complementary copy. American Programmer, Inc. Dept. 13 161 West 86th Street New York, NY 10024-3411 CASE Trends Magazine -------------------- Sorry, still no reference. The Coad Letter --------------- From Peter Coad (pronounced "Code"), of Coad/Yourdon OOA/D fame. Object International, Inc. 3202 W. Anderson Lane, Suite 208-724 Austin, TX 78757-1022 Tel: 800-926-9306, 512-795-0202 Fax: 512-795-0332 The C+@ Quarterly ----------------- On the C+@ language (pronounced "Cat"). Unir Technology, Inc. 184 E. Shuman Blvd. Naperville, IL 60563 DE FACTO - The ami Newsletter ----------------------------- Reports on the progress of ami (application of metrics in industry). ami User Group Centre for Systems and Software Engineering South Bank University 103 Borough Road, London SE1 OAA Phone: +44 71 815 7504 Fax: +44 71 928 1284 Eiffel Outlook -------------- *Eiffel's clear and powerful OO software engineering framework has strongly influenced the object industry. For four years, the independent editors of Eiffel Outlook have delivered news, reviews, and technical information about Eiffel and Eiffel standards. Articles from Eiffel and OO experts provide methods, strategies, and principles that you can apply on any OO project. *Free sample copies available. Eiffel Outlook 1501 West Koenig Lane Austin, Texas 78756 USA TEL: 800 285 5124 or 512 452 9455 FAX: 512 452 1721 email: tower@twr.com The Guerilla Programmer ----------------------- For the practicing professional programmer. New, by Ed Yourdon. Phone: 800-964-8702 or 617-648-9702 Fax: 800-888-1816 or 617-648-1950 HOTT-LIST - FREE NEWSLETTER --------------------------- Free, electronic newsletter features article summaries on new generation computer and communications technologies from over 100 trade magazines and research journals; key U.S. & international daily newspapers, news weeklies, and business magazines; and, over 100 Internet mailing lists & USENET groups. Each monthly issue includes listings of forthcoming & recently published technical books and forthcoming shows & conferences. Bonus: Exclusive interviews with technology pioneers. E-mail subscription requests to: listserv@ucsd.edu (Leave the "Subject" line blank.) In the body of the message, type: SUBSCRIBE HOTT-LIST (do not include first or last names). For a person: hott-list-relay@ucsd.com. Object-Oriented Systems (New) ----------------------------- EMail: journal@chall.mhs.compuserve.com http://www.cs.ucl.ac.uk/coside/oos/index.html (new) Russel Winder USA/Canada: Journals Promotion Dept., Chapman & Hall, 29 West 35th Street, New York, NY 20001-2299, USA. Tel: (212) 244 3336 Fax: (212) 244 3426 EMail: 71201.1651@compuserve.com EC/RoW: Journals Promotions Dept., Chapman & Hall, 2-6 Boundary Row, London SE1 8HN, UK. Tel: +44 (0)71 865 0066 Fax: +44 (0)71 522 9623 SIGS Publications (9/yr) ------------------------ These publications have staff writers from among the most popular OO authors and methodologists. Object Magazine - Manager's Guide to Object Technology $39 Journal of Object-Oriented Programming - For Progs/Devls using OO $59 C++ Report - Get most out of C++ $69 The Smalltalk Report - How-To Advice for Smalltalk Users $79 Report on Object Analysis and Design - Lang Ind/Arch on OOA/D/Mdling $99 SIGS Publications, Inc. P.O. Box 2027 Langhorne, PA 19047 Fax: 215-785-6073 Phone: 215-785-5996 APPENDIX G COMMERCIAL OBJECT-ORIENTED LIBRARIES AND SYSTEMS ============================================================ A new C++ libraries FAQ is posted monthly to comp.lang.c++ and should be on rtfm soon. Contact cpplibs@trmphrst.demon.co.uk. It contains anonymous ftp sites and commercial libraries and may be merged with this FAQ eventually. This is a new APPENDIX and sending in new entries is strongly encouraged by both vendors and customers. FORMAT: tool name *description and methods *operating systems Vendor name, city/state, phone (if known) Great Circle ------------ *First real commercial Automatic Memory Mgmt System for C and C++. *Garbage collection obviates need for free and delete. *Eliminates leaks and premature frees in existing programs and libraries without programmer intervention. *Contains transparent (only linking required) and smart-pointer GC interfaces. *Supports unions, polymorphism, multiple inheritance, arrays, exceptions, real-time operation, multi-threading, and provides metrics. *Provides both conservative and treadmill collection. *OS: DOS, Extended DOS, Windows, NT, Unix, OS/2. *Compilers: Borland, CenterLine, Cfront, g++, MetaWare, Microsoft, SparcWorks. *Price: PC: $300-500, WorkStation: $700-1100, Compiler/OS ind. C++ source avail. Geodesic Systems, Inc. 4745 N. Ravenswood Avenue, Suite 111 Chicago, IL 60640 Tel: 800-360-8388 Fax: 312-728-6096 email: sales@geodesic.com, info@geodesic.com www: http://www.geodesic.com LOOK! ----- *Award-winning C++ Dynamic Visualization System. *Parses (symbol-rich) C++ executables and animates dynamic object diagrams of executing applications, exposing vital object-level interactions. OS: Unix (SunOS;Solaris;AIX); Windows; NT Compilers: Borland;Microsoft; SPARCWorks; CenterLine; Gnu; Lucid (SunOS only) Objective Software Technology tel: +44 (0) 1506 472217 fax: +44 (0) 1506 472219 email: info@ost.co.uk www: http://www.scotnet.co.uk/ost/ Tools.h++, Canvas.h++, DBTools.h++ Heap.h++, Math.h++, Money.h++, View.h++, etc. ---------------------------------------------------------------------------- C++ libraries for containers and more Rogue Wave Software, Inc. 260 SW Madison Ave. P.O Box 2328 Corvallis, OR 97339 USA Ph: 800-487-3217 Fax: 503-757-6650 email: sales@roguewave.com www: http://www.roguewave.com C++ Booch Components -------------------- Rational 1-800-767-3237 ext. 23 Zapp Portable C++ Application Framework --------------------------------------- *multi-platform object-oriented windowing libraries. Inmark Development Corporation 2065 Landings Drive Mountain View, CA 94043 ph: 415-691-9000 fax: 415-691-9099 bbs: 415-691-9990 Zinc Application Framework -------------------------- *multi-platform object-oriented windowing libraries. Zinc Software Incorporated 405 S. 100 East, @nd Floor Pleasant Grove, UT 84062 ph: 801-785-8900 tech supp: 801-785-8998 Fax: 801-785-8996 info@zinc.com, tech@zinc.com