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 Path: eternal-september.org!reader01.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED.v9b9Vl+xa4N6anCAsQFuxg.user.gioia.aioe.org!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Script-like jobs in Ada (ideas for HAC) Date: Mon, 27 Apr 2020 22:31:38 +0200 Organization: Aioe.org NNTP Server Message-ID: References: <9a4ad55c-ef0d-42ab-a438-cabc71a491a6@googlegroups.com> <1326c12c-570a-4af8-a183-6b5d00c155c7@googlegroups.com> NNTP-Posting-Host: v9b9Vl+xa4N6anCAsQFuxg.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 X-Notice: Filtered by postfilter v. 0.9.2 Content-Language: en-US Xref: reader01.eternal-september.org comp.lang.ada:58515 Date: 2020-04-27T22:31:38+02:00 List-Id: On 2020-04-27 20:50, Bojan Bozovic wrote: > Make it embeddable! Yes, that is the key feature. On top of that: 1. Asynchronous aborting of the running script with data cleanup. 2. External loadable module/packages for it written in Ada 3. Means to maintain the process state between calls to the script. For Python it is resolved by returning an object from the script. The object is then passed as an argument by the next call. For an Ada script one could do it better, as a kind of "library package". BTW, there is another project alike AdaScript: http://www.pegasoft.ca/docs/sparforte12/doc/ref_adascript.html which also lacks the above. It is a shame that GPS uses Python for the purpose. I am using Python too, because presently nothing is better. I considered Lua and Julia, but neither were usable. Having yet another shell, is not interesting. From my experience no regular task deserves writing it in a script. Each time I do this in bash etc, I get punished for. When I am lucky I rewrite that in Ada. I am too lazy to do this from the start always hoping it would end differently. When I am not so lucky I am stuck for years with maintaining the crap which periodically stops working. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de