log☇︎
1500+ entries in 0.364s
a111: Logged on 2017-11-12 23:39 mircea_popescu: does an ada lisp ~even exist~ as far as anyone knows ?
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 ☝︎☟︎
mircea_popescu: does an ada lisp ~even exist~ as far as anyone knows ? ☟︎
asciilifeform: and for that matter of the ada std lib - using part ( once the debuggery put_line's in ffa are done away with )
asciilifeform: the less use is made of ada standard libs, the moar likely the thing is to survive transition to whatever ada-with-maximal-dross-jettisonned that we eventually end up with.
spyked: on Get(Char), ada (at least gnat) seems to consume everything but linefeeds (even control characters such as EOT)
spyked: e.g. ada I/O is not especially suited for this task, because it reads either characters or full lines; and reading characters doesn't eat newlines, so gotta rely on shell buffering for sane interaction.
spyked: right now the thing does a whole lot of consing (e.g. even when parsing), to avoid using ada run-time. but yeah, not posted, I'm talking about ~non-existing item.
spyked: I'm also keeping the idea of potentially embedding in other ada projects (e.g. adacoin?) in mind. but so far wrestling the ffa aspects were enough of a challenge. oh, and there's no gc yet, the thing leaks memory like hell. but that's not its biggest problem.
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... ☟︎
diana_coman: in other things: I have been playing around with keccak and in particular with PeterL's ada implementation; as far as I can see it conforms to Version 3.0 keccak reference but I'm not sure re testing; any known test vectors for it? (the test vectors on current keccak's site seem to be for sha3)
asciilifeform: asciilifeform discovered this when digging in recent ada lit
mircea_popescu: is this ada thing s-0 or s-1 ?
a111: Logged on 2016-12-28 17:00 asciilifeform: http://wotpaste.cascadianhacker.com/pastes/HQmMH/?raw=true << example in ada. < 700 ln.
asciilifeform: fwiw there is a quite short ada serpent existing, passes the test set ( and branch-free ). ☟︎
a111: Logged on 2017-10-14 09:36 apeloyee: http://btcbase.org/log/2017-10-13#1724915 << http://www.ada-auth.org/standards/rm12_w_tc1/html/RM-3-5-4.html , paragraph 21: "the range of Integer shall include the range –2**15+1 .. +2**15–1"
apeloyee: http://btcbase.org/log/2017-10-13#1724915 << http://www.ada-auth.org/standards/rm12_w_tc1/html/RM-3-5-4.html , paragraph 21: "the range of Integer shall include the range –2**15+1 .. +2**15–1" ☝︎☟︎
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 ☟︎
asciilifeform: neato spyked . keep in mind that you gotta use the ada subset displayed in ffa.
spyked: http://btcbase.org/log/2017-10-05#1720982 <-- considering this as a "learn Ada" project. will share code once I have minimum item worth of showing (processing r5rs and tinyscheme meanwhile) ☝︎
a111: Logged on 2017-09-16 02:57 PeterL: by the way, I stuffed the keccak ada stuff (and, speaking of OAEP, here is one of those too) into https://github.com/PeterMLambert/keccak since I don't have my own server up yet
asciilifeform: it also occurs to asciilifeform that he is doomed to at some point write something like a sane 'tinyscheme' in ada. so that we have a scripting lang and can finally pour the cement into grave of python.
a111: Logged on 2016-12-27 22:14 mircea_popescu: course since the nsa consulting work for minigame is going to produce ada rsa, it might be an idea to have an ~ada~ tmsr crypto lib.
mod6: but as far as I can tell, there is no way to do that in ada. the general thing i've seen out on the web is that you must write the output of the shell command to a file, then read it back in.
mod6: Another thing worth the mention is that my ada-vtron shells out to gpg - which adds some time as well. one thing I think that would help is if I could figure out how to capture the shell command output directly back into the application instead of having to write to a file, then read the file back into the program.
mod6: To close the loop here a bit, the vtron stuff I've been doing in ada is a lot faster now than it was -- just needed to get some better loop control.
mircea_popescu: mod6> Ada Field Report: 1) Perl is fast. <<< dat discreet trollage
mod6: Ada Field Report: 1) Perl is fast. 2) Working with Strings.Fixed, oofda. 3) Verify Seals works!
PeterL: by the way, I stuffed the keccak ada stuff (and, speaking of OAEP, here is one of those too) into https://github.com/PeterMLambert/keccak since I don't have my own server up yet ☟︎
mod6: <+shinohai> Just sitting here with my Baroness hoping you haz good news re: trb or ada experiments? << ah, just trying to catch up on this 2nd megal0g
shinohai: Just sitting here with my Baroness hoping you haz good news re: trb or ada experiments?
a111: Logged on 2017-09-12 23:12 mircea_popescu: and finally 3. the item there described is not exactly a function. it rather something i'd call a mechanism, a discrete item that does a fully defined thing. as we're looking more and more through ada eyes and constant time things and so on, a study of these mechanisms as an distinct category will prolly be useful. somewhere between conway's cells and commandline utils, they are.
mircea_popescu: and finally 3. the item there described is not exactly a function. it rather something i'd call a mechanism, a discrete item that does a fully defined thing. as we're looking more and more through ada eyes and constant time things and so on, a study of these mechanisms as an distinct category will prolly be useful. somewhere between conway's cells and commandline utils, they are. ☟︎
asciilifeform: again you don't need to state it in compilable ada
asciilifeform: forget for a moment ada
mod6: it serves multiple purposes; a more readable 'v' (perhaps even faster/better?), a project for me to gain proficiency in ada. etc.
mod6: ada vtron being built
PeterL: keep in mind I am just learning ada as I do this, I feel like there might be a more efficient way to do some of the things (like the type conversions)
PeterL: http://p.bvulpes.com/pastes/CPPkN/?raw=true << ada keccak, criticism welcome
asciilifeform: PeterL: use the subset of ada shown in ffa. i.e. no oop, no finalizations, no tasks, no array concatenation, no heap allocation.
PeterL: http://btcbase.org/log/2017-09-02#1709989 << I was reading through the keccac documents, got about 90% of it implemented in python, then said this is ugly and horribly inefficient, I should try ada, and have been leaning ada the past couple weeks ☝︎
spyked: hm. actually, ada is used in real-time, so no gc
spyked: the question is rather which subset is suitable for building in hardware, and I guess this reduces to bounds checking and maybe other critical run-time parts (does ada have gc?)
spyked: also, there's the memory model. lisp machine "cells" are very elegant, while algol-like languages seem pretty muddy on that part. ftr, I have never seriously programmed in ada (closest thing to it was pascal)
spyked: IMHO could be separated from "compilation" (could as well be part of ada assembler, or "program loader" if there's such a thing).
a111: Logged on 2017-08-02 20:28 mircea_popescu: to revisit a very ancient mp wonderment since his less-interested days ( http://trilema.com/2010/curiozitate-calculatoristica/ ) : why not ada-on-a-chip ?
shinohai: 4.9.4 was what I had to use for Ada stuff, though I admit I'm not far down that path yet
trinque: I guess ada wants 4.9.4 though, was it?
asciilifeform: ada code -- gone
a111: 1 result for "ada keccak", http://btcbase.org/log-search?q=ada%20keccak
asciilifeform: !#s ada keccak
asciilifeform: mircea_popescu: there's an ada keccak published decade ago that was not, at first glance, defective in any obvious way, and is a few pgs. but asciilifeform has not yet formally audited.
asciilifeform: trinque: lemme confess to you the context : i recently took a break from $usual to write an ada www server, and quickly barfed. because thought 'and what, it also gotta handle POSTs, and quickly becomes asinine mess of horror'
asciilifeform: 1st ada release was... 1982
mircea_popescu: i thought ada was recent-er discovery.
asciilifeform: in those days, asciilifeform naively -- and silently -- imagined that as soon as btc began to be worth palpable moneys, the 'big kidz' quietly hired d00dz with long, long beards, to write ada node
asciilifeform: you can't use ada's array concatenation feature either, to cheat, because i banned it. it introduces implicit jump.
asciilifeform: mod6: to understand ffa, you absolutely gotta grasp how ada array slices ( which Always Do The Right Thing ) work
asciilifeform: the inline thing may seem like premature optimization, but function calls in ada are quite expensive, because bounds checking. so it makes MASSIVE difference.
asciilifeform: and 'to ada' also wrong word, (ultra fascist subset of) ada is simply what remained on the table after we went methodically through all reqs for a sane programming (for existing iron) system
mike_c: what's the intended purpose for the bitcoin pieces? you going to port the client to ada?
mod6: i've had to learn ada just to keep up & read the thing. help test where I can.
mike_c: ada for the tmsr-rsa?
mircea_popescu: and you gotta learn ada now, and
PeterL: like I said, prototype, if it works then can be ported to using ada (at least that is my idea)
asciilifeform: but in neither case does the instr set 'fully correspond to the language'. in the case of ada in particular, there is a useful thing that happens ~where whole program~ is examined.
asciilifeform: from ada pov only the former is relevant.
asciilifeform: ada is interesting because 1) all array accesses bounds checked. you CAN hardwarize this. but also 2) whole program is forced to conform to strict rules, said conformance can only be evaluated during compilation, and strictly when taken as whole
mircea_popescu: but i only asked for ada chip in sense of, cpu instruction set == ada language.
mircea_popescu: for the same money you could know 0f is if or whatever the fuck, ada instruction.
mircea_popescu: native code, is ada.
mircea_popescu: no. i mean chip whose instructyion set is ada.
asciilifeform: ( if mircea_popescu meant a chip-that-checks-bounds. which existed at various points, e.g. symbolics lineup supported ada natively just as well as lisps . )
mircea_popescu: to revisit a very ancient mp wonderment since his less-interested days ( http://trilema.com/2010/curiozitate-calculatoristica/ ) : why not ada-on-a-chip ? ☟︎
asciilifeform: but you won't get tenure for 'let's ada'
asciilifeform: poor buggers, stuck 'invent typesafe optimizing compiler' when ada already existed in 1982
ave1: I worked a bit on the musl ada script, it's now here: http://ave1.org/tarpit/ada-musl-cross-2017-07-24.tar.gz
phf: i suspect it's more about the choice of data structures. for one there are no allocs (very much in the spirit of ascii's ada explorations), so he probably has a lot of mempools, some byte compression and possibly bit twiddling. i've not read the second book yet, because i still haven't compiled the damn thing outside of the reservation
asciilifeform: !~later tell mod6 http://users.cis.fiu.edu/~weiss/ada.html << quite useful, imho, readings.
mod6: been adventuring in ada a bit recently.
asciilifeform: in other phunphakts, ada does NOT permit the use of bitwise ops ('and', 'xor', etc) on integer. ( only on booleans; and on 'modular types' - i.e. where the compiler is absolutely certain that subj is a machine integer and machine uses 2s-complement representation.)
mod6: [17:32:00 mod6@obsd: ~/ada/fact]% gnatmake ffa ffa_fact
shinohai: I retardedly did the same thing trinque during one of my earlier attempts w/ ada
ave1: as said, it's mostly https://bitbucket.org/GregorR/musl-cross/ + patches to get ada to work in it
ave1: it will build adacore's gpl 2015 by default, cd into dir, run ./ada-build.sh /absolute/build/dir
ave1: I've put up the adapted musl-cross files for building gnat here: http://ave1.org/tarpit/ada-musl-cross-2017-07-21.tgz
mircea_popescu: or else he can learn how to ada, why not.
deedbot: shinohai rated ave1 1 << Helpful Ada advice http://btcbase.org/log/2017-07-19#1686592
asciilifeform: ( nao not everyone, turns out, has a standard ada. but this is fixable. )
asciilifeform: well, e.g., ffa, is 100% portable in the sense where it will build on ANY standards-compliant ada
asciilifeform: ( fwiw ada makes it reasonably possible to avoid needing ANY libc. but this is for laters. )
mircea_popescu: so there's a musl ada ?
deedbot: asciilifeform rated ave1 1 at 2017/05/18 13:13:06 << ada lurker
ave1: plus add ada to the languages to build
ave1: copy gcc-interface-* to gcc-4.9-*/gcc/ada/gcc-interface (so rename of dir)
ave1: ad -> ada
ave1: copy gnat-gpl-*/src/ad to gcc-4.9-*/gcc/ (so you get an ada dir under gcc)
mircea_popescu: or stand up a log bot, or whatever. run a trb node. run the ada implementation passed around recently of a big number calculator and produce 655356! to compare with the given values.
mod6: never did, that always seems to work. can't figure out why it says "gcc: error: language ada not recognized"
asciilifeform: mod6: gnat is an ada proggy.