HDTenEightyP/NetNews huggingface dataset:
From: mfeldman@seas.gwu.edu (Michael Feldman)
Subject: Re: Computer languages
Organization: George Washington University
Date: Fri, 20 Nov 1992 21:53:39 GMT

In article <9211121331.AA21974@efftoo.boeing.com> crispen@efftoo.boeing.com (crispen) writes:
>
[stuff deleted]

>A buddy of mine just did a big interactive text and file thing using
>Ada and it took him 3 days.  I'm certain he could have done it in C
>in half a morning.
>
And for 1-shot text stuff, I use Snobol4. Really.
(There's a great freely-distributed version for PC's, and some
nice industrial strength ones as well).

Mike
------------------------------------------------------------------------
Michael B. Feldman
co-chair, SIGAda Education Committee

Professor, Dept. of Electrical Engineering and Computer Science
School of Engineering and Applied Science
The George Washington University
Washington, DC 20052 USA
(202) 994-5253 (voice)
(202) 994-5296 (fax)
mfeldman@seas.gwu.edu (Internet)

"Americans wants the fruits of patience -- and they want them now."
------------------------------------------------------------------------
Newsgroups: comp.lang.ada
From: ucaa2385@iris3.csv.ica.uni-stuttgart.de (Peter Hermann)
Subject: Re: Outputting quote marks
Organization: ica2
Date: Mon, 23 Nov 1992 12:50:38 GMT

In article <By13E7.4q5@plato.ds.boeing.com> rosen@plato.ds.boeing.com (Robert Rosen) writes:
>I need to use Text_IO to output a string consisting of three
>consecutive quote marks (""").  How can I do it?  Trying 
>  Text_IO.Put_Line (""""");
>produces a compilation error.

I only know the solution for one single quotation mark:
text_io.put_line("""");
maybe Ada does not allow three of them?
regards,
Peter Hermann
Newsgroups: comp.lang.ada
From: degrant@seq.uncwil.edu (DeGrant, Kenneth L)
Subject: Need PC Compiler
Organization: University of North Carolina at Wilmington
Date: Tue, 17 Nov 1992 14:05:04 GMT

    I am looking for a PC Ada compiler that supports source level 
debugging.  I have Turbo-Debugger and would like that or an inherent
one with the package.  I will pay for one if necessary, but would like
shareware or to test someones 'alpha-beta' versions.  If someone knows
of one, please let me know.  

    ( My Ada instructor, soon to be my compiler instructor is REALLY (hint)
      wanting me to do my compiler in Ada ).

HEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEELLLLLLLLLLLLLLLLLLLLLP!!!

Kenneth DeGrant

degrant@seq.uncwil.edu
Newsgroups: comp.lang.ada
From: tne@world.std.com (Thomas N Erickson)
Subject: Re: Looking for Ada bindings to MIL-STD-1553B ???
Organization: The World Public Access UNIX, Brookline, MA
Date: Wed, 18 Nov 1992 04:36:29 GMT

eyring@cc.utah.edu writes:

>Looking for Ada Bindings to MIL-STD-1553B.

>Are these available via anonymous ftp anywhere?  

>I read in the AdaIC Newsletter, page 5. September 1992,
>that they were available on the AdaIC Bulletin Board.
>I looked there but couldn't find them.  

>Does anyone know where the AJPO host is.  The article
>says they are there also.

>Can I ftp to it?

>Thanks for your help in advance.


The AJPO host is at   ajpo.sei.cmu.edu

You can ftp there.


Tom Erickson

-- 
Tom Erickson
Alsys
tne@world.std.com
Newsgroups: comp.lang.ada
From: stt@spock.camb.inmet.com (Tucker Taft)
Subject: Re: null arrays
Organization: Intermetrics Inc, Cambridge MA
Date: Fri, 20 Nov 1992 20:38:18 GMT

In article <dnsurber.722098125@node_26400> 
  dnsurber@lescsse.jsc.nasa.gov (Douglas N. Surber) writes:

>In <BxvtCA.LM1@dale.cts.com> jhb@dale.cts.com (John Bollenbacher) writes:
>
>>procedure TEST is
>
>>  subtype T is NATURAL range 0 .. 10;
>
>>  type ARR is array (T range <>) of BOOLEAN;
>>  
>>  type A(N : T := 0) is record 
>>    DATA : ARR(1..N);
>>  end record;  
>>  I : INTEGER;
>>  O : A := (3, (TRUE, FALSE, TRUE));
>>  
>>  N1 : constant ARR := O.DATA(1..0) & O.DATA(1..0);
>>  N2 : constant ARR := O.DATA(1..0) & O.DATA(3..2);
>
>N2'first = 3 (LRM 4.5.3 4)
>
>>begin
>>  I := N1'LENGTH; -- I = 0 
>>  I := N2'LENGTH; -- I = 0
>>  O := (0, N1);   -- does not raise constraint
>>  O := (0, N2);   -- raises constraint
> 
>O.Data'first /= N2'first thus raises constraint error (LRM 4.3.1 3, 3.3 4)
>
>>end TEST; 
>
>The trick here is that the constraint error is raised in forming the
>aggregate, not in the assignment.  LRM 4.3.1 3 says "A check is made that
>the value of each subcomponent of the aggregate _belongs_ to the subtype
>of this component."  The magic word is "belongs".  LRM 3.3 4 says "a value
>is said to belong to a subtype of a given type if it belongs to the type
>and satisfies the constraint." The bounds of N2, i.e. 3 and 2, do not
>satisfy the constraint of the aggregate, i.e. in the range 1 .. 0.  If this
>were an array assignment rather than an aggregate, it would work.

This problem is alleviated in Ada 9X by providing "sliding" (implicit
array subtype conversion) in essentially all contexts where
it might be useful.  In particular, in Ada 9X, the bounds of
N2 (i.e. 3..2) would "slide" to match the bounds of the DATA
component (i.e. 1..0) as part of constructing the aggregate.

Until you convince your implementor to provide a "-9X" mode
in their compiler ;-), you might want to define a function that "slides"
its parameter and then returns it.  For example, here is a function
that slides its parameter to have a low bound of 1 (if needed, you
could define one that took the low bound desired as an additional
parameter):

   function Slide(A : ARR) return ARR is
       subtype S is ARR(1..A'Length);
   begin
       return S(A);  -- Explicit array subtype conversion
   end Slide;

A "pragma INLINE" might be appropriate here.

>Douglas Surber
>Lockheed
>Houston, TX

S. Tucker Taft    stt@inmet.com
Ada 9X Mapping/Revision Team
Intermetrics, Inc.
Cambridge, MA  02138
From: btk@aber.ac.uk (Benjamin Thomas Ketteridge)
Newsgroups: comp.lang.ada
Subject: Not Ashamed To Use Ada! (was: Re: More Ashamedness of Ada)
Date: 19 Nov 92 11:35:20 GMT
Followup-To: <112@fedfil.UUCP>
Organization: The Cottage of the 2 Bears, Aberystwyth.

In article <112@fedfil.UUCP>, Ted Holden writes:

> You wouldn't expect them to write anything that complex in a goof language
> like Ada, would you?

I would have prefered to have responded to your article by email, but you don't
appear to have a personal address.

If you're saying this kind of thing about Ada, why do you bother reading/writing
to comp.lang.ada?
For your information, of the 3 or 4 Ada compilers I have used,
the DEC one is the only one where the main program is in C, and, if I guess right,
the reason for that design choice by DEC is so that they can use 'ld' to load and
bind the executables - why re-invent the wheel?

+--------------------------------------------------------------------------+
|    _|--|_    | Disclaimer: I know nothing! Do you really know anything?  |
|     (\/)     +-------------------------------+---------------------------+
|      vv      | We've a Gremlin in the works! |      btk@aber.ac.uk       |
+--------------+-------------------------------+---------------------------+
Newsgroups: comp.lang.ada
From: mfeldman@seas.gwu.edu (Michael Feldman)
Subject: Re: Can Strassman spell "Ada"?
Organization: George Washington University
Date: Tue, 24 Nov 1992 02:24:41 GMT

In article <1992Nov23.215046.29287@mcc.com> breland@cobweb.mcc.com (Mark Breland) writes:
>
>Apparently Greg was not at TRI-Ada '93 last week...the following were all
>exhibitors at the conference:
>
>Ada 9X Project Office
>Ada Information Clearinghouse (ADAIC)
>Army Reuse Center
>DoD/Center for Software Reuse Operations
>Software Engineering Institute (SEI)
>Software Technology for Adaptable, Reliable Systems (STARS)
>
I think you've inadvertently made Greg's point for him. I was at Tri-Ada
as well, and a number of sessions (including one in which I was a panelist)
made much of the fact that while these organizations (and the Ada vendors
as well) always show up at _Ada_ conferences, they almost never show up at
_non-Ada_ conferences, where they'd have a chance at introducing Ada to
technical people outside the incestuous DoD marketplace.

As it happens, Comdex was also last week. The Ada vendors were all at
Tri-Ada, with glitzy booths and expensive hospitality suites, preaching -
as usual - to the choir, instead of at Comdex, making the congregation
bigger. I'm with Greg on this one, folks.

The good news is that both public utterances and private meetings with
a number of vendors are giving me the idea that the vendors are - at last! -
waking up to the need to actually do some marketing to sectors of the
industry that are not under a mandate. I'm reserving judgement, but I
think I'm seeing signs of progress. I left the conference feeling 
somewhat more optimistic than I did when I arrived.

Mike Feldman
------------------------------------------------------------------------
Michael B. Feldman
co-chair, SIGAda Education Committee

Professor, Dept. of Electrical Engineering and Computer Science
School of Engineering and Applied Science
The George Washington University
Washington, DC 20052 USA
(202) 994-5253 (voice)
(202) 994-5296 (fax)
mfeldman@seas.gwu.edu (Internet)

"Americans wants the fruits of patience -- and they want them now."
------------------------------------------------------------------------
From: andrewd@cs.adelaide.edu.au (Andrew Dunstan)
Newsgroups: comp.lang.ada
Subject: Re: GNU-NYU Ada project
Date: 24 Nov 1992 04:30:58 GMT
Organization: The University of Adelaide
Distribution: world
NNTP-Posting-Host: achilles.cs.adelaide.edu.au

In article <1992Nov23.010531.16148@u.washington.edu>, nobby@byron.u.washington.edu (Vitaly Shmatikov) writes:
|> In article <1ep7l5INN3kb@huon.itd.adelaide.edu.au> andrewd@cs.adelaide.edu.au (Andrew Dunstan) writes:
|> [... stuff deleted ...]
|> 
|> >This is not quite correct. (This discussion really belongs in comp.compilers.)
|> >The class LL(1) is smaller than the class LALR(1). In fact, the class LL(k) is 
|> >smaller than the class LALR(1) for any k. However. the class LALR(1) = LR(1). This
|> 
|> I believe this is wrong. Lookahead components in LALR(1) states are more
|> general than those of LR(1). There might be situations where reduction of LR(1)
|> to LALR(1) introduces a conflict although I don't have an example handy. 
|> The correct relation is LALR(1) ( LR(1).

I did not say that every LR(1) grammar is LALR(1). This is clearly not true.
What I said was that every language describable by an LR(1) grammar can also
be described by an LALR(1) grammar. This is true. See Fischer & LeBlanc's 
"Crafting A Compiler", or Sippu & Soisalon-Soininen's encyclopaedic 
"Parsing Theory".

-- 
#######################################################################
#  Andrew Dunstan                   #   There's nothing good or bad   #
#  Department of Computer Science   #   but thinking makes it so.     #
#  University of Adelaide           #                                 #
#  South Australia                  #          - Shakespeare          #
#  net: andrewd@cs.adelaide.edu.au  #                                 #
#######################################################################
From: erickson@atlas.cs.nps.navy.mil (David Erickson)
Newsgroups: comp.lang.ada
Subject: TEXT_IO & Tasks
Date: 20 Nov 92 00:35:00 GMT
Organization: Naval Postgraduate School, Monterey CA


Perhaps this is covered in the LRM.  If so, I couldn't find it:

should blocking I/O (e.g. GET & PUT) block only the task which is
executing the I/O?  This seems like a reasonable assumption, but is
it required?  I know that the Meridian and Verdix compilers block
only the task which is executing the I/O.  So, for example, if task A
is executing a GET from stdin, task B can still PUT to stdout while
A is blocked.

-Dave Erickson
Newsgroups: comp.lang.ada
From: obry@flash.bellcore.com (Pascal Obry)
Subject: Re: Outputting quote marks
Organization: /u/obry/.organization
	<1992Nov23.135257.5944@mlb.semi.harris.com>
Date: 23 Nov 92 16:04:44


What about something more readable like :

	ThreeQuotations : constant : ASCII.Quotation &
				     ASCII.Quotation &
				     ASCII.Quotation;

	Text_IO.put (ThreeQuotations);

And this will work fine in ANY compiler.

Pascal.
--

-------------------------------------------------------------------------------
--  Pascal OBRY								     --
--  Room 2D-337				e_mail : obry@bellcore.com  	     --
--  Bellcore								     --
--  445 South Street			voice : 1 - 201 829 4039	     --
--  Post Office Box 1910		FAX   : 1 - 201 829 5981	     --
--  Morristown, New Jersey 07962-1910					     --
-------------------------------------------------------------------------------

  `` inheritance is surely a good answer, but who knows the question ? ''
From: christy@melair.UUCP (Chris Tyson)
Newsgroups: comp.lang.ada
Subject: OS/2 compatible Ada
Summary: Searching for an OS/2 compatible Ada
Keywords: OS/2, Ada
Date: 19 Nov 92 13:20:00 GMT
Organization: Lockheed Canada Inc., Ottawa, Canada

Hi, 

This may be a FAQ, but I haven't seen discussion on it before.
I'm looking for an OS/2 compatible Ada.  If anyone knows of one 
I'd appreciate the info.

Thanks,

Chris
-- 
Chris Tyson                     voice    : (613) 836 6860
Lockheed Canada Inc.            fax      : (613) 836 6566
1 Iber Road                     UUCP     : melair!christy
Stittsville, Ont, Can  K2S 1E6  Internet : christy@melair.lockheed.on.ca
Newsgroups: comp.lang.ada,comp.object
From: chambers@klamath.cs.washington.edu (Craig Chambers)
Subject: Re: OOD, Ada, and Inheritance
Reply-To: chambers@cs.washington.edu
Organization: University of Washington
Date: Fri, 20 Nov 92 20:28:16 GMT

In article <1992Nov20.152625.2770@cis.ohio-state.edu>, weide@elephant.cis.ohio-state.edu (Bruce Weide) writes:
|> In article <1992Nov13.224508.18746@beaver.cs.washington.edu>
|> chambers@cs.washington.edu writes (the only response so far to my
|> request for "good" examples of the need for dynamic selection among
|> multiple implementations of the same abstraction):
|> >
|> >In my implementation of the Self compiler, I use "run-time selection
|> >among different implementation" to good effect in several data
|> >structures.  One of the simplest is a collection of parse tree classes
|> >(in C++), each for a different kind of language construct.  Simulating
|> >this in Ada would require tagged variant records or something, without
|> >behavior attached to each variant.  A more complex data structure is a
|> >control flow graph, with different classes for each kind of CFG node
|> >(e.g. add, branch, merge).  All CFG nodes support a common protocol,
|> >but with widely-varying implementations.  No node knows what kind of
|> >node is its successor or predecessor, only its interface.
|> >
|> 
|> Craig, I don't really understand this example very well as an
|> illustration of the problem at hand.  Perhaps by "multiple
|> implementations" we mean two different things?  I'm thinking of an
|> interface as defining a SINGLE abstract behavior -- not just method
|> name and parameter profile, but also a specification of that behavior
|> in implementation-neutral terms.  Any such behavior might have more
|> than one possible implementation.
|> 
|> It sounds like you might be thinking of multiple SIMILAR BUT NOT
|> IDENTICAL abstract behaviors, and considering them to be different
|> "implementations" of the same "protocol."  Is this a correct
|> assumption?
|> 
|> Cheers,
|>     -Bruce

Yes, that's what I'm describing.  I've forgotten the original question
by now, but my response was providing a concrete example for dynamic
binding and inclusion polymorphism as commonly found in OO languages.
The alternative (at least in Ada) is quite painful.  In any case, I
don't recall why you're interested in the restricted subcase of
providing multiple implementations with *identical* abstract behavior.
I'm sure it's less common and less useful than collections of
implementations with related abstract behavior.  An example of
multiple implementations with identical behavior is multiple
implementations of a key-value table (lists of pairs or hash tables);
both have the same abstract behavior but different performance
tradeoffs for large and small tables.

-- Craig Chambers
Newsgroups: comp.lang.ada,comp.object
From: rosen@plato.ds.boeing.com (Robert Rosen)
Subject: Outputting quote marks
Organization: Boeing Defense & Space Group
Date: Fri, 20 Nov 1992 18:58:54 GMT

I need to use Text_IO to output a string consisting of three
consecutive quote marks (""").  How can I do it?  Trying 

  Text_IO.Put_Line (""""");

produces a compilation error.

Bob Rosen
Boeing
rosen@goofy.ds.boeing.com
206-773-2852
Newsgroups: comp.lang.ada
From: tne@world.std.com (Thomas N Erickson)
Subject: Re: Need PC Compiler
Organization: The World Public Access UNIX, Brookline, MA
Date: Wed, 18 Nov 1992 04:39:16 GMT

degrant@seq.uncwil.edu (DeGrant, Kenneth L) writes:

>    I am looking for a PC Ada compiler that supports source level 
>debugging.  I have Turbo-Debugger and would like that or an inherent
>one with the package.  I will pay for one if necessary, but would like
>shareware or to test someones 'alpha-beta' versions.  If someone knows
>of one, please let me know.  

>    ( My Ada instructor, soon to be my compiler instructor is REALLY (hint)
>      wanting me to do my compiler in Ada ).


We at Alsys offer source code debugging.  Our systems are available at
special pricing for educational purposes through our LEAP program.

Please contact Scott Dorman (617)270-0030 for more information.


Tom Erickson

-- 
Tom Erickson
Alsys
tne@world.std.com
From: jclander@maestro.mitre.org (Julian C. Lander)
Newsgroups: comp.lang.ada
Subject: Re: HELP! Input/Output of private types
Date: 18 Nov 92 20:49:27 GMT
Reply-To: jclander@maestro.mitre.org (Julian C. Lander)
Organization: The MITRE Corporation, McLean, Va

In article <Bxpwty.H8E@acsu.buffalo.edu>, kist@acsu.buffalo.edu (james e kist) writes:
|> Someone please help! How can I use 'put' on a private type that is not
|> fully delcared in the specification? This is my situation:
|> 
|> generic
|> 	type Element is private;
|> package abcd
|> .
|> .
|> .
|> end abcd;
|> 
|> Now, how do I do I/O on an object that is of type Element? Thanks for any
|> help.

The short answer is that you can't.  The long answer is to change the
generic formal part so that it reads as follows:

generic
   type Element is private;
   with procedure Put_Element (File : in Text_IO.File_Type; The_Elt : in Element);
   with procedure Get_Element (File : in Text_IO.File_Type; The_Elt : out Element);
package abcd
.
.
.
.
end abcd;

This means that the user of the generic package will need to supply
procedures for reading and writing data objects of type Element.  I'd
suggest including File in both profiles, since that lets you write to
any file.  To write to the standard output, you would say Put_Element
(Text_IO.Standard_Output, The_Elt).  (I suppose that even greater
generality would involve reading from and writing to strings, but I 
digress.)

Good luck.

Julian C. Lander
jclander@mitre.orgg
Newsgroups: comp.lang.ada
From: bowman@ajpo.sei.cmu.edu (Carl Bowman)
Subject: Re: Looking for Ada bindings to MIL-STD-1553B ???
Organization: Ada Information Clearinghouse
Date: Wed, 18 Nov 1992 14:07:48 GMT


The AdaIC has not yet posted bindings to MIL-STD-1553B to the BBS or Host.
There are certain procedural matters which must be finished before this can
happen.  We do not have a definite date on completion, but I would recommend
looking for it in a couple of weeks.
From: mark@irvine.com (Mark Schimmel)
Newsgroups: comp.lang.ada
Subject: C to Ada translator
Date: 19 Nov 92 00:17:01 GMT
Organization: Irvine Compiler Corp., Irvine, California, USA

You can now get the 1st release of Irvine Compilers C header file to
Ada translator via anonymous ftp.  The current distribution may not
include your host, but many ports are being worked on.  The most
notable defficiencies are PC-DOS and PC-OS/2.  These are being worked
on and will hopefully be done shortly.

Now, thanks to SGI, you can get your release via:

% ftp sgi.com

ftp> cd c2ada
ftp> binary
ftp> ls

-rw-rw-r--   1 root     0           3859 Nov 18 15:57 README
-rw-rw-r--   1 root     0         172171 Nov 18 15:57 dec-ultrix.tar.Z
-rw-rw-r--   1 root     0         324980 Nov 18 15:57 hp700.tar.Z
-rw-rw-r--   1 root     0         182456 Nov 18 15:57 mips-RISCos.tar.Z
-rw-rw-r--   1 root     0          91937 Nov 18 15:57 rios.tar.Z
-rw-rw-r--   1 root     0         198804 Nov 18 15:57 sgi.tar.Z
-rw-rw-r--   1 root     0         350977 Nov 18 15:57 sparc.tar.Z
-rw-rw-r--   1 root     0         101447 Nov 18 15:57 sun3.tar.Z

ftp> get sparc.tar.Z
ftp> bye

% uncompress sparc.tar
% tar -xf sparc.tar
% ls sparc

Make.deps         c2ada*            cpp*              x11.inc
Makefile          c2ada.1           hello_world.ada
README            cfront*           x11.ada
c.ada             cfront.1          x11.c


I'd be interrested in your reaction to this tool (both positive and
negative).  Your input will affect future revisions.
Newsgroups: comp.lang.ada
Subject: Ada and X/Motif
From: tim@trident.datasys.swri.edu (Timothy J. Barton)
Date: 16 Nov 92 22:20:50 GMT
Organization: Southwest Research Institute
Keywords: Ada, X-Windows, Motif
Summary: Anyone using Ada and Motif?

The FAQ lists several Ada to X/Motif bindings and I am preparing to do
such a project for the AF.  Does anyone have experience with Ada and
X, especially the DEC Ada Motif bindings?  Are the currently available
solutions usable?  I thought I had seen considerable discussion in this
group about several problems with Ada and X (callbacks ?), but unfortunatley
I didn't pay close attention to the thread.  Please email any comments
you have and I'll post a summary in several days.

Is STARS still on "stars.rosslyn.unisys.com" as specified in the FAQ?  My
resolver and nslookup couldn't find an IP number for the name.

Thanks in advance.

----------------------------------------------------------------------------
Timothy J. Barton                         tim@trident.datasys.swri.edu
Senior Research Analyst                   (512) 522-3540
Southwest Research Institute (SwRI)       (512) 522-5499  (Fax)   
San Antonio, Texas  78228-0510
Xref: sparky comp.lang.ada:3281 comp.object:4241
From: ajs@prg.ox.ac.uk (Adolfo Socorro)
Newsgroups: comp.lang.ada,comp.object
Subject: Re: OOD, Ada, and Inheritance
Date: 16 Nov 92 15:09:04 GMT
Reply-To: Adolfo.Socorro@prg.oxford.ac.uk (Adolfo Socorro)
Organization: Oxford University Computing Laboratory, UK
Originator: ajs@ruby.comlab

In article <1992Nov13.203723.26049@cis.ohio-state.edu> weide@elephant.cis.ohio-state.edu (Bruce Weide) writes:
>In article <1992Nov11.042043.9740@inmet.camb.inmet.com>
>stt@spock.camb.inmet.com (Tucker Taft) writes:
>>
>>We also believe that object-oriented approaches are a natural
>>outgrowth of earlier work, in particular abstract-data-type (ADT)-oriented 
>>approaches.  The big thing that OO brings is robust support
>>for abstractions with *multiple* implementations.  Although the
>>concept of multiple implementations of a given abstract data type
>>was always discussed in academic circles, pre-OO languages with
>>abstract data types rarely had good support for multiple implementations.
>>
>
>Good point about multiple implementations, but you don't need OO
>mechanisms like inheritance to get multiple implementations.  For
>example, the idea of multiple implementations is a central feature of
>RESOLVE, which has no OO features except a special kind of
>specification inheritance that has no bearing on multiple
>implementations.  In fact, it seems Ada could be extended with (direct
>language support for) multiple implementations, e.g., by permitting
>separate naming of package specs and bodies and a way of binding them
>together at instantiation time.  See a paper by M. Sitaraman in Proc.
>ICCL, Apr 1992, for some ideas on how this could be done.  

This work is much more older, dating back to the specification language Clear
and more recently to the language LIL. See

  @ARTICLE{Goguen:computer86,
    AUTHOR  = "Goguen, Joseph",
    TITLE   = "Reusing and Interconnecting Software Components",
    JOURNAL = "Computer",
    MONTH   = "February",
    YEAR    = 1986,
    VOLUME  = 19,
    NUMBER  = 2,
    PAGES   = "16-28"}

Cheers,
Adolfo