Programming Languages For Coding the Physical World 97
snydeq writes: Stuffing bits in databases is boring, InfoWorld's Peter Wayner writes, so why not program everything around you? "The barrier between bits and atoms is disappearing, with programmers no longer confined to the virtual realm, in part thanks to the Internet of things becoming more real. Now we can do more than write ones and zeros to a disk: We can actually write code that tells a machine how to extrude, cut, bend, or morph atoms," Wayner writes in a survey of programming languages. "Rapidly developing domains such as autonomous cars, smart homes, intelligent office spaces, and mass customization require programmers to be savvy about how changes in data structures can lead to changes in objects. If the term "object-oriented programming" weren't already taken, it would be perfect."
Re: (Score:2)
Actually, it was Neal Stephenson's The Diamond Age [wikipedia.org], which was actually a good read.
Ugh (Score:5, Interesting)
That was horrible. Who is the audience for that crap?
Re:Ugh (Score:4, Insightful)
Agreed. A "wouldn't it be nice if the whole world had ponies" story without the ponies.
Re: (Score:2)
X10 controlled ponies, programmed in postscript on a NeWS system.
That's an article for /.
Re: (Score:2)
Solution: make everyone a programmer.. EVERYONE. Goal will be reached when kernel hacking is a minimum wage job.
If you think this is far-fetched, you're not paying attention.
Re: (Score:1)
It needs examples. I enjoy seeing new ways to express or encode ideas, but I'm not sure what problem the author is trying to solve or has seen solved in various languages or API's.
Re: (Score:2)
Remember the last robot story you opened and were underwhelmed to find it was just a reinvented roomba? The person who built that.
Seriously, though, all these... ehem... "languages" and still not one that is a DSL for actual dynamic digital control systems. SIgh.
Sounds like a receipe for a nightmare (Score:2)
since most programmers couldn't program their way out of an open paper bag.
Re: (Score:2)
since most programmers couldn't program their way out of an open paper bag.
They don't need to - there's an emacs script for getting out of a paper bag...
Matter Oriented Programming (Score:1)
Nuff said.
Re: (Score:3)
Re:Matter Oriented Programming (Score:5, Funny)
What? (Score:5, Insightful)
Re:What? (Score:5, Funny)
We don't use the term "machining" anymore. It's called "Subtractive 3D printing". /sarcasm
Re: (Score:1)
Yes, and if the term "making things" weren't already taken, it would be perfect!
Maybe in another 100 years they'll figure out a hipper name.
Re: (Score:2)
Re: (Score:2)
Maybe we could use a name hack to come up with a new name for people who "maker" things?
Re: (Score:2)
Makerians?
Re: (Score:2)
I'm Ca'nadian.
Re: (Score:1)
Internet of Shit. [twitter.com]
Huh? (Score:2)
"Stuffing bits into a database is boring"? Maybe to some people, but as a database engenner (yes I have a CS degree), who deals with huge databases with thousends (or more) complex relationships, I've always found database theory fastinating. In any case, I'm not sure what "boring" relationship this has to writing code the "tells a machine how to extrude, cut, bend, or morph atoms". I smell many buzz words purcolating out of this guy...
Re: (Score:2)
Re: (Score:1)
Databases are a nice tool for managing bunches of attributes. If you are doing something trivial, maybe they're overkill, but if you have lots of data and relationships, they are often the best tool for the job.
The alternatives are usually uglier.
For example, sometimes I wish involved GUI's were managed in databases, because managing bunches of GUI attributes in source code grows into a nightmare. You'll want to search, sort, study, change, and group GUI info by different aspects at different times. Doing t
Re: (Score:2)
If you are doing something trivial, maybe they're overkill,
In those cases, sqlite can be a nice compromise, not too heavy, but easier than creating your own file format.
Re: (Score:1)
Perhaps it's a side issue, but I'm ticked that Php dicked around and changed their "official" API calls to sqlite. That makes me not trust usage of sqlite as much. It also has odd error handling (or non-handling in some cases) that's poorly documented. The reasoning behind their choices seems to be very off or ad-hoc.
Re: (Score:2)
Re: (Score:1)
They stated a reason, but it was a dumb one in my opinion because it had multiple work-arounds that were far less problematic than breaking the API interfaces.
Re: (Score:2)
Re: (Score:2)
Just a *nix admin working on a giant TerribleData(Teradata) implementation here. But what DBAs do is sort of amazing sometimes, when it doesn't make me sick to death because of the venality behind it.
Note : Not blaming the DBAs, they are usually just implementing what the PHBs think they want...
Re: (Score:2)
as a database engenner (yes I have a CS degree), who deals with huge databases with thousends
Well, that explains why we're getting the wOrNG aNSwErs from your DBs.
Keep it up. You'll invent robots soon enough. (Score:3)
>> Now we can do more than write ones and zeros to a disk: We can actually write code that tells a machine how to extrude, cut, bend
Keep it up. You'll invent programmable robots and automated control systems within a week at that pace.
Re: (Score:2)
wow, we could call things created by such machines as Cyber Numary Created or CNC. I think CNC machining could actually be viable simply by using D/A converters and stepper motors on traditional mills, lathes, breakers, etc. or maybe it's just crazy talk.
Re: (Score:1)
Yeah, I'm thinking that's too complicated for today's technology. Though, I am kind of curious as to how they're gonna go about bending an atom. That's gonna be a minute. I'm no physicscologist or nuffin' but that sounds pretty hard.
Re: (Score:2)
can't be any harder than spoon bending
Nathan Brazil . . . (Score:2)
. . . warns you to stop before you rip a hole in the fabric of reality.
Re: (Score:1)
too late. Comcast & Trump unleashed.
Okay? (Score:3)
The significance of this article is unclear. I suppose the OP is pointing out the fact that programming languages are becoming more specific and 'tangible' to real-world applications.
Today, many of the new markets and opportunities for developers live in the real world. Rapidly developing domains such as autonomous cars, smart homes, intelligent office spaces, and mass customization require programmers to be savvy about how changes in data structures can lead to changes in objects.
I think this quote is sort of the thesis of the article. Even still it's really ambiguous. What opportunities don't live in the 'real world'? Does he mean that information transfer isn't 'physical'? Or is he specifically talking about robotics? User-interfaces? This person needs to work on clarity, and this article should not have been posted on Slashdot.
Thank you brave readers... (Score:3)
Re: (Score:2)
Thank you everyone who braved that tripe so later ./ers could avoid losing brain cells.
Carmack the Magnificent:
"The reason /.ers don't RTFM."
Re: (Score:2)
Re: (Score:2)
so I could basically somehow programmable control with something like a POOP extruder? where would I get the POOP? Is there a biodegradable source of POOP near me? How would I ensure repeatability and regularity of my POOPing?
Re: (Score:1)
I'm working on it. I'm going to write a shim so that I can use my Asymmetric System Script. Gimme another day or two and I'll be ready to show it to the world!
Re: (Score:2)
where would I get the POOP?
In the POOP deck. You just apply a little Olive oil.
There's a certain audience for this type of post (Score:5, Insightful)
The professional in the field has an actual job and deliverables and has no time for any of the aforementioned nonsense. New professionals are created when intelligent people read those articles and goes 'the fuck is this shit', then does actual technical research.
I used to blame Kurzweil for a lot of this but it goes back much further in history.
Re: (Score:1)
Enterprise Architects believe in this stuff you know.
Programming in bits is boring, why not (Score:1)
Re: (Score:2)
Byte me
Re: (Score:1)
you @ fail 1+ ! -- They even missed the best FORTH (Score:2)
Epic. Mention postscript; mention X10 (Not a language), don't mention Forth.
Too heady (Score:1)
Thesis? (Score:2)
Is it too much to ask that the posts actually, I don't know, have a thesis? What is the topic of discussion here?
Why don't we just go to the bus station downtown and transcribe the ravings and mumblings of the first street person we meet? That might actually be more informative that these posts.
Re: (Score:1)
I know you're not new here. This isn't even the worst article by far. Well, it's not the worst summary. Hell, these aren't even the worst comments.
Re: (Score:2)
Why do you want to change the way it's been?...you must be new here. Yup, you are...2814313
Real-Time OS? (Score:2)
heh — i thought he was referring to some sort of real-time OS that was able to handle interrupts with really low-latency, or something devised in LISP which dealt with high-level feature-abstraction about real-world objects.
meh — he's just talking about languages with which you programme controllers — and the current languages which are already adequate to that.
Objectification (Score:2)
"Object-Centric Programming"
Attn: Whipslash (Score:1)
What? (Score:2)
When I read the description, I thought "Ah, someone's trying to re-invent G-code". Then I read the article and realized, "No, someone's just _discovered_ g-code".
Well done. Only took them about 20 years. Not sure why the achievement merits an article. ("News Flash: BASIC exists!")
Doubly not sure why the article even rated a mention in /.
Re: (Score:1)
Then I read the article...
HERETIC!
Re: (Score:2)
Yeah, I'm weird like that.
(Or are you challenging me to a game? If so, hand me my chicken gun!)
Re: (Score:1)
I don't like admitting this but I do actually (sometimes) read the article. I just don't go bragging about it! ;-) I've got a reputation to keep. So, pretend this message doesn't exist.
Re: (Score:2)
Your mother probably wouldn't let him in that way.
So which languages would you have listed? (Score:1)
While everyone seems to agree the 12 selected programing languagnes are bad, I haven't seen too many suggestions of improvements.
I found the omission of AutoLISP odd since it certainly seems to have been the main language of 3D printing a while back.
Agreed, PostScript is essentially an implementation of Forth and naming the parent language would have been smarter.
SVG is supported by most browsers these days, but doesn't seem to have taken off in a big way for some reason. I still see it as an important tech
Re: (Score:1)
Personally can't see any reason that a person might want to:
Send themselves a message if they forget to arm their security system when leaving their house
Automatically turn on the lights in their ho
Re: (Score:1)
Not every technology that the author listed are programming languages. X10, Insteon, Zigbee, and Z-Wave are communication protocols for interconnected devices.
Kudos to the article for introducing me (for one) to those above technologies. They might indeed be insecure (according to AC comments not backed by any references) but at least now I'm aware of them and can read up about them.
Frankly I'm surprised that /. doesn't seem interested in home automation technologies.
Sadly a lot of comments, in this threat at least, harken to a very small town, parochial view.
The 1980s called (Score:2)
and they asked about how microcontrollers are doing.
So, cars have had computers for the last 30 years, washing machines have had computers for 30 years and we have more tiny computers in our computers (such as a battery charge controller?)
Washing machine have gained a useful feature : two-digit display that tells an estimate of the time remaining.
What more do we really need? Why does an oven need more than some tiny mechanical bell and turning the heat off when time is elapsed?
Why does an "environment cont