home *** CD-ROM | disk | FTP | other *** search
/ Danny Amor's Online Library / Danny Amor's Online Library - Volume 1.iso / html / faqs / faq / object-faq / part8 < prev    next >
Encoding:
Text File  |  1995-07-25  |  58.2 KB  |  1,516 lines

  1. Subject: Comp.Object FAQ Version 1.0.7 (10-27) Part 8/10
  2. Newsgroups: comp.object,comp.answers,news.answers
  3. From: Bob Hathaway <rjh@geodesic.com>
  4. Date: 29 Oct 1994 11:42:31 GMT
  5.  
  6. Archive-name: object-faq/part8
  7. Last-Modified: 10/27/94
  8. Version: 1.0.7
  9.  
  10. References
  11.  
  12. [Boe93]  Christoph Boeschen.  Christmas - An abstract machine for
  13.          O'small.  Master's thesis, Universit"at des Saarlandes, 
  14.          Fachbereich 14, June 1993.
  15.  
  16. [Hen91b] Andreas V. Hense.  An O'small interpreter based on denotational
  17.          semantics.  Technical Report A 07/91, Universit"at des Saarlandes,
  18.          Fachbereich 14, November 1991.
  19.  
  20. [Hen91c] Andreas V. Hense. Type inference for O'small. Technical Report A
  21.          06/91, Universit"at des Saarlandes, Fachbereich 14, October 1991.
  22.  
  23. [Hen91d] Andreas V. Hense.  Wrapper semantics of an object-oriented pro-
  24.          gramming language with state. In T. Ito and A. R. Meyer, editors,
  25.          Theoretical Aspects of Computer Software, volume 526 of Lecture No-
  26.          tes in Computer Science, pages 548-568. Springer-Verlag, September
  27.          1991.
  28.  
  29. [Hen93]  Andreas V. Hense.  Denotational semantics of an object-oriented
  30.          programming language with explicit wrappers.  Formal Aspects of
  31.          Computing, 5(3), 1993. to appear.
  32.  
  33. [HS92]   Andreas V. Hense and Gert Smolka.  A verification of extensible
  34.          record types.  In Zhongzhi Shi, editor, Proceedings of the IFIP
  35.          TC12/WG12.3 International Workshop on Automated Reasoning,
  36.          pages 137-164, Beijing, P.R. China, 13-16 July 1992. Internatio-
  37.          nal Federation for Information Processing, Elsevier, North-Holland,
  38.          Excerpta Medica.
  39.  
  40. [HS93]   Andreas V. Hense and Gert Smolka.  Principal types for object-
  41.          oriented languages. Technical Report A 02/93, Universit"at des Saar-
  42.          landes, Fachbereich 14, June 1993.
  43.  
  44.  
  45. >9  OBJ3 (OO lang)
  46.  
  47. What: Release 2.0 of OBJ3 (needed for FOOPS and OOZE, concurrent OOP)
  48. Date: Thu, 4 Jun 92 15:07:26 BST
  49. From: Paulo.Borba@prg.oxford.ac.uk
  50.  
  51. OBJ is available from SRI, see the message below; prototypes implementations of
  52. FOOPS (without the concurrent extension) and OOZE are due to the end of the
  53. year, but for both you also need OBJ. 
  54.  
  55. Unfortunately, I don't have any document about the FOOPS extension now, but
  56. probably by the end of the year. I will send it to you as soon as possible.
  57.  
  58.  
  59. What: Release 2.0 of OBJ3 is now available
  60. From: winkler@csl.sri.com (Timothy Winkler)
  61. Date: 6 Apr 92 08:35:40 GMT
  62.  
  63. Release 2.0 of OBJ3 is now available!
  64.  
  65. Improvements in this version include some language extensions and additional 
  66. theorem proving features.  In addition, an effort has been made to speed up
  67. the implementation; rewriting is often twice as fast as in the original
  68. implementation.  We are including the AKCL patches from the University of
  69. Texas at Austin in the distribution, which are necessary for maintaining the
  70. portability of OBJ3 and also improve its efficiency.  In addition, we are
  71. distributing a SPARC version of OBJ3.
  72.  
  73. OBJ3 has pattern matching modulo associativity, commutativity, and identity.
  74. New: the system automatically computes conditions for rules involving matching
  75. modulo identity that are used to prevent obvious non-termination problems.
  76.  
  77. Also new to this version of OBJ3 is a facility for controlled rewriting. This
  78. provides substantially increased support for the use of the system for
  79. equational theorem proving.
  80.  
  81. To receive the OBJ3 distribution tape or an OBJ3 license, send a request
  82. to:
  83.  
  84.            Judith Burgess (OBJ3)
  85.            Computer Science Laboratory
  86.            SRI International
  87.            333 Ravenswood Ave.
  88.            Menlo Park, CA 94025-3493, USA
  89.  
  90.         Telephone: (415) 859-5924
  91.         Fax: (415) 859-2844
  92.             email: obj3dist@csl.sri.com
  93.  
  94. Be sure to give us your postal mailing address.  Then we will send you the
  95. OBJ3 Information Form, and License Agreement, with instructions on how to
  96. fill them out.  (A KCL license form will also be included.)  When you return
  97. them to us, appropriately filled out and signed, we will send you the tape,
  98. somedocumentation, and, in case you are requesting a tape, an invoice for
  99. $150.00 plus any required taxes.
  100.  
  101. If you already have an OBJ3 license, then you don't need to get a new license,
  102. but, if you are requesting a tape from SRI, you are asked to pay the above
  103. distribution fee.
  104.  
  105. It is also possible to get a license for OBJ3 at no charge from SRI and then
  106. get the OBJ3 distribution itself from some third party also having a license.
  107.  
  108. Jose Meseguer, Timothy Winkler, and Patrick Lincoln
  109. Computer Science Laboratory
  110. SRI International
  111. 333 Ravenswood Avenue
  112. Menlo Park, California 94025, USA
  113.  
  114. Joseph Goguen
  115. Programming Research Group
  116. Computing Laboratory
  117. Oxford University
  118. 11 Keble Road
  119. Oxford OX1 3QD, United Kingdom
  120.  
  121.  
  122. >10  OBST (lang, perst, OODB)
  123.  
  124. See entry under Appendix B.
  125.  
  126.  
  127. >11  OOT (OO Turing demo)
  128.  
  129. What: OOT
  130. From: holt@turing.toronto.edu (Ric Holt)
  131. Date: 26 Apr 93 20:14:43 GMT
  132.  
  133. OBJECT ORIENTED TURING: DEMO AVAILABLE VIA FTP
  134.  
  135. OOT (Object Oriented Turing) is a programming language that has been 
  136. developed at the University of Toronto.  An OOT demo, which includes the 
  137. fully implemented language, is available for Sun/4's running X windows.  
  138. See below for instructions to copy the demo to your site.
  139.  
  140. OOT supports the standard OOPL features of information hiding, classes,
  141. polymorphism and generics, as well as the usual features in C and Pascal 
  142. style languages.  It also supports concurrency, exception handling 
  143. and system programming (pointer arithmetic, bit manipulation, etc).  
  144.  
  145. The OOT environment is designed for teaching Computer Science.
  146. It is being used in introductory programming courses, courses
  147. on OO concepts, compiler courses, OS courses, etc.
  148.  
  149. The OOT environment is fully integrated, with multi-window editing, turbo 
  150. speed compiler, integrated color graphics, GUI user interface, implicit MAKE, 
  151. on-line manual, integrated demos, etc.  The system includes an experimental
  152. CASE tool with an interface browser and a visual system browser.
  153.  
  154.  
  155. >12  Sather (simple Eiffel)
  156.  
  157. What: SATHER
  158.  
  159. Sather is under development at the International Computer Science Institute.
  160. Sather has clean and simple syntax, parameterized classes, object-oriented
  161. dispatch, multiple inheritance, strong typing, and garbage collection. The
  162. compiler generates efficient and portable C code which is easily integrated
  163. with existing code.
  164.  
  165. The initial beta test release of the language was in May, 1991. The compiler,
  166. debugger, Emacs development environment, documentation, and library classes
  167. are available by anonymous ftp from "icsi-ftp.berkeley.edu".
  168. "sather@icsi.berkeley.edu" is a mailing list for discussing aspects of Sather
  169. and "sather-admin@icsi.berkeley.edu" should be used for bug reports and
  170. requests to be added or deleted from the mailing list.
  171.  
  172. Sather is based on Eiffel but is more concerned with efficiency and less with
  173. some of the formal and theoretical issues addressed by Eiffel. The language is
  174. much smaller than the current Eiffel, it eliminates over 40 keywords and
  175. simplifies the syntax and inheritance rules. 
  176.  
  177. Like Eiffel, Sather code is compiled into portable C and efficiently links
  178. with existing C code. The Sather compiler is written in Sather and has been
  179. operational for almost a year, though it is still being improved. Preliminary
  180. benchmarks show a performance improvement over Eiffel of between a factor of 4
  181. and 50 on basic dispatching and function calls. On the benchmarks used at
  182. Stanford to test Self (including 8 queens, towers of hanoi, bubblesort, etc),
  183. Sather is even slightly faster than C++.
  184.  
  185. The Sather compiler and libraries are publicly available under a very
  186. unrestrictive license aimed at encouraging contribution to the public library
  187. without precluding the use of Sather for proprietary projects.  The goal is to
  188. establish a repository for efficient, reusable, well written, publicly
  189. available, classes for most of the important algorithms in computer science.
  190. There are currently about 120 classes in the library. The libraries are
  191. growing quickly and will collect together classes from many authors under the
  192. same unrestrictive license. 
  193.  
  194. A GNU emacs development environment for Sather is available. A debugger based
  195. on gdb from the Free Software Foundation is also available. A parallel version
  196. of Sather for shared memory machines called "Psather" is also under
  197. development.
  198.  
  199. From the Sather FAQ, August 16, 1993 (See Section 1.24):
  200.  
  201. Q 1: What is Sather?
  202.      ~~~~~~~~~~~~~~ 
  203. Sather is an object oriented language which aims to be simple,
  204. efficient, interactive, safe, and non-proprietary. It aims to meet the
  205. needs of modern research groups and to foster the development of a
  206. large, freely available, high-quality library of efficient
  207. well-written classes for a wide variety of computational tasks. It was
  208. originally based on Eiffel but now incorporates ideas and approaches
  209. from several languages. One way of placing it in the "space of
  210. languages" is to say that it attempts to be as efficient as C, C++, or
  211. Fortran, as elegant and safe as Eiffel or CLU, and to support
  212. interactive programming and higher-order functions as well as Common
  213. Lisp, Scheme, or Smalltalk.
  214.  
  215. Sather has garbage collection, statically-checked strong typing,
  216. multiple inheritance, separate implementation and type inheritance,
  217. parameterized classes, dynamic dispatch, iteration abstraction,
  218. higher-order routines and iters, exception handling, assertions,
  219. preconditions, postconditions, and class invariants. The development
  220. environment integrates an interpreter, a debugger, and a
  221. compiler. Sather code can be compiled into C code and can efficiently
  222. link with C object files.
  223.  
  224.  
  225. >13  Self
  226.  
  227. From: hoelzle@Xenon.Stanford.EDU (Urs Hoelzle)
  228. Subject: Announcing Self 3.0
  229. Date: 28 Dec 93 22:19:34 GMT
  230.  
  231.                ANNOUNCING Self 3.0 
  232.  
  233. The Self Group at Sun Microsystems Laboratories, Inc., and Stanford
  234. University is pleased to announce Release 3.0 of the experimental
  235. object-oriented programming language Self.
  236.  
  237. This release provides simple installation, and starts up with an
  238. interactive, animated tutorial.
  239.  
  240. Designed for expressive power and malleability, Self combines a pure,
  241. prototype-based object model with uniform access to state and
  242. behavior. Unlike other languages, Self allows objects to inherit state
  243. and to change their patterns of inheritance dynamically. Self's
  244. customizing compiler can generate very efficient code compared to
  245. other dynamically-typed object-oriented languages.
  246.  
  247. The latest release is more mature than the earlier releases: more
  248. Self code has been written, debugging is easier, multiprocessing is more
  249. robust, and more has been added to the experimental graphical user interface
  250. which can now be used to develop code. There is now a mechanism
  251. (still under development) for saving objects in modules, and a
  252. source-level profiler.
  253.  
  254. The Self system is the result of an ongoing research project and
  255. therefore is an experimental system. We believe, however, that the
  256. system is stable enough to be used by a larger community, giving
  257. people outside of the project a chance to explore Self.
  258.  
  259. 2 This Release
  260.  
  261. This release is available free of charge and can be obtained via
  262. anonymous ftp from Self.stanford.edu. Also available for ftp are a
  263. number of published papers about Self.
  264.  
  265. There is a mail group for those interested in random ramblings about Self,
  266. Self-interest@Self.stanford.edu. Send mail to self-request@self.stanford.edu
  267. to be added to it (please do not send such requests to the mailing list
  268. itself!).
  269.  
  270. 2.1 Implementation Status
  271.  
  272. Self currently runs on SPARC-based Sun workstations running SunOS 4.1.x
  273. or Solaris 2.3. The Sun-3 implementation is no longer provided.
  274.  
  275. 2.2 Major Changes
  276.  
  277. Below is a list of changes and enhancements that have been made since
  278. the last release (2.0.1).  Only the major changes are included. 
  279.  
  280. o The graphical browser has been extended to include editing
  281.   capabilities. All programming tasks may now be performed through the
  282.   graphical user interface (the "ui"). Type-ins allow for expression
  283.   evaluation, menus support slot editing, and methods can be entered and
  284.   edited. If you are familiar with a previous version of the Self
  285.   system, Section 14.1 of the manual entitled "How to Use Self 3.0"
  286.   contains a quick introduction to the graphical user interface. The
  287.   impatient might want to read that first.
  288.  
  289. o A mechanism - the transporter - has been added to allow arbitrary
  290.   object graphs to be saved into files as Self source. The system has
  291.   been completely modularized to use the transporter; every item of
  292.   source now resides in a transporter-generated
  293.   module. Transport-generated files have the suffix .sm to distinguish
  294.   them from "handwritten" files (.Self), though this may change as we
  295.   move away from handwritten source.  The transporter is usable but rough,
  296.   we are still working on it.
  297.  
  298. o Every slot or object may now have an annotation describing the
  299.   purpose of the slot. In the current system, annotations are strings
  300.   used to categorize slots. We no longer categorize slots using
  301.   explicit category parent objects. Extra syntax is provided to annotate
  302.   objects and slots.
  303.  
  304. o A new profiler has been added, which can properly account for the
  305.   time spent in different processes and the run-time system, and which
  306.   presents a source-level profile including type information (i.e.,
  307.   methods inherited by different objects are not amalgamated in the
  308.   profile, nor are calls to the same method from different sites). It
  309.   also presents a consistent source-level view, abstracting from the
  310.   various compiler optimizations (such as inlining) which may confuse
  311.   the programmer.
  312.  
  313. o Privacy is not enforced, although the privacy syntax is still
  314.   accepted. The previous scheme was at once too restrictive (in that
  315.   there was no notion of "friend" objects) and too lax (too many object
  316.   had access to a private slot). We hope to include a better scheme in
  317.   the next release.
  318.  
  319. o The "new" compiler has been supplanted by the SIC ("simple inlining
  320.   compiler"), and the standard configuration of the system is to
  321.   compile first with a fast non-optimizing compiler and to 
  322.   recompile later with the SIC. Pauses due to compilation or
  323.   recompilation are much smaller, and applications usually run faster.
  324.  
  325. o Characters are now single-byte strings. There is no separate
  326.   character traits.
  327.  
  328. o Prioritized inheritance has been removed; the programmer must now
  329.   manually resolve conflicts. We found the priority mechanism of
  330.   limited use, and had the potential for obscure errors.
  331.  
  332. 2.4 Bug Reports
  333.  
  334. Bug reports can be sent to self-bugs@self.stanford.edu. Please include
  335. an exact description of the problem and a short Self program
  336. reproducing the bug.
  337.  
  338. 2.5 Documentation
  339.  
  340. This release comes with two manuals:
  341.    How to Use Self 3.0 (SelfUserMan.ps)
  342.    The Self Programmer's Reference Manual (progRef.ps)
  343.  
  344. Happy Holidays!
  345.  
  346. -- The Self Group
  347.  
  348.  
  349. >14  C++ gram, etc.
  350.  
  351. What: ftp site for C++ material
  352. From: schrod@iti.informatik.th-darmstadt.de (Joachim Schrod)
  353. Date: 27 May 92 22:32:35 GMT
  354.  
  355. There were a lot of questions about C++ material in the last time and some 
  356. announcements which involved our ftp server.
  357.         ftp.th-darmstadt.de [130.83.55.75]
  358.         /pub/programming/languages/C++
  359. At the moment we have:
  360.  -- documentation and assorted stuff
  361.         C++ products list as announced by Saumen K Dutta (in a subdirectory!)
  362.         C++ YACC grammar, ET++ tutorial, summaries from the Net,
  363.         sources from James Coplien's book (idioms...), etc.
  364.  -- class libraries
  365.         NIHCL (original, persistent for ObjectStore, with g++ 1.4x changes)
  366.         COOL, OATH, RogueWave vector, ET++,
  367.         RPC package, a package for sockets, awe (thread package)
  368.  -- tools
  369.         class browser (for GNU Emacs), indent++, yacc+, template
  370.         processor of Brad Cox[sp?], DEC garbage collector
  371.  
  372. More stuff is always welcome.  (Btw, Interviews and Motif C++ wrapper
  373. classes are to be found in the /pub/X11 subtree.)
  374.  
  375.  
  376. >15  ConceptBase (OODB, reqkey)
  377.  
  378. What: ConceptBase
  379.  
  380. See APPENDIX B.
  381.  
  382. A four week test-version of ConceptBase V3.1 is available 
  383. on the FTP server ftp.informatik.rwth-aachen.de in the 
  384. directory pub/CB.  For running the ftp version you must ask for a 
  385. key by email.
  386.  
  387.  
  388. >16  C++ OODB
  389. Exodus (Storage Man, perst)
  390.  
  391. From: darrenp@dibbler.cs.monash.edu.au (Daz)
  392. Subject: Re: Class libraries for accessing RDBs ?
  393. Organization: Monash University, Melb., Australia.
  394. Date: Thu, 17 Jun 1993 23:53:22 GMT
  395.  
  396. shekar@gizmo.CS.MsState.Edu (Chandrashekar Ramanathan) writes:
  397.  
  398. >Hello,
  399. >       Are there any shareware/ftp'able C++ class libraries that
  400. >provide Relational Database access? I would also appreciate any
  401. >pointers (ideas/articles/journals) to the various issues that one has
  402. >to consider in designing such library. 
  403. Ok, I'm not sure if it's exactly what you want, but it's a database, it's
  404. fully written in c++ with classes etc, and it's out for beta testing.
  405.  
  406. Check out pippin.cs.monash.edu.au:pub/export/diamond-0.1.2.tar.Z
  407. and please mail darrenp@dibbler.cs.monash.edu.au if you decide to play with
  408. it.
  409.  
  410. Daz.
  411. --
  412. Darren Platt, Department of Computer Science
  413. darrenp@dibbler.cs.monash.edu.au
  414. Monash University, Clayton Melbourne, Victoria, Australia
  415.  
  416.  
  417. >17  Exodus (Storage Man, perst)
  418.  
  419. What: Exodus project software (Storage Manager & GNU E)
  420. From: zwilling@caseus.cs.wisc.edu (Mike Zwilling)
  421. Date: 16 Jul 92 04:53:19 GMT
  422.  
  423. In the past there have been discussions in comp.object and comp.databases
  424. about persistent storage for object-oriented databases and programming
  425. languages.  As you may know, the EXODUS Database Toolkit project at the
  426. University of Wisconsin has researched these issues and others for a number of
  427. years.  The purpose of this note is to inform you that the software from the
  428. EXODUS project is freely available via anonymous ftp.  The EXODUS software
  429. includes the EXODUS Storage Manager and the compiler for the E persistent
  430. programming language.  Also included is documentation, and a suite of test
  431. programs for both components.  This note briefly describes the software and
  432. explains how to obtain it.  We currently support DECstation 3100s/5000s and
  433. SPARC based workstations.  Others have ported the code to HP700s and IBM
  434. RS6000s.
  435.  
  436. The EXODUS Storage Manager is a client-server object storage system which
  437. provides "storage objects" for storing data, versions of objects, "files"
  438. for grouping related storage objects, and indexes for supporting efficient
  439. object access.  A storage object is an uninterpreted container of bytes which
  440. can range in size from a few bytes to hundreds of megabytes.  The Storage
  441. Manager provides routines to read, overwrite, and efficiently grow and shrink
  442. objects.  In addition, the Storage Manager provides transactions, lock-based
  443. concurrency control, and log-based recovery.
  444.  
  445. GNU E is a persistent, object-oriented programming language developed as part
  446. of the Exodus project.  GNU E extends C++ with the notion of persistent data,
  447. program level data objects that can be transparently used across multiple
  448. executions of a program, or multiple programs, without explicit input and
  449. output operations.
  450.  
  451. GNU E's form of persistence is based on extensions to the C++ type system to 
  452. distinguish potentially persistent data objects from objects that are always
  453. memory resident.  An object is made persistent either by its declaration (via
  454. a new "persistent" storage class qualifier) or by its method of allocation
  455. (via persistent dynamic allocation using a special overloading of the new
  456. operator).  The underlying object storage system is the Exodus storage manager,
  457. which provides concurrency control and recovery in addition to storage for
  458. persistent data.
  459.  
  460. The current release of GNU E is based on gcc/g++ version 2.2.2, and is upward 
  461. compatible with C++ as implemented by that compiler.
  462.  
  463. A bibliography of EXODUS related papers can be obtained from the ftp site
  464. described below.
  465.  
  466. To obtain the software, simply ftp to ftp.cs.wisc.edu (128.105.8.18), login
  467. as anonymous with your email address as a password, "cd" to the "exodus"
  468. directory, and follow the directions (directions will be given as you "cd").
  469. See the README for the latest information about the software and an indication
  470. of our future plans.  If you decide to use the software, please contact us at
  471. exodus@cs.wisc.edu so that we can notify you of changes.
  472.  
  473.  
  474. >18  GRAS
  475.  
  476. GRAS - A Graph-Oriented Database System for SE Applications
  477. Copyright (C) 1987-1992  Lehrstuhl Informatik III, RWTH Aachen
  478. This library is free software under the terms of the GNU Library 
  479. General Public License.
  480.  
  481. Lehrstuhl f"ur Informatik III --> GRAS
  482. University of Technology Aachen (RWTH Aachen),
  483. Ahornstr. 55,
  484. D-5100 Aachen
  485. Contact : Dr. Andy Sch"urr (or Richard Breuer),
  486. andy@rwthi3.informatik.rwth-aachen.de
  487. ricki@rwthi3.informatik.rwth-aachen.de (for technical support)
  488.  
  489. The system GRAS with interfaces for the programming languages Modula-2
  490. and C is available as public domain software for Sun3/Sun4 workstations
  491. (the GRAS system itself is implemented in Modula-2 and consists of many
  492. layers which might be reusable for the implementation of other systems): 
  493.  
  494.   Via anonymous ftp from tupac-amaru.informatik.rwth-aachen.de
  495.   (137.226.112.31) in the directory /pub/unix/GRAS522_3
  496.  
  497.   There are several files contain documentation, sources, binaries,
  498.   and libraries. All binaries are for Sun/4 machines. Sun/3 binaries
  499.   are shipped only if explicitly requested.
  500.  
  501. [See APPENDIX B]
  502.  
  503.  
  504. >19  MOOD   (OODB, lim arch)
  505.  
  506. What: MOOD/P3 Ver.2.00 OODBS {Miniature,Materials}OODBS.
  507. From: ono@mood.mech.tohoku.ac.jp (Noboru Ono)
  508. Date: 18 May 92 10:28:42 GMT
  509.  
  510. The following program/sample database package is available through anonymous
  511. FTP at mood.mech.tohoku.ac.jp (130.34.88.61). Sorry it is not the sources and
  512. operates only in NEC-PC9801/MS-DOS environment.  Sorry again documents are all
  513. in Japanese. We will tell you later when English documents has become ready.
  514.  
  515.       MOOD/P3 Ver.2.00
  516.       Material's Object-Oriented Database, Prototype 3
  517.  
  518. This program, as you may guess,
  519.  
  520.       1) is an Object-Oriented database system program,
  521.       2) operates on PC-9801 series personal computer, and
  522.       3) is accompanied by sample material database schema.
  523.  
  524. Although this program has been developed and being used in the experiments
  525. on material data processing in which we are now involved, it is a general
  526. purpose OODBS. 
  527.  
  528. Noboru Ono
  529. Dept. of Machine Intelligence and Systems Engineering,
  530. Faculty of Engineering, Tohoku University.
  531. Tel:++22-222-1800
  532. Fax:++22-268-3688
  533. E-mail:ono@mood.mech.tohoku.ac.jp
  534.  
  535.  
  536. >20  Ode    (C++ OODB)
  537.  
  538. Note: Ode version 3.0 is now available.
  539.  
  540. What: Ode Release 1.1
  541. From: nhg@research.att.com
  542.  
  543. Ode is an object-oriented database based on the C++ database model. The
  544. primary interface to Ode is the database programming language O++ which is
  545. based on C++.
  546.  
  547. Ode 1.1 is now available to Universities.  This is a beta release.  The
  548. current version of Ode runs on Sun (Sparc) workstations and users must have
  549. C++ release 2.0 or a later release.  If you are interested in using Ode and
  550. giving us feedback on your experience with Ode, please send me mail with the
  551. appropriate information.
  552.  
  553. Narain Gehani
  554. AT&T Bell Labs 3D-414
  555. 600 Mountain Ave
  556. Murray Hill, NJ 07974
  557.  
  558.  
  559. From: thssamj@iitmax.iit.edu (Aditya M. Jani)
  560. Subject: *Announcement* UserGroup for ODE (OODBMS from AT&T)
  561. Organization: Illinois Institute of Technology, Chicago
  562. Date: Fri, 25 Jun 93 17:27:53 GMT
  563.  
  564.                     Ode Object database v2.0
  565.                     ------------------------
  566. Ode 2.0 is available via ftp from research.att.com.
  567. Here is a sample session showing how to retrieve Ode 2.0
  568. which is kept in the directory
  569.  
  570.     dist/ode2.0
  571.  
  572. as a compressed tar file named
  573.  
  574. 2.0.oppbin.tar.Z
  575.  
  576. First create the directory on the local machine
  577. where ode is to be installed, e.g.,
  578.  
  579. mkdir ode
  580. cd ode
  581.  
  582. Retrieve the compressed tar Ode file using ftp into
  583. as illustrated below.
  584. Then uncompress it
  585.  
  586. uncompress 2.0.oppbin.tar.Z
  587.  
  588. and unbundle it
  589.  
  590. tar xvf 2.0.oppbin.tar
  591.  
  592. Next see file README, fix install file, and run install
  593.  
  594. ./install
  595.  
  596.  
  597.  
  598.  
  599. Sample ftp session
  600. --------------
  601. $ ftp research.att.com
  602. Connected to tcp!192.20.225.2!1390.
  603. 220 inet FTP server (Version 4.271 Fri Apr 9 10:11:04 EDT 1993) ready.
  604. Name (research.att.com:smith): anonymous
  605. 331 Guest login ok, send ident as password.
  606. Password: smith@hostname
  607. 230 Guest login ok, access restrictions apply.
  608. Remote system type is UNIX.
  609. Using binary mode to transfer files.
  610. ftp> cd dist
  611. 250 CWD command successful.
  612. ftp> cd ode2.0
  613. 250 CWD command successful.
  614. ftp> get 2.0.oppbin.tar.Z
  615. 200 PORT command successful.
  616. 150 Opening BINARY mode data connection for 2.0.oppbin.tar.Z (2762525
  617. bytes).
  618. 226 Transfer complete.
  619. 2762525 bytes received in 1.6e+02 seconds (16 Kbytes/s)
  620. ftp> quit 
  621. 221 Goodbye.
  622.  
  623. -------------------------------------------------------------------------------
  624.  
  625.                               Available Now!
  626.  
  627.  
  628.  
  629.  
  630.                                  Ode 2.0
  631.                        An Object-Oriented Database
  632.  
  633.        C++ Compatible, Fast Queries, Complex Application Modeling,
  634.        Multimedia Support, and more
  635.  
  636.  
  637.  
  638.  
  639.        Ode 2.0 is now available to Universities.  Users who currently
  640.        have Ode 1.1 will be automatically sent a tape with Ode 2.0.
  641.        There is no charge for Ode.  However, AT&T requires the signing
  642.        of a non-disclosure agreement.
  643.  
  644.  
  645.  
  646.        Details
  647.        -------
  648.  
  649.        ODE OBJECT-ORIENTED DATABASE
  650.  
  651.        The Ode object database is based on the C++ object paradigm.
  652.        Ode  uses  one  integrated data model (C++ classes) for both
  653.        database and general purpose manipulation.  The Ode database
  654.        is   defined,   queried  and  manipulated  in  the  database
  655.        programming language O++, which provides simple and  elegant
  656.        facilities for manipulating the database.
  657.  
  658.        O++  is  an  upward-compatible  extension  of  C++.   A  few
  659.        facilities have been added to C++ to make it into a database
  660.        programming language.  C++ programmers can learn  O++  in  a
  661.        very short time.
  662.  
  663.        O++ programs can be compiled with C++ programs thus allowing
  664.        the use of existing C++ code.
  665.  
  666.        THE ODE MODEL OF PERSISTENCE
  667.  
  668.        Ode offers a simple and elegant notion of persistence  which
  669.        is   modeled  on  the  ``heap''.   Specifically,  memory  is
  670.        partitioned into volatile and persistent.  Volatile  objects
  671.        are   allocated   in   volatile   memory  (stack  or  heap).
  672.        Persistent objects are allocated  in  persistent  store  and
  673.        they  continue  to exist after the program that created them
  674.        has terminated.
  675.  
  676.        An Ode database is a collection of persistent objects.  Each
  677.        object  is  identified  by  a  unique  object  id  (i.e.,  a
  678.        persistent pointer,  or  to  be  precise,  a  pointer  to  a
  679.        persistent object).
  680.  
  681.        The database programming language  O++  provides  facilities
  682.        for   creating  and  manipulating  the  Ode  database.   For
  683.        example,   O++   provides    facilities    for    specifying
  684.        transactions,  creating and manipulating persistent objects,
  685.        querying the database, creating and manipulating versions.
  686.  
  687.        WHAT IS AN OBJECT-ORIENTED DATABASE
  688.  
  689.        Some  important  characteristics   of   an   object-oriented
  690.        database are:
  691.  
  692.           + data is stored as objects,
  693.  
  694.           + data  can  be  interpreted  (using  methods)  only   as
  695.             specified by the class designer,
  696.  
  697.           + relationship  between  similar  objects  is   preserved
  698.             (inheritance), and
  699.  
  700.           + references between objects are preserved.
  701.  
  702.        ADVANTAGES OF OBJECT-ORIENTED DATABASES
  703.  
  704.           + Speed: Queries can  be  faster  because  joins  (as  in
  705.             relational  databases)  are  often not needed.  This is
  706.             because an object can be retrieved directly  without  a
  707.             search, by following object ids.
  708.  
  709.           + No impedance mismatch: The same data model is  used  by
  710.             both   the   database   programming  language  and  the
  711.             database;  it  is  not  necessary  to  do  any   format
  712.             conversions  when  reading  the data from disk and when
  713.             storing the data on disk.
  714.  
  715.           + Programmers  need  to  learn   only   one   programming
  716.             language:  The  same  programming  language is used for
  717.             both data definition and data manipulation.
  718.  
  719.           + Complex applications: The full power  of  the  database
  720.             programming language's type system can be used to model
  721.             the data structures of a complex  application  and  the
  722.             relationship between the different data items.
  723.  
  724.           + Multimedia  applications:  The   semantic   information
  725.             stored  in  the  database  (class  methods) facilitates
  726.             correct  interpretation  of  the  data.   This  reduces
  727.             application complexity since applications do no have to
  728.             be responsible for the correct interpretation of data.
  729.  
  730.           + Versions: Object-oriented databases  typically  provide
  731.             better support for versioning.  An object can viewed as
  732.             the set of all its versions.  Also, object versions can
  733.             be treated as full fledged objects.
  734.  
  735.           + Triggers  and  constraints:  Object-oriented  databases
  736.             provide systematic support for triggers and constraints
  737.             which are the basis of active databases.
  738.  
  739.        Finally, most, if not all, object-oriented applications that
  740.        have  database  needs  will  benefit  from  using an object-
  741.        oriented database.  Specifically, C++ applications that have
  742.        database needs will benefit from using Ode.
  743.  
  744.        FEATURES OF ODE
  745.  
  746.          1.  Ode is C++ based and compatible with C++.
  747.  
  748.          2.  The  Ode  object   database   provides   four   object
  749.              compatible  mechanisms  for  manipulating and querying
  750.              the database: O++, OdeView, OdeFS, and CQL++:
  751.  
  752.                 + O++ is a database programming language  based  on
  753.                   C++.   O++  is  upward compatible with C++ and it
  754.                   makes minimal  changes  to  C++.   O++  offers  a
  755.                   simple and elegant notion of persistence which is
  756.                   modeled on the ``heap''.  O++ provides facilities
  757.                   for querying the database, and a variant of other
  758.                   facilities.
  759.  
  760.                 + OdeView is a graphical X-based interface  to  the
  761.                   Ode database.
  762.  
  763.                 + OdeFS is a  file  system  interface  to  the  Ode
  764.                   object  database.   OdeFS  allows  objects  to be
  765.                   treated and  manipulated  like  files.   Standard
  766.                   commands  such as rm, cp and mv and tools such as
  767.                   vi and grep can be used to manipulate objects  in
  768.                   the database.
  769.  
  770.                 + CQL++ is a C++ variant  of  SQL  for  easing  the
  771.                   transition  from  relational databases to object-
  772.                   oriented databases such as Ode.
  773.  
  774.              Currently, only O++ is shipped with Ode 2.0.  A  beta-
  775.              test version of OdeFS is available upon request.
  776.  
  777.          3.  Ode supports large objects  (these  are  critical  for
  778.              multi-media    applications).    Ode   provides   both
  779.              transparent access for large objects and a  file  like
  780.              interface  for  large objects.  The latter can be used
  781.              to efficiently access and  update  parts  of  a  large
  782.              object.
  783.  
  784.          4.  Users can create versions of objects.  Ode will  track
  785.              the   relationship   between   versions  and  provides
  786.              facilities for accessing the different versions.
  787.  
  788.          5.  Transactions  can  be  specified  as  read-only;  such
  789.              transactions  are  faster  because they are not logged
  790.              and they are less likely to deadlock.
  791.  
  792.          6.  Users   can   run    ``hypothetical''    transactions.
  793.              Hypothetical  transaction  allow users to pose ``what-
  794.              if'' scenarios (as often  done  with  spread  sheets).
  795.              User  can  change  data  and  see  the impact of these
  796.              changes without changing the database.
  797.  
  798.          7.  EOS, the storage engine of Ode, is based on a  client-
  799.              server architecture.  Some features of EOS:
  800.  
  801.                a.  Efficient  and  transparent  handling  of  large
  802.                    objects.  A file-like interface is also provided
  803.                    for very large objects.
  804.  
  805.                b.  Concurrency is based on  multi-granularity  two-
  806.                    version   two-phase   locking;  it  allows  many
  807.                    readers and one writer to access the  same  item
  808.                    simultaneously.
  809.  
  810.                c.  Log  records  contain  only  after   images   of
  811.                    updates,  thus making logs small.  Recovery from
  812.                    system failures requires one scan over  the  log
  813.                    resulting in fast restarts.
  814.  
  815.        USE MODES
  816.  
  817.        Ode supports two modes of use:
  818.  
  819.          1.  Client-server (allows multiple  users  to  access  the
  820.              database concurrently).
  821.  
  822.          2.  Single user (improved performance  compared  to  using
  823.              the client-server mode).
  824.  
  825.        USERS
  826.  
  827.        Ode 2.0 is currently being used as the multi-media  database
  828.        engine  for  AT&T's  Interactive TV project.  Ode 1.1 (older
  829.        version of Ode with  limited  capabilities)  has  also  been
  830.        distributed to 30+ sites within AT&T and 135+ universities.
  831.  
  832.  
  833. >21  POSTGRES (Ext. Rel. DBMS)
  834.  
  835. What: Version 4.0 of the POSTGRES DBMS
  836. From: mer@gaia.CS.Berkeley.EDU (Jeff Meredith)
  837. Date: 16 Jul 92 04:53:17 GMT
  838.  
  839. Version 4.0 of the POSTGRES DBMS is now available for distribution. Version 4.0 
  840. provides significant advances in functionality over 3.1.  General improvements
  841. in the code and some key multi-user bug fixes have resulted in a much more
  842. reliable system than we have ever previously released.
  843.  
  844. Major new features include:
  845.  o  Complete support for language (POSTQUEL) functions.
  846.  o  Handling of nested dot expressions.
  847.  o  Optimization of predicates with expensive functions.
  848.  o  Binary portals
  849.  o  Initial support of sets
  850.  o  Indices on system catalogs.
  851.  
  852. Postgres runs on Sparc I, Sparc II, Sun 4 running SunOs, and DECstations
  853. running ULTRIX >= 4.0, as well as Sequent Symmetry machines.  Postgres
  854. consists of about 250,000 lines of C.
  855.  
  856. If you would like to get Postgres 4.0, you can get it in one of two ways:
  857.  
  858. (1)  Anonymous FTP from postgres.berkeley.edu
  859.  
  860. cd pub
  861. get postgres-setup.me
  862. binary
  863. get postgres-v4r0.tar.Z
  864. quit 
  865.  
  866. Or, if you do not have net.access, you can order a Postgres distribution
  867. tape by sending a check payable to the Regents of the University of California
  868. for $150.00 to:
  869.          Postgres Project
  870.          571 Evans Hall
  871.          University of California
  872.          Berkeley, CA 94720.
  873.  
  874. Indicate in your accompanying letter whether you want the system on a 9-track
  875. tape at 1600 BPI, at 6250 BPI, on a cartridge tape for SUN shoeboxes (QIC 24 
  876. format), or on a TK50 DEC cartridge tape.
  877.  
  878.  
  879. >22  Sniff (C++ devel environ)
  880.  
  881. [See also APPENDIX C, SNiFF+, for the commercial version]
  882.  
  883. What: SNIFF (Sniff 1.1b (C++ Development Environment))
  884. From: shite@sinkhole.unf.edu (Stephen Hite)
  885. Date: 23 Aug 92 18:14:00 GMT
  886.  
  887. Sniff 1.1b is available from iamsun.unibe.ch in the C++ hierarchy.  It's a
  888. development environment for C++ (minus the C++ compiler or interpreter).
  889. It's freely available and you're gonna need OpenWindows 3.0 if you want
  890. to play with it immediately.  I just downloaded it and haven't had a 
  891. chance to look into whether the XView 3.0 package will be able to handle
  892. everything Sniff requires of the OpenLook part.
  893.  
  894. And:
  895.  
  896. From: sniff@takeFive.co.at (Mr. Sniff)
  897. Newsgroups: comp.lang.c++,comp.unix,comp.unix.osf.osf1,comp.unix.solaris,comp.object
  898. Subject: SNiFF+ takeFive Starts Free University Distribution of Commercial C/C++ Programming Environment
  899. Date: 22 Sep 1993 15:51:26 GMT
  900. Organization: EUnet EDV-Dienstleistungsgesellschaft m.b.H
  901. Keywords: programming environments, browsing, C++
  902.  
  903. SNiFF+: takeFive Starts Free University Distribution of Commercial C/C++
  904. Programming Environment
  905.  
  906. 1. Introduction
  907.  ===============
  908. Since the beginning of 1993 takeFive has taken over development and support 
  909. for SNiFF+, a leading edge C/C++ programming environment.  With SNiFF+ 
  910. rapidly gaining commercial acceptance takeFive has decided to offer the 
  911. product free to educational establishments. There are several reasons for 
  912. this step.
  913.  
  914. ...
  915.  
  916. 6. How to Obtain SNiFF+
  917.  =======================
  918. 6.1 FTP
  919.  -------
  920. Sniff can be downloaded from anonymous FTP sites in USA and Europe.
  921. You can get all details from info@takeFive.co.at.
  922.  
  923. And:
  924.  
  925. From: hueni@iam.unibe.ch (Hermann Hueni)
  926. Subject: Re: Browsers
  927. Date: Fri, 11 Jun 1993 12:37:28 GMT
  928.  
  929. Sniff is a commercial product.
  930. Send mail to info@takeFive.co.at
  931. AN early version is available as a SUN SPARC binary only from
  932. siam.unibe.ch:C++/Sniff1.6/     (THIS site is in EUROPE)
  933.  
  934.  
  935. >23  C++ tags
  936. Eiffel archive,24
  937. short tool, 24
  938.  
  939. What: ctags/etags for C and C++
  940. From: kendall@centerline.com (Sam Kendall)
  941. Date: 10 Jun 92 09:31:27 GMT
  942.  
  943. A lot of people have requested this software!  You can now get Tags for
  944. C/C++ version 1.0 via anonymous ftp at:
  945.  
  946.         ftp.centerline.com:/pub/tags-1.0.tar.Z
  947.  
  948. ftp.centerline.com is 140.239.2.29.  Anonymous ftp means login as "ftp" and
  949. give your email address as the password.
  950.  
  951. If you don't have ftp access to the internet, you may want to wait for this
  952. stuff to come out in comp.sources.unix.  Or, if you plan to use it right away,
  953. send me a letter that says "I can't use ftp; please send by email" and I will
  954. do so.
  955.  
  956.  
  957. >24  short tool
  958.  
  959. From: neil@aldur.demon.co.uk (Neil Wilson)
  960. Subject: New version of 'short' available
  961. Date: Sat, 7 Aug 1993 09:38:25 +0000
  962.  
  963. A new beta release (1.2) of 'short' is available from the Stuttgart
  964. Eiffel archive (ftp.informatik.uni-stuttgart.de) in directory
  965. /pub/eiffel/eiffel-3/sig
  966.  
  967. Command line processing is now included in the short system. Short can
  968. now cope with multiple input files, the standard input and deal with
  969. most file errors.
  970.  
  971. Short now depends on the argument cluster which is available from
  972. the same archive and directory.
  973.  
  974. Short supports the following options:
  975.  
  976.         -V, +version, -h, +help
  977.                 Displays the 'short' version information and gives the
  978.                 usage help message for the command.
  979.  
  980.         -e, +abstract, +eiffel
  981.                 Produces a fully deferred version of the input class(es)
  982.                 which will compile just like any other class (hopefully :-)
  983.  
  984.         -l <class_name>, +view <class_name>
  985.                 Produces the output from the point of view of the class
  986.                 <class_name> - the "short form for <class_name>".
  987.                 Special handling for ANY and NONE of course. By default
  988.                 short outputs the "short form for ANY".
  989.  
  990.         -f, +full
  991.                 Produces the short form including all the feature
  992.                 blocks.  (Implemented as the "short form for NONE".)
  993.  
  994.         -p, +parents
  995.                 Retains the inheritance clause in the output. The default is
  996.                 to drop it.
  997.  
  998.         -b <number>, +blank <number>
  999.                 Indent levels by <number> characters. 
  1000.  
  1001.         -c <number>, +column <number>
  1002.                 Width of the output is <number> characters. Should be
  1003.                 greater than 20.
  1004.  
  1005. Obsolete features are not retained. Obsolete classes retain no features.
  1006.  
  1007. The output of the tool now conforms to the layout rules in Appendix A of
  1008. ETL and should look like the 'short' examples in the book. As much as is
  1009. possible the output and command line options conform to ISE's 2.3
  1010. version of 'short'.
  1011.  
  1012. This release of short has been tested on all the v1.21 Eiffel/S
  1013. libraries, itself and the argument clusters, plus any other class
  1014. fragments I had lying around at the time.
  1015.  
  1016. My biggest debt is of course to David Morgan. This version is only
  1017. really a tiny modification of his work. His ELEXER Eiffel 3 parser
  1018. remains the core of the tool.  I though am responsible for any remaining
  1019. deficiencies or problems with this release.
  1020.  
  1021. Problems, suggestions, comments, criticisms to me please. All gratefully
  1022. received - I can't improve my Eiffel if somebody doesn't tell me where I
  1023. blew it.
  1024.  
  1025.  
  1026. >25  COOL(C++, Cfront 2.1, from GE)
  1027.  
  1028. COOL is a C++ class library developed at Texas Instruments.
  1029.  
  1030. Features are:
  1031. 1. Rich set of containers like Vector, List, Hash_Table, Matrix, etc...
  1032. 2. Hierarchy is shallow with no common base class, rather than deep like NIHCL.
  1033. 3. Functionality close to Common Lisp data structures, like GNU libg++.
  1034. 4. Template syntax very close to Cfront3.x, g++2.x.
  1035. 5. Free, with good documentation, and extensive test cases.
  1036.  
  1037. Light version of COOL from General Electric:
  1038. 1. Hairy macros, run-time type, exceptions removed for mainstream C++
  1039.    compatibility
  1040. 2. Free of memory leaks and bound violations. Leaks and bounds are checked
  1041.    with Purify.
  1042. 3. Has memory management and efficient copy in expressions like:
  1043.   Set c = a+b+c;    
  1044.   Pointers are shared with Handle and Reference count. Deep copy in
  1045.   expressions are replaced by shallow copy.
  1046. 4. Compatible with Cfront2.1, and is being converted to Cfront3.0. You can
  1047.   build both static and shared library on SunOS 4.1.x
  1048.  
  1049. 1. original version from Texas Instruments:
  1050.    at csc.ti.com, get pub/COOL.tar.Z
  1051. 2. Cfront2.1 version modified by General Electric:
  1052.    at cs.utexas.edu, get pub/COOL/GE_COOL2.1.tar.Z
  1053.  
  1054. I am working on Cfront3.0 version of COOL, using the Beta 3.0 from Sun. I am
  1055. experiencing problems with instantiation and specialization of templates.  So
  1056. Cfront3.0 version of COOL won't be available until Sun's Cfront 3.0 is
  1057. released with bugs fixed.
  1058.  
  1059. Van-Duc Nguyen
  1060. General Electric 
  1061. Research & Development Ctr
  1062. 1 River Road, Room K1-5C39.
  1063. Schenectady, NY 12301.
  1064. Phone: (518) 387-5659
  1065. Fax:   (518) 387-6845
  1066. nguyen@crd.ge.com
  1067.  
  1068.  
  1069. >26  idl.SunOS4.x, idl.Solaris2.x
  1070.  
  1071. Subject: Binaries for OMG IDL CFE placed on omg.org
  1072. Date: 11 Jun 93 00:13:11 GMT
  1073. Reply-To: jyl@toss.eng.sun.com
  1074.  
  1075.  
  1076. SunSoft has made available statically linked binaries for the OMG IDL CFE,
  1077. for both Solaris 1.x and Solaris 2.x. Because they are statically linked,
  1078. these binaries can be used on systems which do not have the SparcWorks (TM)
  1079. compilers installed.
  1080.  
  1081. It is expected that people who only want an IDL parser will prefer to
  1082. obtain these binaries instead of compiling the program on their host.
  1083. People who want to build a complete compiler, by programming their own
  1084. back-end, will continue to obtain the sources which are also provided at
  1085. the same location.
  1086.  
  1087. The binaries can be obtained by anonymous FTP to omg.org. They are
  1088. installed in the directory pub/OMG_IDL_CFE_1.2/bin, in idl.SunOS4.x and
  1089. idl.Solaris2.x. Uuencoded versions are also available, in the same
  1090. directory.
  1091.  
  1092. Please send email to idl-cfe@sun.com if you obtain these files.
  1093.  
  1094. The attached copyright applies to the provided binaries and to the source
  1095. files provided on the omg.org file server.
  1096.  
  1097.  
  1098. Copyright:
  1099. Copyright 1992 Sun Microsystems, Inc.  Printed in the United States of
  1100. America.  All Rights Reserved.
  1101.  
  1102. This product is protected by copyright and distributed under the following
  1103. license restricting its use.
  1104.  
  1105. The Interface Definition Language Compiler Front End (CFE) is made
  1106. available for your use provided that you include this license and copyright
  1107. notice on all media and documentation and the software program in which
  1108. this product is incorporated in whole or part. You may copy and extend
  1109. functionality (but may not remove functionality) of the Interface
  1110. Definition Language CFE without charge, but you are not authorized to
  1111. license or distribute it to anyone else except as part of a product or
  1112. program developed by you or with the express written consent of Sun
  1113. Microsystems, Inc. ("Sun").
  1114.  
  1115. The names of Sun Microsystems, Inc. and any of its subsidiaries or
  1116. affiliates may not be used in advertising or publicity pertaining to
  1117. distribution of Interface Definition Language CFE as permitted herein.
  1118.  
  1119. This license is effective until terminated by Sun for failure to comply
  1120. with this license.  Upon termination, you shall destroy or return all code
  1121. and documentation for the Interface Definition Language CFE.
  1122.  
  1123. [...] etc. on copyright stuff [...]
  1124.  
  1125. SunSoft, Inc.  
  1126. 2550 Garcia Avenue 
  1127. Mountain View, California  94043
  1128.  
  1129.  
  1130. >27  Browser for OO info
  1131.  
  1132. From: oscar@cui.unige.ch (Oscar Nierstrasz)
  1133. Subject: CUI & Object Oriented Information Sources on the World Wide Web
  1134. Reply-To: oscar@cui.unige.ch
  1135. Organization: University of Geneva, Switzerland
  1136. Date: Fri, 25 Jun 1993 12:18:38 GMT
  1137.  
  1138. An HTTP server has been installed at the Centre Universitaire d'Informatique
  1139. of the University of Geneva.  Information about various research groups at
  1140. the CUI is available, as well as a number of other experimental services.
  1141.  
  1142. The Object Systems group at CUI is providing a number of pointers to
  1143. Object-Oriented Information Sources available on the World Wide Web.
  1144. The page containing these sources is accessible from the CUI home page.
  1145. The URL is: http://cui_www.unige.ch/home.html
  1146.  
  1147. You must have a WWW browser to access the information.  If you do not have
  1148. a browser, you should obtain, for example, the xmosaic browser from:
  1149. ftp.ncsa.uiuc.edu:Web/xmosaic or info.cern.ch:pub/www.
  1150.  
  1151. The material available from CUI is in an early stage of development.
  1152. Suggestions for additional OO references to include (or whatever) are welcome!
  1153.  
  1154. Oscar Nierstrasz
  1155.  
  1156. ----------------------------------------------------------------------------
  1157.         Dr. O.M. Nierstrasz, Centre Universitaire d'Informatique
  1158. University of Geneva, 24, rue General-Dufour, CH-1211 Geneva 4, Switzerland
  1159.         Tel: +41 22 705.7664    Secr: 705.7770    Fax: 320.2927
  1160.             E-mail: oscar@cui.unige.ch  Home: 733.9568
  1161. ----------------------------------------------------------------------------
  1162.  
  1163.  
  1164. >28  Apertos(Meta-Obj Distr OS, research)
  1165.  
  1166. The Apertos (formerly MUSE) project at Sony Research
  1167. is a meta-object based distributed OS for turning portable wireless
  1168. hand-held computers into fully-connected Dynabook-like
  1169. terminals.  It's very very wizzy.  The papers are on: 
  1170.         scslwide.sony.co.jp:pub/CSL-Papers
  1171.  
  1172. The source is available for research; I think you have to
  1173. sign something first.
  1174.  
  1175.  
  1176. >29  Actors Paper (UIUC)
  1177.  
  1178. From: agha@cs.uiuc.edu (Gul Agha)
  1179. Subject: Actor Theory Paper available
  1180. Organization: University of Illinois, Dept. of Comp. Sci., Urbana, IL
  1181. Date: Wed, 4 Aug 1993 15:41:02 GMT
  1182.  
  1183. A new paper providing a definitive and detailed development of the
  1184. semantics of actor systems is available via anonymous ftp.  Comments
  1185. are especially welcome.  
  1186.  
  1187.  
  1188. Title:          A Foundation for Actor Computation
  1189.  
  1190. Authors:        Gul Agha, Univerity of Illinois at Urbana-Champaign
  1191.                 Ian Mason, Stanford University
  1192.                 Scott Smith, John Hopkins University
  1193.                 Carolyn Talcott, Stanford University
  1194.  
  1195. Abstract:
  1196.  
  1197.         We present an actor language which is
  1198.         an extension of a simple functional language, and provide a precise
  1199.         operational semantics for this extension.  Actor configurations are
  1200.         open distributed systems, meaning we explicitly take into account the
  1201.         interface with external components in the specification of an actor
  1202.         system.  We define and study various notions of equivalence on actor
  1203.         expressions and configurations.
  1204.  
  1205. to ftp the compressed postscript file:
  1206.         ftp sail.stanford.edu  (or 36.28.0.130)
  1207.         login: anonymous
  1208.         send ident as password.
  1209.         cd pub/MT
  1210. the file is called:  
  1211.         93actors.ps.Z
  1212.  
  1213. Note: the paper is 76pp long.  It subsumes work reported in our paper
  1214. in CONCUR '92.  
  1215.  
  1216. (A number of other recent papers on actor languages and their
  1217. implementation may be obtained by anonymous ftp from
  1218. biobio.cs.uiuc.edu in the directory pub/papers).
  1219.  
  1220.  
  1221. >30  Chambers' Thesis
  1222.  
  1223. What: SELF optimizing compiler and Thesis
  1224. From: chambers@cs.washington.edu (Craig Chambers)
  1225. Date: 9 May 92 22:00:53 GMT
  1226.  
  1227. My Ph.D. thesis, entitled "The Design and Implementation of the Self Compiler,
  1228. an Optimizing Compiler for Object-Oriented Programming Languages," is now
  1229. available as Stanford technical report number STAN-CS-92-1420.  Copies may be
  1230. ordered from Stanford.  Stanford requires $20 (plus tax for orders from within
  1231. California), in advance, for each copy.
  1232.  
  1233. The dissertation also is available in compressed postscript form.  The
  1234. electronic version may be copied via anonymous ftp from self.stanford.edu in
  1235. the directory pub/papers/chambers-thesis.  This version is free.  Note however
  1236. that the thesis is about 250 pages long.
  1237.  
  1238.  
  1239. >31  graph drawing
  1240.  
  1241. From: rt@cs.brown.edu (Roberto Tamassia)
  1242. Subject: annotated bibliography on graph drawing algorithms
  1243. Organization: Brown University Department of Computer Science
  1244. Date: Wed, 30 Jun 1993 06:45:48 GMT
  1245.  
  1246. A new revised version of the annotated bibliography on graph drawing
  1247. algorithms by Giuseppe Di Battista, Peter Eades, Roberto Tamassia, and
  1248. Ioannis Tollis is now available via anonymous ftp from
  1249. wilma.cs.brown.edu (128.148.33.66).  The files are /pub/gdbiblio.tex.Z
  1250. and /pub/gdbiblio.ps.Z.
  1251.  
  1252.  
  1253. >32  Law of Demeter
  1254.  
  1255. From: lieber@ccs.neu.edu (Karl Lieberherr)
  1256. Subject: Law of Demeter/Adaptive Software
  1257. Organization: College of CS, Northeastern University
  1258. Date: Fri, 4 Jun 1993 20:41:49 GMT
  1259.  
  1260.  >...
  1261.  Yes, the Law of Demeter paper is available in electronic form on the
  1262.  net. Indeed, many of the Demeter project papers are available from
  1263.  the ftp server at Northeastern University (see instructions below).
  1264.  
  1265.  The Law of Demeter idea has been automated in the Demeter Tools/C++
  1266.  as an adaptive software tool which automatically makes much of your C++ code
  1267.  compliant with the Law of Demeter. The tool is an add-on tool to
  1268.  your favorite C++ development environment and is commercially available
  1269.  from Demeter International. The Demeter Tools/C++ lift
  1270.  object-oriented programming to a higher level of abstraction
  1271.  by allowing the user to focus on the essential and
  1272.  stable classes. A paper on ADAPTIVE SOFTWARE will appear in 
  1273.  the Communications of the ACM and is also available from the
  1274.  ftp server.
  1275.  
  1276.  For more information, use the ftp instructions below or call
  1277.  
  1278. Demeter International
  1279. 56 Bennett Road
  1280. Marblehead, MA 01945
  1281.  
  1282.  phone: (617) 639 1544
  1283.  fax: (617) 373 5121
  1284.  
  1285. or send e-mail to demeter@ccs.neu.edu 
  1286.  
  1287. -- Karl Lieberherr
  1288.  
  1289. FTP instructions:
  1290.  
  1291. Some of our papers are available in one package by anonymous ftp from
  1292.  
  1293. ftp.ccs.neu.edu (129.10.10.51)
  1294.  
  1295. in directory pub/demeter/documents
  1296.  
  1297. Use the following command sequence to copy the Demeter papers:
  1298.  
  1299. % ftp ftp.ccs.neu.edu or 129.10.10.51)
  1300. Name ( ... ): ftp
  1301. Password: your-email-address
  1302. ftp> cd pub/demeter/documents
  1303. ftp> ls
  1304. ftp> binary
  1305. ftp> get papers.tar.Z
  1306. ftp> quit
  1307. % uncompress papers.tar.Z
  1308. % tar xf papers.tar
  1309.  
  1310. If you want to copy individual papers and not all at once, go to 
  1311. directory pub/demeter/documents/papers and retrieve them
  1312. individually.
  1313.  
  1314. Law of Demeter paper:
  1315.   LH89-law-of-demeter.ps
  1316. Adaptive Software papers:
  1317.   LSLX93-adaptive-programming.ps
  1318.   L92a-component-enhancement.ps
  1319.   LHSLX92-pp-experience.ps
  1320.  
  1321.  
  1322. >33  OO Dyn Grping, memory
  1323.  
  1324. From: mario@cs.man.ac.uk (Mario Wolczko)
  1325. Subject: Re: OOPLs and Locality of Reference
  1326. Keywords: locality of reference
  1327. Date: 5 Jul 93 14:39:13 GMT
  1328. Organization: Dept Computer Science, University of Manchester, U.K.
  1329.  
  1330. [...]
  1331. The measurements done as part of the work here on the Mushroom project
  1332. show that temporal locality within Smalltalk objects is great (and
  1333. hence even conventional caches work reasonably well [unless the GC
  1334. scheme trashes the cache]), whereas spatial locality on a scale much
  1335. larger than the average object (which is 40 bytes) is much harder to
  1336. come by.
  1337.  
  1338. More details can be found in these papers (all available by ftp from
  1339. mushroom.cs.man.ac.uk in /pub/mushroom/papers):
  1340.  
  1341.   dgvm1.ps.Z
  1342.     "Dynamic Grouping in an Object Oriented Virtual Memory Hierarchy"
  1343.     Ifor Williams, Mario Wolczko, Trevor Hopkins, Proc. ECOOP 87,
  1344.     Springer-Verlag LNCS 276, pp.79-88.
  1345.  
  1346.   dgvm2.ps.Z
  1347.     "Realization of a Dynamically Grouped Object-Oriented Virtual
  1348.      Memory Hierarchy", Proceedings of the Workshop on Persistent Object
  1349.      Systems: Their Design, Implementation and Use, available as
  1350.      Persistent Programming Research Report PPRR-44-87, Universities
  1351.      of Glasgow and St. Andrews, Aug. 1987, pp.298--308.
  1352.  
  1353.   obma.ps.Z
  1354.     "An Object-Based Memory Architecture"
  1355.     Ifor Williams and Mario Wolczko, in Implementing Persistent Object
  1356.     Bases: Proc. Fourth International Workshop on Persistent Object Systems,
  1357.     Morgan Kaufmann, 1991, pp.114-130.
  1358.     The first three figures are in obma-fig[123].ps.Z.
  1359.  
  1360. Mario Wolczko
  1361.  
  1362.    ______      Dept. of Computer Science   Internet:      mario@cs.man.ac.uk
  1363.  /~      ~\    The University              uucp:    mcsun!uknet!man.cs!mario
  1364. (    __    )   Manchester M13 9PL          JANET:         mario@uk.ac.man.cs
  1365.  `-':  :`-'    U.K.                        Tel: +44-61-275 6146  (FAX: 6236)
  1366. ____;  ;_____________the mushroom project___________________________________
  1367.  
  1368.  
  1369. >34  Pred Classes (Cecil)
  1370.  
  1371. What: "Predicate Classes" paper
  1372. From: chambers@klamath.cs.washington.edu (Craig Chambers)
  1373. Date: Fri, 30 Apr 93 01:25:02 GMT
  1374.  
  1375. "Predicate classes are a new linguistic construct designed to
  1376. complement normal classes in object-oriented languages. Like a normal
  1377. class, a predicate class has a set of superclasses, methods, and
  1378. instance variables. However, unlike a normal class, an object is
  1379. automatically an instance of a predicate class whenever it satisfies a
  1380. predicate expression associated with the predicate class. The
  1381. predicate expression can test the value or state of the object, thus
  1382. supporting a form of implicit property-based classification that
  1383. augments the explicit type-based classification provided by normal
  1384. classes. By associating methods with predicate classes, method lookup
  1385. can depend not only on the dynamic class of an argument but also on
  1386. its dynamic value or state. If an object is modified, the
  1387. property-based classification of an object can change over time,
  1388. implementing shifts in major behavior modes of the object. A version
  1389. of predicate classes has been designed and implemented in the context
  1390. of the Cecil language."
  1391.  
  1392. Comments on the ideas in the paper are appreciated.
  1393.  
  1394. -- Craig Chambers
  1395.  
  1396.  
  1397. >35  Manchester Archive and some
  1398.  
  1399. What: Manchester Archive, SmallTalk-V
  1400. From: johnson@m.cs.uiuc.edu (Ralph Johnson)
  1401. Date: 18 Dec 91 19:41:38 GMT
  1402.  
  1403. We have a complete copy of everything in the Manchester archive, and you
  1404. can either access it by e-mail like the Manchester archive or by anonymous
  1405. ftp.  Our archive is on st.cs.uiuc.edu, and you can get information about the
  1406. e-mail server by sending to archive-server@st.cs.uiuc.edu, and putting the
  1407. line help in your message. We actually have a little more than is in the
  1408. Manchester archive.  We have the Smalltalk-V code from the defunct
  1409. International Smalltalk Association, and a few other odds and ends.
  1410.  
  1411. Also:
  1412. The University of Illinois Smalltalk Archive is now offering a WWW server
  1413. the URL is http://st-www.cs.uiuc.edu/
  1414.  
  1415.  
  1416. >36  Object Design's OO7 Results
  1417.  
  1418. What: Object Design's Results on the OO7 Benchmarks
  1419. From: dudek@odi.com (Glen Dudek)
  1420. Date: Thu, 29 Apr 93 17:17:11 GMT
  1421.  
  1422. OBJECT DESIGN'S RESULTS ON THE OO7 BENCHMARKS
  1423. April 26, 1993
  1424.  
  1425. We have made a copy of our results available to the Internet community. You
  1426. can access this information through anonymous ftp from ftp.odi.com in the
  1427. file /pub/oo7/results.ps.
  1428.  
  1429. The report includes the "official" tests done for ObjectStore by the
  1430. University of Wisconsin, and our internal execution of all the tests using
  1431. ObjectStore Release 2.0.1, the current production version.  As the report
  1432. shows, our internal execution carefully followed the agreed-upon procedures
  1433. for running OO7, and we believe the numbers that were produced accurately
  1434. represent ObjectStore's performance.
  1435.  
  1436.         For further information contact oo7info@odi.com.
  1437.  
  1438.  
  1439. >37  Graph service
  1440.  
  1441. From: north@ulysses.att.com (Stephen C. North)
  1442. Subject: free samples of directed graph layouts by mail
  1443. Keywords: graph layout, DAG, embedder
  1444. Date: 25 Jun 93 18:28:29 GMT
  1445. Organization: AT&T Bell Laboratories, Murray Hill
  1446.  
  1447. I have created an experimental service for remote users to try some of
  1448. our graph layout programs through Internet mail, for research or
  1449. educational purposes.  I'm looking for a few friendly users to try this
  1450. service.  The programs are:
  1451.  
  1452.     dag (directed graphs, old, program, works with some USL C++ utilities.
  1453.                 This may have unintentionally sparked the apparently misdirected 
  1454.                 discussion of "DAG classes" in one newsgroup recently.)
  1455.     dot (directed graphs, newer algorithms, better layouts, more features)
  1456.     neato (undirected graphs, compatible with dot, Kamada-Kawai spring embedder)
  1457.  
  1458. You can ftp PostScript files of documentation from dist/drawdag/*.Z on
  1459. research.att.com
  1460.  
  1461. To draw graphs, send a graph file to drawdag@toucan.research.att.com
  1462. and give the command line in the Subject header.  For example,
  1463.  
  1464.     From cs.Princeton.EDU!north Thu Jun 24 11:45:28 0400 1993 remote from toucan
  1465.     Date: Thu, 24 Jun 1993 11:45:28 -0400
  1466.     From: Stephen North <north@cs.Princeton.EDU>
  1467.     To: drawdag@toucan.research.att.com
  1468.     Subject: dot -Tps 
  1469.  
  1470.     digraph G { a -> b }
  1471.  
  1472. File arguments are disabled for obvious reasons.  Please let me know if
  1473. you hit any snags.  There is a reasonable limit on graph size and probably
  1474. number of invocations from a given site/account. (If you use it that much,
  1475. AT&T's Intellectual Property Division sells binary executables; their number
  1476. is 800-462-8146).
  1477.  
  1478. Stephen North, AT&T Bell Laboratories, Murray Hill NJ, (908) 582 7392
  1479. Parturiunt montes, nascetur ridiculus mus!
  1480.  
  1481.  
  1482. >38  C++SIM (Simula-like Sim Pkg)
  1483.  
  1484. From: M.C.Little@newcastle.ac.uk (Mark Little)
  1485. Subject: C++SIM Release 1.0 Announcement
  1486. Organization: Computing Laboratory, U of Newcastle upon Tyne, UK NE17RU
  1487. Keywords: C++, SIMULA, simulation, object-oriented
  1488. Date: Mon, 14 Jun 1993 15:02:33 GMT
  1489.  
  1490. C++SIM 1.0 Release Announcement.
  1491.  
  1492. This is to announce the release of version 1.0 of C++SIM, a simulation
  1493. package written in C++. C++SIM provides discrete process based
  1494. simulation similar to that provided by the simulation class and
  1495. libraries of SIMULA. The linked list manipulation facilities provided
  1496. by SIMSET are also included in the package.
  1497.  
  1498. Inheritance was used throughout the design to an even greater extent
  1499. than is already provided by SIMULA. This has allowed us to add new
  1500. functionality without affecting the overall system structure, and hence
  1501. provides for a more flexible and expandable simulation package.
  1502.  
  1503. A paper is included which describes the design and implementation of
  1504. C++SIM and includes a worked example of how to use the package. The
  1505. paper describes the class hierarchy which we have created, and
  1506. indicates how it can be used to further refine the simulation package.
  1507.  
  1508. The simulation package requires the use of a threads package and
  1509. currently only works with Sun's lightweight process library or the Gnu
  1510. thread package (which *is* included in the distribution). The package has
  1511. been used on Sun workstations, and, with the exception of the thread
  1512. library requirement, contains no system specific code which should make
  1513. porting to other systems relatively easy. The code has been compiled
  1514. with Cfront 2.1 and Cfront 3.0.1 and g++ 2.3.3
  1515.  
  1516.