[Info-vax] Building for Customers, Revenue
johnwallace4 at yahoo.co.uk
johnwallace4 at yahoo.co.uk
Sun Sep 14 19:03:08 EDT 2014
On Sunday, 14 September 2014 22:46:48 UTC+1, Shark8 wrote:
> On 9/14/2014 1:27 PM, JF Mezei wrote:
>
> >
>
> > In the past, this was quite easy because of the great documentation and
>
> > system services/RTL that worked exactly as advertised compare to the
>
> > ever changing deveopper landscape given by Microsoft.
>
>
>
> I think VMS /may/ still have an edge with its Common Language
>
> Environment (compared with MS Dotnet's CLR) as the former is all native
>
> code... of course that means that porting the CLE is a bit more work
>
> than the CLR [which only needs to be concerned about the Dotnet VM].
>
>
>
> {That is, the "which is better" really boils down to where the work is
>
> done.}
>
>
>
>
>
> > However, lack of modern IDE and lack of modern tools have eroded this
>
> > former advantage.
>
>
>
> Given some of VMS's strengths {like the transparent DB-access, and
>
> structured files} it should be easier to write some truly superior tools
>
> -- indeed, I would argue that to be truly attractive to developers we
>
> would want to "one up" the quality of the tools: revive the idea of the
>
> APSE[1] and extend it to general-purpose [instead of language-specific]
>
> programing.
>
>
>
> We would want a DB to store attributed-trees (essentially ASTs w/ added
>
> [semantic] information) in general, but specialized for the language[s]
>
> being used {doable programmatically with grammars and generators}. --
>
> This system should also incorporate:
>
> (a) versioning -- doable and with an "atomic update" strategy, where no
>
> update leaves the DB in an inconsistent [non-compilable] state, we could
>
> reap the benefits of continuous integration immediately.
>
> (b) Team Management -- Admin-style stuff.
>
> (c) Project Management -- Parametrization of the project, dependency
>
> management, project "nesting" etc.
>
> (d) Common Backend -- Such a setup would lend itself to having a common
>
> code generator, much like [IIUC] the GEM compilers.
>
> (e) IDE -- Syntax highlighting and refactoring could be "regex-proof"
>
> [I've seen several IDEs choke on syntax highlighting because they were
>
> using something similar regex on the text; this won't happen if the code
>
> {the enhanced-AST} is already semantically meaningful]; I've also seen
>
> 'RENAME' implemented as a text "search and replace".
>
> (f) Theory Prover -- The ability to prove the properties of your
>
> software is a /big/ plus, especially where security or safety are concerned.
>
> (g) DSA Management -- Distributed System Application; this would be a
>
> killer feature: the ability to define (and possibly cross-compile for)
>
> interfaces to other systems/devices. Imagine being able to produce a
>
> program that controls special hardware, does the correct/needed
>
> processing, and has management SW for a small device like a cellphone...
>
> all fully native to their respective processors. {e.g. a manufacturing
>
> plant's robotic controls, linked to the order/sales system, and
>
> manageable/administrated from the foreman's cellphone.}[2]
>
>
>
>
>
> [1] - APSE: Ada Programming Support Environment -- a highly specialized
>
> environment for Ada programming that included things like IDE,
>
> versioning, and "library management" (analogous to projects and
>
> environments in general-programming speak).
>
> [2] - Some people are relegating this sort of setup to a web-server
>
> style interface (which is why they want modern browsers) -- personally I
>
> disagree with them, you shouldn't /have/ to deal with such a setup and
>
> opening your system to possible attacks in order to enable remote
>
> administration/management. It might be nice to do on a browser, at
>
> times, but there's also good reasons you might not /want/ all the
>
> baggage that comes that way [like browsers and JS].
Hmmmm.
Lots of interesting stuff in there. Some new(ish), some not so new. I
remember APSEs the first time round (though I never used one), and
indeed I remember the language-independent variant, the IPSE.
If Ada is your thing. and you don't mind being behing the times with
your language variant, you might want to give DEC Ada a look (if
you want to be up to data, your recommended path is AdaCore, which
even on VMS necessarily loses quite a lot of the DECness of the
programming environment).
The DEC Ada stuff was well respected in the industry and customers
I knew were not pleased when DEC Ada development stopped.
You might also find VAXELN and VAXELN Ada interesting to read about, in
the context of distributed realtime embedded systems.
Back in the day, for those who wanted M68K as target, there was a cross
compiler (XD-Ada) using the DEC Ada front end and a Systems Designers
back end. SD also had the Perspective IPSE (which was PASCAL-centric).
By a quirk of fate, XD-Ada, Perspective, and the SD Coral compiler are
now owned, sold, and supported by... wait for it... HP.
The native DEC languages were supported by an optional Language
Sensitive Editor, amongst other tools (more below).
The VMS debugger from V4 onwards was good stuff (it wasn't bad before, but
in V4 it got a screen-oriented as well as line-oriented UI). Same debugger
also worked with XD-Ada
People who were serious about software development on VMS could buy a
bundle containing lots of this stuff together, under the name DECset (DEC
Software Engineering Toolkit, which started life in the 1980s as VAXset):
http://h71000.www7.hp.com/commercial/decset/brochure.html
DECset got you source code analysis, source version control, a Make-alike,
a test management tool, performance and coverage analysis, and so on.
All of the above were originally text based; some developed DECwindows UIs
in later life.
There's a lot of good stuff out there.
More information about the Info-vax
mailing list