Domain: nhplace.com
Stories and comments across the archive that link to nhplace.com.
Comments · 27
-
Re:Voice assistant
The kind of voice control Google is after (as in "the second-most intuitive interface") is hardly the same as the kind of voice control that is available today. The first would be able to interpret your intent as well as a human could, possibly better (filtering out noise, asking to clarify ambiguities rather than making assumptions). And it's nothing like the command line, which does no interpreting, refining or clarification at all; it just executes a limited set of commands exactly as entered, with no room for so much as a misplaced comma.
It's exactly like a commandline, which have been attempting to interpret their input for decades (most famously with http://en.wikipedia.org/wiki/D... ).
The two reasons modern commandlines don't do this are 1) lack of effort and 2) that it's often a very bad thing. According to http://www.nhplace.com/kent/Pa... one of the motivating factors for defining Common LISP was to stop DARPA from rolling out INTERLISP, and therefore DWIM, across all their projects.
As for clarification, I run into this all the time when typing non-existant commands (thanks to the "command not found" program) or using undefined variables (thanks to GHC).
-
Nobel Prize could replace software patent system
I've long suggested that what we should do with software patents is dispense with most of them and instead turn the quest for software excellence from a race to make inane patents into a competition for an elite prize, such as the Nobel. It would eliminate many bogus patents, plus no one would be confused about what was patented and what wasn't, since almost nothing would be patented. I'd have maybe given Nobels for things like RSA encryption or LZW compression, for example--things that took a work to create, aren't likely to be independently created and really serve people. The "prize" could be getting the patent, which most things would not get—though a maximum 5 year term would be best, any more is too long in the modern world of computers. Getting a patent would mean you didn't need a monetary prize, which would make the award cheap to offer.
:) -
Re:Lets see...
This list of ten is not bad. Some terms are a bit vague. What "one's own hardware" is or "any device" is might require refinement. Item 9 is controversial and its presence would likely sink the proposed bill of rights, losing the others with it; I'd leave it out even though I like it conceptually for most purposes. There are cases where anonymity breach is important to allow; they're just rare. Item 10 might have a minor glitch over the definition of "speech", but no worse than the First Amendment already has.
When I saw the original article's title, I wanted to rush to promo my thoughts on Universal Business Access. Looks like its article 2 addresses it a different way, which is probably mostly ok. But the original article has problems for me in Articles 3 and 4. Article 3 looks well-meaning but likely to be full of problems; I can easily imagine a need for exceptions. As for Article 4, if someone's not being forced to buy the closed source software, I don't see why more than just market dynamics is required. Putting these kinds of things in a Bill of Rights seems a little off. Mostly I think rights should be things that can be asserted against the state (or a state-like monopoly provider like an ISP or cable provider), not against individuals and they shouldn't be full of details that might need to change.
Your list of 10 looks to be in better syntactic form for a bill of rights.
-
Consequences of Metered Bandwidth on Freedom
The fact is, metered bandwidth is good for our own freedom because it gives us a greater argument for demanding a hands-off approach to regulating protocols. If you pay for the bandwidth itself, rather than just a simple monthly access fee, it's easier to argue that it's your bandwidth now and the ISP needs to piss off if they think they'll tell you how to use it, the law notwithstanding.
Great point, succinctly expressed. I totally agree. This is related to a point I was going to make: It annoys me that one cannot resell bandwidth. The notion that one person having 3 people in the house can grab bandwidth for all of those people at one price, but three people living separately have to buy 3 separate services seems unfair. In practice, it means that lots of people cheat and get away with it, while the people who don't cheat are charged a premium (or, more specifically: several premiums) for operating to the letter of the rule. For quite a while, I've been pushing the need for Universal Business Access, and have only just recently written it up, but it relates to that.
Email has a similar kind of issue, where not paying is more expensive than paying, since we all pay for spam due to email being free, and the cost of that spam is certainly way higher than the cost that email itself would be--except to the spammers.
-
Re:First, do no harm (to another's marketplace)
I'm curious which free software has eliminated all competition in its niche? People still pay for web servers, C compilers, and operating systems. Perhaps web browsers. Anything else significant?
<tongue-in-cheek>
Nope, you've pretty much enumerated the entire space of things anyone would want to make out of software and certainly that they might have wanted to receive money for. Moreover, now that you've prodded me to think on it further, I realize there's no chance that anyone would ever have wanted to make software of some other kind than you've enumerated and yet has then declined to make such software because of the likelihood that an immediate free-software knockoff made by a free software "sniper" might undercut their investment. So, upon reflection, I stand corrected. Sorry for any confusion.
</tongue-in-cheek>
By the way, the point of my original post was about Google, and my mention of free software was only incidental. I've replied here in fun so as not to ignore your post, but I plan not to carry this further and have declined my otherwise-automatic karma bonus on this post as a self-imposed penalty for drifting even this far off topic.
-
Barriers to software patent reform
The trouble with [the way the US manages IP] is that innovation will move to other countries and America will be left behind.
Perhaps. And I agree with your position, btw, so don't take this the wrong way but...
What you say here seems to me, in some bizarre and twisted way, almost a best case outcome. Because if we were being left behind, we might start to respond. This isn't really a national issue, though, and the worst case is that other countries follow our lead and do the same dumb thing we do on software patents.
That was what happened with encryption. I was sure that when the US made that stupidity about not exporting strong crypto that we'd end up with a market where people made it outside the US and sold it back to us. But that would have actually been good, because (a) we'd have mail delivery software that used encrypted technology through-and-through even if we (in the US) had to buy it from overseas and (b) we'd have a commercial threat that we felt a need to respond to. (I'd ever-optimistically hope, anyway.) What happened was much worse. A small and relatively elite set used up their political energy downloading PGP and whatnot for themselves, but the market didn't take it. Instead, they followed the lead of the US (probably mostly Microsoft) and continued with lots of unsecure technologies as the core of the Internet. And so there was no real lesson there that I can point to now, even though the issue of software patent and of encryption seem structurally similar to me in some ways (though I'd accept it if others might not totally agree that this is the best model to compare to).
I also think this issue is blurred by the constant reference to software IP as if they were the same thing. I have very different positions than others on software copyright, but I side completely with those that think that software patent is utterly broken. So it pains me to see things like the GPL v3, which in their zealous attempts to apply political leverage to two problems at the same time, also do damage by intertwining these two unrelated issues people's minds.
I'll close by just remarking that it's amusing to me, and maybe a hopeful sign, that the issue of the Nobel prize and this software patent issue have been linked in the public eye because maybe it gives hopes to my personal proposal that the right way to reform the software patent problem is to reduce the patent system to an award system with few or no prizes, similar to the Nobels.
-
The copyright mine-field
In looking at the trade-off we need a model that reflects how added fair-use may increases the value multiplier, but may decrease the incentive to create copyrighted material and the pool of copyrighted material.
Great post. A few additional words of caution to those smelling blood and circling in hopes that copyright will fall of its own weight...
Fair use used to be something easy for people to do on their own, and it was a heavy burden on a publisher to show that someone was violating the copyright in a way that was unfair. It was hard to notice, legal avenues were the main way of proceeding, it cost a lot to even try. In the modern world, programmatic restrictions can keep people from making legitimate fair use, shifting the burden of proof from the publisher to the one needing the fair use. That, in itself, makes a mockery of fair use.
People's annoyance at the mechanical restrictions is certainly legitimate, but they should be careful to note that this is not an annoyance at "fair use", it's an annoyance at the way in which publishers and makers of technology are allowed to err in their own favor with no recourse. I've advocated for the creation of a legal notion of an "intellectual property easement" (by analogy with a real property easement), allowing one to sue a vendor or publisher for a way to make available a mechanism in support of fair use where the legitimate option has been mechanically forbidden. This might balance the scales without infringing copyright.
It's very easy for people to leap improperly to the notion that "big companies" own copyrights and "little people" can't use what they need, since a lot of this ends up being about published movies and TV shows and photos that people want to mark up and play with. But it works in reverse, and in the case where you're a little person who makes a movie, the firm application of copyright is all that stands between your ability to share with your friends or publish something on your site with a "look but don't copy notice" and your non-ability to keep a big magazine or portal from just lifting your work with not even a "thank you" in order to reuse it for them.
In my opinion, the value in copyright is not in protecting the big guy, who has many ways to make money, it's in protecting the little guy, just trying to make a start. So let's not be too quick to erode it.
The effect of further eroding copyright protection in favor of fair use becoming more like "unlimited free use" probably wouldn't help the free software movement either.
Of course, none of what I've written above in favor of keeping copyright protection strong should be taken to mean I think it's reasonable to have copyright terms as long as they are today. It's ridiculous, and getting worse in that regard. When I speak of copyright protection, I mean during a reasonable term of copyright, as originally designed. Perhaps even shorter for computer software, since the period of time between creation and obsolescence is probably only a few years, and even generously 14 years would be more than enough to be called conservative.
-
Anyone here read the original text from ACM?
I don't have ACM membership for various reasons.
Anyone can send me the article or tell me how to get a copy? -
Cause vs Effect
I think the issue might be simpler than it's being made in the article. Here's my take:
Math is taught badly. People don't "learn math" due to teaching. They mostly succeed due to self-learning and otherwise fail and get out as gracefully as they can.
So who learns it on their own? People who don't require a lot of interaction. Loners. People who don't need social interaction to succeed.
And when then when you measure whether mathematicians are loners and perhaps lonely/unhappy? Well, it's not exactly statistically random sample of the population you've started with. You've practically selected for such people in the premise.
Then we make the process feed back on itself. Who becomes math teachers? Mathematicians. What do they know? They know math. But they don't always know why they know it. It seemed easy to them, compared to their classmates. So they believe in the teaching tactics they were shown, even though they didn't work for most people. So they use those same tactics a lot of the time. Why not? They're a proven success. And someone whose primary credential is teaching, not math, may have a huge barrier to getting to teach anything advanced since they probably didn't get to a lot of Math in that particular degree path. So we get a lot more of the same.
(A related problem, that I've expounded about on my web site in my critique of No Child Left Behind, is that we try to replicate, city by city, the development of a fresh curriculum for teaching math. We rely on teachers in town after town to come up with a teaching plan, a good presentation, and testing materials rather than just finding one or two or ten people who can present it well and centralizing that. What a waste. If we built computers like we teach math students, we'd be putting chip fabrication plants in each city, and wondering why people were so unhappy with the quality of computer hardware. And we'd be creating No Town's Chip Manufacturing Plant Left Behind programs to try to figure out why small towns couldn't keep pace with large ones. Centralization of effort and distributing value is something that pays huge dividends in both economy of scale and product quality. If kids could re-watch a presentation on video when they didn't get something, back it up, freeze frame it, etc., it would offer great capabilities we don't have with classes now. And it would free human teachers in each town to focus on question answering and helping people in need rather than doing mundane preparation work that is redundant with prep work done by the analogous people in every other town.)
-
Is America Still Investing in Nobels?
So all 4 Nobel winners this year so far have been Americans. Brain drain?! Bah! Of course, the true test will be to see if we can keep it up in a few years.
Uh, actually, you need to adjust for relativity. In the frame of reference of the observers giving out this award, we're a couple of decades back. That is, they don't give out nobel prizes for something that happened this year, they give them out for things that have stood for a while and had impact etc.
Consequently, I think you meant to say: Of course, the true test will be to see if we kept it up for a few years subsequent to 1989. We should already know the answer to that. I'm sure we're still doing good work. But are we keeping pace with the tremendous degree of investment in math and science abroad? I bet the Nobels that are given a decade or two from now will be clear on that. It's a matter of national pride for many countries. But here, we have "No Child Left Behind", which sounds good on paper but often plays out as "No Child Gets Ahead" -- lest it be "unfair" to someone. It's politically unsafe here to suggest that it's worth investing in our high end at the expense of our low end, and that's going to trend badly toward the middle. Other countries are not thus hampered.
MIT recently opened a research center in Singapore. I suspect the next thing we'll hear is that it's headquarters has moved--for convenience. And then finally, that the largely unused Cambridge center is being mothballed as a quaint relic, perhaps turned into a science museum. And perhaps after that protests may ensue, more over lost jobs or unfair treatment than the question of how our nation's leaders sold us out. No one worries about that.
The problem is that US politics sees everything as one-place predicates. Politicians like education. They like the environment. They like kids. It's easy to like things when you don't have to make hard choices, and all our public dialog is framed about people voting for X or not voting for X. Politicians don't talk about choices, about comparisons, about 2-place predicates that put one thing up against another. No one says "When it came to X vs Y, I chose Y." That alienates voters. Voters want the fictionalized choice that you can have it all, that all choices/votes are independent of one another, and that no choice or policy robs another. They don't want honesty, so politicians don't sell it. And then the policies the voters have elected don't work. We'll spend a billion dollars to keep a few from getting attacked when the same billion would save many more lives if spent on food, health care, jobs, or education.
I'm not against less intelligent kids. I don't want to hold them back. BUT the more intelligent kids will be making the money that will pay for the welfare, the head start, etc. that the less intelligent ones need. And if push comes to shove, I know where I'd put money to make sure we still have money in the future. Any business person knows it. You invest in the "low-hanging fruit", the "easy mark", the people who are poised to succeed. And no, that doesn't mean the rich kids--this isn't about class. There are smart kids and dumb kids in the same family. There are smart poor kids and dumb rich kids. We need to figure out which ones are going to succeed and invest in them. And if we don't start investing in science, instead of kidding ourselves that investing in Creationism is the same thing, we'll be rightly pushed aside by other countries, who know that our kind of nonsense/nonscience is not what business is hiring. If it hasn't happened already.
I'm not trying to troll this forum. I think this is on topic since the headline says "Americans win...", so it's clear that some of this story is about who won, about American national pride and implicitly about American national investment in doing it again. And I have strong opinions on this.
-
Re:Actually...
Continuations can be used to build everything (don't know, maybe everything), but from what I've managed to gather, there are problems with continuations as they are used in Scheme at the moment (don't know about any other language).
I've been trying to read through and understand this, but haven't got far yet. Basic idea is I guess "how does a continuation escape from an unescapable unwind-protect?". Unwind-protect is like "finally" in Java, it has to run *always* - but continuations never return, so it's like when an immovable object meets an irresistable force.
Additionally, there's added issues with general error handling and other stuff - how can we do this efficiently and without getting in the way of the programmer - many of these issues are subjective, so what I meant was not the same thing you were thinking I guess.
-
Re:Unnecessary headache?
The fundamentals of the patent system is to protect the author's idea and inventions
Actually, the patent system does not protect ideas. No intellectual property does. The patent system protects a way of doing something useful and novel as a way of incentivizing creation. The problem is that ways of doing things are being cranked out so fast that their very speed of being cranked out is a prove of non-novelty, yet people are capitalizing them economically as if they were a proof of "infringement", which they often are not. That an idea about how to do something is easy to recreate should be proof of non-novelty and a defense against infringement, not a source of income. And that's why the software patent system is broken: because in the digital marketplace, a lot of the good algorithms are practically forced. It's like giving patents on addition and subtraction, when you know these ideas would come anyway.
I agree that software patents are an unnecessary headache, but I think it's because software patents are just different than things like material process patents, and I propose dealing with them very differently, more like the Nobel prizes, but I'm not so sure I have a strong position on patents in general, as long as they run in a reasonable period of time and don't start doing like copyrights where they keep getting extended all the time to last closer and closer to forever.
It bugs me though, that people move so fluidly between discussions of software patents and discussions of GPL as if it were all one kind of thing. Copyrights are protections of work done, and the likelihood that two people will write the same software system is close to zero, so there's little harm in protecting the expression of someone's program. If they want to let someone use it, let them. If they don't, let that person write something else.
I don't see that someone's copyright protection infringes the world, since recreation of an idea in another form is not an infringement, only direct copying. It's the fact that patents make even independent creation into an offense that makes it a problem where copyright is not. People who need to get around a copyright can just head to a clean room and work their way through. People who need to get around a patent can't even claim as a defense "we raised the authors on Alpha Centauri and they never heard of this patent, so couldn't have infringed it". In fact, I suspect the whole patent system will necessarily collapse as soon as we open trade relations with another intelligent race, who will surely have a different theory of what has and has not been invented and will think different things to have "prior art" (not to mention different things to be "obvious"). When is First Contact scheduled for again?
-
Re:Parenthetical Remark
I've taken no offense what so ever to this conversation.
Sorry, but everyone seems to take offense at everything here, so I've learned to just assume I should worry, and to write very defensively. Sigh. Glad to know there are others besides myself here who just come to offer and receive information, not to fight.
Some reasons I would not recommend scheme besides maintainence costs are: 1. Speed for some things, but if that's not important then it doesn't matter, though with Scheme you can always write the performance critical pieces in C or C++ and write an extension.
Likewise with Lisp if you needed it, you could always write a few subroutines in C/C++ and there are packages for doing "foreign" (some say it should be called "native") callout very straightforwardly. e.g., although Lisp will do array processing, if I had routines already optimized for doing (un)compression, display algorithms, raster effects, numerical algorithms, etc. I might just call those directly. The modern environment is heterogeneous, and the good implementations of CL accomodate that even though the standard stops short. It's enough similar that if you have to share between multiple implementations or you write in one and later port to another, it's likely to be a pretty modular accommodation.
2. Lack on an object system.
CLOS (the Common Lisp Object System) is pretty much the reference model for a good object system based on multiple inheritance. It's powerful, efficient, and flexible.
3. I'll talk about the maintainence costs again. Pyton, perl and other interpretted languages seem better at catching errors when loading the source code. This may just be the implementation of Scheme I have used (ELK). This definitely does not say anything about LISP.
I haven't used ELK so can't compare directly. In general, the Scheme standard is small and what made it usable was often the implementation details. (CL is bigger, so more of its usable stuff is common to all implementations, but even then, there are new things that are post-standard that are common to most implementations, yet really not standard.) Scheme has traditionally placed more of a premium on aesthetics and teachability, while CL more explicitly on the reverse (practicality over aesthetics). Traditionally, it has been individual Scheme vendors, rather than the language itself, that have had to tend to pragmatics, which has left some Scheme implementations hugely more usable than others. Common Lisp has been traditionally pragmatic, so the individual implementations, while they do vary somewhat, also tend to care about commonality more because that sense of shared community is built into the language itself. (I sat on both the Scheme authors committee for a number of years and on the CL design committee, so it gave me an interesting view of the differences, but I'm always fascinated to hear how users perceive it, since they often don't see either the intent or the process, just the effect.)
4. The exception mechanism is very rough. Error recovery in general is funny, though you can write your own very elegant error handling mechanisms.
If you want a flavor of what the Common Lisp condition system offers, you could see my 1990 paper and my 2001 paper, each of which touch on this in different ways.
5. Lack of data structures such as O(log(n)) maps and sets, though you can roll your own...
Common Lisp has built in hash ta
-
Re:Parenthetical Remark
I've taken no offense what so ever to this conversation.
Sorry, but everyone seems to take offense at everything here, so I've learned to just assume I should worry, and to write very defensively. Sigh. Glad to know there are others besides myself here who just come to offer and receive information, not to fight.
Some reasons I would not recommend scheme besides maintainence costs are: 1. Speed for some things, but if that's not important then it doesn't matter, though with Scheme you can always write the performance critical pieces in C or C++ and write an extension.
Likewise with Lisp if you needed it, you could always write a few subroutines in C/C++ and there are packages for doing "foreign" (some say it should be called "native") callout very straightforwardly. e.g., although Lisp will do array processing, if I had routines already optimized for doing (un)compression, display algorithms, raster effects, numerical algorithms, etc. I might just call those directly. The modern environment is heterogeneous, and the good implementations of CL accomodate that even though the standard stops short. It's enough similar that if you have to share between multiple implementations or you write in one and later port to another, it's likely to be a pretty modular accommodation.
2. Lack on an object system.
CLOS (the Common Lisp Object System) is pretty much the reference model for a good object system based on multiple inheritance. It's powerful, efficient, and flexible.
3. I'll talk about the maintainence costs again. Pyton, perl and other interpretted languages seem better at catching errors when loading the source code. This may just be the implementation of Scheme I have used (ELK). This definitely does not say anything about LISP.
I haven't used ELK so can't compare directly. In general, the Scheme standard is small and what made it usable was often the implementation details. (CL is bigger, so more of its usable stuff is common to all implementations, but even then, there are new things that are post-standard that are common to most implementations, yet really not standard.) Scheme has traditionally placed more of a premium on aesthetics and teachability, while CL more explicitly on the reverse (practicality over aesthetics). Traditionally, it has been individual Scheme vendors, rather than the language itself, that have had to tend to pragmatics, which has left some Scheme implementations hugely more usable than others. Common Lisp has been traditionally pragmatic, so the individual implementations, while they do vary somewhat, also tend to care about commonality more because that sense of shared community is built into the language itself. (I sat on both the Scheme authors committee for a number of years and on the CL design committee, so it gave me an interesting view of the differences, but I'm always fascinated to hear how users perceive it, since they often don't see either the intent or the process, just the effect.)
4. The exception mechanism is very rough. Error recovery in general is funny, though you can write your own very elegant error handling mechanisms.
If you want a flavor of what the Common Lisp condition system offers, you could see my 1990 paper and my 2001 paper, each of which touch on this in different ways.
5. Lack of data structures such as O(log(n)) maps and sets, though you can roll your own...
Common Lisp has built in hash ta
-
Re:Parenthetical Remark
I've taken no offense what so ever to this conversation.
Sorry, but everyone seems to take offense at everything here, so I've learned to just assume I should worry, and to write very defensively. Sigh. Glad to know there are others besides myself here who just come to offer and receive information, not to fight.
Some reasons I would not recommend scheme besides maintainence costs are: 1. Speed for some things, but if that's not important then it doesn't matter, though with Scheme you can always write the performance critical pieces in C or C++ and write an extension.
Likewise with Lisp if you needed it, you could always write a few subroutines in C/C++ and there are packages for doing "foreign" (some say it should be called "native") callout very straightforwardly. e.g., although Lisp will do array processing, if I had routines already optimized for doing (un)compression, display algorithms, raster effects, numerical algorithms, etc. I might just call those directly. The modern environment is heterogeneous, and the good implementations of CL accomodate that even though the standard stops short. It's enough similar that if you have to share between multiple implementations or you write in one and later port to another, it's likely to be a pretty modular accommodation.
2. Lack on an object system.
CLOS (the Common Lisp Object System) is pretty much the reference model for a good object system based on multiple inheritance. It's powerful, efficient, and flexible.
3. I'll talk about the maintainence costs again. Pyton, perl and other interpretted languages seem better at catching errors when loading the source code. This may just be the implementation of Scheme I have used (ELK). This definitely does not say anything about LISP.
I haven't used ELK so can't compare directly. In general, the Scheme standard is small and what made it usable was often the implementation details. (CL is bigger, so more of its usable stuff is common to all implementations, but even then, there are new things that are post-standard that are common to most implementations, yet really not standard.) Scheme has traditionally placed more of a premium on aesthetics and teachability, while CL more explicitly on the reverse (practicality over aesthetics). Traditionally, it has been individual Scheme vendors, rather than the language itself, that have had to tend to pragmatics, which has left some Scheme implementations hugely more usable than others. Common Lisp has been traditionally pragmatic, so the individual implementations, while they do vary somewhat, also tend to care about commonality more because that sense of shared community is built into the language itself. (I sat on both the Scheme authors committee for a number of years and on the CL design committee, so it gave me an interesting view of the differences, but I'm always fascinated to hear how users perceive it, since they often don't see either the intent or the process, just the effect.)
4. The exception mechanism is very rough. Error recovery in general is funny, though you can write your own very elegant error handling mechanisms.
If you want a flavor of what the Common Lisp condition system offers, you could see my 1990 paper and my 2001 paper, each of which touch on this in different ways.
5. Lack of data structures such as O(log(n)) maps and sets, though you can roll your own...
Common Lisp has built in hash ta
-
Prior art: Symbolics Genera & CLIMSymbolics Genera (a descendant of the MIT Lisp
Machines)used something called "Dynamic Windows" which was later further developed as CLIM (the "Common Lisp Interface Manager"). Among the various features of that system was the ability to annotate output with its datatype. e.g., and I'll simplify notation here for presentational clarity (and to save me looking it up) but it's substantially like this:
(with-output-as-presentation (stream 'integer :data 5.3) (write-string "a bit more than five" stream))This would cause the user to see the string "a bit more than five" but the system to have backing store information (kind of like the HREF that underlies a URL presentation in a browser, except that's really more imperative in nature rather than declarative) that says that if the user clicks on that, he's really clicking on 5.3 instead.
What was interesting about the way Genera did it was that there was a conceptual relationship between "presentation" (the analog of printing output) and "accepting" (the analog of reading input). If someone later did:
(accept 'integer :prompt "Please input a number")then the mouse would become aware of all the occurrences of things that had been presented as integers (or even things that could be coerced to integers). The system could be further abstracted so that if you output British Pounds and someone asked for input of American Dollars, translators ran so that when you clicked on the value in pounds, it got translated at input time to the appropriate representation (presumably the translator you wrote knew how to acceess the currency exchange to do this). Output in inches could be converted to feet or meters, of course, without such network appliances.
But the key feature which seems to have been "obvious" even decades ago when Symbolics did this work was the idea of highlighting data of various kinds with boxes. In that case, it wasn't even limited to numeric data. It could be any kind of data, even things of different types that were hierachically presented (such a filename listing being sensitive on its whole line as a file, but as only part of the line for this and that date mentioned in the listing).
And it didn't get patented then, which to my understanding of patent law means it's missed its chance...
The really sad thing is that so few people know about this I/O paradigm, which had some very cool features. And then such sadness is compounded when others come along and attempt to say they dreamt up the idea.
I mean, geez, people have been drawing boxes around in paper for a long time. I don't doubt there's some implementation of a kids' book that has a piece of cellophane you can pull back and forth to highlight something. I recall things that use red over red text to make the text "become invisible" being implemented in physical books when I was a kid. That's a form of emphasis through boxes, too!
The patent office is way overboard these days. I think software copyright serves a critical purpose, but I think software patents are an abomination. I'd like to see the software patent system overhauled completely.
-
Idea source vs idea destination...
Is it just me or does it seem like all MS is doing these days is just copy catting google?
Aren't they both just following up (slowly) on Neal Stephenson's idea from Snow Crash ?
With all due respect to those "hard-earned" software patents the big vendors are sporting at every turn, I'm not sure that at this point in time that anything you see actually implemented was necessarily thought up by the organization that implemented it.
For example, science fiction writers often write about things like communicators, phasers, voice interfaces to computers, teleportation, robots, and so on long before big companies implement them. And often those scifi writers get their ideas from other, less well-known but still publicly available technical journals, computer programs, fanciful stories, and so on.
Society is rich these days with technological ideas, which is why software patents are such a bad idea. But while ideas are cheap, implementations are not. So I don't see that any of us are hurt by a second implementation of this complex idea per se.
What we ought to be more worried about than where the ideas came from is where they're going. "Copycatting" is self-correcting because if the market thinks it was a waste of time, the cost will not be recovered.
But meanwhile it's there and accessible. And especially as program APIs are added to these things, I wonder where people will point fingers the first time one of these is used as a targeting system for terrorist missiles.
-
Re:Who has the right right to store store windows?
... the very act of viewing a website requires that you make a copy of the website. So how can someone require that you not make copies and at the same time force you to make a copy? ...Copyright is subdividable into individual rights to perform individual acts. The fact that there may well be an implicitly conveyed right to make the specific copy that goes to your browser does not imply that you have given the right to make any copies for any other purpose. Some of my pages make this explicit (e.g., see the bottom of this page).
The fact of a copyright does not necessarily mean that no copies can be made; it merely means (to quote the US Code) "the owner of copyright under this title has the exclusive rights to do and to authorize any of the following: (1) to reproduce... (2) to prepare derivative works... (3) to disribute copies... etc." The owner of the copyright can even give you permission to publish only in a certain language, only in a certain country, etc.
-
"Design and Evolution" mis-titled
I prefer to think of that volume as "The Design Rationalization and Mutation of C++". An astounding amount of it is Stroustrup explaining why one feature or another would have been a good idea, but had to be shelved in favor of something simpler to implement, or requiring fewer keywords to change. It shows the extent to which C++'s design was political in addition to being technical (see Lambda the Ultimate Political Party for how this worked in the Lisp community).
It's a good, informative read, though not always a fun one - I still gnash my teeth every time I read about how they settled on termination semantics for exceptions. -
Serious Reform of Software Patents
I am in favour of software patents in principle, but they should only be allowed after serious patent reform has taken place.
I have a concrete proposal for serious software patent reform:
Turn it into something like the Nobel Prize, where you issue only a small number per year, only for things that are truly innovative. Details and rationale here.
-
Re:Peer Review - Solution
Why not introduce a peer review process by which a patent in a particular industry is reviewed by patent holders in the same industry?
I liked this up to "peer review", but once the people doing the review are patent holders, it becomes an "old boys network". Existing peer review as done in any other science field, for example, should be adequate and more open.
I also have another variant of the peer review proposal: make (software) patents a prize (like the Nobel prize, with only a few winners per year), not something everyone can get.
-
Re:This is not a troll, but a query...
I am an ex-Lisper who strayed from the One True Language and am now in the process of regaining proficiency to rejoin the Lisp Priesthood. My motivation is that I am tired of the limitations I hit due to the deficiencies inherent in all the other supposed "modern" popular programming languages I've encountered. I also remembered really *enjoying* the whole process of rolling Lisp code, a joy I lost long ago when I strayed into the mass market of more socially acceptable programming languages.
The deficiencies of modern languages I speak of above are not necessarily those of capability (though those exist), but are primarily of language design. Most languages are designed with the goal of increasing the productivity of the average programmer. Lisp's design was entirely about elegance, simplicity and power. I can give you lots of reasons why Lisp is better than insert-your-favorite-programming-language-here, but that will just devolve the conversation into a jihad. So, let me tell you what Lisp is fantastic at.
Actually, you know what? I'm not going to reiterate that which others have stated. If you really are interested, let me just point you to a couple of sites to get you started on your journey of discovery. Read Paul Graham's essays/articles, the first two chapters of Peter Siebel's book available on-line, this essay on Lisp's prowess as a rapid prototyping language and this paper on why the future of the (semantic) Web may lie with Lisp. Then, if you appetite is whetted, Google for more info, download a flavor of Common Lisp, work thru Seibel's book, and experience it for yourself.
Or not. If you're perfectly satisfied with whatever flavor you how you do your work, there is absolutely no reason to learn ANYTHING new, is there?
Learning Lisp. It will take you back to the future. -
NOT free speech
Free speech is about the idea that one is not kept from speaking. A single domain is enough to assure that you get your message out. Grabbing many of them starts to monopolize the stage, and robs free speech from the person who might otherwise respond.
This political situation seems to me to be different than the commercial one in which someone with a tradename ACME might legitimately grab ACME.com, ACME.net, and ACME.org to prevent dilution of the mark.
I happen to think the Freedom of Speech is often better analyzed as the Freedom to Hear. Under this analysis, it's the public's right to hear the alternative point of view that's in jeopardy.
The Supreme Court has generally taken the position that, where feasible, the answer to Bad Speech is More Speech. That is, if the injured party has rebuttal time, the public stage can play out the debate. (The Supreme Court has yet to hear a definitive case in which someone's right to respond is simply drowned in an infinite capacity of one side to outflame the other, but no doubt it will ultimately happen.) Grabbing too many "obvious" domain names, while it doesn't keep the targeted person from responding, does hide the targeted person's response, and seems to me even to edge toward fraud.
-
Re:Any members of ACM or IEEE Computer Soc?No.
Fortunately, I do get access to some journals through my university library's subscriptions. Unfortunately, those subscriptions are not the ones I need. Since the ACM requires that all submitters give up the copyright to their papers in exchange for $0.0, I don't have any choice but to pay their extortionary rates for back-issues (even though 99% of the authors I'm interested in give away their other papers for free on the Internet anyway). I could see the ACM having some value 20 years ago, when electronic distribution and archiving was not a reality, but today there really is no need for this commercial "scientific" society, since the aforementioned publishing is the only benefit it provides to researchers. As for conferences and SIGs, there are cheaper, better and more open ways to do them.
-
ACM considered harmful.
You 3l33t H4x0rz are ACM members, R1gh4?
WTF is this supposed to mean? Are you endorsing the ACM? You do realize the ACM is basically one big (and with the web and open document publishing standards, totally unnecessary, like many other commercial "scientific" journals) scam of an organization? -
Re:Quantum Language
I hold the best computer languages for actually programming the computer will still be analytic, logical languages.
I guess this is the fundamental point on which we just have to agree to disagree. I think that analysis and logic are critical operations, but I hope to find that the computer languages of the future will cease to be pedantic about the specific mode of expression, perhaps building in a sense of redundancy of expression so that no matter what language you express the idea in, it ends up with effectively the same internal representation.
One of the biggest differences right now about how computers do things and how people do things is that computers do not "degrade gracefully" when you go outside the ordinary way they expect to receive things. They tend to "fail catastrophically" on the least little deviation from the expected. In a hundred years, I hope they learn to be more laid back about what doesn't really matter (the manner of expression) and to focus more on what really does matter (the goal of the expression).
It might be that they will fail at the goal for the first few revs. But if we don't at least deploy them with the intent of trying, we won't get there.
Sometimes the path toward the future is a crooked one. For a further illustration of this phenomenon, search for (and read) 'A Personal Footnote' at the end of my 2001 paper on error handling in Lisp. -
Re:What say you "just hit delete" crowd?
Citing "Freedom of speach", the first ammendment, etc, there still seems to be an ignorant crowd that thinks that we shouldn't have any legal means to curb spam. [...]
I think the reason for this is that the US Founding Fathers blew it when they talked about freedom of speech in the First Amendment. Speech is communication between speaker and listener, and in case of a dispute, this appears to say that the speaker gets the tie broken in their favor.
I think of it a different way--as the freedom to hear [pointer to my personal web site where I expand on this in more detail]. That gives the final say on appropriateness back to the listener, where it belongs. When you view it in that mode, it's easy to see that spam has nothing to do with free speech.
Free speech is just a way of guaranteeing that we in a democracy have access to a free flow of ideas. It isn't supposed to be a way of forcing us to endure a free flow of anything. That's not freedom, it's slavery.