Commit Graph

  • 7c6d9dd5bc Iterable: add the for_each method Louis Dionne 2014-07-07 15:45:31 -0400
  • 0db5c33548 Add laws for Comparable. Louis Dionne 2014-07-07 13:56:51 -0400
  • 8db3203da7 Do not include ext/ in the master header. Louis Dionne 2014-07-07 12:35:54 -0400
  • 5a2de2073e Reorganize and rename the adapted/ folder. Louis Dionne 2014-07-07 12:29:30 -0400
  • 2d6bc3cd79 Rename benchmarks/ to benchmark/ for consistency. Louis Dionne 2014-07-07 12:05:38 -0400
  • 9bcf7a8f01 Sandbox: explore strong data types. Louis Dionne 2014-07-07 11:34:23 -0400
  • fceb51c611 Refactor top level Makefile. Louis Dionne 2014-07-07 10:37:43 -0400
  • 1fe25423ad Re-add some foldl and fmap benchmarks. Louis Dionne 2014-07-07 10:23:28 -0400
  • 7cb6678d7a Adapt mpl::vector. Louis Dionne 2014-07-07 10:20:13 -0400
  • 55a4964434 Adapt mpl::list. Louis Dionne 2014-07-06 17:22:31 -0400
  • 39feede062 Remove -ftemplate-backtrace-limit=0; too large error messages. Louis Dionne 2014-07-06 15:35:11 -0400
  • 9f94924134 Plug the benchmarks with CMake. Louis Dionne 2014-07-06 14:59:59 -0400
  • b89821bed4 Sandbox: Add a Lazy datatype which is a Monad. Louis Dionne 2014-07-02 15:43:32 -0400
  • ad60989660 Sandbox: add a basic Set data structure Louis Dionne 2014-07-02 13:41:22 -0400
  • ffbbfc3528 Sandbox: rename Map to HashMap and create a naive Map Louis Dionne 2014-07-02 12:50:11 -0400
  • f0e8c210ab Sandbox: add thoughts about MonadZero, Pattern and Boolean Louis Dionne 2014-07-02 11:50:34 -0400
  • 5efa23003f Rename join to flatten. Louis Dionne 2014-07-01 22:04:56 -0400
  • faf609157a Remove circular dependencies. Louis Dionne 2014-07-01 20:06:54 -0400
  • ddc0587689 Iterable: remove comparison between arbitrary Iterables Louis Dionne 2014-07-01 18:01:42 -0400
  • 70a6c913b7 Type: refactor the interface Louis Dionne 2014-07-01 17:32:32 -0400
  • 39c9b1b8e2 Add the bool.hpp header. Louis Dionne 2014-07-01 16:45:12 -0400
  • a2ec0ee117 Core: improve instantiates's implementation and decapitalize Core module Louis Dionne 2014-07-01 16:22:01 -0400
  • ae8c12ce17 Remove useless include. Louis Dionne 2014-07-01 10:57:57 -0400
  • 96a2bb0a7f Core: allow instances to be explicitly disabled Louis Dionne 2014-07-01 10:51:42 -0400
  • 2ad7b11509 Sandbox: prototype for finer-grained operator ADL-enabling Louis Dionne 2014-06-30 18:08:51 -0400
  • 6a984f3d52 Integral: Remove redundant operators Louis Dionne 2014-06-30 15:47:09 -0400
  • a98850aea3 Sandbox: Remove obsolete Comparable experiments. Louis Dionne 2014-06-30 15:46:17 -0400
  • b845aa71b8 Orderable: add a default instance Louis Dionne 2014-06-30 15:06:29 -0400
  • fb0f102c11 StdArray: use equal instead of == in tests Louis Dionne 2014-06-30 15:04:06 -0400
  • 13ba57bd86 Logical: remove obsolete workaround Louis Dionne 2014-06-30 15:03:01 -0400
  • 6c1eb8b1f8 Explicitly convert Integrals to their underlying type in constexpr contexts. Louis Dionne 2014-06-30 15:02:06 -0400
  • 85877825f8 Replace defaults for Comparable by a smarter predicated instance. Louis Dionne 2014-06-30 14:22:42 -0400
  • 2f73b6b620 Sandbox: think about ways to provide defaults for Comparable Louis Dionne 2014-06-30 12:41:09 -0400
  • af30809dbd Use code instead of Latex in Comparable laws. Louis Dionne 2014-06-30 10:38:21 -0400
  • 1ab0174907 Use named operators consistently. Louis Dionne 2014-06-30 10:17:22 -0400
  • c255a2f418 Integral: instantiate Orderable Louis Dionne 2014-06-29 15:57:33 -0400
  • f2a063f4a1 Type: remove lambdas to workaround clang bugs. Louis Dionne 2014-06-29 15:26:51 -0400
  • f6d12dcbce Add note about unit testing List instances. Louis Dionne 2014-06-26 15:42:23 -0400
  • 8fcad90c09 Add the Orderable type class. Louis Dionne 2014-06-26 15:17:09 -0400
  • fb75a6da25 Fix TODO in example/core/typeclass Louis Dionne 2014-06-26 13:48:28 -0400
  • 1cc9387998 Add detail::wrap. Louis Dionne 2014-06-26 12:51:26 -0400
  • de4864134e StdArray: instantiate List Louis Dionne 2014-06-26 12:34:37 -0400
  • 9ce785234c List: instantiate Comparable Louis Dionne 2014-06-26 12:15:34 -0400
  • 71be3a9949 Remove the foldable_from_iterable horror. Louis Dionne 2014-06-26 11:40:55 -0400
  • 7fb0ea1226 Move integral bug-related unit tests to their subdirectory. Louis Dionne 2014-06-26 11:29:04 -0400
  • d5e215d672 Documentation: refactor and regenerate Louis Dionne 2014-06-26 11:23:00 -0400
  • 44aa641599 List: remove list_t and list_c Louis Dionne 2014-06-26 10:38:42 -0400
  • 08de7a9e27 Promote List to a type class. Louis Dionne 2014-06-26 01:29:05 -0400
  • 541ad8b341 Maybe: instantiate Foldable Louis Dionne 2014-06-26 01:07:54 -0400
  • 379f30d981 Core: fix problems with typeclass specialization Louis Dionne 2014-06-25 23:55:29 -0400
  • 65796aeb6e CMake: Automatically discover unit tests and examples. Louis Dionne 2014-06-25 23:35:56 -0400
  • 52eead977e Adapt std::pair and instantiate Pair with it. Louis Dionne 2014-06-24 21:33:08 -0400
  • 16d4ea0930 Add the Pair type class and data type. Louis Dionne 2014-06-24 21:28:20 -0400
  • 229b3422eb sandbox: add tuple experiment Louis Dionne 2014-06-24 17:15:03 -0400
  • 1a41064f04 Functor: add fill Louis Dionne 2014-06-24 13:38:54 -0400
  • d4b1089d1c Explicit cast Range to List in example Louis Dionne 2014-06-23 17:18:12 -0400
  • 5fbdf86311 Iterable: use eval_if instead of if_ in ComparableInstance Louis Dionne 2014-06-23 17:02:39 -0400
  • ea37adf66b Core: rethink type classes Louis Dionne 2014-06-23 15:37:29 -0400
  • 99748a3566 Functor: fix typos Louis Dionne 2014-06-22 13:17:35 -0400
  • 5ba2f9abb9 Applicative: rename unit to lift Louis Dionne 2014-06-22 10:51:53 -0400
  • 159dbaecf6 Type: improve support for different metafunctions and rename lift Louis Dionne 2014-06-22 10:31:10 -0400
  • 70f0e86fa7 Add missing Applicative include to master header. Louis Dionne 2014-06-22 01:16:10 -0400
  • fa98685327 Move unit from Monad to Applicative and remove pure. Louis Dionne 2014-06-21 19:27:26 -0400
  • 7440fd0c5e Applicative: add Maybe and StdTuple instances Louis Dionne 2014-06-21 18:56:33 -0400
  • 585c0b8e76 Add the Applicative type class. Louis Dionne 2014-06-21 18:16:56 -0400
  • 09fc489963 sandbox: add an implementation of repeat Louis Dionne 2014-06-21 15:10:06 -0400
  • 9a140f885a Use elem instead of ad-hoc lambda in permutations test. Louis Dionne 2014-06-21 14:22:46 -0400
  • dfed9d39e7 Type: add lift and remove trait.hpp header Louis Dionne 2014-06-21 14:08:34 -0400
  • 86a2c7e888 sandbox: remove obsolete dispatch experiment Louis Dionne 2014-06-21 12:41:22 -0400
  • 7b7bbd2290 Logical: add not_ Louis Dionne 2014-06-21 12:30:14 -0400
  • 13e3bf02f6 Core: fix bug with datatype and inheritance Louis Dionne 2014-06-21 11:28:15 -0400
  • 56f74519fe Functor: add replace and adjust Louis Dionne 2014-06-20 22:54:46 -0400
  • 0a09ddaa97 Foldable: add the elem method Louis Dionne 2014-06-20 21:35:58 -0400
  • 2c1bb3a607 sandbox: add a naive and incomplete map implementation Louis Dionne 2014-06-20 20:53:06 -0400
  • 3c31001786 Range: remove impossible todo item Louis Dionne 2014-06-20 16:55:57 -0400
  • 2a784b2a78 Core: make sure instantiates works with complimentary type classes Louis Dionne 2014-06-20 15:04:39 -0400
  • 3f8198601c Adapt std::list. Louis Dionne 2014-06-20 15:02:34 -0400
  • 92d28ac0b0 Adapted: Fix include guards Louis Dionne 2014-06-20 14:30:02 -0400
  • 09b2fff78e Make StdTuple a Monad. Louis Dionne 2014-06-19 16:13:18 -0400
  • 56a8a50de2 sandbox: add lazy Louis Dionne 2014-06-19 15:33:00 -0400
  • c8ef9d4d47 Core: do not include type_traits Louis Dionne 2014-06-19 12:34:07 -0400
  • c7a7aa4c89 Core: add is_a and instantiates Louis Dionne 2014-06-19 12:19:51 -0400
  • 6cfe3ac1b9 Functional: add function call and array subscript to placeholders Louis Dionne 2014-06-19 11:56:24 -0400
  • fa005d87e6 sandbox: add matrix multiplication and determinant Louis Dionne 2014-06-18 23:38:10 -0400
  • 7e32f59837 core: Add conversion between data types Louis Dionne 2014-06-18 20:23:53 -0400
  • bac18cf909 README: document why we don't have forward declaration headers Louis Dionne 2014-06-18 16:57:24 -0400
  • fd96f88f0d Remove obsolete Doxygen aliases Louis Dionne 2014-06-18 16:49:48 -0400
  • 9e06246a67 Comparable: add unit tests for the mcds Louis Dionne 2014-06-18 16:48:42 -0400
  • 848ee2a978 Maybe: minor refactoring Louis Dionne 2014-06-18 16:35:55 -0400
  • d6dbd5aa37 Core: slightly improve the performance of datatype<> Louis Dionne 2014-06-18 16:28:02 -0400
  • 4043adb494 Core: document and don't require core.hpp for instance and defaults Louis Dionne 2014-06-18 15:55:22 -0400
  • 2b65b95cd5 Functor: documentation style revamp Louis Dionne 2014-06-18 14:47:15 -0400
  • cd37845ce2 Range: convert Integrals to their underlying type explicitly Louis Dionne 2014-06-18 14:46:45 -0400
  • 42bb091e71 Foldable: reduce the mcd, steal find from Iterable and improve tests Louis Dionne 2014-06-18 13:37:34 -0400
  • 390cc968a3 Integral: make integral<T, n> equivalent to true_ for n >= 1 in a boolean context Louis Dionne 2014-06-18 12:22:21 -0400
  • 061ab74465 Traits: convert Integrals to their underlying integer explicitly Louis Dionne 2014-06-18 10:51:41 -0400
  • f69a799886 List: refactor and use eval_if more consistently Louis Dionne 2014-06-18 10:47:37 -0400
  • db9a37c6e4 Monad: test the minimal complete definitions Louis Dionne 2014-06-18 10:36:55 -0400
  • b185b652d7 Type: minor refactoring Louis Dionne 2014-06-18 10:24:20 -0400
  • 9498f34c3d Use c-style variadics in at_index::overload_resolution to reduce instantiations. Louis Dionne 2014-06-17 22:07:59 -0400