From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,LOTS_OF_MONEY autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail From: Brian Drummond Newsgroups: comp.lang.ada Subject: Re: How to get Ada to =?iso-8859-13?Q?=B4cross_the_chasm=A1=3F?= Date: Sat, 21 Apr 2018 23:01:08 -0000 (UTC) Organization: A noiseless patient Spider Message-ID: References: <1c73f159-eae4-4ae7-a348-03964b007197@googlegroups.com> <878t9nemrl.fsf@nightsong.com> <87h8o7lowg.fsf@nightsong.com> <8736zqkwat.fsf@nightsong.com> <6839088c-f221-4650-a6ea-1841ae539486@googlegroups.com> <1e5f5681-0e2a-43cc-9437-2bd38078da08@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Injection-Date: Sat, 21 Apr 2018 23:01:08 -0000 (UTC) Injection-Info: reader02.eternal-september.org; posting-host="e8549e591f7e1c62544af2f155790d44"; logging-data="29941"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18bjnyl13uiKBP6yPqpsVl/kZG//OQlvGs=" User-Agent: Pan/0.141 (Tarzan's Death; 168b179 git.gnome.org/pan2) Cancel-Lock: sha1:hQzpHeEaaBpH9gx9JV4Lct0DC1w= Xref: reader02.eternal-september.org comp.lang.ada:51665 Date: 2018-04-21T23:01:08+00:00 List-Id: On Fri, 20 Apr 2018 06:44:43 -0700, Shark8 wrote: > On Friday, April 20, 2018 at 7:25:41 AM UTC-6, Dan'l Miller wrote: >> >> Also, we always talk about Ada+SPARK. Why not Ada+VHDL, which is its >> syntactic cousin, as a smooth and seamless programming environment for >> FPGA development: software and netmask in sibling languages? > > If I had a good $30 Million or so, I'd totally drop it on hiring out for > an Ada+VHDL IDE (not editor, environment) with: > - An IR on the order of AIR or DIANA, though with database-storage as a > consideration. > - Implementation of the better-than-Continuous-Integration *AND* > versioning solution described in this paper: > http://citeseerx.ist.psu.edu/viewdoc/download? doi=10.1.1.26.2533&rep=rep1&type=pdf > - Written in 100% Ada; SPARK proving for the compiler-proper. > - Modularized tools, such as pluggable backends. > - Implementation of my Ada Project Manager solution, after rewriting it > in pure Ada syntax. > - Application of SPARK provers to VHDL. > > And all the above means you could have provers on entire systems, H/W > and S/W! Formal methods have more traction in hardware (ASIC rather than FPGA) design, so VHDL users might be very open to a SPARK-like prover. Further, the restrictions placed on Ada to make it SPARK provable have a lot in common with the restrictions placed on VHDL to make it synthesisable, so there may well be some synergy there. One thing I have (experimentally) used Ada for, was to code an algorithm in generic form, and instantiane in with both floating point (reference model) and various resolutions/ranges of fixed point, to prototype a hardware solution meeting specific accuracy goals. Ada's fixed point makes it a dream for DSP algorithm prototyping, before porting to VHDL and hardware. And this is a big market - EDA is in the billions with System-C and System-Verilog and other languages dedicated almost purely to hardware design verification; it could certainly support that sort of budget. Ada has a lot to offer here, especially with its cultural compatibility to VHDL. Add SPARK/VHDL and you could be on to something. -- Brian -- Brian