Domain: cmu.edu
Stories and comments across the archive that link to cmu.edu.
Comments · 2,977
-
Diverse Double-Compiling as a countermeasure
But who compiled the compiler?
http://www.ece.cmu.edu/~ganger/712.fall02/papers/p761-thompson.pdfActually, that, too, has been thought of and worked out. The trusting-trust attack can be fully countered through Diverse Double-Compiling. It's all over my head but the material is there at several levels of detail for those who would read it.
-
Scientology News
"Travolta hospitalized with critically low E-meter reading!"
http://www.cs.cmu.edu/~dst/Secrets/E-Meter/Onion/travoltahospital.html
-
Re: Sounds alot like
Actually, I know from a very reliable source that data historians are looking to virtual machines to solve this specific issue. It is a viable way to store complete, working computing environments for the future including not only the files but the programs able to work with them.
A few weeks ago I saw a demonstration of the first version of the mosaic web browser (the first that ever existed) and the first Macintosh. This last one by running it in a VM that run on a hardware emulator, that run in another VM that run in a VM. Don't ask me to remember the detailed chain of OS and such, but the point is that you are good as long as you can emulate a pretty recent version of something, and that version can emulate the previous one, and so on...
Related research about this is being done here: http://isr.cmu.edu/ -
Scientific Studies on Protecting People from Phish
I wrote up an article in Communications of the ACM about a year ago summarizing the state of phishing attacks.
My colleagues and I have also studied phishing extensively and have the most comprehensive peer-reviewed body of work in this area. Our studies include understanding why people fall for phishing attacks (PDF), evaluating how well simulated phishing attacks work (PDF) (the short answer is quite well, based on a study of 500 people), designing and evaluating a micro game teaching people about URLs works (PDF) (empirically tested with several thousand people), and more.
We've also commercialized our work, in terms of a service for simulated phishing attacks, the micro game for anti-phishing, and more.
Also, to anyone saying "people are stupid" or "they deserve to get malware", you really are part of the problem. It's our job to protect people, to reduce complexity, and to ensure the safety of our systems and networks. Arrogantly dismissing others as being inferior or stupid is one reason why computer security, user interfaces, and software in general is in the state it is.
-
Scientific Studies on Protecting People from Phish
I wrote up an article in Communications of the ACM about a year ago summarizing the state of phishing attacks.
My colleagues and I have also studied phishing extensively and have the most comprehensive peer-reviewed body of work in this area. Our studies include understanding why people fall for phishing attacks (PDF), evaluating how well simulated phishing attacks work (PDF) (the short answer is quite well, based on a study of 500 people), designing and evaluating a micro game teaching people about URLs works (PDF) (empirically tested with several thousand people), and more.
We've also commercialized our work, in terms of a service for simulated phishing attacks, the micro game for anti-phishing, and more.
Also, to anyone saying "people are stupid" or "they deserve to get malware", you really are part of the problem. It's our job to protect people, to reduce complexity, and to ensure the safety of our systems and networks. Arrogantly dismissing others as being inferior or stupid is one reason why computer security, user interfaces, and software in general is in the state it is.
-
Scientific Studies on Protecting People from Phish
I wrote up an article in Communications of the ACM about a year ago summarizing the state of phishing attacks.
My colleagues and I have also studied phishing extensively and have the most comprehensive peer-reviewed body of work in this area. Our studies include understanding why people fall for phishing attacks (PDF), evaluating how well simulated phishing attacks work (PDF) (the short answer is quite well, based on a study of 500 people), designing and evaluating a micro game teaching people about URLs works (PDF) (empirically tested with several thousand people), and more.
We've also commercialized our work, in terms of a service for simulated phishing attacks, the micro game for anti-phishing, and more.
Also, to anyone saying "people are stupid" or "they deserve to get malware", you really are part of the problem. It's our job to protect people, to reduce complexity, and to ensure the safety of our systems and networks. Arrogantly dismissing others as being inferior or stupid is one reason why computer security, user interfaces, and software in general is in the state it is.
-
Re:Article is very light on details
Are there infinite ways to screw grammar while creating password? I would think there are certain patterns in which people mis-use grammar. I would imagine though that at some point if every one started using bad grammar styles for constructing passwords, that those patterns would become identifiable and then someone would put together a password cracker that would deal with poor-grammar-filled passwords as well right? I couldn't find the exact paper to read but the example on the website "ihave3cats" seems to be a like a language thing that can be identified at some point by some urban dictionary reader!
Good point. This probably is the paper . What do you think?
-
What about Lenna?
The Mona Lisa? Are you serious? Way to break tradition NASA, my heart weeps for Lenna:
-
Re:Time to ask some hard questions
Some security software actually does just that (to varying degrees). For example: Little Snitch, Gatekeeper (classic Mac OS), Gatekeeper (OS X), and so on.
The problem is that it's really hard to identify certain types of attacks in that way. For example, if there were a security hole in a web browser, unless the attacker modifies the browser to send data over a port other than port 80 or port 443, any side channel retransmission of your data is likely to be entirely transparent to any sort of external profiling that you could reasonably do. This is why it is so critically important to make sure that web browser code is, in fact, robust against attacks to begin with.
This is also arguably a valid reason for moving away from general-purpose browsers for high-security transactions, and using separate apps instead. For example, a banking app would be whitelisted for the bank, period, and if it tried to communicate with any other server, that would be suspicious.
Or we could just pass a law requiring that all financial transactions be signed using a non-Internet-connected PK crypto dongle and be done with it, but I digress.
-
Re:UofA says no
Have you looked at how the program at your alma mater has grown since you graduated? Last time I chatted with CMU students (at an internship), they had entire sub-tracks within the CS department for software engineering, human factors, and other topics more relevant to the art of computer programming, as opposed to pure math and algorithms on a turing machine. A quick DDG shows the Software Engineering Institute which IIRC was related.
-
Read KiplingParade song of the camp animals.
Like a lot of Kipling's verse, it starts off on a positive note and then the anti-war bit comes in at the end. But see the section for the "screw-gun mules".
-
A Sermon on Ethics and LoveFrom the Principia Discordia:
One day Mal-2 asked the messenger spirit Saint Gulik to approach the Goddess and request Her presence for some desperate advice. Shortly afterwards the radio came on by itself, and an ethereal female Voice said YES?
"O! Eris! Blessed Mother of Man! Queen of Chaos! Daughter of Discord! Concubine of Confusion! O! Exquisite Lady, I beseech You to lift a heavy burden from my heart!"
WHAT BOTHERS YOU, MAL? YOU DON'T SOUND WELL.
"I am filled with fear and tormented with terrible visions of pain. Everywhere people are hurting one another, the planet is rampant with injustices, whole societies plunder groups of their own people, mothers imprison sons, children perish while brothers war. O, woe."
WHAT IS THE MATTER WITH THAT, IF IT IS WHAT YOU WANT TO DO?
"But nobody Wants it! Everybody hates it."
OH. WELL, THEN STOP.
At which moment She turned herself into an aspirin commercial and left The Polyfather stranded alone with his species. -
Re:Offisive Racism
The third sentence in your comment is a fragment, and the word capitalize is misspelled.
(S (PP For instance), (S (NP they) (VP know (PP to (NP capitalise)) (SBAR (S (NP proper nouns) (VP like (NP (NP the names) (PP of (NP (NP countries) or (NP languages)))))))))
The 'S' in the outermost level indicates a complete sentence. Try it yourself here and get better formatting (doesn't get past slashdot's damned lameness filters with the whitespace required...).
-
Pencil and paper first
First off, pencil and paper. Teach them how to make and play wirh Turing machines and finite state automata. Enjoy the awe when you tell them about the Universal Turing Machine.
Low-level:
The HP15C User's Manual and an HP15C, or HP's 15C iApp.High-level:
David Touretzky's Gentle Introduction.My personal favourite language of all time: Icon.
S.
-
IOCCC
Have you seen the IOCCC code that looks like an airplane? It's a flight sim. Have you seen the DeCSS Gallery? Also, there's lots of code on the Daily WTF that is as creative as it is terrible.
How about CSS? Am I not coding or not designing when I write that?
-
Software should not be patentable
First, one must take exception to the idea that source code is not creative. As examples, look at any IOCCC entries -- I like the flight simulator in the shape of an airplane. Secondly, you may examine the DeCSS Gallery and judge whether any of that may be considered a creative expression.
What you are perceiving as lack of creative expression, though, is the flaw in your arguments: software is not eligible for patent protection because it consists of mathematical operations.
Software is Math
To most students of Computer Science this is as inarguable as evolution in the biological sciences. At the fundamental level, modern computers only function is to carry out binary arithmetic. This ipso facto means that any function computers do is mathematical, but one might make the argument that things which are not inherently mathematical can nevertheless be modeled or represented using mathematics, and that software is something modeled in math rather being defined in it.You would be very, very wrong. At the point in which Alan Turing laid out the foundations for all of computer science, no such calculating machines existed. Computers were designed as implementations of mathematical concepts. Programming languages grew out of a branch of mathematics called Lambda calculus, and Lisp in particular is fairly trivially convertible to mathematical statements. All concepts in computer science are defined in formal language which is inherently mathematical -- even the concept of a formal language itself. One consequence of this is that it is possible (though extremely difficult all but trivial programs) to construct a formal mathematical proof of any given program's correctness.
This is not to say that there can be no creativity involved in designing algorithms. However, there we may separate the concept from the expression of the concept, and say:
Math is Discovered, not Invented
This is admittedly a philosophical stance, but it has historically been the majority position. It is obvious that one may not "invent" the mathematical operations of arithmetic: they are a consequence of your choice of axioms. It is less obvious to prove Fermat's Last Theorem, but the separation of true statements from false ones is not "invention".The contrary position leads to absurdities, e.g. if mathematical laws did not exist before their discovery, then gravity could not have existed before Isaac Newton.
Monopolies on Mathematics are Absurd
It is again, intuitively obvious that patenting "1+1 = 2" is as absurd as patenting the process of obtaining patents. No person can have any exclusive right to a mathematical concept: they exist solely in the mind, and by definition are arrived at from pre-existing axioms. You can no more separate a mathematical concept from its derivation than you may an individual from his: it is the ultimate prior art. If you wish to use a part of the mathematical birthright of every man, the fruit of human genius, as means to your private profit, you may feel free. However, enlisting public resources to that end by claiming monopoly right to a concept, is criminal and offensive.The same mathematical function may have varying representations. To protect a particular expression of an idea, we have something called "copyright".
Empirical Studies
Finally, we may view the chaos that has resulted from the legal fiction of software patents: there can be no more useless expenditure than to dispute the ownership of mathematical concepts. A more thorough discussion of the practicalities is out of scope, but you may peruse more scholarly treatments at your leisure. -
This has long been the case
Advertising companies make a big deal about "notice" and "choice." Unfortunately, while they claim to give users the ability to "opt out" of Online Behavioral Advertising (OBA), all they really do is give users the ability not to see ads. They don't necessarily give users the ability not to be tracked. Here's an entire paper about it. http://www.cylab.cmu.edu/research/techreports/2011/tr_cylab11005.html
-
Re:Hah! Take that, my bank!
How can brute force work on a web site sign in page? I would think banks code the site to stop brute force password input. im no programmer that's why i ask.
There are two types of attacks one can make against passwords: online and offline. In an online attack, the attacker just goes to the website itself and starts entering passwords.The website can just lock him out after several failed attempts; even if there is a password-reset option, this can still be very time-consuming. However, if more pernicious attack that is an offline attack. In this attack, the attacker has stolen the hashed password file, and he can spend an arbitrary amount of time breaking its passwords, limited only by the number of cycles on his computer.
What makes a change in policy to a maximum of 16 characters absurd is that the strength of passwords really does matter when it comes to how long they will endure these offline attacks. In fact, there is evidence that using a password of at least 16 characters leads to a password that is more difficult for attackers to break.
http://www.cylab.cmu.edu/research/techreports/2011/tr_cylab11008.html
-
Re:That makes no sense.
FTFY:
Yeah, and some teenager working on his hobby program late at night might actually want to send his code to other people, so that they can run it and possibly work with him.
-
Re:Prior art
they're patenting a specific method of doing so.
There is nothing specific about the methods they're patenting. I just worked on a very similar project, and after reading the patent, I see very little separating what they patented from what we did. Indeed we don't use dimensionality reduction the way they suggest (although we did use it for a while), and we don't provide specific names for the objects we discover (though we have talked about doing so via crowdsourcing). Indeed our work is more recent than the patent filing, but people have been attempting similar things for ages (e.g. [1], [2]...they are very easy to find). Worse, the two papers I cite provide enough detail to actually produce a working system, whereas the patent provides little detail beyond a few references to well-known machine learning and computer vision techniques. And even when they suggest methodology, it's always "maybe we'll use this, maybe not", and further they tend to list several potential methods without any indication that they've researched which ones work.
-
Re:It would be a dangerous precedent.
As the first poster mentioned, it's not a crime. I can even link to a criminal site if I want, with the link saying "Look! Here's a criminal site! The bastards!"
If they start regulating what you can link to, the internet is doomed. Don't go there.
Besides, at least in the U.S., free speech is very much an issue when it comes to links.
Agreed. I thought we learned this lesson nearly a generation ago with the whole HD DVD crypto key / deCSS controversy. The DVDCCA thugs were going around threatening to prosecute people under DMCA for even linking to the deCSS code or the HD DVD decryption keys (which were being found simply by peeking into RAM after running licensed HD DVD playback software). EFF and other internet groups tried mounting a defense, with mixed results, but afaict the real reason the whole thing died down is due to a) the Striesand effect (deCSS was distributed on everything from tee-shirts to steganographic porn while HDDVD keys were published widely in similar fashion), and b) DVDCCA enforcement of better key security among licensees.
In this case, a solution like b) isn't going to be so easy... but the Streisand effect isn't going away either. I fear that may mean a very unpleasantly different outcome.
I believe I still have my deCSS tee shirt, which can be seen here, about a third of the page down.
-
Still not close enough!
Pr0n, driving tech development since cavemen fingerpainted a wall.
-
Scientology is gonna be pissed off
I mean, Riverside is right next to their secret Gold Base compound at Hemet where all Scientologists can only dream of being told they're a "suppressive person" and kept in "the hole" at David Miscavige's whim.
Seriously that $5 million could be spent getting a whole 14 people from The Immortality Project up the "Bridge to Total Freedom" to Operating Thetan level 8! (unless they have to redo any levels, at David Miscavige's whim)
And now a quote from Fads and Fallacies in the Name of Science (1952) by Martin Gardner:
In 1950, speaking to an audience of 6,000 in the Shrine Auditorium, Los Angeles, L. Ron Hubbard introduced a coed named Sonya Bianca as a clear who had attained perfect recall of all “perceptics” (sense perceptions) for every moment of her past. In the demonstration which followed, however, she failed to remember a single formula in physics (the subject in which she was majoring), or the color of Hubbard's tie when his back was turned. At this point, a large part of the audience got up and left. Hubbard later produced a neat dianetic explanation for the fiasco.
As any member of Scientology in good standing will tell you, to learn more just read a book!
-
Re:That's not how it works
-
Re:First Thetan!
"Clear now? I think you owe me an apology for the conclusion you jumped to."
I don't owe you squat. I didn't "jump" to any conclusions, I responded to your actual statements.
The IRS doesn't have the power to "rule" that a group is a church or religion. The United States Supreme Court has ruled that even IT does not have the power to rule whether something is a legitimate religion. (If you don't believe that, look up the court cases having to do with the Universal Life Church.)
The only thing the IRS can do, is determine whether a church meets Federal (extremely broad) guidelines for being tax-exempt. That is NOT the same thing as deciding whether it is a religion.
The fact is, you just don't know how this all works. Look it up.
If you want some factual information about Scientology vs the IRS, you can find a lot of it HERE. -
Re:But how does the headlight work?
Yes, it's the DLP one. They didn't actually say if it was a DLP or other kind of projector, but the gist is that they can control the light beams leaving the headlight. You think of the raindrops as forming a screen (albeit one spread out in depth) and darken the spots that would fall on a raindrop.
There's also a beam splitter, so that the camera is seeing exactly the same view as the car's headlights are projecting into. Any ordinary projector would work, so long as it can control what points on the "screen" light falls.
The article is spectacularly unclear on this, but this link to the page of one of the authors is quite lucid and well-illustrated:
http://www.cs.cmu.edu/~ILIM/projects/IL/smartHeadlight/
But thanks to Conor Myhrvold, author of TFA, for downgrading the readability so that he can score some extra blog hits that would be better directed to the actual work.
-
Re:Why do you need an example?
If high schoolers can compete in the North American Computational Linguistics Olympiad , they can surely teach themselves the concepts behind regular expressions and then whip up a bit of Perl to implement it. I know I could. In fact, another competition, ACSL, has existed for a very long time (late 70s) for high-school students that want to improve their CS theory and it tests regular expression knowledge from time to time.
-
Re:Wtf?
So what about CMU's NELL, a system trying to learn English by reading the web? It regularly tweets "I think [X] is a [example of Y]", and once tweeted "I think Sarah-Marie Johnson is a criminal". Now, there is a Sarah-Marie Johnson who has been convicted of murder, but NELL does make mistakes, what if it calls somebody a criminal when they're not? Can they sue for libel, and if so who? The programmers didn't explicitly program NELL to say that, and making mistakes is an integral part of almost any experiment. Is the only winning move not to play? (More in an old blog post of mine here.
-
On Keeping Up with OpenGL
"Let's see the open source keep up with the GL spec instead of holding the whole damn platform back in 2.0 land"
Normally, I wouldn't bother responding, because there is little chance that you will see this response. However, the above quote is important.
I will refer you to [Blythe2011] http://www.cs.cmu.edu/afs/cs/academic/class/15869-f11/www/lectures/blythe_compute.pdf
for an interesting critique on current 3D work.
And remember, the "radeon" driver supports R100 on up.
-
Re:DC and Pittsburgh?
Dunno about DC, but Pittsburgh is probably because of this. CMU has a long history of working with DARPA, plus CMU and Pittsburgh generally have a long history in heavy manufacturing. They were driving around DARPA-funded full-sized autonomous robotic vehicles on the CMU campus in the mid-80s, and were also working on manufacturing technology transfer to industry (think AI and expert systems then).
-
Re:SecurID not broken
This has always been possible in theory -- obviously, the computer software has to generate the output so it must have the seed in an accessible form; probably under several layers of obfuscation and encryption
There are some slightly better techniques: McCune's Flicker system leverages TPMs (which any corporate laptop will have) in a way which means you can perform cryptographic operations securely unless the attacker can compromise the hardware in a pretty fundamental way. It would be ideal for implementing soft-tokens.
-
Re:The Department of Redundancy Department
Various universities structure things differently. I have no idea what computer science "should" be, but here's a sampling:
Carnegie Mellon - School of Computer Science.
Computer Science Department
Entertainment Technology Center
Institute for Software Research
Robotics Institute
Human-Computer Interaction Institute
Lane Center for Computational Biology
Language Technologies Institute
Machine Learning Department
At CMU, CS gets its own school/department/division, as well as its own major within that.
MIT - School of Engineering Includes:
Electrical Engineering and Computer Science
Materials Science and Engineering
Mechanical Engineering
Nuclear Science and Engineering
Aeronautics and Astronautics
Biological Engineering
Chemical Engineering
Civil and Environmental Engineering
So it's a combined program within the engineering department.
CalTech - similar to MIT - Division of Engineering and Applied Science
Aerospace
Applied Physics and Materials Science
Bioengineering
Computing and Mathematical Sciences
Electrical Engineering
Environmental Science and Engineering
Mechanical and Civil Engineering
Again combined, but with math, and under sciences.
WISC - Department of Computer Sciences under the College of Letters & Science
Again, nested, but not a combined major.
YMMV. -
Did Gary Larson Predict This?
-
Re:Sexism
Women used to make up %40 of CS students in the 1980s (Camp 2001) and make up on average a little over %35 of Israeli undergrads in CS ( Vilner 2006) and vary all over the globe. This indicates that the current US rate of about %20 is due to culture because if there was something biological going on, then the rates around the world should be roughly the same.
-
Re:Denial of Service attack
I only wonder how the government would push back in such a situation.
When the Scilons performed a DDoS-by-lawyer in 1993 (by having thousands of individuals file suit individually against the IRS), the government caved.
-
Re:WITTY SUBJECT LINE
This isn't a new claim. See: Do We Need Inheritance? [PDF], Evolution of Object Behavior using Context Relations, Selective Open Recursion: Modular Reasoning about Components and Inheritance [PDF], Encapsulation and inheritance in object-oriented programming languages and many other academic sources.
It's widely acknowledge that inheritance violates encapsulation. It's a fundamental problem with OOP.
If you prefer a less academic and more practical discussion, try a Google search for OOP criticism.
-
Pot, kettle...
For some reason, they neglected to mention that Microsoft's own sites have also been found doing EXACTLY THE SAME THING. Weird.
-
Re:the MAFIAA obviously
Please, enlighten me, how do public copies of algorithms "disappear"? Counterpoint: deCSS, the release of (master) keys for AACS and HDCP.
Anyway, we can just publish it as a poem and it's protected under free speech:
Now help me, Muse, for
I wish to tell a piece of
controversial math. -
Literate Programming as opposed to Illiterate
Send your programmers this link:
http://www.literateprogramming.com/
and have them read this book:
``Propaganda'' here:
http://vasc.ri.cmu.edu/old_help/Programming/Literate/literate.html
I re-wrote the typesetting back-end of an interactive, graphical ad design / generation program as a literate program and it made a _huge_ difference in the maintainability of the system and made adding additional features _much_ easier.
-
Re:... well that's one reason open source is super
Unless you've personally verified every single line of code in the OS, you're not really better off.
Even if you do, you're not sure. Your compiler may be compromised. See: Reflections on trusting trust.
This is why you always code in machine language!
-
Re:... well that's one reason open source is super
Unless you've personally verified every single line of code in the OS, you're not really better off.
Even if you do, you're not sure. Your compiler may be compromised. See: Reflections on trusting trust.
-
Re:Really nice looking and interesting phone for 1
Linux was even created because Linus wanted a free UNIX like desktop I'm sorry but you're mistaken. You can read the history of Linux's early days writted by Torvalds here. I quote him, bold is mine.
It is currently meant for hackers interested in operating systems and 386's with access to minix. [...] I can (well, almost) hear you asking yourselves "why?". Hurd will be out in a year (or two, or next month, who knows), and I've already got minix. This is a program for hackers by a hacker. I've enjouyed [sic] doing it, and somebody might enjoy looking at it and even modifying it for their own needs. It is still small enough to understand, use and modify, and I'm looking forward to any comments you might have.
You're probably right on the other point
Since the beginning Linux users have touted how this will be the year of Linux on desktop
This is probably never going to happen (not with a substantial market share) but 2011 was the year of Linux in the pocket (remember Linux is only the kernel) and 2012 could be the year of Linux on the desk.
because Linux users very much have wanted Linux to be number #1 on desktop
That's unbelievable right? As if Mac users wouldn't like to see their platform to become the number 1.
-
Re:Go!
No longer are they just an obscure cult most people have barely heard of - after the Anonymous-ran campaign on social media, everyone knows to avoid them.
Bull.
Scientology Exposed [May 6, 1991]. [cover art]
The Thriving Cult of Greed and Power [full text and illustration]The Apostate: Paul Haggis vs. the Church of Scientology [Feb 14, 2001]
Anonymous is the a geek's carnival Wheel of Fortune. Each week it gets another spin. More often if the crowd gets bored.
Tom Cruise jumping on Oprah's couch did more to harm Scientology's reputation than anything Anonymous did. Google clambake or xenu to find exposures that have been happening for literally decades.
-
Re:Go!
No longer are they just an obscure cult most people have barely heard of - after the Anonymous-ran campaign on social media, everyone knows to avoid them.
Bull.
Scientology Exposed [May 6, 1991]. [cover art]
The Thriving Cult of Greed and Power [full text and illustration]The Apostate: Paul Haggis vs. the Church of Scientology [Feb 14, 2001]
Anonymous is the a geek's carnival Wheel of Fortune. Each week it gets another spin. More often if the crowd gets bored.
-
The NTSB is 100% **RIGHT**
-
Re:Pffft.
There are a few problems with functional programming languages that have prevented their true adoption anywhere.
1. Limited paradigms - I always prefer languages that let me write my code the way I want, a la C++, than a language that requires a strict paradigm from academia like Lisp. If I want to use the inherent hardware property based side effects of certain code structures, let me. Programming languages =/= mothers.
Common Lisp (and Scheme, even more so, although the community is more oriented toward impure functional style) enforces no fixed paradigm. It can be used functionally (conses happen to be a pretty good data structure for functional algorithms), but is more often used in an object-oriented manner. It was even one of the first OO languages, and AFAIK the first to implement multiple dispatch. It even has a powerful imperative operators.
Thanks to macros and the metaobject protocol you can even add new paradigms to the language. Paternalistic, Lisp is not.
3. Most functional languages except Ocaml are like Ruby and Python in that they have tremendous performance overhead. For a consumer application, that overhead usually doesnt impede adoption (its more like the software is poorly written than the applications environment is too inefficient). But when talking about server programming the costs of running something under Ruby vs C are astronomical, and the same problem arises with functional programming. It might not hurt the consumer that the Python implementation of their music player consuming 30% more clock cycles than the exact same program written in C, but it does cause huge scaling issues with popular resources like Twitter.
4. In extension of 3, functional programming is getting away from how the hardware actually works. It is good for a novice that doesnt want to get into the details of pointers and caching and disk IO, but professionals should enter the game knowing how the underlying system runs and that making tradeoffs for readability by someone who doesnt know the language anyway vs performance benefits falls to the wayside. Developer time is important, but when you factor in the massive overhead trying to get 20+ year professional developers in C to try to think functionally you are never justifying the upfront cost of using the languages.
Languages like SML and OCaml are actually more optimizable than C. Thanks to providing more type information &c they can take advantage of fancy whole program optimization and whatnot.
The "way hardware works" is an artifact of C being the dominant language. There's no reason hardware couldn't (and it has before) have GC assistance, type checking, capabilities, etc. It's really not appropriate and scalable to view the computer as something that flips bits around a gigantic linear array... it was reasonable to deal with that when you had 4000 words, but not when you have 400000000 words.
Software is nice because you can abstract! Writing programs to a model of an infinite store that Just Works (tm) is beneficial to everyone -- it frees source code from a particular hardware implementation, is easier to reason with, and separates the concern of hardware resource management.
-
Re:BSD far more common via Mac OS X
Wikipedia: "Mac OS X is based upon the Mach kernel.[13] Certain parts from FreeBSD's and NetBSD's implementation of Unix were incorporated in NeXTSTEP, the core of Mac OS X
Unfortunately, the page they cite at Apple doesn't mention the Mach kernel, but it does say it's "built upon a proven UNIX foundation."
If you read the Wikipedia article on Mach, it says "Mach was designed as a 'drop-in' replacement for the traditional UNIX kernel," but they don't give a citation. It seems to me if you're making a BSD variant, you can change whatever code you want - including the kernel.
In Carnegie-Mellon's publication Unix as an Application Program they describe how they abstracted the functionality of the BSD kernel into a "Unix server" that emulated BSD system calls through Mach messages. It's a different kernel design, but the rest of the system was BSD, the code base was the same. Mach + Unix server is equivalent to a new BSD kernel. If it looks like a duck, and quacks like a duck, etc.
-
Prior art
http://www.cs.cmu.edu/~pprk/
back in the days of Palm computing, it was known that letting your portable devices run around from time to time on their own was good for their health... :) -
This one was more impressive
That's not bipedal, this is bipedal.
-
Groundbreaking?
I've seen this kind of design before. In fact, you can make it yourself: http://www.instructables.com/id/How-to-Build-A-Walking-Robot---Passive-Walker/
Some other prior art: http://www.andrew.cmu.edu/user/shc17/Passive_Robot/PassiveRobot_photos.htm
Obviously this is probably much better in certain ways but it's tough to call this thing groundbreaking