From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.comp.gnu.lightning.general,gmane.lisp.guile.devel Subject: Re: The Free Semantics Foundation Date: Thu, 04 Sep 2014 21:39:41 -0400 Message-ID: References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1409881228 15988 80.91.229.3 (5 Sep 2014 01:40:28 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 5 Sep 2014 01:40:28 +0000 (UTC) Cc: guile-devel-mXXj517/zsQ@public.gmane.org To: lightning-mXXj517/zsQ@public.gmane.org Original-X-From: lightning-bounces+gcglg-lightning=m.gmane.org-mXXj517/zsQ@public.gmane.org Fri Sep 05 03:40:22 2014 Return-path: Envelope-to: gcglg-lightning@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XPiVi-0003bH-MC for gcglg-lightning@m.gmane.org; Fri, 05 Sep 2014 03:40:22 +0200 Original-Received: from localhost ([::1]:54982 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XPiVi-0004OT-BW for gcglg-lightning@m.gmane.org; Thu, 04 Sep 2014 21:40:22 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:48330) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XPiVW-0004CI-QM for lightning-mXXj517/zsQ@public.gmane.org; Thu, 04 Sep 2014 21:40:18 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XPiVP-0001T0-Bn for lightning-mXXj517/zsQ@public.gmane.org; Thu, 04 Sep 2014 21:40:10 -0400 Original-Received: from plane.gmane.org ([80.91.229.3]:53684) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XPiVP-0001Na-5m for lightning-mXXj517/zsQ@public.gmane.org; Thu, 04 Sep 2014 21:40:03 -0400 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1XPiVN-0003Mn-Sr for lightning-mXXj517/zsQ@public.gmane.org; Fri, 05 Sep 2014 03:40:01 +0200 Original-Received: from 69-165-145-6.dsl.teksavvy.com ([69.165.145.6]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 05 Sep 2014 03:40:01 +0200 Original-Received: from monnier by 69-165-145-6.dsl.teksavvy.com with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 05 Sep 2014 03:40:01 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 24 Original-X-Complaints-To: usenet-dbVV3NMTNubNLxjTenLetw@public.gmane.org X-Gmane-NNTP-Posting-Host: 69-165-145-6.dsl.teksavvy.com User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4.50 (gnu/linux) Cancel-Lock: sha1:YLtcVcHggjU2VdP9Pzw4TSh6UDU= X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 80.91.229.3 X-BeenThere: lightning-mXXj517/zsQ@public.gmane.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lightning-bounces+gcglg-lightning=m.gmane.org-mXXj517/zsQ@public.gmane.org Original-Sender: lightning-bounces+gcglg-lightning=m.gmane.org-mXXj517/zsQ@public.gmane.org Xref: news.gmane.org gmane.comp.gnu.lightning.general:568 gmane.lisp.guile.devel:17407 Archived-At: > I have written this as a sort of manifesto for a project. The idea is to > develop software for automating programming. If we can automate the > production of concrete implementations of communications protocols, device > drivers, language interpreters, etc, then we can change and combine such > implementations much more easily. We could also secure systems by design: > if all the code on an exposed interface in a communications or an operating > system is automatically generated, then we can ensure that buffer overruns > etc can't happen. People have been doing that for ages. E.g. describe your protocol in some language, then auto-generate an implementation from it. The "some language" needs to be precise enough that an implementation can be generated from it, so typically this language ends up looking pretty much like a programming language. Maybe specialized to the task at hand (that's called a Domain Specific Language, and is routine in the Lisp world) or with a slightly different feel (e.g. logic programming), but in the end, because it needs to be precise enough, it ends up constraining the "autogenerated implementation" rather tightly. Coding in C or Scheme is "writing a spec", and passing it to GCC or Guile is "automatic generation of an implementation". Stefan