3 ms·
By Drakon standards it doesn't follow the "one true way": - the main execution path must be the leftmost top-to-bottom "skewer" - there's no recurse (AFAIR) i
by troupo 2y ago
By Drakon standards it doesn't follow the "one true way":
- the main execution path must be the leftmost top-to-bottom "skewer"
- there's no recurse (AFAIR) in Drakon, and there were heavy debates on how to express it properly
- cjohnson318 2y agoI use DRAKON, or a loose form of it, when I draw diagrams. I like to use a square action icon saying "GOTO <title>", where title is a rounded title icon that names a process or procedure. It's not perfect.
- troupo 2y agoYeah, that's what Wikipedia diagram does, too: it uses a lose/extended form
- echoangle 2y agoInteresting point about the recursion, that’s an issue. I think the reason is that it has aerospace heritage, I think explicit iteration control is important there. Having no good way to represent recursion is limiting for general purpose though.
- troupo 2y ago> I think the reason is that it has aerospace heritage It's very doubtful that Drakon has airspace heritage. Any claims to this are made by one single person: the author of the language.
- nrr 2y agoI feel like the degenerate case is the happy path for basically any sorting algorithm: the computer doesn't need to do work. That'd make the leftmost skewer in the Wikipedia version of DRAKON quicksort perfectly fine. As far as recursion is concerned, consider that DRAKON has exactly the expressiveness of assembly language. For environments where modified condition/decision coverage[0] is important (where analysis of branches at the object code level is commonplace), recursion is very likely undesirable, so not having a good way to express it is probably more a feature than a bug. The only seemingly verifiable claim I can find to DRAKON's lineage in aerospace has to do with the Fregat upper stage[1] (though, I don't read Russian beyond an elementary school level, so I don't know what is actually said here), but given what I know of DO-178B and applicable NASA standards for safety-critical systems, it'd make sense to have DRAKON as part of the tooling. 0: https://shemesh.larc.nasa.gov/fm/papers/Hayhurst-2001-tm210876-MCDC.pdf https://shemesh.larc.nasa.gov/fm/papers/Hayhurst-2001-tm2108... 1: https://www.laspace.ru/upload/iblock/db0/db01beb741f3e811d58abadbb4fae34a.pdf https://www.laspace.ru/upload/iblock/db0/db01beb741f3e811d58...
- cyberax 2y ago> The only seemingly verifiable claim I can find to DRAKON's lineage in aerospace I've been extremely annoyed by DRAKON cultists since 2005 (no, I'm not joking). They were basically claiming: "We have a tooling so powerful that it's used to produce ultra-reliable software for spacecraft, including Buran". When asked to show it, they replied that it's all super-secret. "Buran" is a Russian "Space Shuttle", btw. Back then, my parents were still working in a factory that produced some of the "Buran" components. So I asked them to try to get me in touch with software developers who might have worked on anything related to "Buran". They got me in touch with a couple of developers responsible for parts of software in the ground monitoring system, but nobody heard anything about DRAKON. So it might have been used somewhere, but it certainly was not super-important. Since then, DRAKON cultists have not produced anything significant worth of value. The largest project is, probably, the editor. And if you look at it, it's just a bunch of scripts where Drakon doesn't add much clarity. You can also see that their tooling has zero practicality, it makes any sort of collaboration impossible. Drakon files are binary and can't be diffed sanely.
- nrr 2y agoForgive me, but I'm left scratching my head. I can't find where I mentioned any of this. Buran's cancellation predates (given my limited command of Russian, what I think is) the first evidence of DRAKON's production use in the engineering process for avionics systems by almost a decade. Nowhere did I bring up that particular orbiter. I'm also unsure where I wrote that DRAKON by itself is machine consumable. I'm only familiar with it as a pattern language for drawing diagrams, and that's the extent of my experience with it.
- cyberax 2y agoRussian Wikipedia details the claims: https://ru.wikipedia.org/wiki/%D0%94%D0%A0%D0%90%D0%9A%D0%9E%D0%9D https://ru.wikipedia.org/wiki/%D0%94%D0%A0%D0%90%D0%9A%D0%9E... You can do machine translation for the article, it's not bad. It also details claims that it's an actual programming language (what we call now "no code"): https://ru.wikipedia.org/wiki/%D0%94%D0%A0%D0%90%D0%9A%D0%9E%D0%9D#%D0%A4%D0%B8%D0%BB%D0%BE%D1%81%D0%BE%D1%84%D0%B8%D1%8F_%C2%AB%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B1%D0%B5%D0%B7_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%81%D1%82%D0%BE%D0%B2%C2%BB._%D0%9E%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B8_%D0%BF%D0%BE%D0%B4%D1%85%D0%BE%D0%B4%D0%B0 https://ru.wikipedia.org/wiki/%D0%94%D0%A0%D0%90%D0%9A%D0%9E.... > I'm also unsure where I wrote that DRAKON by itself is machine consumable. I'm only familiar with it as a pattern language for drawing diagrams, and that's the extent of my experience with it. The cultists claim that it IS a machine language. I don't mind it as a documentation language for simple algorithms, but it's not what they claim.