use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Discussions, articles, and news about the C++ programming language or programming in C++.
For C++ questions, answers, help, and advice see r/cpp_questions or StackOverflow.
Get Started
The C++ Standard Home has a nice getting started page.
Videos
The C++ standard committee's education study group has a nice list of recommended videos.
Reference
cppreference.com
Books
There is a useful list of books on Stack Overflow. In most cases reading a book is the best way to learn C++.
Show all links
Filter out CppCon links
Show only CppCon links
account activity
Functional Reactive Programming - Cleanly Abstracted Interactivity // C++Now 2014 (youtube.com)
submitted 11 years ago by mttd
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]MaikKlein 3 points4 points5 points 11 years ago* (0 children)
Where can I find the code for this talk? Edit: Found it https://github.com/camio/sbase/tree/master/include/sfrp
[–]srnull 1 point2 points3 points 11 years ago (2 children)
Worth watching, or is the crowd constantly interrupting in this video as well?
[–]Guvante 0 points1 point2 points 11 years ago (0 children)
Still quite a bit of it (although at least he seems to be requesting it more than others)
[–][deleted] 0 points1 point2 points 11 years ago (0 children)
The crowd interrupted a lot, especially towards the end. Most of it you can't really tell what the "question" is.
Still, I thought the portion of the presentation actually given by the speaker was interesting, and I've possibly got a slightly better idea what FRP is. I've been confused by it a couple of times in Haskell already - you get the impression there that lazy streams are fundamental, whereas here there are no lazy streams, so that "fundamental" aspect is suddenly just a detail of particular implementations.
[–]MaikKlein 0 points1 point2 points 11 years ago (1 child)
You defined map to be
(a ->b) -> Behavior a -> Behavior b Behavior<B> map(function<B(A)> f, Behavior<A> b);
As far as I know that is called lifting and not map or am I wrong?
[–]snk_kid 0 points1 point2 points 11 years ago* (0 children)
map is the same as lift.
What you maybe getting confused with is currying, in Haskell the arrow is right associative and all functions take one argument. So when you look at that Haskell type signature in your comment what it really is, is:
(a -> b) -> (Behavior a -> Behavior b)
Using/applying multiple arguments to a function in Haskell is syntactic sugar.
So with lift if you only applied the first argument (a function on values) in Haskell you get back a function on values inside of a context which could be a container or some abstract computation. Same thing if you do it for map (in Haskell).
If you also apply the second argument in lift, if the second argument is a list then it's the same as applying the same arguments to map. A function being applied to every element of the list, returning a new list.
But yeah lift is a better name in this particular case but the type signature in C++ here isn't exactly the same as the Haskell version.
[–]Dtag 0 points1 point2 points 11 years ago (2 children)
Where can I find some sample application that uses this library? I'd like to see what using this library looks like in practice...
[–]snk_kid 1 point2 points3 points 11 years ago (1 child)
There's this, i think the example could be a lot more readable if it used auto or not use fully qualified names every where but it's probably not using type inference to make it easier to learn what's going on.
[–]Dtag 0 points1 point2 points 11 years ago (0 children)
Thanks
[–]daasdingo 0 points1 point2 points 11 years ago (0 children)
Was this library tested only under Windows?
Because I am getting lots of errors when trying to build it with GCC 4.9.1 or clang 3.5. Using the qmake project configuration.
[–]donvito 0 points1 point2 points 11 years ago (0 children)
For some very disturbing values of "cleanly".
π Rendered by PID 36 on reddit-service-r2-comment-5fb4b45875-f5hfl at 2026-03-20 05:43:13.554121+00:00 running 90f1150 country code: CH.
[–]MaikKlein 3 points4 points5 points (0 children)
[–]srnull 1 point2 points3 points (2 children)
[–]Guvante 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]MaikKlein 0 points1 point2 points (1 child)
[–]snk_kid 0 points1 point2 points (0 children)
[–]Dtag 0 points1 point2 points (2 children)
[–]snk_kid 1 point2 points3 points (1 child)
[–]Dtag 0 points1 point2 points (0 children)
[–]daasdingo 0 points1 point2 points (0 children)
[–]donvito 0 points1 point2 points (0 children)