Editing User:Dspies
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 30: | Line 30: | ||
'''C++'''<br /> | '''C++'''<br /> | ||
I've programmed somewhat on and off in C++, but I've never worked on a project with a group or intended for public consumption. A couple years ago I wrote a Quadratic Number Field Sieve using gmp and that was the first significant piece of code I wrote in C++. A couple months ago I wrote a preprocessor for grounded Answer Set Programs that does something analogous to forward-checking to infer binary constraints. During this project I read "Effective C++" and some of "C++ Templates: The Complete Guide". I did extensive online browsing to understand C++-11 rvalue references and perfect forwarding (although I realize Octave doesn't use C++-11 so those won't be available). I also posted a lot of questions on Stack Overflow.<br /> | I've programmed somewhat on and off in C++, but I've never worked on a project with a group or intended for public consumption. A couple years ago I wrote a Quadratic Number Field Sieve using gmp and that was the first significant piece of code I wrote in C++. A couple months ago I wrote a preprocessor for grounded Answer Set Programs that does something analogous to forward-checking to infer binary constraints. During this project I read "Effective C++" and some of "C++ Templates: The Complete Guide". I did extensive online browsing to understand C++-11 rvalue references and perfect forwarding (although I realize Octave doesn't use C++-11 so those won't be available). I also posted a lot of questions on Stack Overflow.<br /> | ||
'''Octave m-scripts'''<br /> | '''Octave m-scripts'''<br /> | ||
I use Octave a lot for minor tasks that come up in research. It's a wonderful tool and I love coming up with sneaky ways to vectorize bits of code. Sometimes I go on StackOverflow to look for "how do you vectorize x" questions just so I can answer them. Most of them are for Matlab though. I don't know why Octave isn't a more popular alternative.<br /> | I use Octave a lot for minor tasks that come up in research. It's a wonderful tool and I love coming up with sneaky ways to vectorize bits of code. Sometimes I go on StackOverflow to look for "how do you vectorize x" questions just so I can answer them. Most of them are for Matlab though. I don't know why Octave isn't a more popular alternative.<br /> | ||
Line 133: | Line 131: | ||
This fails with an OOM because it wasn't considered when writing max <br /> | This fails with an OOM because it wasn't considered when writing max <br /> | ||
This sort of aggregate function (over the rows) can be done in O(min(h+nnz, nnz*log(w))) time, but one would have to implement the algorithm for each of the above-mentioned 7 functions. By consolidating these into one templated function, it'll make it worth the effort to implement.</p> | This sort of aggregate function (over the rows) can be done in O(min(h+nnz, nnz*log(w))) time, but one would have to implement the algorithm for each of the above-mentioned 7 functions. By consolidating these into one templated function, it'll make it worth the effort to implement.</p> | ||
* | * The changes I made in https://savannah.gnu.org/patch/?8417 need to be added and need to be modified to accomodate diagonal matrices as well. The fact that the original implementer of find neglected to handle diagonal matrices should be evidence enough that the ad-hoc approach doesn't work. |