log☇︎
1100+ entries in 0.135s
asciilifeform: quite likely was attempt to copy ada behaviour while retaining 'compatibility'
asciilifeform: it's part of how i ended up with ada : found that just about all of the 'good parts' of cpp11ism were lifted from it
asciilifeform: recently i had a replay of this experience, went to look for fast fourier transform routine , in ada, ~same thing.
asciilifeform: ave1: recall in 2016, when i went to look for ada arithmetic lib, and found several, all of them immediately threw away, liquishit with variably-wide, heap-allocated bigints, and half MB or even heavier src
a111: Logged on 2018-08-06 17:44 ave1: asciilifeform, I remember the PAL page, went looking for the sources, treasure trove of dead links. Maybe something on the iso images at the evil archive: https://archive.org/details/ADA_-_The_Public_Ada_Library_Walnut_Creek_November_1997
ave1: asciilifeform, I remember the PAL page, went looking for the sources, treasure trove of dead links. Maybe something on the iso images at the evil archive: https://archive.org/details/ADA_-_The_Public_Ada_Library_Walnut_Creek_November_1997 ☟︎
asciilifeform: http://www.pegasoft.ca/pal.html >> 'The PAL is a library of Ada and VHDL software, information, and courseware that contains over 1 BILLION bytes of material (mainly in compressed form). All items in the PAL have been released to the public with unlimited distribution, and, in most cases (the exceptions are shareware), the items are freeware.' << BUT all 3 mirrors dead as dodo.
Mocky: ^ circa '96 "The goal of this binding is to make scripting language features, such as associative arrays, regular expression matching, and execution of OS commands available to an Ada programmer and to allow a Tcl programmer to use Ada in place of C where needed"
asciilifeform: i think this is 1st time i hear about a shell in ada ( would be nifty to dig this up tho )
phf: asciilifeform: well there apparently used to be a unix shell in 1980s that was written in ada, i suspect it's not the gsh above, but something else entirely
phf: (^ POSIX shell for windows written in Ada, presumably for adacore build toolchain)
phf: asciilifeform: i saw somewhere suggested that there used to be a unix shell written in ada with some kind of ada like semantics, you know anything about that?
asciilifeform: btw i oughta mention , i had to resort to a modified vdiff.sh : http://p.bvulpes.com/pastes/rB9AD/?raw=true for ch11 , as the ada comment syntax causes inbandism barf with classic vdiff.sh when deleting or modifying the comment headers at the start of ffa modules
a111: Logged on 2018-07-24 16:31 asciilifeform: it went approx like this, iirc some time in 2016 : asciilifeform : 'if quality slavegurlz can be trained to do anything , mircea_popescu couldja spare 1 or 2 for ada battallion ' mircea_popescu : 'hell no, why would i waste any on such a thing; what next, i will ask asciilifeform to do field work detail in their place ? '
asciilifeform: it went approx like this, iirc some time in 2016 : asciilifeform : 'if quality slavegurlz can be trained to do anything , mircea_popescu couldja spare 1 or 2 for ada battallion ' mircea_popescu : 'hell no, why would i waste any on such a thing; what next, i will ask asciilifeform to do field work detail in their place ? ' ☟︎
a111: Logged on 2018-07-18 13:42 asciilifeform: phf: say what you will re ada standard, but e.g. ffa is ( afaik! ) a nontrivial and at same time ada2012-compliant proggy.
asciilifeform: mircea_popescu: ada gives you ~this~ type of string 'for free' ( all ada strings contain their length )
a111: Logged on 2018-07-18 14:06 phf: i took a different approach, i wrote _to ada standard_ with the idea that each interface can be substituted with a custom system specific replacement. for example my character_io is a new_line aware replacement of the original, that relies on ada.sequential_io. now if i wanted to retarget to small machine, i'd write a custom sequential_io that uses machine specific calls for byte read/write
asciilifeform: in re: constrained ada subsets, the traditional standard actually contains annexes that specify 'profiles', e.g. https://archive.fo/4xUvl , that consist of sets of prohibitions . but currently very primitive, afaik none contain substantial ~substitutions~ for mainline functionality.
asciilifeform: mircea_popescu: was speaking of basic semantics, rather than i/o and storage ( consider , good chunk of the reason ada wins is that it not merely enforces constraints, but forces operator to think and plan, rather than http://btcbase.org/log/2016-01-21#1379603 -shit into his pants ) ☝︎
a111: Logged on 2018-07-18 13:53 phf: interfaces.c is not a libc concern, it's an ffi. the situation is that C can't be linked to an Ada, even if the C part has _no libc_ in it
a111: Logged on 2018-07-18 13:46 phf: or is tmsr ada whatever ave1 put into his musl build, which is, worse, a political situation. diana_coman can argue for her ffi stuff to be included, should i be arguing for my get/put stuff to be included?
a111: Logged on 2018-07-18 13:45 phf: as far as ada is concerned, the tmsr ada is a subset of standard, that only exists in your head, and can be somewhat inferred from ffa. that's no standard
mircea_popescu: (i meant especially re the "Ada standard turned out to be dodgy (very precisely specifies some shitty solutions)" art.
a111: Logged on 2018-07-18 13:41 phf: asciilifeform: oh yeah, i get it, the approach requires a GOST cpu with a GOST bus etc. etc. right now the situation is mildly depressing (though perhaps that's not the right word), even Ada standard turned out to be dodgy (very precisely specifies some shitty solutions)
mircea_popescu: http://btcbase.org/log/2018-07-18#1835866 << his thinking of standard interpretations shifted significantly past year or so, under ada influence. ☝︎
ave1: I've played little with the bb-runtimes but the whole build process is based python + gprbuild and needs at least ada 2017 sources.
ave1: btw I understood that esa still uses Leon processors with ADA
ave1: the same with interfaces.c, a version without secondary stack can be easily made (I have one already, simple method of cutting out functions), but is then not really ada standard anymore.
phf: i took a different approach, i wrote _to ada standard_ with the idea that each interface can be substituted with a custom system specific replacement. for example my character_io is a new_line aware replacement of the original, that relies on ada.sequential_io. now if i wanted to retarget to small machine, i'd write a custom sequential_io that uses machine specific calls for byte read/write ☟︎
phf: right, an ada with an absolute minimum/custom runtime
phf: asciilifeform: i thought that you were arguing that the subset of ada runtime that's included in zfp "ought to be enough for everyone", since at the moment i believe it compiles ffa, my apologies.
phf: ah, that explains the misunderstandings. ave1's no-c compiler has a completely custom ada runtime library, which is a tiny subset of the whole standard. http://btcbase.org/patches/zfp_2_noc/tree/ the adainclude part
phf: interfaces.c is not a libc concern, it's an ffi. the situation is that C can't be linked to an Ada, even if the C part has _no libc_ in it ☟︎
phf: oh i was talking about the later, since that's the avant guard of the ada situation
phf: asciilifeform: if you haven't looked, ave1's item is a significantly cut subset of ada's standard, where, e.g. http://btcbase.org/patches/zfp_2_noc/tree/adainclude/a-textio.ads is text_io (compare to real text_io)
phf: or is tmsr ada whatever ave1 put into his musl build, which is, worse, a political situation. diana_coman can argue for her ffi stuff to be included, should i be arguing for my get/put stuff to be included? ☟︎
phf: as far as ada is concerned, the tmsr ada is a subset of standard, that only exists in your head, and can be somewhat inferred from ffa. that's no standard ☟︎
asciilifeform: ada standard is just about a hair's breadth away from a proper , Troo standard.
asciilifeform: phf: say what you will re ada standard, but e.g. ffa is ( afaik! ) a nontrivial and at same time ada2012-compliant proggy. ☟︎
phf: asciilifeform: oh yeah, i get it, the approach requires a GOST cpu with a GOST bus etc. etc. right now the situation is mildly depressing (though perhaps that's not the right word), even Ada standard turned out to be dodgy (very precisely specifies some shitty solutions) ☟︎
a111: Logged on 2018-07-07 18:19 mircea_popescu: esthlos welcome to the mechanisms of lordship. it's your project, it's your job to make this sort of decisions. "should this be rewritten in lisp, imported in ada, be turned into a point of grafting on eucrypt tree ?"
phf: ok, thank you. afaiu though ave1's build is potentially missing all kinds of system integration components, or is the retargeting against custom ada stdlib optional?
phf: ave1, asciilifeform or other ada specialists, how did you bootstrap a gnat on aarch64? is there some binary that's floating around (because adacore doesn't seem to have linux-aarch64 build) or is it bootstrapped using a cross compiler on a x86 linux?
mircea_popescu: esthlos welcome to the mechanisms of lordship. it's your project, it's your job to make this sort of decisions. "should this be rewritten in lisp, imported in ada, be turned into a point of grafting on eucrypt tree ?" ☟︎
mircea_popescu: esthlos of course, if your whole thing is lisp, the utility of ada keccak may be limited ?
ave1: asciilifeform, yes that was my first reaction too. It does does something with word copying though and also individual files can be build without any of the extra gnat checks. So maybe the ada versions can be stand-ins so long as a native asm based version has not been written.
asciilifeform: ave1: pretty neat. 1 nitpick, however: generally you don't want memcpy and memmove to be in anything but asm -- otherwise whole proggy is abominably slow ( ada proggy spends quite a bit of time clearing buffers and passing fairly large chunks of data by value )
a111: Logged on 2018-01-22 16:40 asciilifeform: gnat has a deliberately brittle behaviour re the restriction pragmas -- if you use one it doesn't know about, it barfs. ( and i'm not even convinced that this is wrong. half of the appeal of ada is that it takes 'postel's law', rips off its head, and fucks the stump )
spyked: http://btcbase.org/log/2018-07-02#1831425 <-- to add to the list of weird behaviours: ada "get char" function doesn't eat newlines, so when typing a number alone, say: echo "42" | ./test_repl , nothing'll happen. user must add an explicit space after the number. ☝︎
mircea_popescu: ada already has very strong bounds ~checks~. but if he's doing a whole adalisp, well...
ave1: trinque, The directory for the script needs to absolute, i.e. ./build-ada.sh output --> ./build-ada.sh $PWD/output
deedbot: http://thetarpit.org/posts/y04/074-adalisp-prototype.html << The Tar Pit - An early Lisp scriptlang prototype in Ada
a111: Logged on 2017-11-12 23:07 spyked: in other news, I've been using most of my spare cycles lisping in ada. should be able to wrap up a blog post sharing a very minimal prototype (sane implem. of repl doing nothing but basic ops) in a few weeks. what I've got now adheres to most of ffa constraints. the current version isn't very clean, but getting there...
a111: Logged on 2017-10-08 14:06 phf: spyked: r5rs and tinyscheme are not the right places to start on the other, non-ada end, i'd recommend looking at lisp in small pieces. you can tease out the theory out of tinyscheme, but it's definitely easier not to get bogged on accidentals if you start from theory
a111: Logged on 2017-11-13 17:44 ben_vulpes: http://btcbase.org/log/2017-11-12#1736892 << some years ago, several people got together and worked through 'an incremental approach to compiler construction', one nick fitzgerald worked through it in ada: https://github.com/fitzgen/ada-scheme
asciilifeform: btw didn't somebody grind out a draft of a foaetal ada scheme ? was digging in log, not found so far
mircea_popescu: asciilifeform no but this is my point. "why are you using emacs when in fact trb will need ada scheme anyway and then you could just have a musl-gnat nerwmacs" ?
mircea_popescu: so it's a fully ada/musl machine.
ave1: I.E. I could reprocude this error by first compiling aarch64 with ../extra/build-tarballs.sh $PREFIX musl ada aarch64 and then running the script with making that line: ../extra/build-tarballs.sh $PREFIX musl ada x86_64
a111: Logged on 2018-06-04 04:26 ave1: asciilifeform, also what is in the build-ada.sh? the last line on aarch64 should read: ../extra/build-tarballs.sh $PREFIX musl ada aarch64 x86_64
ave1: asciilifeform, I did get it to cross compile on aarch64 too, it was a question of more memory. Do you still have an error log? Also the order has to be correct in the build-ada.sh. Like so: http://btcbase.org/log/2018-06-04#1820499 ☝︎
asciilifeform: ada, for instance, is a very, very heavy kludge around the c overflows/pointerola iron.
mircea_popescu: asciilifeform not really ; can get away with letting grandfathered systems work it. exactly how we bootstrap ada.
asciilifeform: phf: if slime and ada mode can be made to run, it'll be a livable emacs per my lights.
deedbot: diana_coman updated rating of ave1 from 2 to 3 << made the very useful scripts to compile gnat for various architectures as well as other useful ada & ada+c bits; does a lot and talks a little, always on point though; writes at ave1.org
asciilifeform: ( tldr : something like 'tinyscheme', but in heapless ada, and with deliberately no gc )
ave1: asciilifeform, also what is in the build-ada.sh? the last line on aarch64 should read: ../extra/build-tarballs.sh $PREFIX musl ada aarch64 x86_64 ☟︎
spyked: http://btcbase.org/log/2018-06-01#1820196 <-- yes. file listing of my install dir --> http://p.bvulpes.com/pastes/EYuNU/?raw=true . and ftr, build command I ran was exactly the one in instructions, i.e. ./build-ada.sh /path/to/install > build.output 2>&1 ☝︎
ave1: and 'ls /home/stas/temp/ada-musl-cross-2018-04-30/bin'
ave1: plus, could you try 'ls /home/stas/temp/ada-musl-cross-2018-04-30/bin/aarch64-linux-musl-native'
asciilifeform: command was ./build-ada.sh /home/stas/temp/ada-musl-cross-2018-04-30/bin > build.output 2>&1
ave1: asciilifeform, the .../temp//ada-musl-cross-2018-04-30/bin is empty?
ave1: I'll also post the resulting ada aarch64 compiler
trinque: I don't see that eucrypt code includes the ada compiler? why not?
mimisbrunnr: Logged on 2018-05-23 05:16 ben_vulpes: Mocky: why's that ada article not on the homepage of yer blog?
ben_vulpes: Mocky: why's that ada article not on the homepage of yer blog?
deedbot: esthlos rated Mocky 2 << delicious post on Ada
esthlos: !!rate Mocky 2 delicious post on Ada
a111: Logged on 2018-05-22 03:35 Mocky: http://btcbase.org/log/2018-05-19#1815582 << >> http://mocky.org/Log-Reference-Why-Ada/
a111: Logged on 2015-04-28 17:29 mircea_popescu: because much like ada, brainfuck is an actually specified language
a111: Logged on 2012-08-21 09:20 mircea_popescu: honestly i thought ruby is dead like ada.
deedbot: asciilifeform rated Mocky 1 << 'why ada'
asciilifeform: !!rate Mocky 1 'why ada' ☟︎
a111: Logged on 2018-05-19 18:30 asciilifeform: ( folx-on-the-periphery-of-l1 : might be a good use of coupla hrs to dredge the logs for 'why ada' material that could point n00bz to, e.g. http://btcbase.org/log/2017-07-13#1682480 )
Mocky: http://btcbase.org/log/2018-05-19#1815582 << >> http://mocky.org/Log-Reference-Why-Ada/ ☝︎☟︎
a111: Logged on 2018-05-19 18:14 Mocky: speaking of plot twists, pretty surprised by the Ada usage. I pictured usg.DOD-design-by-committee lang commissioned to help build out the chumpatronic-mass-programmer infrastructure for gov contracts. I guess it's time to reevaluate my priors.
a111: Logged on 2015-02-13 23:03 asciilifeform: i suspect that mircea_popescu would actually like ada. not writing it, mind you, but seeing it written
asciilifeform: http://btcbase.org/log/2015-02-13#1017692 << iirc the 1st ada thread here ☝︎
a111: Logged on 2017-07-13 15:16 asciilifeform: the other thing to remember, is that the win from writing in ada - but not in ada in general, but the style demonstrated in ffa in particular -- remains even if YOU HAVE NO ACCESS TO GNAT and gotta compile by hand into asm. because it forces the style of algo that CAN be safely so expressed - i.e. without presumption of pointerolade arithmetic, gc, or other cost-externalizing electrosocialisms
asciilifeform: ( folx-on-the-periphery-of-l1 : might be a good use of coupla hrs to dredge the logs for 'why ada' material that could point n00bz to, e.g. http://btcbase.org/log/2017-07-13#1682480 ) ☝︎☟︎
Mocky: speaking of plot twists, pretty surprised by the Ada usage. I pictured usg.DOD-design-by-committee lang commissioned to help build out the chumpatronic-mass-programmer infrastructure for gov contracts. I guess it's time to reevaluate my priors. ☟︎
a111: Logged on 2018-05-15 21:28 asciilifeform: diana_coman: steps to replicate: 0) on a machine WITH A WORKING GNAT (e.g. adacore's , and it must be in your path already ) 1 ) download the tarball from http://ave1.org/2018/building-gnat-on-musl-now-with-partial-and-parallel-build-support 2) unpack tarball ada-musl-cross-2018-05-15.tgz , go to the dir 3) mkdir bin << this is where the built binariola will live 4) ./build-ada.sh /home/foo/temp/ada/ada-musl-cross-2018-05-15/bin
a111: Logged on 2018-05-16 14:42 asciilifeform: ( retaining some knob for dynamic linkage isn't totally useless, it enables such things as valgrind ; but i'm quite prepared to lose valgrind, it is not really so necessary when writing asciilifeform-style -- heapless -- ada )
asciilifeform: (ftr : if you heap-allocate from within ada, you will not be able to valgrind, on static-musltronic gnat.)
asciilifeform: ( gnat can be reserved for building actual ada proggies/subsystems )
asciilifeform: ( retaining some knob for dynamic linkage isn't totally useless, it enables such things as valgrind ; but i'm quite prepared to lose valgrind, it is not really so necessary when writing asciilifeform-style -- heapless -- ada ) ☟︎
ave1: ../extra/build-tarballs.sh $PREFIX musl ada aarch64 x86_64
ave1: it's last line is now: ../extra/build-tarballs.sh $PREFIX musl ada x86_64 aarch64
ave1: it's the 'build-ada.sh' script