Question: After being a MATLAB user for many years, I am now migrating to python.

I try to find a concise manner to simply rewrite the following MATLAB code in python:

```
s = sum(Mtx);
newMtx = Mtx(:, s>0);

```

where Mtx is a 2D sparse matrix

My python solution is:

```
s = Mtx.sum(0)
newMtx = Mtx[:, np.where((s>0).flat)[0]] # taking the columns with nonzero indices

```

where Mtx is a 2D CSC sparse matrix

The python code is not as readable / elegant as in matlab.. any idea how to write it more elegantly?

Thanks!

Answer: 
There are no strong typedefs in C++11. There is support for units with `<chrono>` but that is a totally different thing. Nobody can agree on what behaviour strong typedefs should have, exactly, so there has never been a proposal for them that got anywhere, so not only are they in neither C++11 nor C++14, there is no realistic prospect at this time that they will get into any future Standard.
C++ compilers generally expect the command line option `-std=c++11` (or `-std=c++0x` for slightly older ones, respectively) to activate C++11-support.

> 
> not supporting C++11 style at all.
> 
> 
> 

No, it perfectly does. GCC 4.7.2's support can be [checked here](https://gcc.gnu.org/gcc-4.7/cxx0x_status.html). To activate some experimental features, pass `-std=gnu++11`.

And Clang 3.4 actually supports pretty much everything [in C++11 and already much out of C++1y](http://clang.llvm.org/cxx_status.html).