acm-header
Sign In

Communications of the ACM

Blogroll


bg-corner

Science and Technology links (March 10, 2017)
From Daniel Lemire's Blog

Science and Technology links (March 10, 2017)

In Mnemonic Training Reshapes Brain Networks to Support Superior Memory (published in Neuron, March 2017), we learned that 6 weeks of mnemonic training at a rate...

College and inequality
From Daniel Lemire's Blog

College and inequality

Most college professors are squarely on the left ideologically. They believe that part of their mandate is to reduce inequality, by helping to provide college degrees...

The technology of Logan (2017 Wolverine movie set in 2029)
From Daniel Lemire's Blog

The technology of Logan (2017 Wolverine movie set in 2029)

Last night I went to see Logan, the latest and maybe the last Wolverine movie with Hugh Jackman. The movie is set in 2029. The year 2029 is an interesting choice...

How many floating-point numbers are in the interval [0,1]?
From Daniel Lemire's Blog

How many floating-point numbers are in the interval [0,1]?

Most commodity processors support single-precision IEEE 754 floating-point numbers. Though they are ubiquitous, they are often misunderstood. One of my readersContinue...

Tech jobs are already largely automated
From Daniel Lemire's Blog

Tech jobs are already largely automated

Lately, I have been reading a lot about the threat to computer jobs from automation. For example, we have AI systems that can write their own code. And billionaire...

Thoughts on my new laptop (Dell XPS 13 with Windows 10)
From Daniel Lemire's Blog

Thoughts on my new laptop (Dell XPS 13 with Windows 10)

I love computers. Unlike many people, who stick to one brand and one operating system, I like to use many different systems. I own several game consoles, several...

How fast can you count lines?
From Daniel Lemire's Blog

How fast can you count lines?

Inspired by earlier work by Llogiq, I decided to look at how fast I could count the number of lines in a string. By assuming that the string relies on ASCII, UTF...

Sorting sorted arrays in Swift
From Daniel Lemire's Blog

Sorting sorted arrays in Swift

Sorting arrays quickly is a classical computer science problem. It is also a common task worth optimizing. Sadly, there is no best approach, no silver bullet. Most...

Montreal researchers “prove” that aging is the result of a genetic program
From Daniel Lemire's Blog

Montreal researchers “prove” that aging is the result of a genetic program

Unless you are a tree, a lobster, or some other sea creature, you are probably aging over time… which is another way of saying that beyond adulthood, your fitness...

Maps and sets can have quadratic-time performance
From Daniel Lemire's Blog

Maps and sets can have quadratic-time performance

Swift is a new programming language launched by Apple slightly over two years ago. Like C and C++, it offers ahead-of-time compilation to native code but with many...

How expensive are the union and intersection of two unordered_set in C++?
From Daniel Lemire's Blog

How expensive are the union and intersection of two unordered_set in C++?

If you are using a modern C++ (C++11 or better), you have access to set data structures (unordered_set) which have the characteristics of a hash set. The standard...

Deep learning: the silver bullet?
From Daniel Lemire's Blog

Deep learning: the silver bullet?

In 2016, we saw a wide range of breakthroughs having to do with artificial intelligence and deep learning in particular. Google, Facebook, and Baidu announced several...

Resizing arrays can be slow in Swift
From Daniel Lemire's Blog

Resizing arrays can be slow in Swift

Swift a recent high-performance programming language. It is still primarily used develop iOS applications, but it has the potential to be a general-purpose language...

How quickly can you remove spaces from a string?
From Daniel Lemire's Blog

How quickly can you remove spaces from a string?

Sometimes programmers want to prune out characters from a string of characters. For example, maybe you want to remove all line-ending characters from a piece of...

Best programming language for high performance (January 2017)?
From Daniel Lemire's Blog

Best programming language for high performance (January 2017)?

I keep hoping that the field of programming language will evolve. I am a bit tired to program in Java and C… I’d like better languages. I am particularly interested...

Predicting the future job market: the librarians
From Daniel Lemire's Blog

Predicting the future job market: the librarians

People spend a lot of time worrying that robots and computers are going to wipe out all jobs. My belief is that the job market is a lot more complex and simplistic...

Betting against techno-unemployment
From Daniel Lemire's Blog

Betting against techno-unemployment

There are millions of truck drivers in the US today. In particular, there are about 1.7 million tractor-trailer (human) drivers. There are many more professional...

Can your C compiler vectorize a scalar product?
From Daniel Lemire's Blog

Can your C compiler vectorize a scalar product?

If you have spent any time at all on college-level mathematics, you have probably heard of the scalar product: float scalarproduct(float * array1, float * array2...

The threat of technological unemployment
From Daniel Lemire's Blog

The threat of technological unemployment

There is a widely reported threat to our economy: robots are going to replace human workers. It is nothing new… In 1930, Keynes, the famous economist introduced...

Don’t let the experts define science!
From Daniel Lemire's Blog

Don’t let the experts define science!

We know more than we can tell. We all know what a democracy is… We know that France, Canada, the USA, Japan… are democracies… Russia and China are not democracies...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account