log☇︎
48200+ entries in 0.027s
verisimilitude: It shows no sign of stopping, though.
verisimilitude: That's what all of these C ``security'' features are.
verisimilitude: I've long thought it's reasonable to exert great effort to make a system perfect, where possible; it's the ideal, but maybe not practical. Perhaps the more interesting question is when to stop when you exert so much effort, but have something that can never be made perfect, by design.
asciilifeform: typical 'type 1' fail is the various 'safety' bolt-ons to c/cpp, where yes you can use 'smart pointer' kludge but old barbaric 'dumb' is still permitted (and if you want nontrivial proggy, ~mandatory)
asciilifeform: outside of unix planet, typical example of type 3 failure is r5rs scheme (which is ~impossible to write nontrivial program in without reintroducing good % of what makes it seem 'light' vs commonlisp )
asciilifeform: and 3) not create a vacuum that gets immediately filled by similar or even dumber
asciilifeform: 'stop using' is generally the correct solution to all sortsa problem. trick is that you gotta 1) ~actually stop~ 2) not immediately replace the excised idjicy with a new one
verisimilitude: I'll give credit to st, which is a decent terminal emulator, but I'm not impressed with Suckless in general. They're recently combating a bug with some X font nonsense caused by stupid Unicode glyphs; their solution is to stop using the X font nonsense entirely, which will apparently cause its own issues.
asciilifeform: verisimilitude: there are other 'old unix' cargo cults in the historic record, also; all are quite similar to cat-v , near as i can tell.
asciilifeform: ( at one time, they had a fella with a working brain involved, then he vanished, and what remained grew over with fungus. )
asciilifeform: verisimilitude: http://trilema.com/2016/cat-vorg-adnotated/ << summary of mircea_popescu's expedition to cat-v planet.
asciilifeform: ^ there we go
verisimilitude: Let's seque to a related topic: What do you think of the Suckless crowd, asciilifeform? I read their mailing list and it's interesting to see how everything UNIX already provides is good and natural and how anything that violates the sacred tenants whatsoever is evil and bloat. ☟︎
asciilifeform: it was 'forgotten' for what, near as i can tell, consists ~100% of http://www.loper-os.org/?p=165#selection-307.0-313.492 reason.
asciilifeform: folx knew how to do this in ~1960s~.
asciilifeform: fact is, even long before lispm, on the old cdc mainframes, buffer overflow was impossible.
asciilifeform: and naturally the idiot camp splits into the 'useful idiots', who are physiologically incapable of having a clue, and the purposefully-mendacious charlatans, who know exactly where 'exploitable' comes from and ~like~.
asciilifeform: verisimilitude: the zero-terminated string more or less single-handedly created the 'comp security' pseudo-industry
asciilifeform: ( and with no sign of the inteltards 'waking up' to abandon it )
asciilifeform: or, say , the spectacular idiocy of 'branch prediction', currently racking up cost comparable to chernobyl
asciilifeform: 'devout' c programmer is moar or less synonymous with 'brain damage'. these are the people who think 'typed words are expensive' but think nothing of billion+ transistor in current pentium for tlb cache (so winblows can run 5% faster) .
feedbot: http://bimbo.club/2019/02/philosophical-transactions-for-the-months-of-june-july-and-august-1715-account-of-books-ii/ << Bimbo.Club -- Philosophical Transactions. For the months of June, July and August, 1715. - Account of Books - II. ☟︎
verisimilitude: I've had or seen a number of discussions concerning such high-level machines with C programmers and whatnot. It's comedic. A C programmer will be the first to prove how type-checking in hardware and other things most assuredly result in some minute loss of efficiency or power or this or that and so is bad, but then turn around and discuss how brilliant the zero-terminated string is and how it's not that inefficient.
asciilifeform: on top of this, there's a coupla kilometer of thread in the #t logs re what made the thing interesting.
asciilifeform: for instance, the vendor docs are widely mirrored, e.g. http://www.bitsavers.org/pdf/symbolics/
asciilifeform: verisimilitude: 80% of what there is to be learned from the thing, can be learned without access to working unit
asciilifeform: the basic approach is not only sound, however, but the only ~possible~ sound approach -- you bake a cpu that 'understands types', as discussed in e.g. http://www.loper-os.org/?p=46 and http://www.loper-os.org/?p=55 , and go up from there.
asciilifeform: (in particular , the cost of storage)
asciilifeform: much of the complexity in the bolix system is, in light of modern tech, unnecessary, it was muchly constrained by the limitations of the period tech
asciilifeform: entirely extinct, casualty of politics and jawdroppingly-inept management; but item to some extent is still available as a fossilized specimen for archaeology.
asciilifeform: 1980s usa; they built machine (and using vertical integration of own tooling, for not only os dev but pcb & ic cad etc) precisely for this.
asciilifeform: verisimilitude: you may find interesting to study the 1 example where someone actually ~did~ it for common lisp
verisimilitude: Sure; even though it's only a thought I've made little progress towards at the moment, care for a light description of how I'd do it for a Common Lisp?
asciilifeform: but first must 'clean kitchen' so it even makes sense to discuss such thing.
asciilifeform: verisimilitude: ideally would have this for entire stack, transistor & up.
verisimilitude: It's nice to even imagine having something that simply is and doesn't require building at all.
asciilifeform: and ideally on iron that we bake, rather than x86.
verisimilitude: That's exactly the approach I've been wanting to bring about, asciilifeform.
asciilifeform described, in the past, the general shape of the recipe for this -- you write e.g. small lisp in coupla kb of asm, and large 1 on that, and an adatron on the latter... etc ☟︎
asciilifeform: i'd still like to ~categorically~ abolish thompsonism at some pt tho.
asciilifeform: ( if yer using a heathen gnat, and a gcc5+istic one, it will output the familiar gcc5isms; but we aint using one )
asciilifeform: trinque: fwiw i routinely disasm what my gnat shits forth, and haven't yet found any 'surprises', so if ye olde gnat is indeed thompsonistic, it is quite subtle , rather than hammer-in-yer-face 'here's a MB of ??? that phones home to mars'
trinque: yep, already need working vtools to run the bootstrapper, so it's not as if there isn't a list of requirements for build env
asciilifeform: ( it does in fact build own self , once built, so can relight the fire indefinitely )
asciilifeform: trinque: seems to me that for nao, a working binary build of ave1-gnat gotta be included in standard cuntoo, same as working kernel etc
asciilifeform: ( whether this wins over starting from empty, remains to be seen )
asciilifeform: trinque: possibly at some pt i'ma start to pillage the bolix adatron, for this .
asciilifeform: ( as it is, we have an active unresolved 'thompsonism' in the mix )
asciilifeform: the ultimate win would be to get something other than gnat ( say, an adatron implemented in cl... ) that can build something resembling a working gnat. but sadly i suspect this is yrs away. ☟︎
asciilifeform: right, this is a must-have
trinque: considering a process that involves "bolt your hand-built gcc here" and then it rebuilds
asciilifeform: trinque: iirc finding & killing whatever piece in gcc outputs variant turd and makes bins unreproducible is on ave1's conveyor
trinque: asciilifeform: the lack of a binary-reproducible gcc really puckers when considering how to write an ebuild for ave1's gcc
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.
asciilifeform: and therefore the only one we presently use.
asciilifeform: theoretically it may be possible to build it with a diff adatron, but gnat is the only openly published one
asciilifeform: this is consequence of the fact that gnat is written in ada.
asciilifeform: verisimilitude: sadly ~all~ gnats require a working , existing gnat, to build
verisimilitude: It's that tool I showed you earlier, asciilifeform.
verisimilitude: When I did look into building GNAT from source, I was told in the documentation I'd already need a working GNAT; does ave1's avoid this? Then again, I suppose I could just use the GNAT I alread have on this other machine for that, if it became too inconvenient to use both.
asciilifeform: verisimilitude: tell us a bit re what you're building ?
asciilifeform: so in principle it doesn't particularly matter what flavour of linux you're on (unless want to ~rebuild~ it, then will take a bit of sweat)
asciilifeform: verisimilitude: try building ave1's , unless your iron is quite exotic you will probably find that you can build a cross-gnat that outputs bins for it.
asciilifeform: i intend to port ffa to msdos, for instance, and don't expect that gnat will be building it ~on~ dos box.
verisimilitude: I'll get to have extra fun, because the system with my editor is different from the system with the GNAT.
asciilifeform: most folx find that it takes them a coupla days to even get 'hello world' to ~compile~.
asciilifeform: verisimilitude: imho it is a quite fine lang for building systems where 'surprises' are utterly impermissible. but it does take work.
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.
asciilifeform: ave1 is baking a gnat that can build for 'bare irons'.
asciilifeform: plenty of ongoing work, too. diana_coman for instance is determining a safely usable subset of ada tasking system.
verisimilitude: Alright; I'll keep that in mind when I am finally able to study your FFA.
asciilifeform: there is plenty of other material in the log, to study from.
asciilifeform: there is not presently a paper book that will teach you ~this~ lang, if you're ready to learn it you can do so from asciilifeform , diana_coman , et al. published works.
asciilifeform: and no 'access variable', except when required to bake os glue
asciilifeform: this means no array concatenation, for instance; or any string ops that do not sit down in apriori known space.
asciilifeform: verisimilitude: for instance, i do not use the secondary stack, or any mechanisms which demand it; or any form of heaps ; or classes; etc
asciilifeform: verisimilitude: you will find that the ada used by asciilifeform , diana_coman , et al, is quite distinct flavour from what you see in barnes & in various corners of the net where published ada proggies (not so many) are found
asciilifeform: eventually cracked open some bookz and determined, over course of a year+, a subset of ada which roughly corresponds to 'c without the pointeristic retardation', and used this.
asciilifeform: i explored various alts (e.g. standard-ml sans gc) but found that if the lang produces a binary that cannot be cleanly disasmed and shown to functionally correspond with the source , also cannot in good conscience use such a thing.
asciilifeform: verisimilitude: in particular , any system with gc is ruled out right off the bat, as you cannot plug timing sidechannel leak if you got gc in the mix.
asciilifeform: verisimilitude: in 2016 i found that i gotta write a safety-critical arithmetic system (nao known as ffa) and found that i cannot in good conscience do it in anyffin but ada.
verisimilitude: As a Lisp programmer, what drew you to Ada, asciilifeform?
asciilifeform: see Mocky's review in particular, he actually summarized the whole path that led to the thing
asciilifeform: verisimilitude: there are other langs with strong typing, but afaik ada is the only 1 where a) with actual standard b) doesn't drag along a gargantuan runtime that won't sit down in small single-chip boxes etc
verisimilitude: It's a nice language, so far, but I've yet to even finish learning all of it.
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.
asciilifeform: verisimilitude: you will find that most of the win from adaism is in the approach of thought that it encourages, rather than any mechanical aspect of the lang per se.
verisimilitude: Common Lisp is nice, but I want to handle memory exhaustion well and also avoid using megabytes for programs that shouldn't need that much.
verisimilitude: I like the idea of writing software that handles all failure modes correctly, as awful as modern systems make doing so.
asciilifeform: verisimilitude: incidentally diana_coman ( http://ossasepia.com/ ) has quite large set of published ada ( & articles re same ), i highly recommend to read.
verisimilitude: I'll keep that in mind.
asciilifeform: verisimilitude: if/when you want to swap the key, ask (politely) trinque , it's a manual process
verisimilitude: Alright, I got that working now.
asciilifeform: verisimilitude: try nao.
verisimilitude: I was told by deedbot I couldn't $up myself.
trinque: verisimilitude: no reason not to give it a go now
verisimilitude: Alright; my key is registered. I suppose I'll just !!up myself next time, then.
asciilifeform: trinque: loper-os reader & chronic lurker, seems ready to get in wot
asciilifeform: apropos of nuffin at all, asciilifeform observes that on the street where he lives , + weather inescapably means the background sounds of the day are ~hourly 'ding' of dropped wrenches
feedbot: http://bimbo.club/2019/02/a-few-things-to-remember/ << Bimbo.Club -- A few things to remember.