700+ entries in 0.097s
mircea_popescu: d.
ada-zcx-musl-static is the standard for non-threaded programs, we don't standardize threading.
mircea_popescu: c.
ada-?-musl-static is the standard, either zcx or sjlj is acceptable (mostly based on what threading philosophy one embraces), with an obvious preference for zcx if one doesn't thread.
☟︎☟︎ mircea_popescu: b.
ada-sjlj-musl-static is the standard, and we simply don't sign or use anything that doesn't live up to this.
mircea_popescu: a. we make no standard, every man for his own, but : a.1.
ada is the preferred language ; a.2. musl is the preferred standards provider ; a.3. zcx is the preferred exception mechanism ; a.4. static is the preferred build mode. this should come with a design process for candidates evaluation for standardization.
mircea_popescu: so is basically the idea what we want is to get sjlj to work on musl for
ada proggies ? or what ?
ave1: diana_coman, in system-linux-*.ads (in gcc/
ada directory) you'll find the line: ZCX_By_Default : constant Boolean := False;
☟︎ diana_coman: update re builds: it built fine with --enable-sjlj-exceptions in place, checked it in the log and yes, it's set; but the result still seems to be build
ada code with zcx in fact (i.e. my test code with tasks is STILL hung waiting for them to abort) and if I specify --rts=sjlj to gprbuild it complains that there is no native compiler for
ada and so can't do anything; ftr I compared the dirs of my adacore install and it has this specific dir
diana_coman: exorted makeopts and then run the build-
ada.sh in short
mircea_popescu: nevertheless, the point has legs -- what we've done here very much can be done ands re-done, and with cuntoo/
ada-gnat/etc stack spitting out statics, it might even come close.
diana_coman:
ada's checks raise exceptions yes; not handled; I don't know if additional explicit handlers ADD or not
mod6: I'm not asking you to add my posbox foibles into your config. trb/
ada/musl that I want to test on there doesn't care what kernel modules are loaded.
mircea_popescu: take the recent "what should be language ?" "
ada" "well... turns out it's broken!!!" proceedings ; THEN compare with the chechen history.
diana_coman: ave1 or anyone else more experienced in rebuilding ave1's gnat with a previous incarnation of same: I'm trying to build using the scripts in
ada-musl-cross-2018-09-24.tgz on a machine that has as only existing and perfectly working !) gnat a previous ave1 gnat version; I ran as the readme says simply ./build-
ada.sh absolute_path_to_dir but the whole thing fails because it doesn't find some libs such as libgmp.la; a closer look at the outpu
a111: Logged on 2019-02-12 08:00 diana_coman:
http://btcbase.org/log/2019-02-12#1895120 -> yep, that was precisely my ref when looking at
Ada multi-threading and what support it offers; it actually reads a bit better than the barnes' progr in 2012 but it's more focused, obv
mircea_popescu: (yes, the objection stands, "mp,
ada machjine long way off because all peripherals are c-machines". sure, they are. we also make items.)
mircea_popescu: but in any case one can't have an
ada machine without working abort (which specifically means, NOT import the c consrtruct, cuz wtf am i gonna do.)
a111: Logged on 2019-02-10 17:37 asciilifeform: will add to this also, that if yer thread is actually wedged, it will almost always be on acct of
http://btcbase.org/log/2019-02-08#1893811 , i.e. waiting for a blocking unix i/o, and no matter what yer pthreads proggy is written in , c,
ada, cobol, whatever, it will still become a zombie, cuz unix is retarded.
mircea_popescu: diana_coman do you have a non-trivial (non-huge)
ada that you could run once with sjlj and once with zcx in a timing harness so we can get some data ? ideally something that takes 100-1000ms or so.
mircea_popescu: is there anything like c's "signal(value, pointer)" in
ada ?
a111: Logged on 2019-02-12 01:34 asciilifeform: for total thread-completeness, there is a workaround that works, but it is imho ugly (
ada 'interrupts' package ), i'ma post example if mircea_popescu et al ask.
a111: Logged on 2018-10-26 02:14 asciilifeform: meanwhile, in gnat bugs : apparently ( and this is documented or mentioned nowhere ) : it is impossible to have a
Ada.Finalization.Limited_Controlled type ANYWHERE inside a static library, unless it is generic all the way down (i.e. if the lib package is generic, any sub-packages must also be instantiated as generics )
a111: Logged on 2019-02-10 20:31 diana_coman: asciilifeform, and anyone else interested in testing
Ada's failure to abort, minimal test setup: ossasepia.com/available_resources/test_tasks_ada.zip
mircea_popescu: mod6 no man, the difference ain't that one's topic is
ada and the other's topic is cuntoo. the difference is that she said "here's the top level problem, here's the list of possible solutions, here's the failure mode of each, let me know if either the list's missing an item or wtf." ; you said "here's an error message pasted and i've been having problems".
mod6: Well, it seemed to me there was a pretty lengthy conversation about
Ada threading issues over the last two days, I didn't want to make my problems (with a possible questionable box) the center of attention for everyone.
mircea_popescu: diana_coman the one question lingering here is : as
ada actually elaborates an init and an exit, as it must, since it does in fact compile, whether there's a way to use these correctly in lieu of "call C-mommy to change diapers".
diana_coman: asciilifeform, and anyone else interested in testing
Ada's failure to abort, minimal test setup: ossasepia.com/available_resources/test_tasks_ada.zip
☟︎ diana_coman: and it shows those tasks still there; ALSO: from within
Ada, you can tell: if your code does abort Task_X and then check Task_X'Terminated , it'll still be false (idem 'Callable still true)
diana_coman: model of wedged task was infinite loop, yes; and exit(0) was the only thing that did kill it but as you can see, that is C; imported in
Ada, sure, but...C
diana_coman: the issue at hand being that
ADA doesn't kill ; and to add to this, note that in this case (i.e. some wedged task) it won't actually *finish* even when its checks fail; so that promise that "program will stop running if erroneous state" is at best mis-stated: no, it won't always stop, it might..wait to stop
a111: Logged on 2019-02-10 16:12 mircea_popescu: i'd rather write a new
ada.
a111: Logged on 2019-02-10 16:05 diana_coman: I'm all ears if anyone has some idea re this supposedly simple thing: how to kill-self in
ada, whole program but guaranteed to work i.e. without any bullshit "oh, but only if/when..."
mircea_popescu: and
ada kept to an arm's length absolutel minimum. i find it immoral to support development in femstate languages.
mircea_popescu: at the rate this is going, main will be c and calling
ada bits. and killing them.
diana_coman: I suppose I still have to try...calling pthread_kill from within
ada or somesuch madness
diana_coman: I'm all ears if anyone has some idea re this supposedly simple thing: how to kill-self in
ada, whole program but guaranteed to work i.e. without any bullshit "oh, but only if/when..."
☟︎ a111: Logged on 2019-02-08 18:12 mircea_popescu: they have a whole signalling thing in
ada, so you don't have to do the retarded c infinite loop
mircea_popescu: they have a whole signalling thing in
ada, so you don't have to do the retarded c infinite loop
☟︎ mircea_popescu: if
ada does not manage to provide me with all the tools i need to the exclusion of the power switch, i will ditch
ada and move on to programming in power switches.
diana_coman: hm, in possibly interesting
ada-bits: apparently "abort" for tasks does not really kill them if /when they are in an infinite loop; according to
ada docs I got the idea of "abort-deferred" i.e. in some states it won't abort but "infinite loop or waiting for a procedure call to return" did not seem to figure there; in practical terms this means that my workers will have to attempt any Job in a guarded manner i.e. give up on it after some ma
a111: Logged on 2019-02-08 07:47 mircea_popescu: yes. because
ada entities keep getting wrapped in things that end up eating runtime to "elaborate" and whatever ion thios vein.
mircea_popescu: yes. because
ada entities keep getting wrapped in things that end up eating runtime to "elaborate" and whatever ion thios vein.
☟︎ a111: Logged on 2019-01-22 22:35 asciilifeform: this is done with a standard
ada feature called 'controlled limited type'. which i found that, for no documented reason, dunwork in gnat's static lib.
diana_coman: speaking of Barnes'
Ada book: it IS very useful and I certainly do go back to it quite often still for all sorts but it still has at times such ideas that I can't stand; e.g. "The reader will probably feel that the activation mechanism is somewhat elaborate. However, in practice, the details will rarely need to be considered. They are mentioned in order to show that the mechanism is well defined rather than because of their everyday import
☟︎ a111: Logged on 2016-05-04 00:56 mod6: <+asciilifeform> in other nyooz, my '
ada 2012 ref man.' is here. << that's neat. thought we were leaning towards the '95 standard?
a111: Logged on 2015-02-26 19:35 punkman: asciilifeform: should I be looking at
ada 2012 flavour?
a111: Logged on 2019-02-05 13:50 diana_coman: asciilifeform, I must admit I fail to see *what* did the guy actually contribute; moreover he asked as far as I can see signalling questions, nothing more; granted, they were related to
Ada but that's about the only positive I can find in the whole log I had to go through; perhaps it's simply too early for him to be here? maybe first have something done and only then come and show it?
diana_coman: asciilifeform, I must admit I fail to see *what* did the guy actually contribute; moreover he asked as far as I can see signalling questions, nothing more; granted, they were related to
Ada but that's about the only positive I can find in the whole log I had to go through; perhaps it's simply too early for him to be here? maybe first have something done and only then come and show it?
☟︎ verisimilitude: I'm looking through more of these
Ada links you provided earlier, asciilifeform; do you not use
Ada 2012?
verisimilitude: I'll be using
Ada to build the practical, robust, simpler, and easy-to-distribute implementation of my machine code development tool, perhaps ironically enough.
verisimilitude: The
Ada program I have planned is in a similar way unconcerned with some of the more advanced features, because much of it is very concrete by now; it shouldn't even need to allocate memory until I have an undo and redo system in it.
verisimilitude: As a Lisp programmer, what drew you to
Ada, asciilifeform?
verisimilitude: There's the saying one shouldn't learn a language that doesn't change the way one thinks; I figured if I would learn at least one language with keyword-based syntax, strong static typing, a lack of advanced metaprogramming, among other qualities, that I should learn
Ada.