This is real object-oriented programming. Take a blob of stuff, make it programmable and develop the apps!
This is object-oriented programming of a different kind. Take a blob of stuff and some control mechanism and program it to make the blob divide, combine, translate and change shape. If you want an example of what this might be potentially useful for consider the terminator or the Holodeck of the Enterprise.
Programming matter seems like an obvious next step and with so many potential uses. Take some programmable goo - write a new app and you have a table, or a chair and a desk. A new app downloaded and it's a bicycle or a raincoat. OK it may be far-fetched but the whole idea of software is to make the hardware do exactly what you want and until we had programmable computers web browsers, wordprocessors and spreadsheets seemed far fetched!
Now a research team at Keio University's Akira Wakita Lab in Japan have created a basic programmable blob. The blob or pBlob for programmable Blob is made of a magnetic fluid and is manipulated using electromagnets in a honeycomb configuration.
The software uses the hardware to create basic blob manipulations - divide, combine and so on. On there own each of these operations may seem primative and fairly usless but think of them as the basic commands in a blob low level language - an assembler - and imagine using them to build up larger subroutines and commands. Also imagine having lots of blobs all under software control and working to form large functional units.
To see the basic ideas in action see the video below.
One of the big problems with computer languages is they tend to throw their hands in the air (metaphorically) and give up at the slightest problem in executing your code. Now C# is taking a small step [ ... ]