Changes between Version 4 and Version 5 of doc/dev/beginners


Ignore:
Timestamp:
Mar 5, 2015, 11:23:54 AM (7 years ago)
Author:
sam
Comment:

move matrix inversion to finished tasks and add some new ones

Legend:

Unmodified
Added
Removed
Modified
  • doc/dev/beginners

    v4 v5  
    7070Make sure it works for **all `vec_t<N,T>`** types, not just `vec3` or `vec4`.
    7171
    72 == Task: matrix inversion that doesn’t suck ==
     72== Task: degree 3 polynomial roots ==
     73
     74**Difficulty: 3/5** (some maths required)
     75
     76The `polynomial` class in [browser:trunk/src/lol/math/polynomial.h] has a `roots()` method that returns the polynomial roots for degrees ≤ 2.
     77
     78I’d like to have an implementation for degree 3 polynomials.
     79
     80Make sure to write **unit tests** for this code!
     81
     82== Task: switch to C++11 threads ==
     83
     84**Difficulty: 3/5**
     85
     86C++11 provides [http://en.cppreference.com/w/cpp/thread/thread threads] and [http://en.cppreference.com/w/cpp/thread/mutex mutexes].
     87
     88 * Replace the platform-dependent code in [browser:trunk/src/sys/thread.cpp] and [browser:trunk/src/sys/threadbase.h] with portable C++11 code.
     89 * Once it no longer depends on platform-specific code, remove [browser:trunk/src/sys/threadbase.h] and merge its contents into [browser:trunk/src/lol/sys/thread.h].
     90
     91== Task: switch to C++11 timers ==
     92
     93**Difficulty: 3/5**
     94
     95C++11 provides a [http://en.cppreference.com/w/cpp/chrono/high_resolution_clock high resolution clock type]. Replace the platform-dependent code in [browser:trunk/src/sys/timer.cpp] with portable code from `std::chrono`.
     96
     97= Finished tasks =
     98
     99== Task: matrix inversion that doesn’t suck (DONE 2015/03/04 by guite) ==
    73100
    74101**Difficulty: 3/5** (some maths required)