?
For a beginner that is mind bending. What's with all the funny spelling of "print"? And, by the way, why "print" I don't have any printer here? Then there is all those weird brackets, percent signs, "/n" and semicolons. Crazy. Oh yeah, and what is a float? Are we going fishing or what?
That's ignoring the other junk like 'int main(int argc, char* argv[])' and '#include "stdio,h"' Etc.
Better to just have:
> a = 3
3
> a
3
>
Or similar in BASIC, Lisp, Scheme, Forth etc.
However, I don't think you are going to get Lisp into the Propeller.
The brilliant thing about the Arduino is that they hide that fact very well.
You don't have to write "main..." anything in the Arduino IDE. You don't need to know anything about classes and such to get started. They don't even mention "C++" in their tutorials and documentation for fear of frightening people away.
If you want to introduce newbies to programming then BASIC is probably the best choice. The syntax is simple and they get instant gratification. A BASIC interpreter that compiles to bytecodes can be as fast as any other language on the Prop except for PASM.
I don't think Forth is a good language for beginners because the interpreter doesn't provide warnings or error messages. If you're lucky the Forth interpreter may detect stack underflows, and protect the novice from that. I don't think any of the Prop Forths will tell the programmer he forgot to terminate an IF with a THEN, or he forgot to use a DROP after a loop when he no longer needed a value on the stack.
As Heater pointed out even C++ can be made easy for novices and non-technical people to use. The success of the Arduino is proof that it can be done.
The brilliant thing about the Arduino is that they hide that fact very well.
You don't have to write "main..." anything in the Arduino IDE. You don't need to know anything about classes and such to get started. They don't even mention "C++" in their tutorials and documentation for fear of frightening people away.
Just type-n-go. Very quick very easy.
By the way, in what way is C++ not procedural?
I don't see any real advantage of setup() and loop() over main(). You trade writing a second function for writing a while loop. Not much improvement in my opinion.
If you want to introduce newbies to programming then BASIC is probably the best choice. The syntax is simple and they get instant gratification. A BASIC interpreter that compiles to bytecodes can be as fast as any other language on the Prop except for PASM.
There is one in the PropGCC demos called ebasic3. It compiles to bytecodes which are then interpreted by a PASM VM. Yes, it is written in C but no C code is required to run the compiled byte codes. I've been working on a variant of that called "notc" which has c-like syntax. Not sure it will ever see the light of day though.
I hate to say this or even think about this, but maybe it is the chip that is the problem. I am starting to think that it may not matter what language or interactive system you provide that will be the magic item that will get everybody back or even entice new people to try it again. The Propeller has been around for a very long time, and it is still only a favorite for just a few of us that are still hanging around here.
I must admit that when I saw the title of this thread, I started to do a search for how to use the popular ARM platform in an embedded form. Anybody remember the Scenix chip and what it was trying convey?
BASIC perhaps was a great intro to the idea of programming in it's day.
Good old BASIC also had no friendly compiler errors/warnings about bad program structure. A GOSUB with no RETURN would be chaos. There really was no such language construct as a subroutine/function syntactically.
Times have moved on and BASIC can now look like many other block structured languages in the linage of Algol. Hardly BASIC any more.
Just now JavaScript fills the same role as BASIC as a beginnners intro to "what is a program" language whilst also being surprisingly sophisticated.
David Betz,
I don't see any real advantage of setup() and loop() over main().
Put like that it does not seem much. The proof is in the pudding I guess. There are many thousands of Arduino programmers out there who started from nothing and would have been frightened away by the standard C "Hello world" program.
The IDE has a lot to do with that. Hence the need for an actually simple SimpleIDE.
Truth is, a ton of stuff can and is being done in 32K. Often, pretty amazing things.
Doing that takes considerable skill, in addition to learning some new things related to how the chip does things.
There will always be the learning of new things, unless one is on a chip that doesn't do things differently.
However, there does not need to be the same skill requirement.
A lot of these discussions center on how to make it easier to do amazing things. Not so amazing things get done all the time, and it's not generally hard to do them, and a Propeller does them well.
A bigger Propeller would bend this curve so that a much larger set of things would be ordinary, and in that scenario, users would be left with just learning about the things unique to a Propeller, which make sense to do, given the functionality is desirable.
IMHO, this is the single most important attribute of P2. It, as the design currently appears to be defined, will be a lot bigger.
In that scenario (bigger device), C, SPIN, BASIC, whatever will make good sense, can be simplified to a nice degree, and there will be resources there to support those things, making them mostly ordinary things.
Users familiar with it all can push it and bring out the new class of amazing things and we learn a lot about what a P3 might look like.
The last two design iterations took time, which intensifies this discussion, or should I say, class of discussions, as predicted by many of us.
Adding something to a P1 makes sense, give it has a broad enough userbase and or is supported by Parallax.
Then again, should this design iteration pan out, these discussions get a lot less relevant, though still interesting.
Question is, will the time taken to get it done fall right about the time P2 does, or not?
Had this been done, say 3 years ago, we would be running those devices, waiting on P2, but we also would be wondering how to migrate thing over, etc... too.
The brilliant thing about the Arduino is that they hide that fact very well.
You don't have to write "main..." anything in the Arduino IDE. You don't need to know anything about classes and such to get started. They don't even mention "C++" in their tutorials and documentation for fear of frightening people away.
Just type-n-go. Very quick very easy.
By the way, in what way is C++ not procedural?
Interestingly enough while it's common knowledge that Arduino is programmed via C++ there's very little mention of that fact in the Arduino programming guides. As you point out it is a very well hidden but very commonly known.
While it's possible to write C++ programs in a procedural manner (like I do) it does seem to be considered an object oriented language.
The Propeller, it's architecture, it's instruction set, the assembly language, Spin, the IDE, comprise one of the most easy to use programming systems I have ever seen in the embedded world.
That is before we get into the ease of juggling multiple tasks by means of having multiple cores available
Where it breaks down is when things just require that bit much more memory. Or more speed.
That leads us to the world of wringing out the last drops of performance.
And that leads us to "solutions" like LMM or XMM or odd languages and byte codes.
Which is great but soon gets us away from the basic simplicity of the Prop and has people scratching their heads wondering "why not just use a bigger, faster, cheaper chip anyway?"
BASIC perhaps was a great intro to the idea of programming in it's day.
Good old BASIC also had no friendly compiler errors/warnings about bad program structure. A GOSUB with no RETURN would be chaos. There really was no such language construct as a subroutine/function syntactically.
Times have moved on and BASIC can now look like many other block structured languages in the linage of Algol. Hardly BASIC any more.
Just now JavaScript fills the same role as BASIC as a beginnners intro to "what is a program" language whilst also being surprisingly sophisticated.
David Betz,
Put like that it does not seem much. The proof is in the pudding I guess. There are many thousands of Arduino programmers out there who started from nothing and would have been frightened away by the standard C "Hello world" program.
The IDE has a lot to do with that. Hence the need for an actually simple SimpleIDE.
It isn't setup() and loop() that make "Hello, world!" easier. It is the elimination of the need to include stdio.h and that Arduino applications typically toggle pins or tweak hardware. They don't print silly messages. You can certainly write a main() function that toggles a few pins and it will not be noticably different from an Arduino sketch except that it will have a while statement in it. I guess that may be what you object to along with the braces that delimit the loop body.
Well I don't see how C++, or Java, or C#, etc are not procedural.
Definitions of procedural programs include statements like:
"Procedural programming uses a list of instructions to tell the computer what to do step-by-step."
"Procedural programming relies on - you guessed it - procedures, also known as routines or subroutines."
"A procedure contains a series of computational steps to be carried out. Procedural programming is also referred to as imperative programming."
Now, admittedly if you are using classes and objects those "procedures" are tied to their class and are called "methods" or "member functions"
And, the actual method that gets used may depend on the types invloved.
I say "So what?". It all looks much like procedural to me. Object Oriented is procedural.
Or, what am I missing here?
I have to admit I don't completely get the distinction myself. Personally I don't understand the rush to object oriented programming instead of procedural programming. I remember working as a Unix admin at a "software factory" that used C++ and the programmers there kept going on and on about how great OOP was. When I asked not a single programmer there could tell me why OOP was superior to procedural programming. There was a lot of talk about data hiding but it all died there.
The proof is in the pudding I guess. There are many thousands of Arduino programmers out there who started from nothing and would have been frightened away by the standard C "Hello world" program.
The IDE has a lot to do with that. Hence the need for an actually simple SimpleIDE.
I so agree. Arduino is a freaking miracle! I can't believe how many computer-illiterate people have magically become embedded C programmers thanks to Arduino. The IDE is a huge part of that miracle. No beginner is going to be happy installing the average GCC/Eclipse IDE package, regardless of who it comes from - Keil, Rowley, TI, Code Red, IAR, or what-have-you. No beginner wants to fuss with a blankety-blank JTAG pod and its own stupid software installation and configuration. No beginner wants to fuss with libraries, directives, include files, header files, etc, etc.
Meanwhile, it must be pointed out that the Prop Tool and Prop Plug are incredibly easy to install and use. And SPIN and PASM are great languages, even for beginners. Still, I'd like to see an official Parallax document that has 10x more words than the Propeller Quick Reference, and 10x fewer words than the Propeller Manual.
There is one in the PropGCC demos called ebasic3. It compiles to bytecodes which are then interpreted by a PASM VM. Yes, it is written in C but no C code is required to run the compiled byte codes. I've been working on a variant of that called "notc" which has c-like syntax. Not sure it will ever see the light of day though.
Sounds nifty, Is there a summary page covering what is in ebasic3 ? ( and what is not ?)
An advantage of Basic compilers, besides simplicity, is they can leverage off the many PC versions.
The FreeBASIC compiler seems to be small and nimble, so a Prop version that was broadly compatible with FreeBASIC allows some cross- pollination.
I so agree. Arduino is a freaking miracle! I can't believe how many computer-illiterate people have magically become embedded C programmers thanks to Arduino. The IDE is a huge part of that miracle.
The most impressive part of the original Borland TurboPascal was the IDE, and the fact the Editor Worked and the compiler was fast, directly behind the editor.
On modern platforms, full syntax highlighting can 'come for free', but the same tight Editor/Compiler coupling was a forgotten art for a while.
I work with makers, they can't use arduino for some reason, they can easily use REPL i.e. Tachyon and Forth. You all don't understand entry level anymore, you are too far removed from the situation.
This is much nicer to read and write and it turns out that in C++ the generated code can be exactly the same.
All that "data hiding" and such is great for multi-member teams and huge projects as well.
Now this might look a lot like what you can do in Spin with it's objects. Great, isn't it?
Where it all goes wrong is with the classes used to define those objects in C++, Java etc. Which sucks you into a nightmare of a program structure.
And in REPL on Tachyon
PRINT" Hello"
PRINT" Hi"
PRINT" Greeting"
I could issue a basic redirect to send this to serialX or an LCD or a TCP connection or Telnet ....
This is comprehensible to a pre-beginner, show them they are in charge of the machine and not just blindly following an online tutorial to do x y z without any understanding which leads to 0 retention.
I don't agree with wasting tons of pins on a parallel memory bus either. The best solution seems to be a SPI flash chip that only takes three pins if you don't need to share the SPI bus with any other peripherals or maybe four if you do. And three of those four pins can be used to talk to other devices so they're not really wasted. Running cached code out of SPI flash gives pretty good performance, certainly good enough for outer loop logic. You can always load a COG with PASM for stuff that needs higher performance or deterministic execution....
I think there is growing potential in External Memory, and considerable overlap in ALL the languages that run a byte-code-like inner engine. ( PropGCC, Tachyon, eBasic3 etc )
SPI was good, but a little slow especially with the lack of HW SPI support.
Then came QuadSPI, which has more potential, but I think the break-through device for P1, P1V, (and P2) will be the Spansion Hyperbus.
This is 8 bits wide, clocked, DDR, and I think does not use PLLs so is tolerant of pauses in the clocks.
A P1 SW version will never push the limits, but a P1V and P2 are very different, and can bring HW support to this.
The beauty of this, is the SAME software flows work on all 3, just faster each time.
Unlike QuadSPI, the commands are byte wide, and it needs just 6 writes to fully define a command and address.
(At the HW detail, I think a simple 1G57 type delay can allow a CLK edge from the same byte-Write, using the Prop 9 bit mode, that saves needing WriteByte/WriteClock/WriteByte/WriteClock pairs so can double SW speed)
Read then specs a 5 clock Latency, and RDS shows when data is available, and can stream from there.
(unclear if that scales with CLk speed, or is always 5 ?)
Write currently looks to be 16b only, but should be plenty fast enough.
A P1 should manage ~ 4MBytes/sec write loop, which is likely to be well above the Flash Write speed, and is faster than any download link. (Spansion SPI data gives write ~ 1MB/s)
There is mention on the web of a S26KL512S HyperFlash Demo Board, but no price/order info yet
I work with makers, they can't use arduino for some reason, they can easily use REPL i.e. Tachyon and Forth. You all don't understand entry level anymore, you are too far removed from the situation.
I'm probably getting a bit old now but what, or who, on Earth is a "maker"?
I know there is a big buzz around the "Maker Movement" now a days. But a lot of that revolves around Arduino. Which you say your "makers" cannot use.
But really. Back in the day everyone was a maker. Homes were equipped with sewing machines and tools of all kinds. People made all kind of things.
On a more technical level kids were building their own radios and later TVs starting way back in the 1930's and before. Then of course there was the DIY computer building of the 1970's and 80's.
Humans have been making stuff since forever.
I find this modern branding people as "maker" a bit weird.
I do indeed understand entry level. I still remember typing my fist line of BASIC into a teletype and being awe struck by the response.
I'm probably getting a bit old now but what, or who, on Earth is a "maker"?
I know there is a big buzz around the "Maker Movement" now a days. But a lot of that revolves around Arduino. Which you say your "makers" cannot use.
But really. Back in the day everyone was a maker. Homes were equipped with sewing machines and tools of all kinds. People made all kind of things.
On a more technical level kids were building their own radios and later TVs starting way back in the 1930's and before. Then of course there was the DIY computer building of the 1970's and 80's.
Humans have been making stuff since forever.
I find this modern branding people as "maker" a bit weird.
I do indeed understand entry level. I still remember typing my fist line of BASIC into a teletype and being awe struck by the response.
Very few in america make anything anymore, they go to walmart and get stuff. Makers are people who are like minded i.e. they leave everything at the door (politics, religion...) except the project they would like to work on be it art, science, wood, metal, lights.... All these projects now seem to want to use some electro mechanical programmable gadget to assits the project to completion. The projects are NOT computer centric hence makers are not computer centric. I agree the term maker is strange but so is OOP, a maker space it is the term that is being used to describe common space where people congregate to work on projects together, share ideas.
I work with makers, they can't use arduino for some reason, they can easily use REPL i.e. Tachyon and Forth. You all don't understand entry level anymore, you are too far removed from the situation.
So what are these "makers" using if not arduino or picaxe? I'm really interested as I haven't seen any microcontrollers that include an onboard IDE.
Comments
Yes, yes.
Why say: ?
For a beginner that is mind bending. What's with all the funny spelling of "print"? And, by the way, why "print" I don't have any printer here? Then there is all those weird brackets, percent signs, "/n" and semicolons. Crazy. Oh yeah, and what is a float? Are we going fishing or what?
That's ignoring the other junk like 'int main(int argc, char* argv[])' and '#include "stdio,h"' Etc.
Better to just have: Or similar in BASIC, Lisp, Scheme, Forth etc.
However, I don't think you are going to get Lisp into the Propeller.
Yes the Arduino is programmed in C++.
The brilliant thing about the Arduino is that they hide that fact very well.
You don't have to write "main..." anything in the Arduino IDE. You don't need to know anything about classes and such to get started. They don't even mention "C++" in their tutorials and documentation for fear of frightening people away.
Just type-n-go. Very quick very easy.
By the way, in what way is C++ not procedural?
I don't think Forth is a good language for beginners because the interpreter doesn't provide warnings or error messages. If you're lucky the Forth interpreter may detect stack underflows, and protect the novice from that. I don't think any of the Prop Forths will tell the programmer he forgot to terminate an IF with a THEN, or he forgot to use a DROP after a loop when he no longer needed a value on the stack.
As Heater pointed out even C++ can be made easy for novices and non-technical people to use. The success of the Arduino is proof that it can be done.
I must admit that when I saw the title of this thread, I started to do a search for how to use the popular ARM platform in an embedded form. Anybody remember the Scenix chip and what it was trying convey?
Ray
BASIC perhaps was a great intro to the idea of programming in it's day.
Good old BASIC also had no friendly compiler errors/warnings about bad program structure. A GOSUB with no RETURN would be chaos. There really was no such language construct as a subroutine/function syntactically.
Times have moved on and BASIC can now look like many other block structured languages in the linage of Algol. Hardly BASIC any more.
Just now JavaScript fills the same role as BASIC as a beginnners intro to "what is a program" language whilst also being surprisingly sophisticated.
David Betz, Put like that it does not seem much. The proof is in the pudding I guess. There are many thousands of Arduino programmers out there who started from nothing and would have been frightened away by the standard C "Hello world" program.
The IDE has a lot to do with that. Hence the need for an actually simple SimpleIDE.
Propellers are not hard.
It is the scale.
Truth is, a ton of stuff can and is being done in 32K. Often, pretty amazing things.
Doing that takes considerable skill, in addition to learning some new things related to how the chip does things.
There will always be the learning of new things, unless one is on a chip that doesn't do things differently.
However, there does not need to be the same skill requirement.
A lot of these discussions center on how to make it easier to do amazing things. Not so amazing things get done all the time, and it's not generally hard to do them, and a Propeller does them well.
A bigger Propeller would bend this curve so that a much larger set of things would be ordinary, and in that scenario, users would be left with just learning about the things unique to a Propeller, which make sense to do, given the functionality is desirable.
IMHO, this is the single most important attribute of P2. It, as the design currently appears to be defined, will be a lot bigger.
In that scenario (bigger device), C, SPIN, BASIC, whatever will make good sense, can be simplified to a nice degree, and there will be resources there to support those things, making them mostly ordinary things.
Users familiar with it all can push it and bring out the new class of amazing things and we learn a lot about what a P3 might look like.
The last two design iterations took time, which intensifies this discussion, or should I say, class of discussions, as predicted by many of us.
Adding something to a P1 makes sense, give it has a broad enough userbase and or is supported by Parallax.
Then again, should this design iteration pan out, these discussions get a lot less relevant, though still interesting.
Question is, will the time taken to get it done fall right about the time P2 does, or not?
Had this been done, say 3 years ago, we would be running those devices, waiting on P2, but we also would be wondering how to migrate thing over, etc... too.
Get yourself a Raspberry Pi. Or Beagle Board. Or similar.
If that is to much get into the STM32 F4 Discovery. Very cheap, very capable.
For easy programming there is the Espruino or MicroPython boards.
Or if you want a bread board friendly bare chip there is the DIP ARM http://www.adafruit.com/blog/2012/03/13/32-bit-meet-dip-arm-cortex-m0-in-dip-packages/
Interestingly enough while it's common knowledge that Arduino is programmed via C++ there's very little mention of that fact in the Arduino programming guides. As you point out it is a very well hidden but very commonly known.
While it's possible to write C++ programs in a procedural manner (like I do) it does seem to be considered an object oriented language.
The Propeller, it's architecture, it's instruction set, the assembly language, Spin, the IDE, comprise one of the most easy to use programming systems I have ever seen in the embedded world.
That is before we get into the ease of juggling multiple tasks by means of having multiple cores available
Where it breaks down is when things just require that bit much more memory. Or more speed.
That leads us to the world of wringing out the last drops of performance.
And that leads us to "solutions" like LMM or XMM or odd languages and byte codes.
Which is great but soon gets us away from the basic simplicity of the Prop and has people scratching their heads wondering "why not just use a bigger, faster, cheaper chip anyway?"
It isn't setup() and loop() that make "Hello, world!" easier. It is the elimination of the need to include stdio.h and that Arduino applications typically toggle pins or tweak hardware. They don't print silly messages. You can certainly write a main() function that toggles a few pins and it will not be noticably different from an Arduino sketch except that it will have a while statement in it. I guess that may be what you object to along with the braces that delimit the loop body.
Definitions of procedural programs include statements like:
"Procedural programming uses a list of instructions to tell the computer what to do step-by-step."
"Procedural programming relies on - you guessed it - procedures, also known as routines or subroutines."
"A procedure contains a series of computational steps to be carried out. Procedural programming is also referred to as imperative programming."
Now, admittedly if you are using classes and objects those "procedures" are tied to their class and are called "methods" or "member functions"
And, the actual method that gets used may depend on the types invloved.
I say "So what?". It all looks much like procedural to me. Object Oriented is procedural.
Or, what am I missing here?
I have to admit I don't completely get the distinction myself. Personally I don't understand the rush to object oriented programming instead of procedural programming. I remember working as a Unix admin at a "software factory" that used C++ and the programmers there kept going on and on about how great OOP was. When I asked not a single programmer there could tell me why OOP was superior to procedural programming. There was a lot of talk about data hiding but it all died there.
I so agree. Arduino is a freaking miracle! I can't believe how many computer-illiterate people have magically become embedded C programmers thanks to Arduino. The IDE is a huge part of that miracle. No beginner is going to be happy installing the average GCC/Eclipse IDE package, regardless of who it comes from - Keil, Rowley, TI, Code Red, IAR, or what-have-you. No beginner wants to fuss with a blankety-blank JTAG pod and its own stupid software installation and configuration. No beginner wants to fuss with libraries, directives, include files, header files, etc, etc.
Meanwhile, it must be pointed out that the Prop Tool and Prop Plug are incredibly easy to install and use. And SPIN and PASM are great languages, even for beginners. Still, I'd like to see an official Parallax document that has 10x more words than the Propeller Quick Reference, and 10x fewer words than the Propeller Manual.
Sounds nifty, Is there a summary page covering what is in ebasic3 ? ( and what is not ?)
An advantage of Basic compilers, besides simplicity, is they can leverage off the many PC versions.
The FreeBASIC compiler seems to be small and nimble, so a Prop version that was broadly compatible with FreeBASIC allows some cross- pollination.
If you take a young guy or someone who has never programmed before and you start them with the Arduino you kick off with this: Which is already weird. I mean what is "int" and "void" never mind the squiggly brackets.
I guess in the SimpleIDE world that is something like: Assuming we had Arduino like functions for I/O.
You see the problem here?
Yep, you see it to.
Except:
Thing is, neither do us old hands any more What a tedious waste of life.
The most impressive part of the original Borland TurboPascal was the IDE, and the fact the Editor Worked and the compiler was fast, directly behind the editor.
On modern platforms, full syntax highlighting can 'come for free', but the same tight Editor/Compiler coupling was a forgotten art for a while.
There is a very simple reason OOP is great. In an OOP language one can write things like: Instead of: This is much nicer to read and write and it turns out that in C++ the generated code can be exactly the same.
All that "data hiding" and such is great for multi-member teams and huge projects as well.
Now this might look a lot like what you can do in Spin with it's objects. Great, isn't it?
Where it all goes wrong is with the classes used to define those objects in C++, Java etc. Which sucks you into a nightmare of a program structure.
And in REPL on Tachyon
I could issue a basic redirect to send this to serialX or an LCD or a TCP connection or Telnet ....
This is comprehensible to a pre-beginner, show them they are in charge of the machine and not just blindly following an online tutorial to do x y z without any understanding which leads to 0 retention.
I think there is growing potential in External Memory, and considerable overlap in ALL the languages that run a byte-code-like inner engine. ( PropGCC, Tachyon, eBasic3 etc )
SPI was good, but a little slow especially with the lack of HW SPI support.
Then came QuadSPI, which has more potential, but I think the break-through device for P1, P1V, (and P2) will be the Spansion Hyperbus.
This is 8 bits wide, clocked, DDR, and I think does not use PLLs so is tolerant of pauses in the clocks.
A P1 SW version will never push the limits, but a P1V and P2 are very different, and can bring HW support to this.
The beauty of this, is the SAME software flows work on all 3, just faster each time.
Some HyperBUS timing info is here
http://core.spansion.com/article/spansion-hyperbus-interface-enables-breakneck-read-throughput-speeds/#.VDMX7lcjAkI
Unlike QuadSPI, the commands are byte wide, and it needs just 6 writes to fully define a command and address.
(At the HW detail, I think a simple 1G57 type delay can allow a CLK edge from the same byte-Write, using the Prop 9 bit mode, that saves needing WriteByte/WriteClock/WriteByte/WriteClock pairs so can double SW speed)
Read then specs a 5 clock Latency, and RDS shows when data is available, and can stream from there.
(unclear if that scales with CLk speed, or is always 5 ?)
Write currently looks to be 16b only, but should be plenty fast enough.
A P1 should manage ~ 4MBytes/sec write loop, which is likely to be well above the Flash Write speed, and is faster than any download link. (Spansion SPI data gives write ~ 1MB/s)
There is mention on the web of a S26KL512S HyperFlash Demo Board, but no price/order info yet
Addit : I've started a separate thread for this in P1V
http://forums.parallax.com/showthread.php/157695-Spansion-HyperBUS-for-P1-P1V-amp-P2?p=1297016&viewfull=1#post1297016
Probably a fair comment.
I'm probably getting a bit old now but what, or who, on Earth is a "maker"?
I know there is a big buzz around the "Maker Movement" now a days. But a lot of that revolves around Arduino. Which you say your "makers" cannot use.
But really. Back in the day everyone was a maker. Homes were equipped with sewing machines and tools of all kinds. People made all kind of things.
On a more technical level kids were building their own radios and later TVs starting way back in the 1930's and before. Then of course there was the DIY computer building of the 1970's and 80's.
Humans have been making stuff since forever.
I find this modern branding people as "maker" a bit weird.
I do indeed understand entry level. I still remember typing my fist line of BASIC into a teletype and being awe struck by the response.
Very few in america make anything anymore, they go to walmart and get stuff. Makers are people who are like minded i.e. they leave everything at the door (politics, religion...) except the project they would like to work on be it art, science, wood, metal, lights.... All these projects now seem to want to use some electro mechanical programmable gadget to assits the project to completion. The projects are NOT computer centric hence makers are not computer centric. I agree the term maker is strange but so is OOP, a maker space it is the term that is being used to describe common space where people congregate to work on projects together, share ideas.
So what are these "makers" using if not arduino or picaxe? I'm really interested as I haven't seen any microcontrollers that include an onboard IDE.
Until this year...
The Espruino is a tiny ARM MCU with JavaScript: http://www.espruino.com/
The MicroPython is a tiny ARM MCU with, well, Python: http://micropython.org/
Well, OK, not IDE perhaps but at least their own language run time system, no special host computer software required.
But wait...that's what the Forth guys have been doing on the humble Propeller for ages.
I would rather learn forth then have to learn python!
I checked and it appears that the micropython is a board with a micro of some sort on it as well as other components. They're also pricey.
At risk of turning this into yet another language (YALW) war thread, what on Earth is wrong with Python?
Python seems no more crappy than any other programming language we have.