C++, C# and JavaScript are becoming concurrent constraint logic languages. Futures provide a non-eager evaluation model. Next we realize resolving a future twice is fine if both values are equal, but should fail otherwise. What's failure? We throw an exception and backtrack...
-
-
The intent is that the exception is caught by an outside scope in which those futures aren't visible, hence you will never see contradictory resolution of a future.
-
The next step is for these languages to support joins and backtrack points, so that failure can undo some unifications and try again. Coroutines support part of what's needed for this.
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.