Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×

Comment Re:Performance .... anyone? (Score 0) 418

The results are usually either trivial or dangerous.

To pick two examples. Perl has had a map for many years which is just syntactic sugar for the foreach construct. On the dangerous side we have the new optional monad (Java's name for the Maybe Monad). You can use it trivially like this

Optional person = personMap.get("Name");
if (person.isPresent()) {
    Optional address = person.getAddress();
    if (address.isPresent()) {
        Optiona city = address.getCity();
        if (city.isPresent()) {
            process(city)
        }
    }
}

On the other hand if you try and use it the way Maybe/Optional is really intended things blow up badly. The API aren't retrofitted to lift into the monad the way they should. So code will execute in sequence unless you catch exception in which case you are back to explicit exception catching. The primitives don't lift (there isn't optional int, optional char...), so methods don't lift smoothly ...

Essentially the less purity the less you can pull across non trivially. You can mix in some impurities (LISP) if you assume developers are very aware of theory.

So what ends up coming across are some nifty syntax from functional languages and a few minor features.

Comment Re:Scala (Score 0) 418

Haskell has a for loop. The thing is that there are really 2 types of for:

1) Go through an array and do something to each element (map)
2) Do a sequence of actions. for :: (Traversable t, Applicative f) => t a -> (a -> f b) -> f (t b) is just traverse with arguments flipped

Comment Its fantastic for principles (Score 0) 418

The functional languages are often about 2 decades ahead of the imperative languages in terms of features and ideas. Truly powerful type systems, purity, laziness, infinite data structures. They really do change the way you think about design. Engines (controllers for MVC) are excellent in those languages. They are also very good for protyping non-vonNeumann architectures (like Hadoop code) unlike the Algol based languages.

They have their own problems like a tendency for slightly less than optimal algorithms to be quadratic in memory.

Comment Re:I see this as a good thing (Score 0) 389

For almost 30 years we have had chess computers competitive with the best human players in the world. None of them understands they are playing chess. None of them understands why they are doing what they are doing.

Many of the systems that large number of human lives already depend on require machines to make correct choices. Including your car which at this point has dozens of systems none of which "understands what is doing and why" that are making adjustments to the instructions you are sending via. the wheel and the pedal based on information you aren't getting like road traction.

Comment Re:MapReduce is great (Score 0) 150

I'd say its really this.

You have a business problem which is completely unrealistic to solve via. vertical scaling on SQL Things in the range of 50-200k CPU hours Hadoop is good for. SQL solutions are pretty dreadful at 1000 CPU hours type workloads. BTW petabytes and exabytes. SQL is pretty good for terabytes.

Comment Re:People don't care because ipv4 works for them (Score 0) 56

The internet won't be ipv6 only it will be ipv6 primarily. I think it would be very very fast. Consider the basic home user getting a /60, that is 16 home subnets each larger than today's internet to allocate addresses from. Devices themselves can default to an address (their subnet + mac), random or the home user (including things like the home router) can provision them out manually.

devices with an Ipv4 dynamic address using NAT would still exist but the permanent address comes almost immediately after the ISP makes ipv6 available to the home.

Comment Re:Who's Responsibility? (Score 1) 246

Sure. If the USA decides a particular corporate activity is in the national interest then the CIA can freely back it. We had a lot more crony capitalism 1930s-1970s and it showed across all areas of government, including the first 3 decades of the CIA. My point is that this is not a blanket guarantee. They can also act against corporate interests freely when they deem it appropriate.

Comment Re:Pray I don't change it again (Score 0) 149

The reason to develop for them is that Apple has a huge share of the 400m consumers who spend the most on applications.

As an aside, vertical applications don't have this problem. They aren't easy to clone as the developer often has to have business partnership relations with desktop / server / SaaS companies. You often don't have to give up a percentage as the app is included (free).

Slashdot Top Deals

Successful and fortunate crime is called virtue. - Seneca

Working...