[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-user: fritzing
On Thursday 07 May 2009, John Griessen wrote:
> The ones I know circuit designers use are verilog, perl and
> python. and then there are the many Matlab programmers...
>
> Are any of those what you're thinking of Al?
Yes, sort of, if you look only at popular existing languages.
The real point is that any application has its language that
people speak in. The computer language must match that.
This was one of the major new features of SPICE, back in the
70's. It introduced a language for describing circuits that is
truly meaningful to circuit designers.
In the years that followed, the language has become obsolete
because it was not sufficiently expressive and too irregular, so
new languages like Spectre and the structural subset of Verilog
have evolved that still present the circuit view.
The behavioral part of Verilog-AMS evolved out of that for
making mathematical models of devices while staying in the
circuit description comfort zone. This behavioral language will
never replace the netlist part, but it beats C by a wide margin.
It takes care of things like derivatives, so you can do things
like enter device equations like you see them in texts or
papers.
I have seen lots of little circuit simulators with input formats
based on some other language. For example, the circuit
description might be a syntactically correct Python program.
(or any other language. It doesn't matter.) None of these are
successful because they are fundamentally not circuits, or not
seen as circuits.
Similar arguments can be made in just about anything else. A
proper language is one specifically designed for the application
at hand. It is hard to do because someone needs to have skills
in both domains .. the application domain and programming
languages.
Maybe this is one of the points of Fritzing, and user
friendliness in general. Those things on the screen are
transistors and resistors. Not symbols or files. A schematic
and layout are two different views of the same thing. A netlist
is yet another view of the same thing.
To be truly both expert friendly and beginner friendly, we need
to see that, and make it true.
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user