comp.lang.ada
 help / color / mirror / Atom feed
From: "Dr. Adrian Wrigley" <amtw@linuxchip.demon.co.uk.uk.uk>
Subject: Re: Game Programming / Graphics
Date: Tue, 26 Apr 2005 17:50:28 GMT
Date: 2005-04-26T17:50:28+00:00	[thread overview]
Message-ID: <pan.2005.04.26.17.51.40.829439@linuxchip.demon.co.uk.uk.uk> (raw)
In-Reply-To: 3Xgbe.582$Gd7.398@newssvr21.news.prodigy.com

On Tue, 26 Apr 2005 01:37:03 +0000, adaworks wrote:

...
> Also, I think some of the work being done by Dr. Wrigley is appropriate
> to this domain.   In particular, his work in high-performance rendering
> with Ada might be worth learning, if he is willing to share it with those
> who need to see it.

I saw my name mentioned...

The work I was doing was at Advanced Rendering technology, now
ARTVPS (See: http://www.artvps.com/ ).  I haven't worked for
that business for several years now.  In summary:

the problem (realistic image generation using numerical models
of light distribution) seems well suited to OO techniques, but we'd had
difficulty (in the mid '90s) getting the right kind of flexibility,
coupled with memory and run-time efficiency.  We implemented the
first products mainly in C and assembly language, with chip design
in VHDL (Ada's close cousin!).  This had the advantage of familiarity
(to management and key staff), and the tools were robust and mature.
C++ was an obvious (but contentious) alternative.  But taking on
a big C++ project was risky because of lack of team experience
with projects of this size, as well as uncertainty over meeting
performance and interface constraints.

A second generation of software was developed, factoring in experience
from the first generation.  The numerical core (infinite
dimensional integration engine(!)) was factored out, and the module
boundaries strengthened.  The existing low-level C, Assembly code
was retained.  The new, high-level code was in Ada.  The strengths
of Ada really shone in this project, particularly the robust
encapsulation, the (contract-based) genericity, and the concurrency.
But staff familiarity was still an issue, as was performance.

I had to leave the company when a key investor rejected (essential)
changes to the business model, and it collapsed just over two
years later :(   The investors received nil.  The business was
bought out, and is still going today, but the second generation
software was abandoned when I left (in late 1999).

From this experience, I became convinced that Ada 95 gives a very
strong technical approach to development of complex systems in
numerical computing (an ideal replacement for the Fortrans).
But projects face significant risks in staff acceptance,
training etc.  Often people want to work in languages which
further their careers, ie *not* Ada!

At the moment, I am building computationally intensive statistical
models of the US stock markets, and have built a fully automated,
real-time stock trading system.  The low defect density and
code readability is invaluable, even for a one-person project
such as this.

Hope this helps!
-- 
Dr. Adrian Wrigley, Cambridge, UK.




  reply	other threads:[~2005-04-26 17:50 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-02 19:54 Game Programming / Graphics jsnX
2005-04-02 22:35 ` Luke A. Guest
2005-04-03 15:01   ` jsnX
2005-04-03 16:51     ` Luke A. Guest
2005-04-03 17:18       ` jsnX
2005-04-03 17:25         ` Leif Roar Moldskred
2005-04-03 18:37     ` beliavsky
2005-04-13 22:15     ` Lionel Draghi
2005-04-26  1:37       ` adaworks
2005-04-26 17:50         ` Dr. Adrian Wrigley [this message]
2005-04-03  8:53 ` Dmitry A. Kazakov
2005-04-03 14:52   ` jsnX
2005-04-03 15:51     ` Pascal Obry
2005-04-03 17:23       ` jsnX
2005-04-03 18:19         ` Pascal Obry
2005-04-03 16:10     ` Dmitry A. Kazakov
2005-04-10 10:05 ` step_y
replies disabled

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