Interview with Chip on Embedded.fm
Ken Gracey
Posts: 7,392
Chip has a one-hour interview on Embedded.fm right here http://embedded.fm/episodes/2015/2/4/87-make-my-own-steel-foundry
Ken Gracey
Parallax Inc.
Ken Gracey
Parallax Inc.
Comments
What an awesome interview!
Thanks Ken for sharing this. Once Chip gets the Prop II out I would love to see more interviews.
https://www.youtube.com/watch?v=1R9LZ0Th77U
Watch all 7!
The part that made sense was the type-less variables in Spin versus the usage of types in C. C can be quite confusing. I can never remember if the result of (unsigned int)x * (signed int)y is signed or unsigned, and there are many more confusing type-traps that the C programmer can get caught in. So the type-less nature of Spin does simplify things a bit. The drawback is that the Spin compiler has no way to warn that programmer when he does bad things, such as passing a number to a method that expects a pointer.
What struck me was Chip's comments about the simplicity of a system without types and it's handling of asynchronous events.
Chip is going to love JavaScript when he discovers it
Indeed. I had the same thought! Javascript is really lean in the same way SPIN is, allowing all sorts of bizarre things, but also allowing cool things too. It's sort of up to the user to get it, rather than navigate a more structured environment.
There is one subtle dynamic about SPIN, related to cryptic things, and that is one doesn't really have to explore those to get somewhere in SPIN. Almost everything you type in SPIN is meaningful in terms of telling it what you want.
Let me coin the term meta-cryptic.
In C, there are a fair number of cryptic things one must know to do anything. In SPIN there are far fewer of these. The feel I got was one doesn't need to know as much or know to know to describe to SPIN as much as there is in C. That's meta-cryptic.
In monkey see, monkey do, fashion, somebody can make their SPIN program look like one they saw, and it's more likely to do something for them. Put another way.
Once a person has gotten past the basics, and real meaning starts to happen, then SPIN has all these little operators. I felt too many at first. But now, it seems to make sense.
A similar thing happens with C, but the initial stage is not as lean of a climb as it is with SPIN.
JS is indeed "lean" when it comes to types but it's seriously un-lean when it comes to the run time environment. JS can be run on micro-controllers but not one a small as a Prop.
Then of course the async nature of JS is not the same as the async nature actually having multiple processors to handle events.
ErNa,
You probably don't want to use float values as array indexes. Performance will be terrible.
But, as a language, it presents pretty lean. It's entirely possible to put somebody into an environment, teach them a few basic things and see them accomplish quite a lot.
I ran through one of the Code Academy courses and was reminded of my SPIN experiences.
Dave
The schematic translation was completed last week and now I'm working on the Prop1 code for our new Prop 1-2-3 FPGA board. It's actually just a port of old SX code to the Prop1. The PC-side software is already done, as it's just our old PX Loader product from 2003. It's very simple, but exactly what we need. I should have this port done by the end of the week, then I can get back into the Prop2 Verilog using our new FPGA board.
I'm glad you're still interested in Prop2!
I need to get the Prop1-based FPGA loader working before we can test every board-level connection to the FPGA pins. It's all looking good, so far. We've identified a few minor changes we need to make to the layout, so as soon as we are able to test everything, Daniel can make a new board and we'll get it in the pipe. It's a nice FPGA board and it does everything we need. Daniel did a great job on it.
Thank for your perseverance. !