comp.lang.ada
 help / color / mirror / Atom feed
From: Hadrien Grasland <hadrien.grasland@gmail.com>
Subject: Re: Task interface and entries with aliased parameters
Date: Wed, 21 Oct 2015 12:45:58 -0700 (PDT)
Date: 2015-10-21T12:45:58-07:00	[thread overview]
Message-ID: <d3895094-825e-4263-8f9b-cc0d1a06f015@googlegroups.com> (raw)
In-Reply-To: <1e09jksdqcfyv.8f80k06gl5ye$.dlg@40tude.net>

> He possibly meant Java interfaces as opposed to existing Ada 95 abstract
> types. Ada 95 abstract type did everything Java interface do and more.
> 
> Interface as a separate type is indeed worthless. Interface as properties
> of a type, a package, a subroutine is more than useful. It is impossible to
> program anything without the concept of the interface.
> 
> If Ada were a better language you would be able to strip the implementation
> from any type:
> 
> Interface = Type - Implementation

I like the idea of interfaces as separate types because it solves all the problems of multiple inheritance, and provides a very nice way to specify a shared interface to multiple objects and have the compiler enforce that shared interface as the objects are refactored, rewritten, etc.

Regarding the last point, would you mean having a type attribute like Type'Interface, that defines an interface composed of all of the type's primitive operations ?

But if so, is it really reasonable to define an interface from an implementation ? Shouldn't the interface be considered as a separate entity that is shared by multiple types ?

  reply	other threads:[~2015-10-21 19:45 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-21  8:54 Task interface and entries with aliased parameters Hadrien Grasland
2015-10-21 15:52 ` AdaMagica
2015-10-21 17:01 ` Jeffrey R. Carter
2015-10-21 18:06   ` Hadrien Grasland
2015-10-21 19:21   ` Dmitry A. Kazakov
2015-10-21 19:45     ` Hadrien Grasland [this message]
2015-10-21 20:19       ` Dmitry A. Kazakov
2015-10-21 19:46     ` Jeffrey R. Carter
2015-10-21 19:59       ` Dmitry A. Kazakov
2015-10-28 17:48     ` Randy Brukardt
2015-10-28 19:34       ` Bob Duff
2015-10-28 22:23         ` Randy Brukardt
2015-10-28 19:47       ` Paul Rubin
2015-10-28 22:24         ` Randy Brukardt
2015-10-28 21:13       ` Dmitry A. Kazakov
2015-10-30 19:48       ` Eryndlia Mavourneen
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox