www.delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2015/12/30/04:04:07

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
X-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20120113;
h=mime-version:in-reply-to:references:date:message-id:subject:from:to
:content-type;
bh=zMIUjaOZ6POhytiLmtkFm1yq2sb+yyYqOmvYNtALnR8=;
b=SnTclIPKFGg2r2KnygNnNKB6EdFUsF6px1PcMgEcQQE71jZ+fIMD69m8cx2N2c6Ncf
Hd0Mf8d4c5lJ0zRjcFjKD1am54cWiIRU0riVbSQyf9Nj660cIseFBuhbjT1dCui2nWwI
fbwC7P4vgxCK7gR4Fk5ES9qs0Jru096X4fr1XvFAWtQNaIqVhs8n/uawJGzahewGx4ih
dfyC+YSnZqOhZtuP3DSCOKZXcb4xSpT7SKrDFrwHOZ2ZAXtxH/mtiosRh+7hNlTOXGp6
g2Wg5U0g8UE4cB/8UM3m9vxr9Zraduom9QP4yMI2l0MCapW75rqdtNg05qG5fHPN4YGZ
JF6g==
MIME-Version: 1.0
X-Received: by 10.28.54.78 with SMTP id d75mr18839764wma.6.1451466226231; Wed,
30 Dec 2015 01:03:46 -0800 (PST)
In-Reply-To: <CAM2RGhS4L-ch6FEcLtdSt0vA0BdQZvq+AuFDP+9ea7Ftd=AALg@mail.gmail.com>
References: <CAM2RGhS4L-ch6FEcLtdSt0vA0BdQZvq+AuFDP+9ea7Ftd=AALg AT mail DOT gmail DOT com>
Date: Wed, 30 Dec 2015 12:03:45 +0300
Message-ID: <CAMvDHVATJYfLUkL+5AkD31BVTbg5OdKTvZc2LVh=7Kf6Y-95EA@mail.gmail.com>
Subject: Re: gEDA and it's future with Scheme & Guile was Re: [geda-user]
Project leadership
From: "Vladimir Zhbanov (vzhbanov AT gmail DOT com) [via geda-user AT delorie DOT com]" <geda-user AT delorie DOT com>
To: geda-user AT delorie DOT com
Reply-To: geda-user AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: geda-user AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

On 12/29/15, Evan Foss (evanfoss AT gmail DOT com) [via
geda-user AT delorie DOT com] <geda-user AT delorie DOT com> wrote:
...
>>> could be miss interpreting your plan here but it sounds like you are
>>> going to replace more of the C with Scheme.
>>
>> Yeah, that's my plan :)
>
> Sorry but I oppose this plan and I think I can gather a lot of support.

I was going to write an extended answer until I realized it would
be overwhelmingly difficult for me due to I am not so fluent in
English as you are. Hence I'll try to manifest what I consider to
be done (and what I worked on so far). Please let me know which
things you consider to be harmful for gEDA. Now then, I list my
wishes here:

- each C-function in geda-gaf should be available for
  Scheme-scripting;
- all geda-gaf programs should be modularized and all their
  functions should be available for other programs
- all duplicated functionality should be unified and cleaned up.

Now, what I did so far (some of my stuff can be found on
https://github.com/vzh):
- rewrote pretty useless gsymcheck having lots of erroneous C
  functionality in Scheme, thus added
  - new checks;
  - representation of a symbol as a whole as a list having all
    slotting and net info without conflicts in it;
- added a simple interface for using it in gschem where the user
  can:
  - check common symbol errors (in primitives or attributes);
  - select particular objects (or all them) and check what's wrong
    with them (if any)
- wrote a simple DSL to quickly parse our new ini-style config
  files in order to get all their structure in libgeda at once
  (did not finish yet); if I ever will work on it further, it
  could close one of the blueprints we have in the bug-tracker
  for geda
- played with gschem's undo to represent it as a plain Scheme list
  so user could just type something like "(get-undo)" in the REPL
  and see all undo info (which is now buried in libgeda C structs)
  as a plain list (it is in another branch, didn't check it in
  because it has to be cleaned up, and my attempts to work on DSL
  are on top of it)
- added REPL in background terminal for gschem and found a way to
  add more REPLs which you would be able to use, say, in Emacs,
  using its shiny geiser environment
- did lots of other work (e.g. symbol generator which could work
  as a gschem function, that is could have a menu for calling it;
  whitespace separated netlist to schematic converter; and other
  things) which I'm not motivated to continue to work on until we
  find the direction we'll go further.

I must emphasize one thing: all those Scheme functions/add-ons are
available on the C side as well.

Finally, I consider the position of "get rid of Scheme" to be a
Bad Thing which slows down geda development.

Regards,
  Vladimir

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019