comp.lang.ada
 help / color / mirror / Atom feed
* Re: Does this model work ?
  1999-05-14  0:00 Does this model work ? Jean-Marten Marchi
  1999-05-14  0:00 ` Al Christians
@ 1999-05-14  0:00 ` dennison
       [not found]   ` <01be9ee1$eca9be10$022a6282@dieppe>
  1999-05-16  0:00   ` Robert Dewar
  1999-05-16  0:00 ` Robert Dewar
  2 siblings, 2 replies; 42+ messages in thread
From: dennison @ 1999-05-14  0:00 UTC (permalink / raw)


In article <373e38e2.31311363@news2.ibm.net>,
  jmarten@ibm.net (Jean-Marten Marchi) wrote:
> After all, with all this Open Source Software movement nowadays, is it
> possible to distribute applications in source code form (rather in
> bytecode form) to various devices or stations?
>
> Compile, link, etc ... are done automatically on the local computer
> and the binaries are stored wherever it is more appropriate.
>
> You can ask the application to execute whenever you want without
> reloading, or you can replace it with a newer version if necessary.

That's what I've found. Ada is great for this, if you are somewhat
careful about portability while you are writing it. We managed to port
the entire current development baseline of our flight simulator
(including a frequency-based scheduler) from vxWorks/GreenHills to
NT/Gnat in a couple of hours. The only OS call in the whole application
so far is a call to set the RT-clock's frequency (we stub that out on
NT, since its not realtime anyway). The rest of the sim compiles on both
platforms with *no* changes.

I don't think this feat would be possible in any other language.

--
T.E.D.


--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-14  0:00 Does this model work ? Jean-Marten Marchi
@ 1999-05-14  0:00 ` Al Christians
  1999-05-14  0:00   ` Jean-Marten Marchi
  1999-05-14  0:00   ` Jean-Marten Marchi
  1999-05-14  0:00 ` dennison
  1999-05-16  0:00 ` Robert Dewar
  2 siblings, 2 replies; 42+ messages in thread
From: Al Christians @ 1999-05-14  0:00 UTC (permalink / raw)


There was some plan to promote that model with the Oberon language
and a system called Juice. I think that a compiler was available
as a browser plug-in.

That language is simple and said to facilitate very fast compilation
with small compilers.  Source code can be relatively compact compared to
executable code, so that transfers (eg over the internet with dial-up
users) can save much more time by transmitting source 
instead of executable than it takes to compile and link the source on
typical end-user machines.  With machines at 300 Mhz and up becoming
common,the differences between fast and slow compilations isn't even
noticeable for non-huge programs, so other languages should be able to
play the same game, too.

Al

Jean-Marten Marchi wrote:
> 
> After all, with all this Open Source Software movement nowadays, is it
> possible to distribute applications in source code form (rather in
> bytecode form) to various devices or stations?
> 
> Compile, link, etc ... are done automatically on the local computer
> and the binaries are stored wherever it is more appropriate.
> 
> You can ask the application to execute whenever you want without
> reloading, or you can replace it with a newer version if necessary.
> 
> I see some benefits to this approach, but, did i miss something?




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-14  0:00 ` Al Christians
@ 1999-05-14  0:00   ` Jean-Marten Marchi
  1999-05-16  0:00     ` Robert Dewar
  1999-05-14  0:00   ` Jean-Marten Marchi
  1 sibling, 1 reply; 42+ messages in thread
From: Jean-Marten Marchi @ 1999-05-14  0:00 UTC (permalink / raw)


On Fri, 14 May 1999 09:41:40 -0700, Al Christians
<achrist@easystreet.com> wrote:

>With machines at 300 Mhz and up becoming
>common,the differences between fast and slow compilations isn't even
>noticeable for non-huge programs, so other languages should be able to
>play the same game, too.

I think so, and maybe, with GNAT, you could download only the output
of GNAT to the gcc compiler? 





^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-14  0:00 ` Al Christians
  1999-05-14  0:00   ` Jean-Marten Marchi
@ 1999-05-14  0:00   ` Jean-Marten Marchi
  1999-05-15  0:00     ` Florian Weimer
  1 sibling, 1 reply; 42+ messages in thread
From: Jean-Marten Marchi @ 1999-05-14  0:00 UTC (permalink / raw)


On Fri, 14 May 1999 09:41:40 -0700, Al Christians
<achrist@easystreet.com> wrote:

>There was some plan to promote that model with the Oberon language
>and a system called Juice. I think that a compiler was available
>as a browser plug-in.

Very interesting,

I imagine that OSS was an utopia at Oberon's times. It would be
interesting to know if today's conditions would make this more
feasible. Perhaps it would be great today ? 

Ah, nothing is new in this business ! Didn't Pascal have a Virtual
Machine too?  







^ permalink raw reply	[flat|nested] 42+ messages in thread

* Does this model work ?
@ 1999-05-14  0:00 Jean-Marten Marchi
  1999-05-14  0:00 ` Al Christians
                   ` (2 more replies)
  0 siblings, 3 replies; 42+ messages in thread
From: Jean-Marten Marchi @ 1999-05-14  0:00 UTC (permalink / raw)


After all, with all this Open Source Software movement nowadays, is it
possible to distribute applications in source code form (rather in
bytecode form) to various devices or stations? 

Compile, link, etc ... are done automatically on the local computer
and the binaries are stored wherever it is more appropriate.

You can ask the application to execute whenever you want without
reloading, or you can replace it with a newer version if necessary.

I see some benefits to this approach, but, did i miss something?





^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-15  0:00     ` Florian Weimer
@ 1999-05-15  0:00       ` bglbv
  1999-05-16  0:00         ` Tom Moran
  1999-05-16  0:00       ` Robert Dewar
  1999-05-16  0:00       ` David Botton
  2 siblings, 1 reply; 42+ messages in thread
From: bglbv @ 1999-05-15  0:00 UTC (permalink / raw)


Florian Weimer <fw@cygnus.stuttgart.netsurf.de> writes:

> jmarten@ibm.net (Jean-Marten Marchi) writes:
> > Ah, nothing is new in this business ! Didn't Pascal have a Virtual
> > Machine too?  

> AFAIK there were quite a few compilers out there which compiled to
> byte code.  You just didn't call it Virtual Machine, then.

Perhaps awareness of IBM's Virtual Machine/Conversational Monitor System
(VM/CMS) was more widespread at the time... "Virtual Machine" (with
capital V and M) might even enjoy trademark status for all I know.




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
       [not found]   ` <01be9ee1$eca9be10$022a6282@dieppe>
@ 1999-05-15  0:00     ` Al Christians
  1999-05-16  0:00       ` Robert Dewar
                         ` (2 more replies)
  1999-05-16  0:00     ` Jean-Marten Marchi
  1 sibling, 3 replies; 42+ messages in thread
From: Al Christians @ 1999-05-15  0:00 UTC (permalink / raw)


Pascal Obry wrote:
> 
> I've not use a language yet that it more portable than Ada.
> 

Here's a hypothetical question that I hope you don't think too
impertinent, and I would be most interested in your learned 
opinion:

    How much of the Ada source code available on your web site 
    can be expected to run without change on a 64-bit machine,  
    under a  64-bit OS, compiled with a 64-bit Ada compiler, 
    when all of these become economically available?  (within a 
    couple of years, I hope)

If Ada code has a portabilitiy advantage, shouldn't Ada advocates
be planning to advance the language's status as the world struggles
with the shift to 64 bit machines over the next few years?  (32-bit PC's 
from Intel were on the street in 1987, but 32-bit software only became
the norm around 1997)


Al




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-14  0:00   ` Jean-Marten Marchi
@ 1999-05-15  0:00     ` Florian Weimer
  1999-05-15  0:00       ` bglbv
                         ` (2 more replies)
  0 siblings, 3 replies; 42+ messages in thread
From: Florian Weimer @ 1999-05-15  0:00 UTC (permalink / raw)


jmarten@ibm.net (Jean-Marten Marchi) writes:

> Ah, nothing is new in this business ! Didn't Pascal have a Virtual
> Machine too?  

AFAIK there were quite a few compilers out there which compiled to
byte code.  You just didn't call it Virtual Machine, then.




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-15  0:00     ` Al Christians
  1999-05-16  0:00       ` Robert Dewar
@ 1999-05-16  0:00       ` Larry Kilgallen
  1999-05-17  0:00       ` Pascal Obry
  2 siblings, 0 replies; 42+ messages in thread
From: Larry Kilgallen @ 1999-05-16  0:00 UTC (permalink / raw)


In article <373E24C3.D77A6837@easystreet.com>, Al Christians <achrist@easystreet.com> writes:
> Pascal Obry wrote:
>> 
>> I've not use a language yet that it more portable than Ada.
>> 
> 
> Here's a hypothetical question that I hope you don't think too
> impertinent, and I would be most interested in your learned 
> opinion:
> 
>     How much of the Ada source code available on your web site 
>     can be expected to run without change on a 64-bit machine,  
>     under a  64-bit OS, compiled with a 64-bit Ada compiler, 
>     when all of these become economically available?  (within a 
>     couple of years, I hope)

I am not sure what "economically feasible" means.  A DEC Alpha is
a 64-bit machine, and except for those running Windows NT, it has
64-bit operating systems (Linux, Tru64 Unix(nee Digital Unix(nee
DEC OSF/1)), and VMS).  The Linux configuration for the new EV6
machine starts at US $ 3500.

Ada compiler prices start at "free".

> If Ada code has a portabilitiy advantage, shouldn't Ada advocates
> be planning to advance the language's status as the world struggles
> with the shift to 64 bit machines over the next few years?  (32-bit PC's 
> from Intel were on the street in 1987, but 32-bit software only became
> the norm around 1997)

So long as operating systems support both 32-bit and 64-bit
addressing models, there is no particular need to rush change
until a particular application needs 64-bit addressing.  The
world should not "struggle" with this one at all.

Larry Kilgallen




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-16  0:00     ` Robert Dewar
@ 1999-05-16  0:00       ` Jean-Marten Marchi
  1999-05-17  0:00       ` Roger Racine
  1 sibling, 0 replies; 42+ messages in thread
From: Jean-Marten Marchi @ 1999-05-16  0:00 UTC (permalink / raw)


On Sun, 16 May 1999 12:30:31 GMT, Robert Dewar
<robert_dewar@my-dejanews.com> wrote:

>In article <374686a0.3798481@news2.ibm.net>,
>  jmarten@ibm.net (Jean-Marten Marchi) wrote:
>> I think so, and maybe, with GNAT, you could download only the
>> output of GNAT to the gcc compiler?
>
>I am not sure what the thought is behind this, but for sure
>it is confused. gcc is a multi-language compiler. One of the
>languages is GNAT. GNAT is part of gcc, not separate from it.
>
>If you mean the GNU C compiler, then probably you are thinking
>that somehow GNAT generates input for this compiler. That is
>quite incorrect, in no sense does GNAT translate Ada to C.
>
>
>--== Sent via Deja.com http://www.deja.com/ ==--
>---Share what you know. Learn what you don't.---

In fact, i had the notion that GNAT didn't generate machine related
code and that this job was devoted to something else, thought it was
gcc. And thought that gcc was GNU C compiler :-( 

In this case, i just thought that GNAT would produce something
portable across all its implementations. But i'm not sure it would be
a high improvement versus source code distribution.

I perfectly agree my ignorance and i'm glad to improve my knowledge. 

Cordially, 





^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-16  0:00 ` Robert Dewar
@ 1999-05-16  0:00   ` Jean-Marten Marchi
  1999-05-17  0:00     ` Robert Dewar
  1999-05-18  0:00     ` dennison
  0 siblings, 2 replies; 42+ messages in thread
From: Jean-Marten Marchi @ 1999-05-16  0:00 UTC (permalink / raw)


On Sun, 16 May 1999 12:16:01 GMT, Robert Dewar
<robert_dewar@my-dejanews.com> wrote:

>
>Yes, of course this is a practical idea, it is the cornerstone
>of the free software movement, and the GNU project, and has
>been used for all sorts of software.

Don't you think that something practical and useful could be done
inside the GNU project?

I mean useful for the end user. You have one point of distribution and
don't care about the hardware or the OS. However, your application is
still optimized for your platform.










^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-15  0:00       ` bglbv
@ 1999-05-16  0:00         ` Tom Moran
  0 siblings, 0 replies; 42+ messages in thread
From: Tom Moran @ 1999-05-16  0:00 UTC (permalink / raw)


>Perhaps awareness of IBM's Virtual Machine/Conversational Monitor System
>(VM/CMS) was more widespread at the time... "Virtual Machine" (with
>capital V and M) might even enjoy trademark status for all I know.
  I doubt it.  Virtual Machine was certainly common parlance in the
late 1960s and I'm fairly sure I remember using "Virtual IO Channel"
in a document in 1963-4.




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-14  0:00 Does this model work ? Jean-Marten Marchi
  1999-05-14  0:00 ` Al Christians
  1999-05-14  0:00 ` dennison
@ 1999-05-16  0:00 ` Robert Dewar
  1999-05-16  0:00   ` Jean-Marten Marchi
  2 siblings, 1 reply; 42+ messages in thread
From: Robert Dewar @ 1999-05-16  0:00 UTC (permalink / raw)


In article <373e38e2.31311363@news2.ibm.net>,
  jmarten@ibm.net (Jean-Marten Marchi) wrote:
> After all, with all this Open Source Software movement
> nowadays, is it possible to distribute applications in source
> code form (rather in bytecode form) to various devices or
> stations?

The idea of distributing programs in source form as the ultimate
way of providing portable distribution is as old as computing
itself, certainly much older than the idea of byte codes (which
was popularized 20 years ago by UCSD Pascal).

The open source movement did not invent the first idea, and
Java did not invent the second!

Yes, of course this is a practical idea, it is the cornerstone
of the free software movement, and the GNU project, and has
been used for all sorts of software.

Indeed one way to look at Java is that it is a way of achieving
some of the goals of source distribution without actually having
to distribute sources, which appeals to those who want to keep
their code proprietary and their sources secret.



--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-14  0:00 ` dennison
       [not found]   ` <01be9ee1$eca9be10$022a6282@dieppe>
@ 1999-05-16  0:00   ` Robert Dewar
  1999-05-16  0:00     ` Andi Kleen
                       ` (2 more replies)
  1 sibling, 3 replies; 42+ messages in thread
From: Robert Dewar @ 1999-05-16  0:00 UTC (permalink / raw)


In article <7hhj6q$cjn$1@nnrp1.deja.com>,
  dennison@telepath.com wrote:
> I don't think this feat would be possible in any other
> language.

Such claims alway make me uneasy.

It is perfectly possible to write code that is in practice
close to perfectly portable in COBOL, Fortran, C, or several
other standardized languages.

As in Ada, the main barrier to portability is deliberate or
accidental use of implementation dependent features.

Yes, it is fair to say that Ada makes achieving this portability
easier. I think there are four reasons for that.

1. Portability requires discipline, and the Ada programming
   culture tends to be more disciplined.

2. Ada discourages extensions, which are a frequent cause of
   non-portability.

3. Ada programmers tend to be more familiar with the standard
   for the language

4. Ada is designed to promote portability (e.g. portable
   integer types).

However, Ada is no panacea. Over and over again, we run into
cases where incompetence or deliberate (in-retrospect-poort)
decisions have lead to highly non-portable code, and this can
often be eacerbated by management or incompetent Ada vendor
sales people who have sold the idea that Ada guarantees
100% portability. That's wrong, it does not.

However, the above four factors are quite powerful, and in
practice have lead to many success stories like the one quoted
here!

For an example of a highly portable C program, consider the
gcc compiler itself. This is one of the portable benchmarks
in the Spec suite, and runs unchanged on all targets with C
compilers that run Spec (which is essentially 100% of all
C compatible targets).



--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-15  0:00     ` Al Christians
@ 1999-05-16  0:00       ` Robert Dewar
  1999-05-16  0:00       ` Larry Kilgallen
  1999-05-17  0:00       ` Pascal Obry
  2 siblings, 0 replies; 42+ messages in thread
From: Robert Dewar @ 1999-05-16  0:00 UTC (permalink / raw)


In article <373E24C3.D77A6837@easystreet.com>,
  Al Christians <achrist@easystreet.com> wrote:
> Pascal Obry wrote:
> >
> > I've not use a language yet that it more portable than Ada.
> >
>
> Here's a hypothetical question that I hope you don't think too
> impertinent, and I would be most interested in your learned
> opinion:

It's not a hypothetical question but a real one. Full Ada 95
support is available from more than one vendor in 64-bit mode.
For example, GNAT for DEC Unix fully supports 64-bit mode and
has for several years.

>     How much of the Ada source code available on your web site
>     can be expected to run without change on a 64-bit machine,
>     under a  64-bit OS, compiled with a 64-bit Ada compiler,
>     when all of these become economically available?  (within
>     a couple of years, I hope)

All well written Ada code can be expected to run. 100% of the
GNAT code runs with zero changes on 64-bit machines, and more
to the point, no changes were required in the first place to
support 64-bit mode, this was an essentially trivial
requirement. The couple of years is I assume referring only
to Wintel machines, most other architectures already made the
64-bit transition, and many large 64-bit applications in Ada
are already deployed.

> If Ada code has a portabilitiy advantage, shouldn't Ada
> advocates be planning to advance the language's status as the
> world struggles with the shift to 64 bit machines over the
> next few years?  (32-bit PC's  from Intel were on the street
> in 1987, but 32-bit software only became
> the norm around 1997)

That's certainly reasonable. As I note above, we are not talking
about a change for the future, but one that has already
happened. Nearly all major hardware vendors supply 64-bit
compatible machines. Yes, Wintel lags behind, and given
Microsoft's track record, it would not be surprising if that
lag is a long one (Microsoft took nearly a decade to fully
upgrade form 16-bit to 32-bit mode).
>
> Al
>


--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-14  0:00   ` Jean-Marten Marchi
@ 1999-05-16  0:00     ` Robert Dewar
  1999-05-16  0:00       ` Jean-Marten Marchi
  1999-05-17  0:00       ` Roger Racine
  0 siblings, 2 replies; 42+ messages in thread
From: Robert Dewar @ 1999-05-16  0:00 UTC (permalink / raw)


In article <374686a0.3798481@news2.ibm.net>,
  jmarten@ibm.net (Jean-Marten Marchi) wrote:
> I think so, and maybe, with GNAT, you could download only the
> output of GNAT to the gcc compiler?

I am not sure what the thought is behind this, but for sure
it is confused. gcc is a multi-language compiler. One of the
languages is GNAT. GNAT is part of gcc, not separate from it.

If you mean the GNU C compiler, then probably you are thinking
that somehow GNAT generates input for this compiler. That is
quite incorrect, in no sense does GNAT translate Ada to C.


--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
       [not found]   ` <01be9ee1$eca9be10$022a6282@dieppe>
  1999-05-15  0:00     ` Al Christians
@ 1999-05-16  0:00     ` Jean-Marten Marchi
  1 sibling, 0 replies; 42+ messages in thread
From: Jean-Marten Marchi @ 1999-05-16  0:00 UTC (permalink / raw)


On Sat, 15 May 1999 10:56:36 -0400, "Pascal Obry"
<pascal_obry@csi.com> wrote:

>Ada sources are very portable byte-code, you just have to let it go through
>the Ada virtual machine (compiler+linker) et Voil� :-)

Well, i think it's not very appropriate to name it a Virtual Machine
because, in this case, it has nothing virtual. And this is the real
advantage. No need of a VM. 

But, maybe you could elaborate why Ada is so much portable. There are
surely some reasons. 






^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-15  0:00     ` Florian Weimer
  1999-05-15  0:00       ` bglbv
@ 1999-05-16  0:00       ` Robert Dewar
  1999-05-16  0:00       ` David Botton
  2 siblings, 0 replies; 42+ messages in thread
From: Robert Dewar @ 1999-05-16  0:00 UTC (permalink / raw)


In article <m3iu9un85l.fsf@deneb.cygnus.stuttgart.netsurf.de>,
  Florian Weimer <fw@cygnus.stuttgart.netsurf.de> wrote:
> jmarten@ibm.net (Jean-Marten Marchi) writes:
>
> > Ah, nothing is new in this business ! Didn't Pascal have a
Virtual
> > Machine too?
>
> AFAIK there were quite a few compilers out there which
compiled to
> byte code.  You just didn't call it Virtual Machine, then.

The term virtual machine is very old. And yes, UCSD Pascal
was often referred to using this term.

It is entertaining to see how many people think that Java
actually invented the notion of byte code.

UCSD Pascal was implemented on many many machines, and there
was a big catalog of applications (databases, word processors,
spread sheets, etc etc) that were available in byte code form.

Why didn't it catch on? Many reasons, mostly non-technical.

I knew UCSD Pascal quite well, I helped design the world's
fastest UCSD machine (from Versal), and wrote several large
scale UCSD Pascal applications, including a full featured
fancy word processor that was one of the first to have full
support for proportional width fonts (which were supported
directly in the Versal display hardware, which was quite
clever, you gave it fixed matric font definitions, and it
eliminated multiple blank vertical columns at the display
level).

Ah, the old days :-)





--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-16  0:00       ` David Botton
@ 1999-05-16  0:00         ` Robert Dewar
  0 siblings, 0 replies; 42+ messages in thread
From: Robert Dewar @ 1999-05-16  0:00 UTC (permalink / raw)


In article <373E53BA.68877B63@Botton.com>,
  David Botton <David@Botton.com> wrote:
> I remember one write up on USCD Pascal even said "write once
> run everywhere" thanks to p-code :-)

Can you reify that memory. It would be a VERY nice reference
to have!


--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-16  0:00   ` Robert Dewar
@ 1999-05-16  0:00     ` Andi Kleen
  1999-05-17  0:00       ` Robert Dewar
  1999-05-17  0:00     ` jrcarter001
  1999-05-18  0:00     ` dennison
  2 siblings, 1 reply; 42+ messages in thread
From: Andi Kleen @ 1999-05-16  0:00 UTC (permalink / raw)


Robert Dewar <robert_dewar@my-dejanews.com> writes:
> 
> For an example of a highly portable C program, consider the
> gcc compiler itself. This is one of the portable benchmarks
> in the Spec suite, and runs unchanged on all targets with C
> compilers that run Spec (which is essentially 100% of all
> C compatible targets).

[getting off-topic]

Although many would argue that GCC is more writen in some kind of
Lisp in C, than C @)

For example the representation of RTL, the internal code representation, 
seems to near completely ignore even the weak static typing C mandates (this 
is shown by the thousands of warnings during a gcc bootstrap).

Given that it is surprising that gcc is as portable as it is. 

I would definitely not see it as an example of a typical C program! All of
it is very un-C-ish. 

-Andi
 -- 
This is like TV. I don't like TV.




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-15  0:00     ` Florian Weimer
  1999-05-15  0:00       ` bglbv
  1999-05-16  0:00       ` Robert Dewar
@ 1999-05-16  0:00       ` David Botton
  1999-05-16  0:00         ` Robert Dewar
  2 siblings, 1 reply; 42+ messages in thread
From: David Botton @ 1999-05-16  0:00 UTC (permalink / raw)


I remember one write up on USCD Pascal even said "write once run
everywhere" thanks to p-code :-)

David Botton


Florian Weimer wrote:
> 
> jmarten@ibm.net (Jean-Marten Marchi) writes:
> 
> > Ah, nothing is new in this business ! Didn't Pascal have a Virtual
> > Machine too?
> 
> AFAIK there were quite a few compilers out there which compiled to
> byte code.  You just didn't call it Virtual Machine, then.




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-16  0:00     ` Andi Kleen
@ 1999-05-17  0:00       ` Robert Dewar
  0 siblings, 0 replies; 42+ messages in thread
From: Robert Dewar @ 1999-05-17  0:00 UTC (permalink / raw)


In article <m3wvy9axxi.fsf@fred.muc.de>,
  Andi Kleen <ak-uu@muc.de> wrote:
> Robert Dewar <robert_dewar@my-dejanews.com> writes:

> Although many would argue that GCC is more writen in some kind
> of Lisp in C, than C @)

I never heard anyone make such a peculiar claim!
>
> For example the representation of RTL, the internal code
> representation,  seems to near completely ignore even the weak
> static typing C mandates (this
> is shown by the thousands of warnings during a gcc bootstrap).

This is a significant misunderstanding

> Given that it is surprising that gcc is as portable as it is.

If it surprises you, perhaps there is something you are missing!

> I would definitely not see it as an example of a typical C
> program! All of it is very un-C-ish.

A most peculiar claim. I suppose anyone can set up their own
standards for what they consider C-ish, but to my mind the
code in GCC seems to be quite conventional traditional C to
me, and I have never heard anyone claim otherwise.


--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-16  0:00   ` Jean-Marten Marchi
@ 1999-05-17  0:00     ` Robert Dewar
  1999-05-17  0:00       ` Jean-Marten Marchi
  1999-05-17  0:00       ` Jean-Marten Marchi
  1999-05-18  0:00     ` dennison
  1 sibling, 2 replies; 42+ messages in thread
From: Robert Dewar @ 1999-05-17  0:00 UTC (permalink / raw)


In article <37412e95.34501560@news2.ibm.net>,
  jmarten@ibm.net (Jean-Marten Marchi) wrote:
> Don't you think that something practical and useful could be
> done inside the GNU project?

Sorry, perhaps it is a language problem, but that question is
quite incomprehensible to me. The GNU project has devoted itself
to producing practical and useful software!

> I mean useful for the end user. You have one point of
> distribution and don't care about the hardware or the OS.
> However, your application is
> still optimized for your platform.

Sorry I have no idea what you are getting at here


--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-16  0:00   ` Robert Dewar
  1999-05-16  0:00     ` Andi Kleen
@ 1999-05-17  0:00     ` jrcarter001
  1999-05-17  0:00       ` Robert Dewar
  1999-05-18  0:00     ` dennison
  2 siblings, 1 reply; 42+ messages in thread
From: jrcarter001 @ 1999-05-17  0:00 UTC (permalink / raw)


In article <7hmda1$khp$1@nnrp1.deja.com>,
  Robert Dewar <robert_dewar@my-dejanews.com> wrote:
> However, Ada is no panacea. Over and over again, we run into
> cases where incompetence or deliberate (in-retrospect-poort)
> decisions have lead to highly non-portable code, and this can
> often be eacerbated by management or incompetent Ada vendor
> sales people who have sold the idea that Ada guarantees
> 100% portability. That's wrong, it does not.
>

I'd like to make a plug for Ada over Ada 83 for portability. Ada 83
could be used to produce highly portable programs, but in some arenas
led to lack of portability. As an example, I recently got to port some
Ada-83 real-time code from a little-endian processor to a big-endian
processor. In the process, I could convert it from Ada 83 to Ada.

The code has timing requirements, and the Ada-83 compiler had problems
with low-level bit manipulation. Converting to Boolean arrays was too
slow, so C functions were used for bit manipulation. Much of this C code
was endian dependent.

This was a portability problem that could have been avoided.

More significantly, the Ada tasking implementation did not allow them to
use tasks and meet their timing requirements, leading to OS calls for
task-related operations. This was not a portability problem, since both
versions would use the same RTOS, but could become one.

Ada now has low-level bit-manipulation capabilities through modular
types and package Interfaces, and protected objects have eliminated much
of the overhead that made Ada tasking too slow in Ada 83. I was able to
create a completely portable version of the code that ran on
little-endian and big-endian machines with different OSes, met the
timing requirements, and gave identical results.

Timing seems to be becoming a moot point. This code has since been used
successfully on a 133 Mhz Pentium laptop running Windows 95 with a
custom PCMCIA card. This duplicates the functionality of the custom
hardware that the code originally ran on, except the custom hardware
could provide 4 communications channels, and the PCMCIA card only
provides 2. This laptop/PCMCIA combination promises to be a popular
product for our company.


--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-17  0:00     ` jrcarter001
@ 1999-05-17  0:00       ` Robert Dewar
  0 siblings, 0 replies; 42+ messages in thread
From: Robert Dewar @ 1999-05-17  0:00 UTC (permalink / raw)


In article <7hpbco$hsi$1@nnrp1.deja.com>,
  jrcarter001@my-dejanews.com wrote:
> In article <7hmda1$khp$1@nnrp1.deja.com>,
> The code has timing requirements, and the Ada-83 compiler had
> problems with low-level bit manipulation. Converting to
> Boolean arrays was too slow

This seems not a language issue at all. If for some reason your
boolean data is in the form of integers, instead of packed
bit arrays to start with, converting to packed bit arrays
should require an unchecked conversion that takes zero time.
Yes, you may have to parametrize endianess here, and so the
one thing that was missing in Ada 83 was a standardized way
to do this, but that is hardly fundamental. It just means you
have one boolean constant that needs specialization.

> More significantly, the Ada tasking implementation did not
> allow them to use tasks and meet their timing requirements,
> leading to OS calls

Again, I would hesitate to say this is a language issue. A
number of Ada 83 compilers provided passive tasks with actually
slightly better performance than protected types (which have
a bit too much baggage for really efficient implementation,
unless you adopt the RP profile).

It is most certainly the case that Ada 95 has improved the
portability in some cases, and indeed these two features were
provided with this in mind.

What I am really pointing out is that it was not at all
necessary, even in Ada 83, to give up on portability so
quickly. It would just have taken a bit more care in
compiler selection and coding style. Note that if performance
is an issue, then you have to be careful about compiler
selection anyway. There is nothing at all in the Ada 95
standard that says that protected types or modular logical
operations have to be implemented efficiently.





--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-15  0:00     ` Al Christians
  1999-05-16  0:00       ` Robert Dewar
  1999-05-16  0:00       ` Larry Kilgallen
@ 1999-05-17  0:00       ` Pascal Obry
  1999-05-17  0:00         ` Marin David Condic
  2 siblings, 1 reply; 42+ messages in thread
From: Pascal Obry @ 1999-05-17  0:00 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1026 bytes --]


Al Christians <achrist@easystreet.com> a �crit dans le message :
373E24C3.D77A6837@easystreet.com...
> Pascal Obry wrote:
> >
> > I've not use a language yet that it more portable than Ada.
> >
>
> Here's a hypothetical question that I hope you don't think too
> impertinent, and I would be most interested in your learned
> opinion:
>
>     How much of the Ada source code available on your web site
>     can be expected to run without change on a 64-bit machine,
>     under a  64-bit OS, compiled with a 64-bit Ada compiler,
>     when all of these become economically available?  (within a
>     couple of years, I hope)

I don't find this impertinent at all. In fact this is really a good
question.
Given that I do not use low level construct like rep clauses in my
sources, I expect that all the Ada source on my Web page will
compile and works fine under any 64 bits compiler.

This issue is on the hand of the Ada implementors if they want to
validate their Ada compiler under the 64 bits computer.

Pascal.







^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-16  0:00     ` Robert Dewar
  1999-05-16  0:00       ` Jean-Marten Marchi
@ 1999-05-17  0:00       ` Roger Racine
  1 sibling, 0 replies; 42+ messages in thread
From: Roger Racine @ 1999-05-17  0:00 UTC (permalink / raw)


In article <7hmdp8$ksq$1@nnrp1.deja.com> Robert Dewar <robert_dewar@my-dejanews.com> writes:
>In article <374686a0.3798481@news2.ibm.net>,
>  jmarten@ibm.net (Jean-Marten Marchi) wrote:
>> I think so, and maybe, with GNAT, you could download only the
>> output of GNAT to the gcc compiler?

>I am not sure what the thought is behind this, but for sure
>it is confused. gcc is a multi-language compiler. One of the
>languages is GNAT. GNAT is part of gcc, not separate from it.

>If you mean the GNU C compiler, then probably you are thinking
>that somehow GNAT generates input for this compiler. That is
>quite incorrect, in no sense does GNAT translate Ada to C.

I thought he meant the output of the GNAT front-end, which is then provided to 
the "standard" code generators for GCC.  This would save the syntax and 
semantic checking, and initial translation that goes on within GNAT.

I have no idea if it would be larger or smaller than the source.

Roger Racing




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-17  0:00     ` Robert Dewar
@ 1999-05-17  0:00       ` Jean-Marten Marchi
  1999-05-17  0:00       ` Jean-Marten Marchi
  1 sibling, 0 replies; 42+ messages in thread
From: Jean-Marten Marchi @ 1999-05-17  0:00 UTC (permalink / raw)


On Mon, 17 May 1999 04:03:52 GMT, Robert Dewar
<robert_dewar@my-dejanews.com> wrote:

>In article <37412e95.34501560@news2.ibm.net>,
>  jmarten@ibm.net (Jean-Marten Marchi) wrote:
>> Don't you think that something practical and useful could be
>> done inside the GNU project?
>
>Sorry, perhaps it is a language problem, but that question is
>quite incomprehensible to me. The GNU project has devoted itself
>to producing practical and useful software!
>
>> I mean useful for the end user. You have one point of
>> distribution and don't care about the hardware or the OS.
>> However, your application is
>> still optimized for your platform.
>
>Sorry I have no idea what you are getting at here
>
>
>--== Sent via Deja.com http://www.deja.com/ ==--
>---Share what you know. Learn what you don't.---

Ok, apparently it's more difficult for me to explain myself in English
than i imagine and will try to do some progress.

What i want to explain is, that the compile and link processes are not
especially user friendly.

Imagine that something does this automatically at the user's place.

I believe you would have achieved the same goals as Java (write once,
run everywhere) with some advantages (optimization for the user's
platform, no need of a VM).

I *feel* that the pieces of the puzzle are there (source code
availability, Ada portabiity, compilers, linkers, etc ... ),  but it
lacks  something. Something that would make Ada more than a -very good
- computer language. Something a la Oberon ?

Thanks for your time (and your indulgence) . 









^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-17  0:00       ` Pascal Obry
@ 1999-05-17  0:00         ` Marin David Condic
  1999-05-20  0:00           ` Robert Dewar
  0 siblings, 1 reply; 42+ messages in thread
From: Marin David Condic @ 1999-05-17  0:00 UTC (permalink / raw)


Pascal Obry wrote:
> 
> I don't find this impertinent at all. In fact this is really a good
> question.
> Given that I do not use low level construct like rep clauses in my
> sources, I expect that all the Ada source on my Web page will
> compile and works fine under any 64 bits compiler.
> 
Avoiding representation clauses is probably a poor choice if portability
is a concern. Rep clauses might, in fact, guarantee that your software
works in a switch to a 64 bit architecture. For example, the current
implementation uses for the standard type Integer a 32 bit integer. On
some hypothetical 64 bit machine, an Ada implementation uses 64 bits for
the type Integer. No big problem for most internal computations, but
suppose you have a record type with an Integer in it and this is being
output to a file. Suddenly, your record consumes 32 more bits and your
software is not compatible with files produced earlier. Any new files
may not be compatible with other software products as well.

Whereas, if you scrupulously use representation clauses to specify the
exact size of things you need, you have a guarantee that the compiler
will give you that - or at least warn you that it can't & let you fix
it. I don't use precisely sized types for everything because obviously
there are plenty of coding situations where it just plain will never
matter, but where I think there may be an issue of portability or
compatibility with external systems, I use the rep clauses. You might
take a look at my web site where I have some utility code posted. I have
a package which defines a bunch of pre-fabricated types which I use in
building other things just to be sure I have control over the size - and
potentially the operations as well.

MDC
-- 
Marin David Condic
Real Time & Embedded Systems, Propulsion Systems Analysis
United Technologies, Pratt & Whitney, Large Military Engines
M/S 731-95, P.O.B. 109600, West Palm Beach, FL, 33410-9600
***To reply, remove "bogon" from the domain name.***

Visit my web page at: http://www.flipag.net/mcondic




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-17  0:00     ` Robert Dewar
  1999-05-17  0:00       ` Jean-Marten Marchi
@ 1999-05-17  0:00       ` Jean-Marten Marchi
  1999-05-18  0:00         ` Samuel T. Harris
  1 sibling, 1 reply; 42+ messages in thread
From: Jean-Marten Marchi @ 1999-05-17  0:00 UTC (permalink / raw)


On Mon, 17 May 1999 04:03:52 GMT, Robert Dewar
<robert_dewar@my-dejanews.com> wrote:

>> I mean useful for the end user. You have one point of
>> distribution and don't care about the hardware or the OS.
>> However, your application is
>> still optimized for your platform.
>
>Sorry I have no idea what you are getting at here

I've been thinking to your reply, so i will try harder to explain
myself.

3 years ago, Intermetrics released a product called Appletmagic if i
remember well. 

With my favorite browser (OS/2 Web Explorer) i clicked on a page where
the applet "Conways game of life" was executed. Easy and fun. 

Let's say that the applet was written in Ada95,  compiled to Java
bytecode and executed inside the OS/2 JVM. From a technical point of
view it is quite impressive. 

But don't you think there's something wrong? 

The applet source code was available, the GNAT compiler for OS/2 was
available, linker etc etc... 

Cordially,



 




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-16  0:00   ` Jean-Marten Marchi
  1999-05-17  0:00     ` Robert Dewar
@ 1999-05-18  0:00     ` dennison
  1 sibling, 0 replies; 42+ messages in thread
From: dennison @ 1999-05-18  0:00 UTC (permalink / raw)


In article <37412e95.34501560@news2.ibm.net>,
  jmarten@ibm.net (Jean-Marten Marchi) wrote:

> I mean useful for the end user. You have one point of distribution and
> don't care about the hardware or the OS. However, your application is
> still optimized for your platform.

For the most part this is up to the developer and their ability to avoid
non-portable system and library calls. There are other ways to make code
non-portable, but those are the usual culprits. Ada makes this easier
than many languages because of standard support for things like
multitasking that many other languages rely on the OS for.

Currently the (arguably) worst culprit is the user interface. There are
some portable GUI libraries out there, but they each have their problems
(lack of widgets, small number of ports, etc). And even that won't help
you if you want to run your program on a text-based system.

--
T.E.D.


--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-16  0:00   ` Robert Dewar
  1999-05-16  0:00     ` Andi Kleen
  1999-05-17  0:00     ` jrcarter001
@ 1999-05-18  0:00     ` dennison
  1999-05-19  0:00       ` Robert Dewar
  2 siblings, 1 reply; 42+ messages in thread
From: dennison @ 1999-05-18  0:00 UTC (permalink / raw)


In article <7hmda1$khp$1@nnrp1.deja.com>,
  Robert Dewar <robert_dewar@my-dejanews.com> wrote:
> In article <7hhj6q$cjn$1@nnrp1.deja.com>,
>   dennison@telepath.com wrote:
> > I don't think this feat would be possible in any other
> > language.
>
> Such claims alway make me uneasy.
>
> It is perfectly possible to write code that is in practice
> close to perfectly portable in COBOL, Fortran, C, or several
> other standardized languages.

The part of my post that you snipped was talking about a program that
contained multiple intercommunicating tasks in a Rate-monotonic system
using a custom frequency-based scheduler. Are you saying that it is
possible to write perfectly portable code in COBOL, Fortran, or C that
can do that?

As near as I can puzzle it, you will need at the bare minimum support
for multiple threads of control within the language. COBOL, Fortran and
C do not have such a concept. Of the languages that can do this, to my
knowledge only Ada and Java are widely available. But I think even Java
is not available for vxWorks. Even if it were, I'm not sure Java threads
have all the features we'd need.

--
T.E.D.


--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-17  0:00       ` Jean-Marten Marchi
@ 1999-05-18  0:00         ` Samuel T. Harris
  1999-05-20  0:00           ` Jean-Marten Marchi
  0 siblings, 1 reply; 42+ messages in thread
From: Samuel T. Harris @ 1999-05-18  0:00 UTC (permalink / raw)


Jean-Marten Marchi wrote:
> 
> On Mon, 17 May 1999 04:03:52 GMT, Robert Dewar
> <robert_dewar@my-dejanews.com> wrote:
> 
> >> I mean useful for the end user. You have one point of
> >> distribution and don't care about the hardware or the OS.
> >> However, your application is
> >> still optimized for your platform.
> >
> >Sorry I have no idea what you are getting at here
> 
> I've been thinking to your reply, so i will try harder to explain
> myself.
> 
> 3 years ago, Intermetrics released a product called Appletmagic if i
> remember well.
> 
> With my favorite browser (OS/2 Web Explorer) i clicked on a page where
> the applet "Conways game of life" was executed. Easy and fun.
> 
> Let's say that the applet was written in Ada95,  compiled to Java
> bytecode and executed inside the OS/2 JVM. From a technical point of
> view it is quite impressive.
> 
> But don't you think there's something wrong?
> 
> The applet source code was available, the GNAT compiler for OS/2 was
> available, linker etc etc...
> 
> Cordially,
> 
> 

I too have been using the same AppletMagic compiler as well as
GNAT for years on  my PC. I find nothing wrong with this
situation. Just because I have a "native" compiler available
for a particular platform, or even all platforms, does not
mean I want to distribute "native" compiled code to all customers.

For some customers, I may be aware of their architecture and
can distribute more efficient native coded products. For other
customers, or demo stuff, I may not know what they are running.
For these situation I can use the JVM coded product.

An Ada to JVM compiler gives me a single product which can
be universally distributed (well, almost universally :) and
can even be run from a remote web site. The need for more
efficient implementations for specific customers does not
negate the need for universal distribution.

Given the ubiquitous availability of GNAT and the universal
distribution potential of AppletMagic, I get everything I
need while using a single source language, albeit different
user interface models. I find this a highly desirable
situation.

If I was a COBOL fan, I'd be looking for a COBOL to JVM
compiler for the same reasons.

-- 
Samuel T. Harris, Principal Engineer
Raytheon, Scientific and Technical Systems
"If you can make it, We can fake it!"




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-18  0:00     ` dennison
@ 1999-05-19  0:00       ` Robert Dewar
  1999-05-19  0:00         ` dennison
  0 siblings, 1 reply; 42+ messages in thread
From: Robert Dewar @ 1999-05-19  0:00 UTC (permalink / raw)


In article <7hs6in$g8p$1@nnrp1.deja.com>,
  dennison@telepath.com wrote:
> The part of my post that you snipped was talking about a >
> program that contained multiple intercommunicating tasks in a
> Rate-monotonic system using a custom frequency-based
> scheduler. Are you saying that it is
> possible to write perfectly portable code in COBOL, Fortran,
> or C that can do that?

Probably not, in fact it would not even be possible to do this
in Ada 83, so I assume you are talking about an Ada 95
implementation here, using a compiler which is Annex D
compliant.




--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-19  0:00       ` Robert Dewar
@ 1999-05-19  0:00         ` dennison
  0 siblings, 0 replies; 42+ messages in thread
From: dennison @ 1999-05-19  0:00 UTC (permalink / raw)


In article <7ht5cp$531$1@nnrp1.deja.com>,
  Robert Dewar <robert_dewar@my-dejanews.com> wrote:
> In article <7hs6in$g8p$1@nnrp1.deja.com>,
>   dennison@telepath.com wrote:
> > The part of my post that you snipped was talking about a >
> > program that contained multiple intercommunicating tasks in a
> > Rate-monotonic system using a custom frequency-based
> > scheduler. Are you saying that it is
> > possible to write perfectly portable code in COBOL, Fortran,
> > or C that can do that?
>
> Probably not, in fact it would not even be possible to do this
> in Ada 83, so I assume you are talking about an Ada 95
> implementation here, using a compiler which is Annex D
> compliant.

Correct on all three counts. I once had to implement pretty much the
same thing in Ada 83. Due to the lack of "delay until", I had to use
several non-portable features and an OS call. Fortunately, those
problems are now ancient history.

--
T.E.D.


--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-17  0:00         ` Marin David Condic
@ 1999-05-20  0:00           ` Robert Dewar
  1999-05-20  0:00             ` Marin David Condic
  0 siblings, 1 reply; 42+ messages in thread
From: Robert Dewar @ 1999-05-20  0:00 UTC (permalink / raw)


In article <37408152.C65D85E8@pwfl.com>,
  diespammer@pwfl.com wrote:
> Pascal Obry wrote:
> >
> Avoiding representation clauses is probably a poor choice if
portability is a concern.

<discussion of dire consequences of using Standard.Integer
 for external files snipped>

First, surely no one would use Standard.Integer if they
have any concern for portability.

Second, I agree that specifying sizes for any data to be used
externally is quite reasonable, and in this sense I agree
with the above quote.

The point is that well written code should be as easy to
port from 32- to 64-bits as from any one Ada 95 compiler
to another.


--== Sent via Deja.com http://www.deja.com/ ==--
---Share what you know. Learn what you don't.---




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-20  0:00           ` Jean-Marten Marchi
@ 1999-05-20  0:00             ` Samuel T. Harris
  1999-05-20  0:00             ` Samuel Mize
  1 sibling, 0 replies; 42+ messages in thread
From: Samuel T. Harris @ 1999-05-20  0:00 UTC (permalink / raw)


Jean-Marten Marchi wrote:
> 
> On Tue, 18 May 1999 11:12:48 -0500, "Samuel T. Harris"
> <sam_harris@hso.link.com> wrote:
> 
> >An Ada to JVM compiler gives me a single product which can
> >be universally distributed (well, almost universally :) and
> >can even be run from a remote web site. The need for more
> >efficient implementations for specific customers does not
> >negate the need for universal distribution.
> 
> Why can't you have the best of both solutions, as long as you
> distribute source code ?
> 
> Why not embed the compiler on your customers machine ? The only thing
> he has to do is download your application in source code form, That's
> all.

Possible, but not really feasible for anonymous customers
connected remotely to run an application.

The JVM is already embedded in their Web browser.
Given the size of Ada 95 compilers, it just isn't feasible
to "embed" something that large into their environment
for them. Besides, download the application in source form
is not all. The customer then has to do the build.

If the architecture is directly supported then a native
implementation is available. This is all the customer
needs to download. In this case, there is still the
"installation" step to be performed.

Anonymous folks who want a quick-n-dirty demo don't
want any hassle if they can avoid it.

The "best of both worlds" solution consists of the following ...

1. Directly support architectures have efficient native code
   implementations available which are built based on actual
   supported customer needs.

2. All architectures are supported by less efficient JVM
   implementation. Potential customers with unsupported
   architectures can still demo the product. Recent customers
   with unsupported architectures can run the product until
   native support can be achieved. Anyone anywhere can demo
   the product anonymously over the Web.

And its all done in a single source language.

-- 
Samuel T. Harris, Principal Engineer
Raytheon, Scientific and Technical Systems
"If you can make it, We can fake it!"




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-20  0:00           ` Jean-Marten Marchi
  1999-05-20  0:00             ` Samuel T. Harris
@ 1999-05-20  0:00             ` Samuel Mize
  1999-05-20  0:00               ` David Botton
  1 sibling, 1 reply; 42+ messages in thread
From: Samuel Mize @ 1999-05-20  0:00 UTC (permalink / raw)


Jean-Marten Marchi <jmarten@ibm.net> wrote:
> On Tue, 18 May 1999 11:12:48 -0500, "Samuel T. Harris"
> <sam_harris@hso.link.com> wrote:
> 
>>An Ada to JVM compiler gives me a single product which can
>>be universally distributed (well, almost universally :) and
>>can even be run from a remote web site. The need for more
>>efficient implementations for specific customers does not
>>negate the need for universal distribution.
> 
> Why can't you have the best of both solutions, as long as you
> distribute source code ?

I have enough hassles keeping the compilers *I* want around, let
alone having to maintain a bunch of compilers on my machine for
languages I don't like and don't want, just in case a web page I
want to see has an applet written in COBOL.

Java byte-code is at an excellent abstraction level for distribution
of things that most people want to run without modifying.  The
developer can use whatever tool he wants, and then I can run it
without having that tool.  8000 compilers can all be targeted to the
same byte code format, and a consumer can run the results without
having any of them.

From the point of view of a consumer who wants to be able to modify
a program, source code is the way to go.

Best,
Sam Mize

-- 
Samuel Mize -- smize@imagin.net (home email) -- Team Ada
Fight Spam: see http://www.cauce.org/ \\\ Smert Spamonam




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-20  0:00               ` David Botton
@ 1999-05-20  0:00                 ` Samuel Mize
  0 siblings, 0 replies; 42+ messages in thread
From: Samuel Mize @ 1999-05-20  0:00 UTC (permalink / raw)


David Botton <David@Botton.com> wrote:
> Yes, but what if the results of gcc front ends were sent around? Then a
> modified gcc code generator could be used that would also handle
> security issues when needed (would not be any more dangerous the
> Microsoft ActiveX controls).
> 
> David Botton

I thought the original desideratum was to distribute via source code.
I wouldn't expect the gcc intermediate representation to be any
more clear than Java byte-code format.

Besides, I thought (perhaps mistakenly) that the output of the gcc
front end wasn't just a stream of tokens, but also a set of internal
tables and other representations.  If my recollection is correct,
this would then have to be encoded into some agreed-upon transmission
format, and decoded at the other end.

Why not just write a gcc back-end that generates Java byte-codes?
(If we're suggesting huge projects for others to do for free...)
The Java execution environment is already widely distributed in
web browsers.

Best,
Sam Mize

-- 
Samuel Mize -- smize@imagin.net (home email) -- Team Ada
Fight Spam: see http://www.cauce.org/ \\\ Smert Spamonam




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-20  0:00           ` Robert Dewar
@ 1999-05-20  0:00             ` Marin David Condic
  0 siblings, 0 replies; 42+ messages in thread
From: Marin David Condic @ 1999-05-20  0:00 UTC (permalink / raw)


Robert Dewar wrote:
> 
> First, surely no one would use Standard.Integer if they
> have any concern for portability.
> 
The problem is often one of not knowing that you are supposed to have a
concern for portability. Sometimes you build things believing that it
just has to function in this single environment and that it will never
be called on to move. Or you believe it will be thrown out long before
it ever becomes an issue (Witness, Y2k! :-)

> Second, I agree that specifying sizes for any data to be used
> externally is quite reasonable, and in this sense I agree
> with the above quote.
> 
> The point is that well written code should be as easy to
> port from 32- to 64-bits as from any one Ada 95 compiler
> to another.
> 
And then you have to ask the question: "What constitutes 'well written'
when portability is a concern?" Certainly, predefined types are O.K. for
internal computations within known limits. User defined types with rep
clauses where I/O or interaction with other devices are issues.
Information hiding is important for device dependencies, etc. so that
the parts which can't be portable are at least isolated and easy to
replace. There are quite a few ways to shoot yourself in the foot.

I don't know that anybody has come up with a list of steps or guidelines
that someone can use as a kind of cookbook for insuring portability. It
would be handy to have. Without one, I think the best defense is being
sensitive to what compilers do and how things might vary from one
implementation to the next. Ada95 certainly makes this significantly
easier than other languages and we've had some porting experiences
around here that tend to bear this out empirically.

MDC
-- 
Marin David Condic
Real Time & Embedded Systems, Propulsion Systems Analysis
United Technologies, Pratt & Whitney, Large Military Engines
M/S 731-95, P.O.B. 109600, West Palm Beach, FL, 33410-9600
***To reply, remove "bogon" from the domain name.***

Visit my web page at: http://www.flipag.net/mcondic




^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-18  0:00         ` Samuel T. Harris
@ 1999-05-20  0:00           ` Jean-Marten Marchi
  1999-05-20  0:00             ` Samuel T. Harris
  1999-05-20  0:00             ` Samuel Mize
  0 siblings, 2 replies; 42+ messages in thread
From: Jean-Marten Marchi @ 1999-05-20  0:00 UTC (permalink / raw)


On Tue, 18 May 1999 11:12:48 -0500, "Samuel T. Harris"
<sam_harris@hso.link.com> wrote:

>An Ada to JVM compiler gives me a single product which can
>be universally distributed (well, almost universally :) and
>can even be run from a remote web site. The need for more
>efficient implementations for specific customers does not
>negate the need for universal distribution.

Why can't you have the best of both solutions, as long as you
distribute source code ?

Why not embed the compiler on your customers machine ? The only thing
he has to do is download your application in source code form, That's
all. 






^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: Does this model work ?
  1999-05-20  0:00             ` Samuel Mize
@ 1999-05-20  0:00               ` David Botton
  1999-05-20  0:00                 ` Samuel Mize
  0 siblings, 1 reply; 42+ messages in thread
From: David Botton @ 1999-05-20  0:00 UTC (permalink / raw)


Yes, but what if the results of gcc front ends were sent around? Then a
modified gcc code generator could be used that would also handle
security issues when needed (would not be any more dangerous the
Microsoft ActiveX controls).

David Botton


Samuel Mize wrote:
> 
> Jean-Marten Marchi <jmarten@ibm.net> wrote:
> > On Tue, 18 May 1999 11:12:48 -0500, "Samuel T. Harris"
> > <sam_harris@hso.link.com> wrote:
> >
> >>An Ada to JVM compiler gives me a single product which can
> >>be universally distributed (well, almost universally :) and
> >>can even be run from a remote web site. The need for more
> >>efficient implementations for specific customers does not
> >>negate the need for universal distribution.
> >
> > Why can't you have the best of both solutions, as long as you
> > distribute source code ?
> 
> I have enough hassles keeping the compilers *I* want around, let
> alone having to maintain a bunch of compilers on my machine for
> languages I don't like and don't want, just in case a web page I
> want to see has an applet written in COBOL.
> 
> Java byte-code is at an excellent abstraction level for distribution
> of things that most people want to run without modifying.  The
> developer can use whatever tool he wants, and then I can run it
> without having that tool.  8000 compilers can all be targeted to the
> same byte code format, and a consumer can run the results without
> having any of them.
> 
> From the point of view of a consumer who wants to be able to modify
> a program, source code is the way to go.
> 
> Best,
> Sam Mize
> 
> --
> Samuel Mize -- smize@imagin.net (home email) -- Team Ada
> Fight Spam: see http://www.cauce.org/ \\\ Smert Spamonam




^ permalink raw reply	[flat|nested] 42+ messages in thread

end of thread, other threads:[~1999-05-20  0:00 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-05-14  0:00 Does this model work ? Jean-Marten Marchi
1999-05-14  0:00 ` Al Christians
1999-05-14  0:00   ` Jean-Marten Marchi
1999-05-16  0:00     ` Robert Dewar
1999-05-16  0:00       ` Jean-Marten Marchi
1999-05-17  0:00       ` Roger Racine
1999-05-14  0:00   ` Jean-Marten Marchi
1999-05-15  0:00     ` Florian Weimer
1999-05-15  0:00       ` bglbv
1999-05-16  0:00         ` Tom Moran
1999-05-16  0:00       ` Robert Dewar
1999-05-16  0:00       ` David Botton
1999-05-16  0:00         ` Robert Dewar
1999-05-14  0:00 ` dennison
     [not found]   ` <01be9ee1$eca9be10$022a6282@dieppe>
1999-05-15  0:00     ` Al Christians
1999-05-16  0:00       ` Robert Dewar
1999-05-16  0:00       ` Larry Kilgallen
1999-05-17  0:00       ` Pascal Obry
1999-05-17  0:00         ` Marin David Condic
1999-05-20  0:00           ` Robert Dewar
1999-05-20  0:00             ` Marin David Condic
1999-05-16  0:00     ` Jean-Marten Marchi
1999-05-16  0:00   ` Robert Dewar
1999-05-16  0:00     ` Andi Kleen
1999-05-17  0:00       ` Robert Dewar
1999-05-17  0:00     ` jrcarter001
1999-05-17  0:00       ` Robert Dewar
1999-05-18  0:00     ` dennison
1999-05-19  0:00       ` Robert Dewar
1999-05-19  0:00         ` dennison
1999-05-16  0:00 ` Robert Dewar
1999-05-16  0:00   ` Jean-Marten Marchi
1999-05-17  0:00     ` Robert Dewar
1999-05-17  0:00       ` Jean-Marten Marchi
1999-05-17  0:00       ` Jean-Marten Marchi
1999-05-18  0:00         ` Samuel T. Harris
1999-05-20  0:00           ` Jean-Marten Marchi
1999-05-20  0:00             ` Samuel T. Harris
1999-05-20  0:00             ` Samuel Mize
1999-05-20  0:00               ` David Botton
1999-05-20  0:00                 ` Samuel Mize
1999-05-18  0:00     ` dennison

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