comp.lang.ada
 help / color / mirror / Atom feed
From: Shark8 <onewingedshark@gmail.com>
Subject: Re: Suggestion about best practice with .gpr files
Date: Tue, 1 Jun 2021 07:38:08 -0700 (PDT)	[thread overview]
Message-ID: <65a6061f-e16d-4921-a73f-00bc93f272a1n@googlegroups.com> (raw)
In-Reply-To: <s90s5l$b3d$1@dont-email.me>

On Sunday, May 30, 2021 at 2:22:16 PM UTC-6, Jeffrey R. Carter wrote:
> On 5/30/21 7:37 PM, mockturtle wrote: 
> > 
> > Do there exist some kind of "best practice" for this?
> The best practice is not to use project files. When everything is is Ada, they 
> only add unnecessary and non-portable complexity. Unnecessary complexity is a 
> sign of incompetence.

True; Ada's structuring is such that a project-file is *almost* unnecessary. I remember reading, when doing some research on build-systems, someone remarking that "build-systems are the consequence of using a language not meant for engineering." -- Given this, the general lack of needing a "build-system" for Ada is a good sign, and a testament to how Ada really *is* meant for Software Engineering.

That said, the place where Ada isn't quite up to the task is configurations, which is primarily what GPR files are used for; I've done some initial work on re-purposing Ada's generics as a "project file". (It could use a restricted set of acceptable parameters and "ASIS-processing" them such that user-inputs could be queried/provided automatically [hence the restriction on formal-parameter types].)

> 
> The same is true of build directory structures. 

I have come to deeply despise using the file-system as the repository for sources, along with "magic" environment-variables.
There are TONS of advantages that could be had with a database-based system; see: http://users.ece.utexas.edu/~perry/work/papers/icsm87.pdf and https://www.mindprod.com/project/scid.html
Yes, more design-work up-front, but it yields better properties... just like how sorting a collection allows you to have search-functions that are faster than one-at-a-time linear.

  parent reply	other threads:[~2021-06-01 14:38 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-30 17:37 Suggestion about best practice with .gpr files mockturtle
2021-05-30 17:46 ` Stephen Leake
2021-05-30 19:31   ` Simon Wright
2021-05-30 17:56 ` Dmitry A. Kazakov
2021-05-30 20:22 ` Jeffrey R. Carter
2021-05-31  7:42   ` AdaMagica
2021-05-31 16:59     ` Stephen Leake
2021-06-01  9:33       ` Jeffrey R. Carter
2021-06-04  7:48         ` Björn Lundin
2021-06-04  8:14           ` Dmitry A. Kazakov
2021-06-04  9:18           ` Jeffrey R. Carter
2021-06-04  9:47             ` Björn Lundin
2021-06-04 12:52           ` Simon Wright
2021-06-04 14:53             ` Björn Lundin
2021-06-01 14:38   ` Shark8 [this message]
2021-05-31 15:02 ` Maxim Reznik
2021-05-31 17:07   ` Stephen Leake
2021-05-31 20:14 ` Per Sandberg
replies disabled

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