home *** CD-ROM | disk | FTP | other *** search
/ ftp.pasteur.org/FAQ/ / ftp-pasteur-org-FAQ.zip / FAQ / object-faq / part11 < prev    next >
Text File  |  1996-04-03  |  52KB  |  1,380 lines

  1. Newsgroups: comp.object,comp.answers,news.answers
  2. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!gatech!swrinde!howland.reston.ans.net!vixen.cso.uiuc.edu!uchinews!news
  3. From: Bob Hathaway <rjh@geodesic.com>
  4. Subject: Comp.Object FAQ Version 1.0.9 (04-02) Part 11/13
  5. X-Nntp-Posting-Host: ford.uchicago.edu
  6. Message-ID: <Dp9qor.B5s@midway.uchicago.edu>
  7. Followup-To: comp.object
  8. Summary: Frequently Asked Questions (FAQ) List and Available Systems For Object-Oriented Technology
  9. Sender: news@midway.uchicago.edu (News Administrator)
  10. Organization: Geodesic Systems
  11. References: <Dp9prv.92t@midway.uchicago.edu>
  12. Date: Wed, 3 Apr 1996 04:19:38 GMT
  13. Approved: news-answers-request@MIT.Edu
  14. Lines: 1363
  15. Xref: senator-bedfellow.mit.edu comp.object:46840 comp.answers:17914 news.answers:68446
  16.  
  17. Archive-name: object-faq/part11
  18. Last-Modified: 04/02/96
  19. Version: 1.0.9
  20.  
  21. Indicate in your accompanying letter whether you want the system on a 9-track
  22. tape at 1600 BPI, at 6250 BPI, on a cartridge tape for SUN shoeboxes (QIC 24 
  23. format), or on a TK50 DEC cartridge tape.
  24.  
  25.  
  26. >22  Sniff (C++ devel environ)
  27.  
  28. [See also APPENDIX C, SNiFF+, for the commercial version]
  29.  
  30. What: SNIFF (Sniff 1.1b (C++ Development Environment))
  31. From: shite@sinkhole.unf.edu (Stephen Hite)
  32. Date: 23 Aug 92 18:14:00 GMT
  33.  
  34. Sniff 1.1b is available from iamsun.unibe.ch in the C++ hierarchy.  It's a
  35. development environment for C++ (minus the C++ compiler or interpreter).
  36. It's freely available and you're gonna need OpenWindows 3.0 if you want
  37. to play with it immediately.  I just downloaded it and haven't had a 
  38. chance to look into whether the XView 3.0 package will be able to handle
  39. everything Sniff requires of the OpenLook part.
  40.  
  41. And:
  42.  
  43. From: sniff@takeFive.co.at (Mr. Sniff)
  44. Newsgroups: comp.lang.c++,comp.unix,comp.unix.osf.osf1,comp.unix.solaris,comp.object
  45. Subject: SNiFF+ takeFive Starts Free University Distribution of Commercial C/C++ Programming Environment
  46. Date: 22 Sep 1993 15:51:26 GMT
  47. Organization: EUnet EDV-Dienstleistungsgesellschaft m.b.H
  48. Keywords: programming environments, browsing, C++
  49.  
  50. SNiFF+: takeFive Starts Free University Distribution of Commercial C/C++
  51. Programming Environment
  52.  
  53. 1. Introduction
  54.  ===============
  55. Since the beginning of 1993 takeFive has taken over development and support 
  56. for SNiFF+, a leading edge C/C++ programming environment.  With SNiFF+ 
  57. rapidly gaining commercial acceptance takeFive has decided to offer the 
  58. product free to educational establishments. There are several reasons for 
  59. this step.
  60.  
  61. ...
  62.  
  63. 6. How to Obtain SNiFF+
  64.  =======================
  65. 6.1 FTP
  66.  -------
  67. Sniff can be downloaded from anonymous FTP sites in USA and Europe.
  68. You can get all details from info@takeFive.co.at.
  69.  
  70. And:
  71.  
  72. From: hueni@iam.unibe.ch (Hermann Hueni)
  73. Subject: Re: Browsers
  74. Date: Fri, 11 Jun 1993 12:37:28 GMT
  75.  
  76. Sniff is a commercial product.
  77. Send mail to info@takeFive.co.at
  78. AN early version is available as a SUN SPARC binary only from
  79. siam.unibe.ch:C++/Sniff1.6/     (THIS site is in EUROPE)
  80.  
  81.  
  82. >23  C++ tags
  83.  
  84. What: ctags/etags for C and C++
  85. From: kendall@centerline.com (Sam Kendall)
  86. Date: 10 Jun 92 09:31:27 GMT
  87.  
  88. A lot of people have requested this software!  You can now get Tags for
  89. C/C++ version 1.0 via anonymous ftp at:
  90.  
  91.         ftp.centerline.com:/pub/tags-1.0.tar.Z
  92.  
  93. ftp.centerline.com is 140.239.2.29.  Anonymous ftp means login as "ftp" and
  94. give your email address as the password.
  95.  
  96. If you don't have ftp access to the internet, you may want to wait for this
  97. stuff to come out in comp.sources.unix.  Or, if you plan to use it right away,
  98. send me a letter that says "I can't use ftp; please send by email" and I will
  99. do so.
  100.  
  101.  
  102. >24  short tool
  103.  
  104. From: neil@aldur.demon.co.uk (Neil Wilson)
  105. Subject: New version of 'short' available
  106. Date: Sat, 7 Aug 1993 09:38:25 +0000
  107.  
  108. A new beta release (1.2) of 'short' is available from the Stuttgart
  109. Eiffel archive (ftp.informatik.uni-stuttgart.de) in directory
  110. /pub/eiffel/eiffel-3/sig
  111.  
  112. Command line processing is now included in the short system. Short can
  113. now cope with multiple input files, the standard input and deal with
  114. most file errors.
  115.  
  116. Short now depends on the argument cluster which is available from
  117. the same archive and directory.
  118.  
  119. Short supports the following options:
  120.  
  121.         -V, +version, -h, +help
  122.                 Displays the 'short' version information and gives the
  123.                 usage help message for the command.
  124.  
  125.         -e, +abstract, +eiffel
  126.                 Produces a fully deferred version of the input class(es)
  127.                 which will compile just like any other class (hopefully :-)
  128.  
  129.         -l <class_name>, +view <class_name>
  130.                 Produces the output from the point of view of the class
  131.                 <class_name> - the "short form for <class_name>".
  132.                 Special handling for ANY and NONE of course. By default
  133.                 short outputs the "short form for ANY".
  134.  
  135.         -f, +full
  136.                 Produces the short form including all the feature
  137.                 blocks.  (Implemented as the "short form for NONE".)
  138.  
  139.         -p, +parents
  140.                 Retains the inheritance clause in the output. The default is
  141.                 to drop it.
  142.  
  143.         -b <number>, +blank <number>
  144.                 Indent levels by <number> characters. 
  145.  
  146.         -c <number>, +column <number>
  147.                 Width of the output is <number> characters. Should be
  148.                 greater than 20.
  149.  
  150. Obsolete features are not retained. Obsolete classes retain no features.
  151.  
  152. The output of the tool now conforms to the layout rules in Appendix A of
  153. ETL and should look like the 'short' examples in the book. As much as is
  154. possible the output and command line options conform to ISE's 2.3
  155. version of 'short'.
  156.  
  157. This release of short has been tested on all the v1.21 Eiffel/S
  158. libraries, itself and the argument clusters, plus any other class
  159. fragments I had lying around at the time.
  160.  
  161. My biggest debt is of course to David Morgan. This version is only
  162. really a tiny modification of his work. His ELEXER Eiffel 3 parser
  163. remains the core of the tool.  I though am responsible for any remaining
  164. deficiencies or problems with this release.
  165.  
  166. Problems, suggestions, comments, criticisms to me please. All gratefully
  167. received - I can't improve my Eiffel if somebody doesn't tell me where I
  168. blew it.
  169.  
  170.  
  171. >25  COOL(C++, Cfront 2.1, from GE)
  172.  
  173. COOL is a C++ class library developed at Texas Instruments.
  174.  
  175. Features are:
  176. 1. Rich set of containers like Vector, List, Hash_Table, Matrix, etc...
  177. 2. Hierarchy is shallow with no common base class, rather than deep like NIHCL.
  178. 3. Functionality close to Common Lisp data structures, like GNU libg++.
  179. 4. Template syntax very close to Cfront3.x, g++2.x.
  180. 5. Free, with good documentation, and extensive test cases.
  181.  
  182. Light version of COOL from General Electric:
  183. 1. Hairy macros, run-time type, exceptions removed for mainstream C++
  184.    compatibility
  185. 2. Free of memory leaks and bound violations. Leaks and bounds are checked
  186.    with Purify.
  187. 3. Has memory management and efficient copy in expressions like:
  188.   Set c = a+b+c;    
  189.   Pointers are shared with Handle and Reference count. Deep copy in
  190.   expressions are replaced by shallow copy.
  191. 4. Compatible with Cfront2.1, and is being converted to Cfront3.0. You can
  192.   build both static and shared library on SunOS 4.1.x
  193.  
  194. 1. original version from Texas Instruments:
  195.    at csc.ti.com, get pub/COOL.tar.Z
  196. 2. Cfront2.1 version modified by General Electric:
  197.    at cs.utexas.edu, get pub/COOL/GE_COOL2.1.tar.Z
  198.  
  199. I am working on Cfront3.0 version of COOL, using the Beta 3.0 from Sun. I am
  200. experiencing problems with instantiation and specialization of templates.  So
  201. Cfront3.0 version of COOL won't be available until Sun's Cfront 3.0 is
  202. released with bugs fixed.
  203.  
  204. Van-Duc Nguyen
  205. General Electric 
  206. Research & Development Ctr
  207. 1 River Road, Room K1-5C39.
  208. Schenectady, NY 12301.
  209. Phone: (518) 387-5659
  210. Fax:   (518) 387-6845
  211. nguyen@crd.ge.com
  212.  
  213.  
  214. >26  idl.SunOS4.x, idl.Solaris2.x
  215.  
  216. Subject: Binaries for OMG IDL CFE placed on omg.org
  217. Date: 11 Jun 93 00:13:11 GMT
  218. Reply-To: jyl@toss.eng.sun.com
  219.  
  220.  
  221. SunSoft has made available statically linked binaries for the OMG IDL CFE,
  222. for both Solaris 1.x and Solaris 2.x. Because they are statically linked,
  223. these binaries can be used on systems which do not have the SparcWorks (TM)
  224. compilers installed.
  225.  
  226. It is expected that people who only want an IDL parser will prefer to
  227. obtain these binaries instead of compiling the program on their host.
  228. People who want to build a complete compiler, by programming their own
  229. back-end, will continue to obtain the sources which are also provided at
  230. the same location.
  231.  
  232. The binaries can be obtained by anonymous FTP to omg.org. They are
  233. installed in the directory pub/OMG_IDL_CFE_1.2/bin, in idl.SunOS4.x and
  234. idl.Solaris2.x. Uuencoded versions are also available, in the same
  235. directory.
  236.  
  237. Please send email to idl-cfe@sun.com if you obtain these files.
  238.  
  239. The attached copyright applies to the provided binaries and to the source
  240. files provided on the omg.org file server.
  241.  
  242.  
  243. Copyright:
  244. Copyright 1992 Sun Microsystems, Inc.  Printed in the United States of
  245. America.  All Rights Reserved.
  246.  
  247. This product is protected by copyright and distributed under the following
  248. license restricting its use.
  249.  
  250. The Interface Definition Language Compiler Front End (CFE) is made
  251. available for your use provided that you include this license and copyright
  252. notice on all media and documentation and the software program in which
  253. this product is incorporated in whole or part. You may copy and extend
  254. functionality (but may not remove functionality) of the Interface
  255. Definition Language CFE without charge, but you are not authorized to
  256. license or distribute it to anyone else except as part of a product or
  257. program developed by you or with the express written consent of Sun
  258. Microsystems, Inc. ("Sun").
  259.  
  260. The names of Sun Microsystems, Inc. and any of its subsidiaries or
  261. affiliates may not be used in advertising or publicity pertaining to
  262. distribution of Interface Definition Language CFE as permitted herein.
  263.  
  264. This license is effective until terminated by Sun for failure to comply
  265. with this license.  Upon termination, you shall destroy or return all code
  266. and documentation for the Interface Definition Language CFE.
  267.  
  268. [...] etc. on copyright stuff [...]
  269.  
  270. SunSoft, Inc.  
  271. 2550 Garcia Avenue 
  272. Mountain View, California  94043
  273.  
  274. >27  Browser for OO info
  275.  
  276. A search engine for Object-Oriented Information Sources on the World
  277. Wide Web is being maintained by the Software Composition Group at the
  278. University of Berne, Switzerland.  The URL to access is:
  279.  
  280. http://iamwww.unibe.ch/~scg/OOinfo/index.html
  281.  
  282. A mirror of the catalog is available from the University of Geneva:
  283.  
  284. http://cuiwww.unige.ch/OSG/OOinfo/
  285.  
  286. Please e-mail suggestions for new entries to: scg@iam.unibe.ch 
  287.  
  288. A searchable bibliography of object-oriented references is also available:
  289.  
  290. http://iamwww.unibe.ch/cgi-bin/oobib
  291.  
  292. as is a (searchable) version of the OO FAQ:
  293.  
  294. http://iamwww.unibe.ch/~scg/OOinfo/FAQ/index.html
  295.  
  296. Oscar Nierstrasz
  297.  
  298. ---
  299. Prof. Dr. Oscar Nierstrasz; oscar@iam.unibe.ch; http://iamwww.unibe.ch/~oscar
  300. Software Composition Group; CS Inst., U. Berne; Tel/Fax: +41 31 631.4618/3965
  301.  
  302. >28  Apertos(Meta-Obj Distr OS, research)
  303.  
  304. The Apertos (formerly MUSE) project at Sony Research
  305. is a meta-object based distributed OS for turning portable wireless
  306. hand-held computers into fully-connected Dynabook-like
  307. terminals.  It's very very wizzy.  The papers are on: 
  308.         scslwide.sony.co.jp:pub/CSL-Papers
  309.  
  310. The source is available for research; I think you have to
  311. sign something first.
  312.  
  313.  
  314. >29  Actors Paper (UIUC)
  315.  
  316. From: agha@cs.uiuc.edu (Gul Agha)
  317. Subject: Actor Theory Paper available
  318. Organization: University of Illinois, Dept. of Comp. Sci., Urbana, IL
  319. Date: Wed, 4 Aug 1993 15:41:02 GMT
  320.  
  321. A new paper providing a definitive and detailed development of the
  322. semantics of actor systems is available via anonymous ftp.  Comments
  323. are especially welcome.  
  324.  
  325.  
  326. Title:          A Foundation for Actor Computation
  327.  
  328. Authors:        Gul Agha, Univerity of Illinois at Urbana-Champaign
  329.                 Ian Mason, Stanford University
  330.                 Scott Smith, John Hopkins University
  331.                 Carolyn Talcott, Stanford University
  332.  
  333. Abstract:
  334.  
  335.         We present an actor language which is
  336.         an extension of a simple functional language, and provide a precise
  337.         operational semantics for this extension.  Actor configurations are
  338.         open distributed systems, meaning we explicitly take into account the
  339.         interface with external components in the specification of an actor
  340.         system.  We define and study various notions of equivalence on actor
  341.         expressions and configurations.
  342.  
  343. to ftp the compressed postscript file:
  344.         ftp sail.stanford.edu  (or 36.28.0.130)
  345.         login: anonymous
  346.         send ident as password.
  347.         cd pub/MT
  348. the file is called:  
  349.         93actors.ps.Z
  350.  
  351. Note: the paper is 76pp long.  It subsumes work reported in our paper
  352. in CONCUR '92.  
  353.  
  354. (A number of other recent papers on actor languages and their
  355. implementation may be obtained by anonymous ftp from
  356. biobio.cs.uiuc.edu in the directory pub/papers).
  357.  
  358.  
  359. >30  Chambers' Thesis
  360.  
  361. What: SELF optimizing compiler and Thesis
  362. From: chambers@cs.washington.edu (Craig Chambers)
  363. Date: 9 May 92 22:00:53 GMT
  364.  
  365. My Ph.D. thesis, entitled "The Design and Implementation of the Self Compiler,
  366. an Optimizing Compiler for Object-Oriented Programming Languages," is now
  367. available as Stanford technical report number STAN-CS-92-1420.  Copies may be
  368. ordered from Stanford.  Stanford requires $20 (plus tax for orders from within
  369. California), in advance, for each copy.
  370.  
  371. The dissertation also is available in compressed postscript form.  The
  372. electronic version may be copied via anonymous ftp from self.stanford.edu in
  373. the directory pub/papers/chambers-thesis.  This version is free.  Note however
  374. that the thesis is about 250 pages long.
  375.  
  376.  
  377. >31  graph drawing
  378.  
  379. From: rt@cs.brown.edu (Roberto Tamassia)
  380. Subject: annotated bibliography on graph drawing algorithms
  381. Organization: Brown University Department of Computer Science
  382. Date: Wed, 30 Jun 1993 06:45:48 GMT
  383.  
  384. A new revised version of the annotated bibliography on graph drawing
  385. algorithms by Giuseppe Di Battista, Peter Eades, Roberto Tamassia, and
  386. Ioannis Tollis is now available via anonymous ftp from
  387. wilma.cs.brown.edu (128.148.33.66).  The files are /pub/gdbiblio.tex.Z
  388. and /pub/gdbiblio.ps.Z.
  389.  
  390.  
  391. >32  Law of Demeter
  392.  
  393. From: lieber@ccs.neu.edu (Karl Lieberherr)
  394. Subject: Law of Demeter/Adaptive Software
  395. Organization: College of CS, Northeastern University
  396. Date: Fri, 4 Jun 1993 20:41:49 GMT
  397.  
  398.  >...
  399.  Yes, the Law of Demeter paper is available in electronic form on the
  400.  net. Indeed, many of the Demeter project papers are available from
  401.  the ftp server at Northeastern University (see instructions below).
  402.  
  403.  The Law of Demeter idea has been automated in the Demeter Tools/C++
  404.  as an adaptive software tool which automatically makes much of your C++ code
  405.  compliant with the Law of Demeter. The tool is an add-on tool to
  406.  your favorite C++ development environment and is commercially available
  407.  from Demeter International. The Demeter Tools/C++ lift
  408.  object-oriented programming to a higher level of abstraction
  409.  by allowing the user to focus on the essential and
  410.  stable classes. A paper on ADAPTIVE SOFTWARE will appear in 
  411.  the Communications of the ACM and is also available from the
  412.  ftp server.
  413.  
  414.  For more information, use the ftp instructions below or call
  415.  
  416. Demeter International
  417. 56 Bennett Road
  418. Marblehead, MA 01945
  419.  
  420.  phone: (617) 639 1544
  421.  fax: (617) 373 5121
  422.  
  423. or send e-mail to demeter@ccs.neu.edu 
  424.  
  425. -- Karl Lieberherr
  426.  
  427. FTP instructions:
  428.  
  429. Some of our papers are available in one package by anonymous ftp from
  430.  
  431. ftp.ccs.neu.edu (129.10.10.51)
  432.  
  433. in directory pub/demeter/documents
  434.  
  435. Use the following command sequence to copy the Demeter papers:
  436.  
  437. % ftp ftp.ccs.neu.edu or 129.10.10.51)
  438. Name ( ... ): ftp
  439. Password: your-email-address
  440. ftp> cd pub/demeter/documents
  441. ftp> ls
  442. ftp> binary
  443. ftp> get papers.tar.Z
  444. ftp> quit
  445. % uncompress papers.tar.Z
  446. % tar xf papers.tar
  447.  
  448. If you want to copy individual papers and not all at once, go to 
  449. directory pub/demeter/documents/papers and retrieve them
  450. individually.
  451.  
  452. Law of Demeter paper:
  453.   LH89-law-of-demeter.ps
  454. Adaptive Software papers:
  455.   LSLX93-adaptive-programming.ps
  456.   L92a-component-enhancement.ps
  457.   LHSLX92-pp-experience.ps
  458.  
  459.  
  460. >33  OO Dyn Grping, memory
  461.  
  462. From: mario@cs.man.ac.uk (Mario Wolczko)
  463. Subject: Re: OOPLs and Locality of Reference
  464. Keywords: locality of reference
  465. Date: 5 Jul 93 14:39:13 GMT
  466. Organization: Dept Computer Science, University of Manchester, U.K.
  467.  
  468. [...]
  469. The measurements done as part of the work here on the Mushroom project
  470. show that temporal locality within Smalltalk objects is great (and
  471. hence even conventional caches work reasonably well [unless the GC
  472. scheme trashes the cache]), whereas spatial locality on a scale much
  473. larger than the average object (which is 40 bytes) is much harder to
  474. come by.
  475.  
  476. More details can be found in these papers (all available by ftp from
  477. mushroom.cs.man.ac.uk in /pub/mushroom/papers):
  478.  
  479.   dgvm1.ps.Z
  480.     "Dynamic Grouping in an Object Oriented Virtual Memory Hierarchy"
  481.     Ifor Williams, Mario Wolczko, Trevor Hopkins, Proc. ECOOP 87,
  482.     Springer-Verlag LNCS 276, pp.79-88.
  483.  
  484.   dgvm2.ps.Z
  485.     "Realization of a Dynamically Grouped Object-Oriented Virtual
  486.      Memory Hierarchy", Proceedings of the Workshop on Persistent Object
  487.      Systems: Their Design, Implementation and Use, available as
  488.      Persistent Programming Research Report PPRR-44-87, Universities
  489.      of Glasgow and St. Andrews, Aug. 1987, pp.298--308.
  490.  
  491.   obma.ps.Z
  492.     "An Object-Based Memory Architecture"
  493.     Ifor Williams and Mario Wolczko, in Implementing Persistent Object
  494.     Bases: Proc. Fourth International Workshop on Persistent Object Systems,
  495.     Morgan Kaufmann, 1991, pp.114-130.
  496.     The first three figures are in obma-fig[123].ps.Z.
  497.  
  498. Mario Wolczko
  499.  
  500.    ______      Dept. of Computer Science   Internet:      mario@cs.man.ac.uk
  501.  /~      ~\    The University              uucp:    mcsun!uknet!man.cs!mario
  502. (    __    )   Manchester M13 9PL          JANET:         mario@uk.ac.man.cs
  503.  `-':  :`-'    U.K.                        Tel: +44-61-275 6146  (FAX: 6236)
  504. ____;  ;_____________the mushroom project___________________________________
  505.  
  506.  
  507. >34  Pred Classes (Cecil)
  508.  
  509. What: "Predicate Classes" paper
  510. From: chambers@klamath.cs.washington.edu (Craig Chambers)
  511. Date: Fri, 30 Apr 93 01:25:02 GMT
  512.  
  513. "Predicate classes are a new linguistic construct designed to
  514. complement normal classes in object-oriented languages. Like a normal
  515. class, a predicate class has a set of superclasses, methods, and
  516. instance variables. However, unlike a normal class, an object is
  517. automatically an instance of a predicate class whenever it satisfies a
  518. predicate expression associated with the predicate class. The
  519. predicate expression can test the value or state of the object, thus
  520. supporting a form of implicit property-based classification that
  521. augments the explicit type-based classification provided by normal
  522. classes. By associating methods with predicate classes, method lookup
  523. can depend not only on the dynamic class of an argument but also on
  524. its dynamic value or state. If an object is modified, the
  525. property-based classification of an object can change over time,
  526. implementing shifts in major behavior modes of the object. A version
  527. of predicate classes has been designed and implemented in the context
  528. of the Cecil language."
  529.  
  530. Comments on the ideas in the paper are appreciated.
  531.  
  532. -- Craig Chambers
  533.  
  534.  
  535. >35  Manchester Archive and some
  536.  
  537. What: Manchester Archive, SmallTalk-V
  538. From: johnson@m.cs.uiuc.edu (Ralph Johnson)
  539. Date: 18 Dec 91 19:41:38 GMT
  540.  
  541. We have a complete copy of everything in the Manchester archive, and you
  542. can either access it by e-mail like the Manchester archive or by anonymous
  543. ftp.  Our archive is on st.cs.uiuc.edu, and you can get information about the
  544. e-mail server by sending to archive-server@st.cs.uiuc.edu, and putting the
  545. line help in your message. We actually have a little more than is in the
  546. Manchester archive.  We have the Smalltalk-V code from the defunct
  547. International Smalltalk Association, and a few other odds and ends.
  548.  
  549. Also:
  550. The University of Illinois Smalltalk Archive is now offering a WWW server
  551. the URL is http://st-www.cs.uiuc.edu/
  552.  
  553.  
  554. >36  Object Design's OO7 Results
  555.  
  556. What: Object Design's Results on the OO7 Benchmarks
  557. From: dudek@odi.com (Glen Dudek)
  558. Date: Thu, 29 Apr 93 17:17:11 GMT
  559.  
  560. OBJECT DESIGN'S RESULTS ON THE OO7 BENCHMARKS
  561. April 26, 1993
  562.  
  563. We have made a copy of our results available to the Internet community. You
  564. can access this information through anonymous ftp from ftp.odi.com in the
  565. file /pub/oo7/results.ps.
  566.  
  567. The report includes the "official" tests done for ObjectStore by the
  568. University of Wisconsin, and our internal execution of all the tests using
  569. ObjectStore Release 2.0.1, the current production version.  As the report
  570. shows, our internal execution carefully followed the agreed-upon procedures
  571. for running OO7, and we believe the numbers that were produced accurately
  572. represent ObjectStore's performance.
  573.  
  574.         For further information contact oo7info@odi.com.
  575.  
  576.  
  577. >37  Graph service
  578.  
  579. From: north@ulysses.att.com (Stephen C. North)
  580. Subject: free samples of directed graph layouts by mail
  581. Keywords: graph layout, DAG, embedder
  582. Date: 25 Jun 93 18:28:29 GMT
  583. Organization: AT&T Bell Laboratories, Murray Hill
  584.  
  585. I have created an experimental service for remote users to try some of
  586. our graph layout programs through Internet mail, for research or
  587. educational purposes.  I'm looking for a few friendly users to try this
  588. service.  The programs are:
  589.  
  590.     dag (directed graphs, old, program, works with some USL C++ utilities.
  591.                 This may have unintentionally sparked the apparently misdirected 
  592.                 discussion of "DAG classes" in one newsgroup recently.)
  593.     dot (directed graphs, newer algorithms, better layouts, more features)
  594.     neato (undirected graphs, compatible with dot, Kamada-Kawai spring embedder)
  595.  
  596. You can ftp PostScript files of documentation from dist/drawdag/*.Z on
  597. research.att.com
  598.  
  599. To draw graphs, send a graph file to drawdag@toucan.research.att.com
  600. and give the command line in the Subject header.  For example,
  601.  
  602.     From cs.Princeton.EDU!north Thu Jun 24 11:45:28 0400 1993 remote from toucan
  603.     Date: Thu, 24 Jun 1993 11:45:28 -0400
  604.     From: Stephen North <north@cs.Princeton.EDU>
  605.     To: drawdag@toucan.research.att.com
  606.     Subject: dot -Tps 
  607.  
  608.     digraph G { a -> b }
  609.  
  610. File arguments are disabled for obvious reasons.  Please let me know if
  611. you hit any snags.  There is a reasonable limit on graph size and probably
  612. number of invocations from a given site/account. (If you use it that much,
  613. AT&T's Intellectual Property Division sells binary executables; their number
  614. is 800-462-8146).
  615.  
  616. Stephen North, AT&T Bell Laboratories, Murray Hill NJ, (908) 582 7392
  617. Parturiunt montes, nascetur ridiculus mus!
  618.  
  619.  
  620. >38  C++SIM (Simula-like Sim Pkg)
  621.  
  622. From: M.C.Little@newcastle.ac.uk (Mark Little)
  623. Subject: C++SIM Release 1.0 Announcement
  624. Organization: Computing Laboratory, U of Newcastle upon Tyne, UK NE17RU
  625. Keywords: C++, SIMULA, simulation, object-oriented
  626. Date: Mon, 14 Jun 1993 15:02:33 GMT
  627.  
  628. C++SIM 1.0 Release Announcement.
  629.  
  630. This is to announce the release of version 1.0 of C++SIM, a simulation
  631. package written in C++. C++SIM provides discrete process based
  632. simulation similar to that provided by the simulation class and
  633. libraries of SIMULA. The linked list manipulation facilities provided
  634. by SIMSET are also included in the package.
  635.  
  636. Inheritance was used throughout the design to an even greater extent
  637. than is already provided by SIMULA. This has allowed us to add new
  638. functionality without affecting the overall system structure, and hence
  639. provides for a more flexible and expandable simulation package.
  640.  
  641. A paper is included which describes the design and implementation of
  642. C++SIM and includes a worked example of how to use the package. The
  643. paper describes the class hierarchy which we have created, and
  644. indicates how it can be used to further refine the simulation package.
  645.  
  646. The simulation package requires the use of a threads package and
  647. currently only works with Sun's lightweight process library or the Gnu
  648. thread package (which *is* included in the distribution). The package has
  649. been used on Sun workstations, and, with the exception of the thread
  650. library requirement, contains no system specific code which should make
  651. porting to other systems relatively easy. The code has been compiled
  652. with Cfront 2.1 and Cfront 3.0.1 and g++ 2.3.3
  653.  
  654. If you find any bugs or make modifications (e.g., ports to other thread
  655. packages) or port it to other systems, then please let me know so I can
  656. keep the sources up-to-date for other users.
  657.  
  658. The package is available via anonymous ftp from arjuna.ncl.ac.uk
  659.  
  660.  
  661. >39  commercial on cd-rom
  662.  
  663. From: jimad@microsoft.com (Jim Adcock)
  664. Subject: Re: Non-defense Ada applications - answering several requests
  665. Date: 11 Jun 93 18:56:55 GMT
  666. Organization: Microsoft Corporation
  667.  
  668.  >...
  669.  
  670. 1) Get a copy of the Computer Select Database.  [I notice the company
  671. is offering free trial copies [the database is CD-ROM based]]
  672.  
  673. 2) Select "Section: Software Product Specifications"
  674.  
  675. 3) Select "Find: C++"
  676.  
  677. Behold!  A list of 734 commercially available software packages written
  678. in C++, including some of the best known names in the software industry.
  679.  
  680.  
  681. >40  C++ Signatures (subtyping)
  682.  
  683. From: gb@cs.purdue.edu (Gerald Baumgartner)
  684. Newsgroups: comp.object,comp.lang.c++
  685. Subject: signature implementation for G++ 2.5.2 and tech report available
  686. Date: 4 Nov 1993 12:03:00 -0500
  687. Organization: Department of Computer Sciences, Purdue University
  688.  
  689. Announcing the paper
  690.  
  691.     Signatures: A C++ Extension for
  692.     Type Abstraction and Subtype Polymorphism
  693.  
  694.     by Gerald Baumgartner and Vincent F. Russo.
  695.     Tech report CSD-TR-93-059, Dept. of Computer
  696.     Sciences, Purdue University, September 1993.
  697.     Submitted to Software Practice & Experience.
  698.  
  699. and a beta release of our implementation of
  700.  
  701.     signatures for GCC 2.5.2.
  702.  
  703.  
  704.  How to Get that Stuff?
  705.  ----------------------
  706.  
  707. You can get both the paper and the implementation by ftp from
  708.  
  709.     host:        ftp.cs.purdue.edu    (128.10.2.1)
  710.  
  711.     login:        anonymous
  712.  
  713.     password:    your e-mail address
  714.  
  715.     directory:    pub/gb
  716.  
  717.     files:        COPYING            Copyright notice.
  718.  
  719.             README            This file.
  720.  
  721.             Signatures.{dvi,ps}.gz    DVI and Postscript versions
  722.                         of the paper.
  723.  
  724.             gcc-2.5.2.sig.diff.gz    Patch to upgrade GCC 2.5.2.
  725.  
  726.             test.tar.gz        Test files and script to run
  727.                         the tests.
  728.  
  729. To make GCC 2.5.2 understand signatures, just copy the context diff
  730. file into the GCC source directory, type
  731.  
  732.     gunzip gcc-2.5.2.sig.diff.gz
  733.     patch < gcc-2.5.2.sig.diff
  734.  
  735. and rebuild and install `gcc,' `cc1plus,' the man pages, and the manual.
  736.  
  737. For compiling C++ code containing signatures, you need to use the
  738. command line option
  739.  
  740.     -fhandle-signatures
  741.  
  742. We tested our extension on Sun 4 only, but since there are no changes
  743. to the compiler backend, it is expected work on other architectures as
  744. well.  To test whether it works on your architecture, unpack the file
  745. `test.tar.gz' and run the shell script
  746.  
  747.     Test
  748.  
  749. It compiles the test programs and runs them.  If everything works
  750. correctly, all the test programs (all 40 of them) should print
  751.  
  752.     Hello World.
  753.  
  754.  
  755.  What are Signatures anyway?
  756.  ---------------------------
  757.  
  758. Roughly, signatures are type abstractions or interfaces of classes.
  759. They are related to ML's signatures, categories in Axiom, definition
  760. modules in Modula-2, interface modules in Modula-3, and types in
  761. POOL-I.
  762.  
  763. The main language constructs added are signatures and signature pointers.
  764. For example, the signature declaration
  765.  
  766.     signature S
  767.     {
  768.       int foo (void);
  769.       int bar (int);
  770.     };
  771.  
  772. defines a new abstract type `S' with member functions `int foo (void)'
  773. and `int bar (int).'  Signature types cannot be instantiated since they
  774. don't provide any implementation.  Only signature pointers and signature
  775. references can be defined.  For example,
  776.  
  777.     C obj;
  778.     S * p = &obj;
  779.  
  780. defines a signature pointer `p' and initializes it to point to an object
  781. of class type `C,' where `C' is required to contain the public member
  782. functions `int foo (void)' and `int bar (int).'  The member function call
  783.  
  784.     int i = p->foo ();
  785.  
  786. executes then `obj.foo ().'
  787.  
  788. Class `C' is called an implementation of the abstract type `S.'  In
  789. this example, we could have made `S' an abstract virtual class and `C' a
  790. subclass of `S,' and we would have had the same effect.  The advantages
  791. of signatures over abstract virtual classes are
  792.  
  793.     - you can build a type hierarchy separate from the class inheritance
  794.       (implementation) hierarchy,
  795.     - subtyping becomes decoupled from inheritance, and
  796.     - signatures can be used with compiled classes, while you cannot
  797.       retrofit an abstract virtual class on top of compiled class
  798.       hierarchies.
  799.  
  800. For more information, please, see the paper.
  801.  
  802.  
  803.  What's Implemented and what's not?
  804.  ----------------------------------
  805.  
  806. Signature declarations and signature pointers are implemented and
  807. working.  For examples of what's working and how to use them you can
  808. have a look at the test files.
  809.  
  810. The following bugs are known:
  811.  
  812.       - The destructor of objects cannot be called though signature pointers.
  813.       - A signature pointer cannot point to an object of a class defined
  814.     by multiple inheritance.
  815.       - The signature conformance check does not work if the signature
  816.     contains other signature declarations or class declarations.
  817.       - Operator and conversion operator member functions of signatures
  818.     can only be called with function call syntax, such as
  819.     `p->operator+(17),' but not with operator or conversion syntax.
  820.  
  821. The following language constructs and features are not yet implemented:
  822.  
  823.       - constants in signatures,
  824.       - signature references,
  825.       - signature inheritance,
  826.       - the `sigof' (signature of a class) construct,
  827.       - views (not even the parsing is done),
  828.       - signature templates, and
  829.       - exception specifications in signature member function declarations.
  830.  
  831. The following optimization is not implemented:
  832.  
  833.       - Looking up a virtual class member function through a signature
  834.     pointer/reference requires double indirection.  This can be optimized
  835.     by memoizing, so that only the first lookup of a member function
  836.     requires double indirection and further lookups require only single
  837.     indirection.
  838.  
  839. The items above are roughly in the order in which they will be implemented.
  840.  
  841. Besides bug fixes, the main features that have been implemented since the
  842. last release are default implementations of signature member functions
  843. and opaque types.
  844.  
  845.  
  846.  Feedback
  847.  --------
  848.  
  849. Please, send your questions, comments, suggestions, and complaints to
  850.  
  851.     gb@cs.purdue.edu
  852.  
  853. --
  854. Gerald Baumgartner
  855. Dept. of Computer Sciences, Purdue University,  W. Lafayette, IN 47907
  856. Internet: gb@cs.purdue.edu, UUCP: ...!{decwrl,gatech,ucbvax}!purdue!gb
  857.  
  858.  
  859. >41 The Texas Persistent Store
  860.  
  861.   The Texas Persistent Store, version 0.1
  862.  
  863. Texas is a simple, portable, high-performance and (best of all) FREE
  864. persistent store for C++ using "pointer swizzling at page fault time"
  865. to translate persistent addresses to hardware-supported virtual addresses.
  866.  
  867. Texas is built on top of a normal virtual memory, and relies on the
  868. underlying virtual memory system for caching.  It uses user-level virtual
  869. memory protections to control the faulting of data from a persistent storage
  870. file into virtual memory.
  871.  
  872. All addresses in a page are translated from a persistent format to
  873. actual virtual addresses when the page is brought into virtual memory,
  874. and subsequent memory references (including pointer traversals) are
  875. just as fast as for non-persistent data.
  876.  
  877. Texas is easy to use, and is implemented as a UNIX library.  It is small
  878. and can be linked into applications.  It requires no special operating 
  879. system privileges, and persistence is orthogonal to type---objects may be 
  880. allocated on either a conventional transient heap, or on the persistent
  881. heap, as desired.
  882.  
  883. Texas supports simple checkpointing of heap data.  A log-structured storage
  884. module is under development, and will provide fast checkpointing of small
  885. transactions.
  886.  
  887. Texas is beta software, and the current prerelease version supports only
  888. simple single-machine operation.  Future releases will support client-server
  889. operation, a flexible access control scheme, and transaction support.
  890.  
  891. Texas currently runs under SunOS and ULTRIX, using Sun CC or GNU C++.
  892. Porting to other modern systems (e.g., OS/2, WNT, Mach) should be easy---it
  893. requires only mprotect(), signal(), and sbrk() calls (or their equivalent)
  894. to control virtual memory protection setting and trap handling.
  895.  
  896. Papers about the pointer swizzling scheme and Texas itself (referenced
  897. below) are available via anonymous ftp from cs.utexas.edu (IP address
  898. 128.83.139.9), as postscript files swizz.ps and texaspstore.ps in the
  899. directory pub/garbage.
  900.  
  901. The source code for Texas is also available, in the directory
  902. pub/garbage/texas.
  903.  
  904. References:
  905.  
  906. Paul R. Wilson and Sheetal V. Kakkad, "Pointer Swizzling at Page Fault
  907. Time: Efficiently and Compatibly Supporting Huge Address Spaces on Standard
  908. Hardware," Proc. Second Int'l. Workshop on Object Orientation in Operating
  909. Systems, Sept. 1992, Dourdan, France, pp. 364--377.
  910.  
  911. Vivek Singhal, Sheetal V. Kakkad, and Paul R. Wilson, "Texas: an Efficient,
  912. Portable Persistent Store", Proc. Fifth Int'l. Workshop on Persistent Object
  913. Systems, Sept. 1992, San Miniato, Italy, pp. 11-33.
  914.  
  915.  
  916. >42 OSE C++lib
  917.  
  918. From: Graham.Dumpleton@nms.otc.com.au (Graham Dumpleton)
  919. Date: Tue, 9 May 1995 08:58:55 +1000 (EST)
  920.  
  921. OSE is a collection of programming tools and class libraries for C++. The
  922. core of the environment is the C++ class libraries, of which three are
  923. provided. These are:
  924.  
  925.   OTCLIB - A library of generic components, including support for error
  926.   handling, error message logging, error recovery, program debugging,
  927.   memory management, resource management, generic collections, text
  928.   manipulation, date/time, operating system interfacing and event driven
  929.   systems.
  930.  
  931.   OUXLIB - A library of components which primarily extends classes in the
  932.   OTCLIB library to support features specific to the UNIX operating
  933.   system.
  934.  
  935.   OTKLIB - A library of components which builds on the OTCLIB and OUXLIB
  936.   libraries to allow integration of the TCL/TK library into applications
  937.   using the event driven systems framework provided by the OTCLIB
  938.   library.
  939.  
  940. The C++ libraries are portable to a wide range of C++ compilers on the
  941. UNIX platform. Supported C++ compilers include those from ATT/USL (CFRONT),
  942. CenterLine, DEC, HP, IBM, Lucid, ObjectStore, SGI (CFRONT), SGI (DELTA),
  943. Sun (CFRONT) and Sun (NATIVE), as well as the freely available GNU C++
  944. compiler. If your C++ compiler does not support templates, it is possible
  945. to use a template preprocessor which is supplied with OSE. If your C++
  946. compiler support exceptions, they will be used. Portability to all the
  947. major variants of UNIX has been achieved. Supported platforms include AIX,
  948. BSD, HPUX, IRIX, Linux, NeXT, OSF, SCO, Solaris, SunOS, SYSV and Ultrix. In
  949. addition to being available under UNIX, the OTCLIB library has been ported
  950. to DOS, OS/2 and Windows NT using Borland, Watcom and Microsoft C++
  951. compilers.
  952.  
  953. The C++ libraries have been fully integrated with the ObjectStore OODBMS,
  954. allowing instances of classes from the C++ libraries to be made persistent.
  955. The C++ libraries can also be used in conjunction with applications using
  956. Versant, although in this case instances of classes from the C++ libraries
  957. cannot be made persistent.
  958.  
  959. In addition to the C++ libraries, a build environment is provided. The
  960. build environment greatly simplifies the writing of makefiles, making the
  961. the task of building applications, as well as the generation and
  962. installation of both static and shared libraries easy. The details of
  963. template instantiation for many of the C++ compilers is also hidden, making
  964. it possible to write makefiles which are portable between different C++
  965. compilers as well as different platforms. The build environment also
  966. supports tasks such as schema generation for the ObjectStore and Versant
  967. OODBMS, and testing of applications using tools such as Purify, Quantify,
  968. PureCoverage, TestCenter and Sentinel.
  969.  
  970. Comprehensive documentation for the C++ libraries and build environment is
  971. provided. Documentation for the C++ libraries comes in the form of a UNIX
  972. style manual page for each class and higher level documentation giving
  973. examples of how to use the classes. The UNIX style manual pages are
  974. generated from the class header files using documentation extraction tools.
  975. These tools are provided with OSE and are capable of generating both UNIX
  976. style manual pages and Frame documents.
  977.  
  978. Development of OSE commenced in 1990, being made freely available via the
  979. Internet in 1993. OSE was winner of CODA'94, the ComputerWorld Object
  980. Developer Awards, held in conjunction with ObjectWorld in Sydney,
  981. Australia. The category in which OSE was a winner was "Best implementation
  982. of a reusable development environment for company deployment".
  983.  
  984. OSE (source code and documentation) can be obtained via anonymous ftp from:
  985.  
  986.   Europe:
  987.  
  988.     ftp.th-darmstadt.de [130.83.55.75]
  989.     directory pub/programming/languages/C++/class-libraries/OSE
  990.  
  991.   United States
  992.  
  993.     -- looking for new site
  994.  
  995.   Australia:
  996.  
  997.     cbr.dit.csiro.au [192.41.146.1]
  998.     directory pub/SEG/ose
  999.  
  1000. Documentation for OSE is also available online via WWW at:
  1001.  
  1002.   http://www.telstra.com.au/docs/ose/doc/ose-home.html
  1003.  
  1004. Questions regarding OSE can be sent to;
  1005.  
  1006.   ose@nms.otc.com.au
  1007.  
  1008. A mailing list for discussion of OSE, and a mail server providing a list of
  1009. known problems and fixes also exists.
  1010.  
  1011. OSE is made freely available by Dumpleton Software Consulting Pty Limited.
  1012. OSE contains licensed program materials which are the copyright of Telstra
  1013. Corporation Limited and which are licensed to Dumpleton Software Consulting
  1014. Pty Limited by Telstra Corporation Limited.
  1015.  
  1016. >43 Traces,kiczales,MOP,DI
  1017.  
  1018. From: gregor@parc.xerox.com (Gregor Kiczales)
  1019. Subject: Re: Dynamic Objects
  1020. In-Reply-To: rjh@geodesic.com's message of 25 Aug 93 21:52:56 GMT
  1021. Message-ID: <GREGOR.93Sep3093506@calvin.parc.xerox.com>
  1022. Organization: Xerox Palo Alto Research Center
  1023. References: <16C357BF0.MFARMER@utcvm.utc.edu> <1993Aug25.215256.8031@midway.uchicago.edu>
  1024. Date: 3 Sep 93 09:35:06
  1025.  
  1026. Earlier in this series of messages, Craig Chambers and others mentioned
  1027. his ECOOP'93 paper on predicate classes, which provide a powerful handle
  1028. on some of the problems that have been mentioned in this series of
  1029. messages, specifically, how dynamic changes to an object or its context
  1030. can be harnessed to reliably effect the object's (message receipt)
  1031. behavior.  As I see it, predicate classes are a key step towards solving
  1032. one of the most frustrating problems of OO programming: the struggle
  1033. over whether to encode some difference among objects in the value of a
  1034. slot (that is one of its parts) or in the object's `method table' (class
  1035. or that which it is one-of).
  1036.  
  1037. A closely related problem, that has also come up in this series of
  1038. messages, is how so-called factory objects can dynamically select the
  1039. behavior of the objects they create.  We have developed a new OO
  1040. language concept called Traces, that can be used to make much more
  1041. powerful factory objects, as well as handle some of the things predicate
  1042. classes do.  The two ideas are similar in that they both make behavior
  1043. selection a much more dynamic phenomena.
  1044.  
  1045. My ISOTAS'93 paper presents the concept of Traces and shows it
  1046. application to some problems.  This paper is available for anonymous FTP
  1047. from ftp.parc.xerox.com, in the /pub/mops directory.  The file is
  1048. traces.ps.
  1049.  
  1050. Gregor
  1051.  
  1052. Following is the abstract from the paper:
  1053.   
  1054. Object-oriented techniques are a powerful tool for making a system
  1055. end-programmer specializable.  But, in cases where the system not only
  1056. accepts objects as input, but also creates objects internally,
  1057. specialization has been more difficult.  This has been referred to as
  1058. the ``make isn't generic problem.''  We present a new \oo{} language
  1059. concept, called traces, that we have used successfully to support
  1060. specialization in cases that were previously cumbersome.
  1061.   
  1062. The concept of traces makes a fundamental separation between two kinds
  1063. of inheritance in \oo{} languages: inheritance of default implementation
  1064. -- an aspect of code sharing; and inheritance of specialization, a
  1065. sometimes static, sometimes dynamic phenomenon.
  1066.  
  1067.  
  1068. >44 C++ coding standard
  1069.  
  1070. From: metz@iam.unibe.ch (Igor Metz)
  1071. Subject: Re: C++ coding standard
  1072. Organization: Dept. of CS, University of Berne, Switzerland
  1073. Date: Tue, 7 Sep 1993 07:08:21 GMT
  1074.  
  1075. euagate.eua.ericsson.se   (Internet Address: 134.138.134.16)
  1076. ~ftp/pub/eua/c++/rules.ps.Z
  1077.  
  1078. [Also an archive site.  E.g. Coplien includes a dir of C++ examples]
  1079.  
  1080.  
  1081. >45 Kala Archive
  1082.  
  1083. From: sss@world.std.com (Sergiu S Simmel)
  1084. Subject: Kala White Paper now available via anonymous ftp
  1085. Message-ID: <CD4MyB.Hsn@world.std.com>
  1086. Organization: Penobscot Development Corporation, Cambridge MA
  1087. Date: Fri, 10 Sep 1993 07:18:11 GMT
  1088.  
  1089. An 8-page paper providing an overview of what Kala is and what Kala is
  1090. for is now available, in PostScript format, in the Kala Archive. The
  1091. file is accessible, via anonymous FTP, at the following location:
  1092.  
  1093.           anonymous@world.std.com:/pub/kala/TechDocs/Overview.ps
  1094.  
  1095. The outline is the following
  1096.  
  1097.         1 What is Kala For?
  1098.         2 Software Infrastructure
  1099.                 Persistent Data and Persistent Stores
  1100.         3 Data Transfer
  1101.         4 Data Visibility
  1102.                 Changing Visibility
  1103.                 Sharing Visibility
  1104.                 Transactions
  1105.                 Versions
  1106.         5 Runtime and Architectural Models
  1107.         6 Relationship to Other Technologies
  1108.  
  1109. This paper is targeted towards those who don't know anything about
  1110. Kala and would like to find out a bit in 10 pages or less.
  1111.  
  1112. Enjoy!
  1113.  
  1114. P.S. For those of you who do not have FTP access and would like to
  1115.      obtain this file, please send a brief e-mail message to
  1116.      info@Kala.com, requesting that the file be e-mailed to you.
  1117.      Beware that the file is approximately 425Kbytes long (the paper
  1118.      contains 13 illustrations!).
  1119.  
  1120.  
  1121. >46 BeBOP(seq,par,LP,OO,meta)
  1122.  
  1123. From: ad@munta.cs.mu.OZ.AU (Andrew Davison)
  1124. Subject: BeBOP v.1.0 Available
  1125. Message-ID: <9325614.15552@mulga.cs.mu.OZ.AU>
  1126. Organization: Department of Computer Sci, University of Melbourne
  1127. Follow-Up: comp.parallel
  1128. Date: Mon, 13 Sep 1993 04:08:41 GMT
  1129.  
  1130.  BeBOP and bp Version 1.0 now available
  1131.  ======================================
  1132.  
  1133.  What is BeBOP?
  1134.  ==============
  1135. The language BeBOP is a unique combination of sequential 
  1136. and parallel Logic Programming (LP), object oriented 
  1137. programming and meta-level programming. 
  1138.  
  1139. The LP component offers both don't know non-determinism
  1140. and stream AND-parallelism, a combination not possible 
  1141. with concurrent LP languages. 
  1142.  
  1143. BeBOP's object oriented features include object IDs, 
  1144. encapsulation, message passing, state updating, and 
  1145. object behaviour modification. 
  1146.  
  1147. The meta-level capabilities are based on the treatment 
  1148. of Prolog theories as first order entities, which 
  1149. enables them to be updated easily, and for fragments 
  1150. to be passed between objects in messages.
  1151.  
  1152. BeBOP is implemented by translation down to NU-Prolog,
  1153. and its parallel extension, PNU-Prolog. An unusual
  1154. aspect of this is the way that object IDs are utilized 
  1155. as a communication mechanism between objects.
  1156.  
  1157.  What is bp?
  1158.  ===========
  1159. The bp interactive interpreter supports BeBOP programming 
  1160. by allowing the flexible invocation of objects, and 
  1161. offering the means for setting up communication links 
  1162. between objects at any time. An incidental benefit is 
  1163. the ability to use `global' variables in queries. Since 
  1164. bp is an augmentation of the NU-Prolog np system, objects 
  1165. and Prolog goals can be combined, and a by-product is 
  1166. that the floundering of Prolog queries is avoided.
  1167.  
  1168.  
  1169.  Where are they?
  1170.  ===============
  1171. The BeBOP system (BeBOP and bp), and the PNU-Prolog 
  1172. preprocessor pnp, can be found at the anonymous ftp 
  1173. site munnari.oz.au (128.250.1.21), in the directory 
  1174. pub as the file bebop.tar.Z. Remember to use binary 
  1175. mode when copying it.
  1176.  
  1177. The release comes with a user manual, several papers 
  1178. (in Postscript format), sample programs, and source code.
  1179.  
  1180.  
  1181.  System requirements
  1182.  ===================
  1183. The BeBOP system requires the following:
  1184.  
  1185. * The NU-Prolog system, compiler and interpreter
  1186. * The pnp preprocessor 
  1187.   (this is included as part of the BeBOP system release)
  1188. * GCC or similar compiler
  1189. * Yacc (or Bison) and Lex
  1190.  
  1191.  
  1192.  For more details, contact:
  1193.  ==========================
  1194.         Andrew Davison
  1195.         Dept. of Computer Science
  1196.         University of Melbourne
  1197.         Parkville, Victoria 3052
  1198.         Australia
  1199.  
  1200. Email:  ad@cs.mu.oz.au
  1201. Fax:    +61 3 348 1184
  1202. Phone:  +61 3 287 9172 / 9101
  1203. Telex:  AA 35185
  1204.  
  1205.  
  1206. >47 Knowledge Media, Massive cd-rom, lots of freeware
  1207.  
  1208. A "Resource Library" of cd-rom discs .  CDs for language/OS, graphics, multi-
  1209. media, mega-media (3), and audio.  "Gathered from the resources of the
  1210. Internet, CompuServe, Genie, BIX, and other BBS's".  Some shareware.  Should be
  1211. available at your local software store.
  1212.  
  1213. From the back of the Languages CD:
  1214.  
  1215.   'Over 100 Languages'
  1216.         ...
  1217.  
  1218. This is the largest collection of compilers, interpreters, libraries, and
  1219. source code for standard and experimental computer languages and operating
  1220. systems ever assembled.  A must for anyone interested in computer programming,
  1221. this disc is just right for everyone, whether he or she is a researcher,
  1222. student, or an interested hobbist.
  1223.  
  1224. Knowledge Media Inc.
  1225. Paradise, CA  95969 USA
  1226.  
  1227.  
  1228. >48 u++, C++ Trans. and Concry RTS
  1229.  
  1230. From: nat@nataa.frmug.fr.net (Nat Makarevitch)
  1231. Subject: Re: 'Concurrent Objects' - Suggestions needed
  1232. Date: 10 Oct 1993 02:41:15 GMT
  1233. Organization: LIVIA
  1234.  
  1235.        u++ - uC++ Translator and Concurrency Runtime System
  1236.  
  1237. DESCRIPTION
  1238. The u++ command introduces  a  translator  pass  over  the
  1239. specified source files after the C preprocessor and before
  1240. the actual C++ compilation.  The translator converts  sev-
  1241. eral  new  uC++  constructs  into C++ statements.  The u++
  1242. command also provides  the  runtime  concurrency library,
  1243. which must be linked with each uC++ application.
  1244.  
  1245.                                                                  
  1246. REFERENCES                                                       
  1247. uC++:  Concurrency in the Object-Oriented Language C++, by      
  1248. P.A.  Buhr,  G.  Ditchfield,  R.A.   Stroobosscher,   B.M.
  1249. Younger, C.R.  Zarnke;   Software-Practise and Experience,
  1250. 22(2):137--172, February 1992.  This paper describes  uC++
  1251. v2.0, which has been significantly extended.
  1252.  
  1253. The  uC++  system is available via anonymous FTP
  1254. from watmsg.UWaterloo.ca:pub/uSystem.  A license agreement
  1255. is required to use uC++.
  1256.  
  1257.  
  1258. >49 Real Time
  1259.  
  1260. From: dstewart+@cs.cmu.edu (David B Stewart)
  1261. Subject: Re: Object-Oriented Systems and Realtime
  1262. Organization: The Robotics Institute, Carnegie Mellon University
  1263. Date: Mon, 11 Oct 1993 16:51:19 GMT
  1264.  
  1265. In article <1993Oct11.082519.23058@cs.tcd.ie>,
  1266. Chris Zimmermann <czimmerm@cs.tcd.ie> wrote:
  1267. >Hi community:
  1268. >
  1269. >What is the state of the art concerning real time in 
  1270. >object-oriented systems (if any)? By this, I mean the
  1271. >marriage of more or less traditional real time systems
  1272. >(including systems concerned with "soft" real time aspects
  1273. >like multimedia) with the OO paradigm.
  1274. >[...]
  1275.  
  1276. We've done significant work in that area.  Check out the following tech
  1277. report:
  1278.  
  1279. D. B. Stewart, R. A. Volpe, and P. K. Khosla, "Design of Dynamically
  1280.     Reconfigurable Real-Time Software using Port-Based Objects," 
  1281.     Carnegie Mellon University Tech Report #CMU-RI-TR-93-11, July 1993.
  1282.  
  1283.     Abstract: The current development of applications for sensor-based
  1284.     robotic and automation (R&A) systems is typically a `one-of-a-kind'
  1285.     process, where most software is developed from scratch, even though
  1286.     much of the code is similar to code written for other applications.
  1287.     The cost of these systems can be drastically reduced and the capability
  1288.     of these systems improved by providing a suitable software framework
  1289.     for all R&A sys tems. We describe a novel software framework, based on
  1290.     the notion of dynamically reconfigurable software for sensor-based
  1291.     control systems. Tools to support the implementation of this framework
  1292.     have been built into the Chimera 3.0 Real-Time Operating System. The
  1293.     framework provides for the systematic development and predictable
  1294.     execution of flexible R&A applications while maintaining the ability to
  1295.     reuse code from previous applications. It combines object-oriented
  1296.     design of software with port-automaton design of digital control
  1297.     systems. A control module is an instance of a class of port-based
  1298.     objects. A task set is formed by integrating objects from a module
  1299.     library to form a specific configuration. An implementation using
  1300.     global state variables for the automatic integration of port-based
  1301.     objects is presented. A control subsystem is a collection of jobs
  1302.     which are executed one at a time, and can be programmed by a user.
  1303.     Multiple control subsystems can execute in parallel, and operate
  1304.     either independently or cooperatively. One of the fundamental concepts
  1305.     of reconfigurable software design is that modules are developed
  1306.     independent of the target hardware. Our framework defines classes of
  1307.     reconfigurable device driver objects for proving hardware independence
  1308.     to I/O devices, sensors, actuators, and special purpose processors.
  1309.     Hardware independent real-time communication mechanisms for
  1310.     inter-subsystem communication are also described. Along with providing
  1311.     a foundation for design of dynamically reconfigurable real-time
  1312.     software, we are also developing many modules for the control module,
  1313.     device driver, and subroutine libraries. As the libraries continue to
  1314.     grow, they will form the basis of code that can eventually be used by
  1315.     future R&A applications. There will no longer be a need for developing
  1316.     software from scratch for new applications, since many required modules
  1317.     will already be available in one of the libraries.  
  1318.  
  1319. This report is available via anonymous FTP as follows:
  1320.  
  1321.     % ftp IUS4.IUS.CS.CMU.EDU    (128.2.209.143)
  1322.     Name:       anonymous
  1323.     Password:   yourname@yourmachine
  1324.     ftp> binary
  1325.     ftp> cd /usr/chimera/public
  1326.     ftp> get CMU_RI_TR_93_11.ps.Z
  1327.     ftp> quit
  1328.     % uncompress CMU_RI_TR_93_11.ps.Z
  1329.     % lpr CMU_RI_TR_93_11.ps    (must be a postscript printer)
  1330.  
  1331. For more information, 'finger chimera@cmu.edu'.
  1332.  
  1333. >50 Ada95 (compiler, GNU)
  1334.  
  1335. From: stt@spock.camb.inmet.com (Tucker Taft)
  1336. Subject: Re: which language to use ...?
  1337. Organization: Intermetrics, Inc.
  1338. Date: Mon, 1 Nov 1993 23:22:42 GMT
  1339.  
  1340.  >[...]
  1341.  
  1342. Also, there is a preliminary release of a GNU-GCC-based Ada 9X
  1343. compiler available from NYU on cs.nyu.edu in pub/gnat/...
  1344. The front end is written in Ada itself; the back end
  1345. is the usual GCC back end (enhanced as appropriate).
  1346.  
  1347. S. Tucker Taft  stt@inmet.com
  1348. Intermetrics, Inc.
  1349. Cambridge, MA  02138
  1350.  
  1351.  
  1352. >51 OO Course Slides
  1353.  
  1354. From: wellerd@ajpo.sei.cmu.edu (David Weller)
  1355. Subject: Re: Slides on OOP or OMT wanted
  1356. Organization: Sigma Software Engineering, Inc.
  1357. Date: Fri, 5 Nov 1993 11:01:44 EST
  1358.  
  1359. In article <2bdot7$3nr@news-rocq.inria.fr> ziane@lolita.inria.fr (Mikal Ziane (Univ. Paris 5 and INRIA) ) writes:
  1360. >
  1361. >Hello netters,
  1362. >
  1363. >Is anybody aware of public domain slides available on an ftp site ?
  1364. >I'd like slides on OO programming or OO design methods (esp. OMT).
  1365. >I know I am crazy to ask for that but someone told me he saw
  1366. >a very good C++ course on some ftp site ! (he does not remember which one 
  1367. >unfortunatemy)
  1368. >
  1369.  
  1370. It's true!  On WUArchive (wuarchive.wustl.edu) there is a series of
  1371. slides developed in Microsoft's PowerPoint.  The course material
  1372. includes lesson plans, tests, and workbooks, along with full notes
  1373. accompanying each slide.
  1374.  
  1375. There's one _little_ catch -- it's in the Public Ada Library.  Now,
  1376. the OOP course (there's three courses, one on OOD, OOP, and Software
  1377. Engineering) covers both C++ and Ada.  It was designed to let the
  1378. students work in both languages to get an objective opinion of the
  1379. pluses and minuses of each language (gee, what a concept!).
  1380.