I'm more interested in optimizing how complete and high quality the result is, in a surprisingly short program than in meeting some context metric for program size.
My actual interest is the intuition that there are shockingly powerful methods hidden in more expressive programming languages with more exotic features.
Well I said "best" short programs. I suspect that that tiny program isn't "good", ie plays a crumby game.
Prolog is very good at encoding rules very succinctly and does depth first searches automatically (it's a bit harder to get more advanced search strategies, but it can be done.) Scheme has continuations so one could probably encode more kinds of search more succinctly than even prolog. Haskell has normal order lazy evaluation, so it's succinct to separate search strategies from state generation, though it might be hard to keep it from memoizing too much and running out of memory (I don't really have experience in Haskell).
wrong. Windows 10 will not be a subscription. Upgrading will be free for the first year and if you upgrade, that's for life. After the first year the regular upgrade fees will be charged any new customers who decide to upgrade.
My impression is that Java is GOOD ENOUGH that people use it for this, when other systems won't do. Yes, you can always program in assembly and OS driver levels and extreme stuff for best possible.
Also what I mean by "You can mess with objects in globally visible variables from multiple threads perfectly safely in Java." is from the point of view of the garbage collector.
For instance, in C++11, even with safe pointers you can can't safely modify a pointer from more than one thread, reachable objects can be collected - THAT kind of unsafe. And despite all of the "don't do that sort of dangerous thing" hysteria that goes around, the fact is that highly optimized multiprocessor algorithms have to do "unsafe things" under the covers.
No one has come up with a library that lets you do that sort of thing in C++11.
If D had garbage collectors as advanced and scalable as Java then it would be appropriate for even the largest projects.
It doesn't.
No one (except maybe.net) has caught up with Java on having a scalable garbage collector. Java's isn't perfect, but it's tunable too.
Similarly, java makes multithreaded/multiprocessor programming much safer than almost anything else. You can mess with objects in globally visible variables from multiple threads perfectly safely in Java. With or without garbage collection, that's very hard to do from C++11, I have no idea about D here...
So until other projects catch up on these sorts of basics people will stick to the engines that do the basics well. Having a great language is convenient, but it's not as important as having one with the needed capabilities.
Ironically, the claim that it is possible to detect lies has always been a con. Polygraph detectors are made by con artists.
They can detect nervousness, nothing more. And of course if you lie to people that you can detect lies, that will make it a self fulfilling prophesy to the less intelligent.
Of course a normal level of neurosis and intelligence will make you nervous when they as you an incriminating question. But since when did authorities care what happens to intelligent people rather than to gullible employees or controllable masses?
I've always disagreed with most of the premises behind facebook.
I would use a service that: 1. Didn't share any of my data with anyone 2. Didn't try to make my comments on other sites visible 3. Didn't try to mix my family with my friends or my work or assume that I have only one set of friends. 4. Didn't make me read every inane utterance of everyone I've ever come in contact with 5. Didn't try to sell me anything 6. Didn't try to sell me social games, I need social games like I need a long term illness
Also I'd be willing to pay for a service if that meant no f'n adds.
Yes, as far as I know, Android devices never have virtual memory turned on (you don't want to wear out the flash memory on-board, because when it's worn out the device is bricked).
So when you're low on memory, Android starts killing processes pretty much at random.
On SOME Android devices you can turn on swapping if you root, but on others it's disabled in the kernel.
Arm v8 is coming out, and it has a much more sophisticated memory model than any previous chip (it is basically the first chip to clone the c++11 memory model exactly). I expect that means that arm will go from making cooperation between cores less efficient than intel to more efficient than intel.
Since it's an open sourced project, the only ways they could maintain a back door would be: 1) find a pre-existing flaw, and either hope it isn't fixed or threaten each developer to keep them from fixing or mentioning that flaw.. Perhaps they could monitor the developers and catch them as soon as they talk about a flaw privately 2) threaten a developer and REQUIRE him to add a flaw and not reveal that he's doing it.
1) is a harder case, but it can partially be prevented by making all communication through a public forum. 2) could be prevented by treating every change to the code as a possible attack and reviewing it publicly by multiple people... But even then it could be let through by the government getting to everyone involved first. Danger could be detected by people dropping out of the project or changes not being reviewed publicly anymore.
Well, no it wasn't pie utopia. But back in the day the left wasn't welcoming antisemites - that was a right wing thing. But no more, now, in the US, we're seeing antisemites everywhere in the left. It used to be that the only Democrat racists were southern Dixiecrats.
Uhm, tracing from the camera IS how ray tracing works.
No cookie for whoever gave the bozo above me "insightful".
Casting from the light source forward (photon tracing) is too expensive and is rarely done, though it does give you more accurate effects - caustics, colored bleeding from reflected illumination etc.
Some of that can be approximated more cheaply with radiosity algorithms.
I think it's listening to people laugh about the Darwin Awards that I find so depressing. Ok, there are stupid people in the world and they sometimes cause tragedies. I accept that.
But that I'm surrounded by insensitive assholes who laugh at their deaths bothers me.
I'm more interested in optimizing how complete and high quality the result is, in a surprisingly short program than in meeting some context metric for program size.
My actual interest is the intuition that there are shockingly powerful methods hidden in more expressive programming languages with more exotic features.
Well I said "best" short programs. I suspect that that tiny program isn't "good", ie plays a crumby game.
Prolog is very good at encoding rules very succinctly and does depth first searches automatically (it's a bit harder to get more advanced search strategies, but it can be done.) Scheme has continuations so one could probably encode more kinds of search more succinctly than even prolog. Haskell has normal order lazy evaluation, so it's succinct to separate search strategies from state generation, though it might be hard to keep it from memoizing too much and running out of memory (I don't really have experience in Haskell).
Also lua which is actually pretty close to self in power. Or smalltalk.
It would be cool to see which programming languages could have the best short chess programs.
I'd nominate Haskell, scheme and prolog to try it in.
for someone with a psychiatric problem? Less if they take more than one a day?
That isn't even slightly suspicious. I had a prescription for 30 of them to take one per evening.
wrong. Windows 10 will not be a subscription. Upgrading will be free for the first year and if you upgrade, that's for life. After the first year the regular upgrade fees will be charged any new customers who decide to upgrade.
Will Slashdot correct this article or delete it?
but I hate mice.
And by Java I mean the JVM not java itself.
My impression is that Java is GOOD ENOUGH that people use it for this, when other systems won't do. Yes, you can always program in assembly and OS driver levels and extreme stuff for best possible.
Also what I mean by "You can mess with objects in globally visible variables from multiple threads perfectly safely in Java." is from the point of view of the garbage collector.
For instance, in C++11, even with safe pointers you can can't safely modify a pointer from more than one thread, reachable objects can be collected - THAT kind of unsafe. And despite all of the "don't do that sort of dangerous thing" hysteria that goes around, the fact is that highly optimized multiprocessor algorithms have to do "unsafe things" under the covers.
No one has come up with a library that lets you do that sort of thing in C++11.
If D had garbage collectors as advanced and scalable as Java then it would be appropriate for even the largest projects.
It doesn't.
No one (except maybe .net) has caught up with Java on having a scalable garbage collector. Java's isn't perfect, but it's tunable too.
Similarly, java makes multithreaded/multiprocessor programming much safer than almost anything else. You can mess with objects in globally visible variables from multiple threads perfectly safely in Java. With or without garbage collection, that's very hard to do from C++11, I have no idea about D here...
So until other projects catch up on these sorts of basics people will stick to the engines that do the basics well. Having a great language is convenient, but it's not as important as having one with the needed capabilities.
Ironically, the claim that it is possible to detect lies has always been a con. Polygraph detectors are made by con artists.
They can detect nervousness, nothing more. And of course if you lie to people that you can detect lies, that will make it a self fulfilling prophesy to the less intelligent.
Of course a normal level of neurosis and intelligence will make you nervous when they as you an incriminating question. But since when did authorities care what happens to intelligent people rather than to gullible employees or controllable masses?
I've always disagreed with most of the premises behind facebook.
I would use a service that:
1. Didn't share any of my data with anyone
2. Didn't try to make my comments on other sites visible
3. Didn't try to mix my family with my friends or my work or assume that I have only one set of friends.
4. Didn't make me read every inane utterance of everyone I've ever come in contact with
5. Didn't try to sell me anything
6. Didn't try to sell me social games, I need social games like I need a long term illness
Also I'd be willing to pay for a service if that meant no f'n adds.
Whatever else you say, you have to face that this is what Eric Holder and Barack Obama's justice department is up to.
Yes, as far as I know, Android devices never have virtual memory turned on (you don't want to wear out the flash memory on-board, because when it's worn out the device is bricked).
So when you're low on memory, Android starts killing processes pretty much at random.
On SOME Android devices you can turn on swapping if you root, but on others it's disabled in the kernel.
Arm v8 is coming out, and it has a much more sophisticated memory model than any previous chip (it is basically the first chip to clone the c++11 memory model exactly). I expect that means that arm will go from making cooperation between cores less efficient than intel to more efficient than intel.
Since it's an open sourced project, the only ways they could maintain a back door would be:
1) find a pre-existing flaw, and either hope it isn't fixed or threaten each developer to keep them from fixing or mentioning that flaw.. Perhaps they could monitor the developers and catch them as soon as they talk about a flaw privately
2) threaten a developer and REQUIRE him to add a flaw and not reveal that he's doing it.
1) is a harder case, but it can partially be prevented by making all communication through a public forum. 2) could be prevented by treating every change to the code as a possible attack and reviewing it publicly by multiple people... But even then it could be let through by the government getting to everyone involved first. Danger could be detected by people dropping out of the project or changes not being reviewed publicly anymore.
Well, no it wasn't pie utopia. But back in the day the left wasn't welcoming antisemites - that was a right wing thing. But no more, now, in the US, we're seeing antisemites everywhere in the left. It used to be that the only Democrat racists were southern Dixiecrats.
I remember when /. wasn't full of racism.
But then I can remember when the Democrats weren't antisemites.
with the tagging system?
It's 'merican!
Damn furiners.
Uhm, tracing from the camera IS how ray tracing works.
No cookie for whoever gave the bozo above me "insightful".
Casting from the light source forward (photon tracing) is too expensive and is rarely done, though it does give you more accurate effects - caustics, colored bleeding from reflected illumination etc.
Some of that can be approximated more cheaply with radiosity algorithms.
I agree.
I think it's listening to people laugh about the Darwin Awards that I find so depressing. Ok, there are stupid people in the world and they sometimes cause tragedies. I accept that.
But that I'm surrounded by insensitive assholes who laugh at their deaths bothers me.
yes.
Oh come on, schoolmarm, this is exactly the sort of thing Slashdotters are interested in!