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 autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.36.26.22 with SMTP id 22mr5037375iti.18.1516810999631; Wed, 24 Jan 2018 08:23:19 -0800 (PST) X-Received: by 10.157.65.183 with SMTP id p52mr697393ote.3.1516810999515; Wed, 24 Jan 2018 08:23:19 -0800 (PST) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!border1.nntp.ams1.giganews.com!nntp.giganews.com!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer02.am4!peer.am4.highwinds-media.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!g80no128115itg.0!news-out.google.com!b73ni9621ita.0!nntp.google.com!g80no128108itg.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Wed, 24 Jan 2018 08:23:19 -0800 (PST) Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=83.226.216.99; posting-account=89rtOwoAAACwfw13aLCkK5t6_il6M4EY NNTP-Posting-Host: 83.226.216.99 User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Resolving Long Filenames for Packages From: alexander@xn--junivrs-e1a.com Injection-Date: Wed, 24 Jan 2018 16:23:19 +0000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Received-Body-CRC: 3196948681 X-Received-Bytes: 3200 Xref: reader02.eternal-september.org comp.lang.ada:50103 Date: 2018-01-24T08:23:19-08:00 List-Id: In my current project, I am making an attempt to elaborate on the means of = which a serie of automata operates (and is structured), by building my own = version of regular expressions (even though not called that, nor functionin= g in the exact same way.) To compile my code I'm using AdaCore's GNAT by running the command `gprbuil= d`. This means I also have a project file associated with the project, whic= h in and of itself, is looking very basic. It only contains a means of loca= ting the main procedure and executing it. For my experimental implementation of automata, I have ended up with six di= fferent flavors of automata, which I have put in a separate directory, beca= use the names tend to get extremely long: expressions-parser-automata (the directory) expressions-parser-automata-automaton_x.adb expressions-parser-automata-automaton_x.ads expressions-parser-automata-automaton_y.adb expressions-parser-automata-automaton_y.ads expressions-parser-automata-automaton_z.adb expressions-parser-automata-automaton_z.ads expressions-parser-automata-automaton_w.adb expressions-parser-automata-automaton_w.ads ... This brings me to my question. Is there a better way to structure an Ada pr= ogram than this? Each executive automaton package contains a tagged type and an access type = to that tagged type. As such, these files all essentially contain different= sub-classes of a super automaton class. What I'm looking to avoid are the long filenames. Preferably, I would perso= nally want to have a similar structure to what you normally see in modern d= ay programming languages, whereas each package has its own directory dedica= ted to it (and all its sub-packages), but from what I've seen that's not a = thing generally done in Ada. Once again, how would I generally go about structuring an Ada application t= o avoid such long filenames? Is there some sort of compiler option I can us= e? Can I do something about it inside my project (`gpr`) file? Best regards,