* Bug free programs @ 2014-09-15 22:38 Ian Grant 2014-09-16 9:20 ` Bootstrapping Ludovic Courtès 2014-09-17 0:57 ` Bug free programs dsmich 0 siblings, 2 replies; 14+ messages in thread From: Ian Grant @ 2014-09-15 22:38 UTC (permalink / raw) To: guile-devel, lightning [-- Attachment #1.1: Type: text/plain, Size: 7633 bytes --] I'm posting this because it explains beautifully why we don't need to expend any great effort on getting GDB or other debuggers working with Guile. If some code needs a debugger, then it invariably needs re-writing much more than it needs the debugger. And _programmers_ who need the debugger are invariably much more in need of training. This is (a tiny) part of the Computer Security History Project interview with Roger Schell: http://conservancy.umn.edu/bitstream/133439/1/oh405rrs.pdf ======================================================================== Yost: And Edsger Djikstra was a visiting faculty member when you were there. Can you talk about any interaction you had with him? Schell: Yes, he was one of a couple of people that probably had a major influence on my perspective on computer science. You know my background was FORTRAN. I mean, that’s what we used. The military programs were either assembly language or FORTRAN, or JOVIAL. JOVIAL was a military program language—sort of like FORTRAN. When I joined Project MAC; well, one of the things that you do with graduate students is they’re free labor for various things that have to be done. And one of the projects I had was what we called the Bootstrap Project in Multics, which brought it from essentially the bare iron up to the point where it could begin to run. It had been written an assembly language. And in Multics, the whole story was to write things in a higher [level] language. That makes them inspectable and viewable, and that’s what I was working on, looking at that problem. Okay, rewrite the Bootstrap in PL/1, from assembler language. About that time Djikstra came to campus and he taught a class. And I took his class and his claims, of course, seemed to me pretty outlandish claims in terms of the ability to know that essentially you had, call it, bug-free programs. And I, of course, had read the T.H.E. paper that he had written about that and I was largely a skeptic. Well, it turned out his office was about three doors down from mine. By that time I had gotten an office in Project MAC; they had a cluster of graduate students that I was with. Down at the other end was Djikstra; they’d found a place for him. And so I’d go down periodically and sort of challenge his claims. Well, he was not a particularly patient person, and obviously, I had a lot of respect for him so you wouldn’t debate him as you would another graduate student; but still try and learn where he was coming from. So I sort of threw out to him; because his examples; although the T.H.E. was about an operating system, when he taught his classes they were about algorithms that were essentially applications. And I said well, I’m not sure that I am persuaded that I can get this approach really to work; he described it as putting beads on a necklace and you put them together, and that sort of thing. I said I’m not convinced. So he said to me, what are you working on? I said I’m supposed to rewrite this assembly language thing in PL/1. And he says well, you understand what I do? Well, I think so. Well, you try it. And so, I said okay, fine, I’ll do that. I’ll modularize it that way; I’ll introduce those sort of layering constructs; and when I had questions and such—it isn’t hard, and not a science as to how to construct that. And occasionally I’d say I don’t see how to do this, so I’d go down and talk to him and say well, okay, I don’t see; you know, it doesn’t seem to me like this goes; and he’d patiently, or impatiently, put me on the right track. And so I did that and produced that program in that way, and of course, with a Bootstrap program, you can’t do much more than a desk check and then go run it. And so you’d have to construct a new boot tape and it booted from tapes. You’d create all these files, then you put them out, and they had this process of creating these tapes, and that was the job. And I was familiar with that process; I had worked in Multics; I had learned how to boot things up. I had written at that low a level. So when the system would come up, if it incurred a flaw early on in the process, it would type that the operating system was dead; this bombed; this is not here; you’d get some sort of very cryptic message that the operator console—which was a typewriter—would type out. And so I put my PL/1 version of the bootstrap program, built the tape, and so I’m going to run my first test, and well, it’s where it’s going to crash first, right? I mean, the usual kind of question, is can I know what happened? So I start the tape running and went to the operating console and waited for the message to type out. And I waited; and I waited. And I said oh boy, I’m in trouble. The thing; it isn’t even able to give me an error message or anything. Nothing happens. I’m really in trouble! And I turned around and looked back at the processor. Well, when the system’s fully up and running, the background thing will flash the lights and a pattern on the console lights. And I looked back, and it was running. And, I said, what’d I do? Run the wrong tape? So I looked down and made sure I had my tape. I booted it again. What? And it came up! Well, you know, from my FORTRAN experience I’d never written a thousand-line program (which this was) that ran the first time, right? It doesn’t happen. And so that was one that definitely changed my perspective from a software engineering point of view, in terms of Djikstra’s impact, which is your question. Yes, it had a definite impact on the way I view software engineering; I became obviously very much of an advocate of that way of thinking about the problem. ====================================================================== Anyone who has used Standard ML functors knows this feeling, but more so: when the code _compiles,_ you just know it's going to work. The way a Standard ML functor works is it composes ML code together. It allows you to implement an interface, and then totally replace the underlying implementation by plugging in a different one. And the type checking catches almost all the mistakes that people commonly make. And if your ML compiler can assemble lightning code, you can do this with assembler. The functor will snap assembler modules together, and the resulting assembler, although quite complicated, _just works._ No debuggers necessary. One may ask what has this to do with scheme? Well, Standard ML can compose scheme or C code just as easily as it can compose assembler code. So a Standard ML functor can define a typed template that will allow one to exchange underling scheme implementations of functional interfaces as easily as it does ML. This is why I want to get Moscow ML working under Guile. Moscow ML is really light-weight when compared with Guile. My machine takes 42 minutes (no, really, I timed it!) to byte-compile just ice9-pp.go. By comparison, the whole Moscow ML autoconf/build cycle takes less than 50s. This includes the runtime, the Standard ML basis library, and the lexer and parser generators and the compiler and toplevel REPL. And there's a fair bit of junk we could trip out, and we could make it a lot faster once we JIT compile the bytecode instead of interpreting it, and when that JIT compiled bytecode uses native Guile SCM objects to representall its data, then there will no penalty whatsoever in a Guile program just switching to Standard ML when it seems like a good idea. [-- Attachment #1.2: Type: text/html, Size: 8006 bytes --] [-- Attachment #2: Type: text/plain, Size: 159 bytes --] _______________________________________________ Lightning mailing list Lightning-mXXj517/zsQ@public.gmane.org https://lists.gnu.org/mailman/listinfo/lightning ^ permalink raw reply [flat|nested] 14+ messages in thread
* Bootstrapping 2014-09-15 22:38 Bug free programs Ian Grant @ 2014-09-16 9:20 ` Ludovic Courtès 2014-09-17 0:57 ` Bug free programs dsmich 1 sibling, 0 replies; 14+ messages in thread From: Ludovic Courtès @ 2014-09-16 9:20 UTC (permalink / raw) To: lightning-mXXj517/zsQ; +Cc: guile-devel-mXXj517/zsQ Hi, Ian Grant <ian.a.n.grant@googlemail.com> skribis: > ML working under Guile. Moscow ML is really light-weight when compared > with Guile. My machine takes 42 minutes (no, really, I timed it!) to > byte-compile just ice9-pp.go. By comparison, the whole Moscow ML > autoconf/build cycle takes less than 50s. (You must be referring to psyntax-pp.scm.) What language is Moscow ML implemented in? Guile is bootstrapped from C: it doesn’t need a previous version of itself or another Scheme implementation to build. It has an interpreter written in C. During bootstrap, that interpreter runs the compiler to build the final interpreter, ice-9/eval.scm. From there we build the rest of the compiler, which includes the macro expander, psyntax. At some point down the road, the compiler has been compiled to bytecode, so things get significantly faster. It’s a trade-off: this process is CPU-intensive, but it makes sure Guile can always be built easily. Ludo’. _______________________________________________ Lightning mailing list Lightning@gnu.org https://lists.gnu.org/mailman/listinfo/lightning ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Bug free programs 2014-09-15 22:38 Bug free programs Ian Grant 2014-09-16 9:20 ` Bootstrapping Ludovic Courtès @ 2014-09-17 0:57 ` dsmich 2014-09-17 1:22 ` Ian Grant 1 sibling, 1 reply; 14+ messages in thread From: dsmich @ 2014-09-17 0:57 UTC (permalink / raw) To: lightning, Ian Grant, guile-devel ---- Ian Grant <ian.a.n.grant@googlemail.com> wrote: .... > One may ask what has this to do with scheme? Well, Standard ML can > compose scheme or C code just as easily as it can compose assembler > code. So a Standard ML functor can define a typed template that will > allow one to exchange underling scheme implementations of functional > interfaces as easily as it does ML. This is why I want to get Moscow > ML working under Guile. Moscow ML is really light-weight when compared > with Guile. My machine takes 42 minutes (no, really, I timed it!) to > byte-compile just ice9-pp.go. By comparison, the whole Moscow ML > autoconf/build cycle takes less than 50s. This includes the runtime, > the Standard ML basis library, and the lexer and parser generators and > the compiler and toplevel REPL. And there's a fair bit of junk we > could trip out, and we could make it a lot faster once we JIT compile > the bytecode instead of interpreting it, and when that JIT compiled > bytecode uses native Guile SCM objects to representall its data, then > there will no penalty whatsoever in a Guile program just switching to > Standard ML when it seems like a good idea. Note that the 42 minutes here is a dumbed-down scheme interpreter written in C building/boostrapping the compiler. The guile compiler (the Scheme one) is quite a bit faster than that. -Dale ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Bug free programs 2014-09-17 0:57 ` Bug free programs dsmich @ 2014-09-17 1:22 ` Ian Grant 2014-09-17 3:27 ` Mark H Weaver 0 siblings, 1 reply; 14+ messages in thread From: Ian Grant @ 2014-09-17 1:22 UTC (permalink / raw) To: dsmich-XauvlLoUTru+XT7JhA+gdA; +Cc: lightning, guile-devel [-- Attachment #1.1: Type: text/plain, Size: 623 bytes --] On Tue, Sep 16, 2014 at 8:57 PM, <dsmich-XauvlLoUTru+XT7JhA+gdA@public.gmane.org> wrote: > Note that the 42 minutes here is a dumbed-down scheme interpreter > written in C building/boostrapping the compiler. The guile compiler > (the Scheme one) is quite a bit faster than that. I know, but it's not necessary. Guile could take the scheme code which implements the efficient compiler, and just print out the C code (which JIT compiles the machine code) implementing that bytecode compiler. See the thunder.pdf I sent when I first proposed this idea: http://lists.gnu.org/archive/html/guile-devel/2014-08/msg00064.html [-- Attachment #1.2: Type: text/html, Size: 872 bytes --] [-- Attachment #2: Type: text/plain, Size: 159 bytes --] _______________________________________________ Lightning mailing list Lightning-mXXj517/zsQ@public.gmane.org https://lists.gnu.org/mailman/listinfo/lightning ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Bug free programs 2014-09-17 1:22 ` Ian Grant @ 2014-09-17 3:27 ` Mark H Weaver [not found] ` <8738brsz82.fsf-Ir+b6ulHfbb+AlalS6MPSg@public.gmane.org> 0 siblings, 1 reply; 14+ messages in thread From: Mark H Weaver @ 2014-09-17 3:27 UTC (permalink / raw) To: Ian Grant; +Cc: lightning, guile-devel Ian Grant <ian.a.n.grant@googlemail.com> writes: > On Tue, Sep 16, 2014 at 8:57 PM, <dsmich@roadrunner.com> wrote: >> Note that the 42 minutes here is a dumbed-down scheme interpreter >> written in C building/boostrapping the compiler. The guile compiler >> (the Scheme one) is quite a bit faster than that. > > I know, but it's not necessary. Guile could take the scheme code which > implements the efficient compiler, and just print out the C code > (which JIT compiles the machine code) implementing that bytecode > compiler. Are you suggesting that we compile our Scheme code to C, include that in our distribution, and then users would start by compiling that (non-source) C code? If so, I'm surprised to hear you suggest that, given your concern over Thompson viruses (which I share, incidentally). A Thompson virus could be hiding in this intermediate C code that would be very hard to audit. I, for one, am very glad that unlike many self-hosting compilers, Guile is bootstrapped entirely from source code, with just one exception: psyntax-pp.scm is generated from psyntax.scm, but it's fairly close to the source code and quite readable. Incidentally, I put a great deal of effort into making sure it was readable. > See the thunder.pdf I sent when I first proposed this idea: > > http://lists.gnu.org/archive/html/guile-devel/2014-08/msg00064.html If you want me to read it, can you please email it as plain text? Mark ^ permalink raw reply [flat|nested] 14+ messages in thread
[parent not found: <8738brsz82.fsf-Ir+b6ulHfbb+AlalS6MPSg@public.gmane.org>]
* Re: Bug free programs [not found] ` <8738brsz82.fsf-Ir+b6ulHfbb+AlalS6MPSg@public.gmane.org> @ 2014-09-17 13:35 ` Ian Grant 2014-09-17 17:29 ` Mark H Weaver 2014-09-17 16:15 ` Ian Grant 1 sibling, 1 reply; 14+ messages in thread From: Ian Grant @ 2014-09-17 13:35 UTC (permalink / raw) To: Mark H Weaver; +Cc: lightning, dsmich-XauvlLoUTru+XT7JhA+gdA, guile-devel [-- Attachment #1.1: Type: text/plain, Size: 1974 bytes --] On Tue, Sep 16, 2014 at 11:27 PM, Mark H Weaver <mhw-StlzRsPvAncdnm+yROfE0A@public.gmane.org> wrote: > Ian Grant <ian.a.n.grant-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org> writes: > > Are you suggesting that we compile our Scheme code to C, include that > in our distribution, and then users would start by compiling that > (non-source) C code? If so, I'm surprised to hear you suggest that, > given your concern over Thompson viruses (which I share, incidentally). > A Thompson virus could be hiding in this intermediate C code that would > be very hard to audit. > Tell me, how did you compile your OS kernel and your glibc, ld.so, ld, as and gcc binaries? You don't seem to understand the problem: a "Thompson virus" is not hard to audit, it is _impossible_ to audit, because it's _invisible_. The method I explain in that document will allow us to know that there is very probably not a "Thompson virus" anywhere in the system. I, for one, am very glad that unlike many self-hosting compilers, Guile > is bootstrapped entirely from source code, with just one exception: > psyntax-pp.scm is generated from psyntax.scm, but it's fairly close to > the source code and quite readable. Incidentally, I put a great deal of > effort into making sure it was readable. > I can assure you that Guile is most certainly not bootstrapped entirely from source code. If you had understood any of the discussion about the problem you would know that there is not one single line of GNU source that has ever been bootstrapped from source code. > > > See the thunder.pdf I sent when I first proposed this idea: > > > > http://lists.gnu.org/archive/html/guile-devel/2014-08/msg00064.html > > If you want me to read it, can you please email it as plain text? > No: because If you can't read a PDF then you can't read _any_ of the research papers you need to be able to read in order to stand the slightest chance of doing a decent job of developing any kind of software at all. Ian [-- Attachment #1.2: Type: text/html, Size: 2947 bytes --] [-- Attachment #2: Type: text/plain, Size: 159 bytes --] _______________________________________________ Lightning mailing list Lightning-mXXj517/zsQ@public.gmane.org https://lists.gnu.org/mailman/listinfo/lightning ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Bug free programs 2014-09-17 13:35 ` Ian Grant @ 2014-09-17 17:29 ` Mark H Weaver [not found] ` <87a95yp341.fsf-Ir+b6ulHfbb+AlalS6MPSg@public.gmane.org> 0 siblings, 1 reply; 14+ messages in thread From: Mark H Weaver @ 2014-09-17 17:29 UTC (permalink / raw) To: Ian Grant; +Cc: lightning, guile-devel Hi Ian, I'm going to try to ignore your gratutious and unfounded insults, because I agree that the problem you are trying to solve is an important one, and believe it or not, you'd be hard pressed to find anyone else in the GNU project who worries about this issue as much as I do. For example, on an internal GNU mailing list, I complained when GCC switched to using C++ because it vastly increases the complexity of the simplest compiler that's able to bootstrap it. The reason is that for a few years now, I've very seriously considered dedicating myself to developing a bootstrap procedure that starts with raw machine code running on bare metal and ends with a working GNU toolchain. I've also considered more practical approaches such as: lock a (preferably older) computer inside a Faraday cage to prevent communication with the outside world, thus limiting the intelligence that any Thompson virus can have, while I write a very simple and novel C compiler that's capable of bootstrapping GCC and the rest of the toolchain, and then printing the result to paper in a form that can be scanned reliably -- a task I have some experience with, since I led the development of the scannable PGP source code books that allowed PGP to be legally exported from the US fo the first time, along with the tools needed to convert the paper books back into electronic form with modest effort. Ian Grant <ian.a.n.grant@googlemail.com> writes: > On Tue, Sep 16, 2014 at 11:27 PM, Mark H Weaver <mhw@netris.org> > wrote: > > Ian Grant <ian.a.n.grant@googlemail.com> writes: > > Are you suggesting that we compile our Scheme code to C, include > that > in our distribution, and then users would start by compiling that > (non-source) C code? If so, I'm surprised to hear you suggest > that, > given your concern over Thompson viruses (which I share, > incidentally). > A Thompson virus could be hiding in this intermediate C code that > would > be very hard to audit. > > Tell me, how did you compile your OS kernel and your glibc, ld.so, ld, > as and gcc binaries? Yes, that's a very serious problem, but I don't want to make the problem worse by adding yet another pile of intermediate C code that must be taken on faith to be free of Thompson viruses. > I, for one, am very glad that unlike many self-hosting compilers, > Guile > is bootstrapped entirely from source code, with just one > exception: > psyntax-pp.scm is generated from psyntax.scm, but it's fairly > close to > the source code and quite readable. Incidentally, I put a great > deal of > effort into making sure it was readable. > > I can assure you that Guile is most certainly not bootstrapped > entirely from source code. If you had understood any of the discussion > about the problem you would know that there is not one single line of > GNU source that has ever been bootstrapped from source code. I understand that just fine. It's obvious that to compile Guile, you first need a C toolchain. That's a separate problem, and indeed a very serious one. > > See the thunder.pdf I sent when I first proposed this idea: > > > > > http://lists.gnu.org/archive/html/guile-devel/2014-08/msg00064.html > > If you want me to read it, can you please email it as plain text? > > No: because If you can't read a PDF then you can't read _any_ of the > research papers you need to be able to read in order to stand the > slightest chance of doing a decent job of developing any kind of > software at all. Wow. Did you try telling that to RMS, who made the same suggestion? I read plenty of PDFs. They are inconvenient, but I suffer that inconvenience on a regular basis, when I have reason to believe that I might learn something new from them. So far, not a single person has recommended your paper to me except you, nor have I learned anything I didn't already know from the emails you've written, at least not from the prefixes of those emails that I've read before losing interest. I'm not saying that you don't have something to teach me. Maybe you do, but if so, you must learn the art of capturing the interest of your readers long enough to convince them that they should continue reading. At present, you're in the position of having to convince me that you're ideas are worth studying, not the other way around, and I suspect I'm not alone. It would help to tell me something I didn't already know, in ASCII, as concisely as possible. Mark ^ permalink raw reply [flat|nested] 14+ messages in thread
[parent not found: <87a95yp341.fsf-Ir+b6ulHfbb+AlalS6MPSg@public.gmane.org>]
* Re: Bug free programs [not found] ` <87a95yp341.fsf-Ir+b6ulHfbb+AlalS6MPSg@public.gmane.org> @ 2014-09-17 18:11 ` Ian Grant 2014-09-17 21:32 ` Ludovic Courtès 2014-09-17 21:57 ` Ian Grant 1 sibling, 1 reply; 14+ messages in thread From: Ian Grant @ 2014-09-17 18:11 UTC (permalink / raw) To: Mark H Weaver; +Cc: lightning, dsmich-XauvlLoUTru+XT7JhA+gdA, guile-devel On Wed, Sep 17, 2014 at 1:29 PM, Mark H Weaver <mhw-StlzRsPvAncdnm+yROfE0A@public.gmane.org> wrote: > Hi Ian, > > I'm going to try to ignore your gratutious and unfounded insults, They are indeed gratuitous. Think of them as a sort of free software. > because I agree that the problem you are trying to solve is an important > one, and believe it or not, you'd be hard pressed to find anyone else in > the GNU project who worries about this issue as much as I do. I have no trouble at all believing that. That doesn't mean I think you know what you're talking about though. > For example, on an internal GNU mailing list, I complained when GCC > switched to using C++ because it vastly increases the complexity of the > simplest compiler that's able to bootstrap it. It's OK. As long they maintain one of the older gcc versions which builds a g++ compiler from a C base, there's not much extra work involved at all. > The reason is that for a few years now, I've very seriously considered > dedicating myself to developing a bootstrap procedure that starts with > raw machine code running on bare metal and ends with a working GNU > toolchain. It's a good thing inertia prevailed, because that would have been a complete and utter waste of time. But tell me, how were you planning to load the machine code into the memory? Were you going to solder up a front-panel loader and bootstrap it by setting the address and data lines and pressing 'WRITE'? I hope you weren't planning to make a paper tape reader! > I've also considered more practical approaches such as: lock a > (preferably older) computer inside a Faraday cage to prevent > communication with the outside world, thus limiting the intelligence > that any Thompson virus can have, while I write a very simple and novel > C compiler that's capable of bootstrapping GCC and the rest of the > toolchain, and then printing the result to paper in a form that can be > scanned reliably -- a task I have some experience with, since I led the > development of the scannable PGP source code books that allowed PGP to > be legally exported from the US fo the first time, along with the tools > needed to convert the paper books back into electronic form with modest > effort. What is the point of printing it on paper? How 'novel' is your C compiler going to be once you've distributed it? Was it going to be Free Software? If it had a bug, would you distribute an update? > Wow. Did you try telling that to RMS, who made the same suggestion? No, because he didn't make it a condition of him reading it: he had already read it when he made that suggestion. > I read plenty of PDFs. They are inconvenient, but I suffer that > inconvenience on a regular basis, when I have reason to believe that I > might learn something new from them. So far, not a single person has > recommended your paper to me except you, I don't need people to recommend papers before I read them. > nor have I learned anything I didn't already know from the emails > you've written, at least not from the prefixes of those emails that > I've read before losing interest. Why did you think I hadn't noticed that? > I'm not saying that you don't have something to teach me. Maybe you do, I don't think I could teach you anything. > but if so, you must learn the art of capturing the interest of your > readers long enough to convince them that they should continue reading. No, I don't need to do that because I'm not selling anything. There's nothing I need from the Free Software Foundation. The Free Software Foundation on the other hand, very desperately needs to know what I know about GNU software. > At present, you're in the position of having to convince me that you're > ideas are worth studying, not the other way around, and I suspect I'm > not alone. It would help to tell me something I didn't already know, in > ASCII, as concisely as possible. I have told you lots, and in a very few words. You just need to actually think about it. And you will, because, until you understand that in fact you know NOTHING about what the computer you are using to read this message is actually doing, there won't pass a single day of your life that you don't think about what I am telling you now. Happy hacking, until you learn something about software engineering. Ian ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Bug free programs 2014-09-17 18:11 ` Ian Grant @ 2014-09-17 21:32 ` Ludovic Courtès [not found] ` <87sijq2arb.fsf-mXXj517/zsQ@public.gmane.org> 0 siblings, 1 reply; 14+ messages in thread From: Ludovic Courtès @ 2014-09-17 21:32 UTC (permalink / raw) To: Ian Grant; +Cc: guile-devel Ian Grant <ian.a.n.grant@googlemail.com> skribis: > On Wed, Sep 17, 2014 at 1:29 PM, Mark H Weaver <mhw-StlzRsPvAncdnm+yROfE0A@public.gmane.org> wrote: >> Hi Ian, >> >> I'm going to try to ignore your gratutious and unfounded insults, > > They are indeed gratuitous. Ian, insulting behavior is not acceptable on this mailing list. Please stop it, now. Furthermore, while your ideas may be worth pursuing, it’s not OK to keep aggressively posting to so many people. Please come back to guile-devel@gnu.org when you have concrete proposals or code, directly relevant to Guile development, for discussion. Thanks for your understanding. Ludo’. ^ permalink raw reply [flat|nested] 14+ messages in thread
[parent not found: <87sijq2arb.fsf-mXXj517/zsQ@public.gmane.org>]
* Re: Bug free programs [not found] ` <87sijq2arb.fsf-mXXj517/zsQ@public.gmane.org> @ 2014-09-17 22:10 ` Ian Grant 0 siblings, 0 replies; 14+ messages in thread From: Ian Grant @ 2014-09-17 22:10 UTC (permalink / raw) To: Ludovic Courtès, guile-devel, lightning, Richard Stallman On Wed, Sep 17, 2014 at 5:32 PM, Ludovic Courtès <ludo@gnu.org> wrote: > Ian Grant <ian.a.n.grant@googlemail.com> skribis: > Furthermore, while your ideas may be worth pursuing, it’s not OK to keep > aggressively posting to so many people. Please come back to > guile-devel@gnu.org when you have concrete proposals or code, directly > relevant to Guile development, for discussion. Hi Ludovic, First, see: http://lists.gnu.org/archive/html/guile-devel/2014-09/msg00042.html http://lists.gnu.org/archive/html/guile-devel/2014-09/msg00069.html http://lists.gnu.org/archive/html/guile-devel/2014-09/msg00067.html http://lists.gnu.org/archive/html/guile-devel/2014-09/msg00074.html Then tell me what responses I received from guile developers, and what you mean when you say "come back when you have concrete proposals or code"? And then tell me what you and all the other FSF members are going to look like if the whole FSF starts to fall down around your ears, and you stopped me from posting messages which were just and decent attempts to wake people up from their torpor, simply because some weak-minded people got a little offended at being addressed directly and couldn't justify what they had written. Ian _______________________________________________ Lightning mailing list Lightning@gnu.org https://lists.gnu.org/mailman/listinfo/lightning ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Bug free programs [not found] ` <87a95yp341.fsf-Ir+b6ulHfbb+AlalS6MPSg@public.gmane.org> 2014-09-17 18:11 ` Ian Grant @ 2014-09-17 21:57 ` Ian Grant [not found] ` <CAKFjmdwA31CsB_FLYuOLBfR6_DX5Qj+GUGnoMxwgrBryy4Uqtw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 1 sibling, 1 reply; 14+ messages in thread From: Ian Grant @ 2014-09-17 21:57 UTC (permalink / raw) To: Mark H Weaver; +Cc: lightning, dsmich-XauvlLoUTru+XT7JhA+gdA, guile-devel On Wed, Sep 17, 2014 at 1:29 PM, Mark H Weaver <mhw-StlzRsPvAncdnm+yROfE0A@public.gmane.org> wrote: > [...] I led the development of the scannable PGP source code books that > allowed PGP to be legally exported from the US fo the first time, along > with the tools needed to convert the paper books back into electronic > form with modest effort. This is the most interesting thing anyone's said in the discussion so far. Now you can teach me something. If I had modified GNU source and I'd compiled it to object code, and put it in that "non-electronic media" you developed, and sold it, without making the modified source available to people, would that be selling Copyleft software? I think so. Now tell me how it is _you_ know that what you did doesn't earn you and Richard Stallman a fetching orange jump-suit each, and an all-expenses-paid vacation at a Government holiday camp in the South East Florida Keys, with power-showers every two hours and where you get to listen to the same Eminem song (there is only one) 24 hours a day? http://www.pmddtc.state.gov/regulations_laws/documents/official_itar/ITAR_Part_121.pdf Category VIII - Auxiliary Military Equipment ================================ (b) Military Information Security Assurance Systems and equipment, cryptographic devices, software, and components specifically designed, developed, modified, adapted, or configured for military applications (including command, control and intelligence applications. Ian ^ permalink raw reply [flat|nested] 14+ messages in thread
[parent not found: <CAKFjmdwA31CsB_FLYuOLBfR6_DX5Qj+GUGnoMxwgrBryy4Uqtw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: Bug free programs [not found] ` <CAKFjmdwA31CsB_FLYuOLBfR6_DX5Qj+GUGnoMxwgrBryy4Uqtw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2014-09-18 0:50 ` Ian Grant 0 siblings, 0 replies; 14+ messages in thread From: Ian Grant @ 2014-09-18 0:50 UTC (permalink / raw) To: Mark H Weaver; +Cc: lightning, dsmich-XauvlLoUTru+XT7JhA+gdA, guile-devel [-- Attachment #1.1: Type: text/plain, Size: 2043 bytes --] On Wed, Sep 17, 2014 at 5:57 PM, Ian Grant <ian.a.n.grant-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org> wrote: > Now tell me how it is _you_ know that what you did doesn't earn you > and Richard Stallman a fetching orange jump-suit each, and an > all-expenses-paid vacation at a Government holiday camp in the South > East Florida Keys, with power-showers every two hours and where you > get to listen to the same Eminem song (there is only one) 24 hours a > day? Here's a clue. It's from Lewis Carroll's "Symbolic Logic" http://www.gutenberg.org/2/8/6/9/28696/ (4) "Of the prisoners who were put on their trial at the last Assizes, all, against whom the verdict 'guilty' was returned, were sentenced to imprisonment; Some, who were sentenced to imprisonment, were also sentenced to hard labour". Let Univ. be "the prisoners who were put on their trial at the last Assizes"; m = who were sentenced to imprisonment; x = against whom the verdict 'guilty' was returned; y = who were sentenced to hard labour. The Premisses, translated into abstract form, are "All x are m; Some m are y". Breaking up the first, we get the three (1) "Some x are m; (2) No x are m'; (3) Some m are y". Representing these, in the order 2, 1, 3, on a Triliteral Diagram, we get ·---------------· |(O) | (O)| | ·---|---· | | | (I) | | |---|(I)|---|---| | | | | | | ·---|---· | | | | ·---------------· Here we get no Conclusion at all. You would very likely have guessed, if you had seen _only_ the Premisses, that the Conclusion would be "Some, against whom the verdict 'guilty' was returned, were sentenced to hard labour". But this Conclusion is not even _true_, with regard to the Assizes I have here invented. [-- Attachment #1.2: Type: text/html, Size: 2720 bytes --] [-- Attachment #2: Type: text/plain, Size: 159 bytes --] _______________________________________________ Lightning mailing list Lightning-mXXj517/zsQ@public.gmane.org https://lists.gnu.org/mailman/listinfo/lightning ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Bug free programs [not found] ` <8738brsz82.fsf-Ir+b6ulHfbb+AlalS6MPSg@public.gmane.org> 2014-09-17 13:35 ` Ian Grant @ 2014-09-17 16:15 ` Ian Grant 2014-09-18 9:28 ` Neil Jerram 1 sibling, 1 reply; 14+ messages in thread From: Ian Grant @ 2014-09-17 16:15 UTC (permalink / raw) To: Mark H Weaver; +Cc: lightning, dsmich-XauvlLoUTru+XT7JhA+gdA, guile-devel [-- Attachment #1.1: Type: text/plain, Size: 625 bytes --] On Tue, Sep 16, 2014 at 11:27 PM, Mark H Weaver <mhw-StlzRsPvAncdnm+yROfE0A@public.gmane.org> wrote: > A Thompson virus could be hiding in this intermediate C code that would > be very hard to audit. > When did you last audit these 66,000 lines of intermediate code, which people are encouraged to run as root? If you _had_ audited it, how would you know you hadn't missed something cunningly concealed in a double expansion somewhere? ian3@jaguar:~/build/guile-2.0.11$ wc -l Makefile lib/Makefile libguile/Makefile configure 2373 Makefile 4052 lib/Makefile 3792 libguile/Makefile 55901 configure 66118 total [-- Attachment #1.2: Type: text/html, Size: 1009 bytes --] [-- Attachment #2: Type: text/plain, Size: 159 bytes --] _______________________________________________ Lightning mailing list Lightning-mXXj517/zsQ@public.gmane.org https://lists.gnu.org/mailman/listinfo/lightning ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: Bug free programs 2014-09-17 16:15 ` Ian Grant @ 2014-09-18 9:28 ` Neil Jerram 0 siblings, 0 replies; 14+ messages in thread From: Neil Jerram @ 2014-09-18 9:28 UTC (permalink / raw) To: guile-devel On 2014-09-17 17:15, Ian Grant wrote: > When did you last audit these 66,000 lines of intermediate code, which > people are encouraged to run as root? [...] > ian3@jaguar:~/build/guile-2.0.11$ wc -l Makefile lib/Makefile > libguile/Makefile configure > 2373 Makefile > 4052 lib/Makefile > 3792 libguile/Makefile > 55901 configure > 66118 total People are absolutely NOT encouraged to run ./configure and make as root. In around 20 years of Guile development, I don't recall ever doing or encouraging that. Regards, Neil ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2014-09-18 9:28 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-09-15 22:38 Bug free programs Ian Grant 2014-09-16 9:20 ` Bootstrapping Ludovic Courtès 2014-09-17 0:57 ` Bug free programs dsmich 2014-09-17 1:22 ` Ian Grant 2014-09-17 3:27 ` Mark H Weaver [not found] ` <8738brsz82.fsf-Ir+b6ulHfbb+AlalS6MPSg@public.gmane.org> 2014-09-17 13:35 ` Ian Grant 2014-09-17 17:29 ` Mark H Weaver [not found] ` <87a95yp341.fsf-Ir+b6ulHfbb+AlalS6MPSg@public.gmane.org> 2014-09-17 18:11 ` Ian Grant 2014-09-17 21:32 ` Ludovic Courtès [not found] ` <87sijq2arb.fsf-mXXj517/zsQ@public.gmane.org> 2014-09-17 22:10 ` Ian Grant 2014-09-17 21:57 ` Ian Grant [not found] ` <CAKFjmdwA31CsB_FLYuOLBfR6_DX5Qj+GUGnoMxwgrBryy4Uqtw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2014-09-18 0:50 ` Ian Grant 2014-09-17 16:15 ` Ian Grant 2014-09-18 9:28 ` Neil Jerram
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).