Difference between revisions of "Projects/LambdaFun"
(Created page with "====LambdaFun==== Lambda functions are widely spread across the D ecosystem making their way from user code to standard library phobos code. This situation makes it so that i...") |
(Add category: student projects) |
||
Line 11: | Line 11: | ||
The "LambdaFun" project aims at the ambitious ideal of mechanically deciding whether two functions are semantically | The "LambdaFun" project aims at the ambitious ideal of mechanically deciding whether two functions are semantically | ||
equivalent by exploring that is the most we can acquire with what the D ecosystem offers. | equivalent by exploring that is the most we can acquire with what the D ecosystem offers. | ||
+ | |||
+ | [[Category: Student projects]] |
Latest revision as of 10:15, 12 December 2017
LambdaFun
Lambda functions are widely spread across the D ecosystem making their way from user code to standard library phobos code. This situation makes it so that in some cases it is very useful have the ability to compare lambda function for equality. For example: if an array is sorted, a library function which searches an element in the array may apply a binary search algorithm, but in order to do that the function must be able to see if the predicate with which the array was sorted matches the standard "==" preadicate, thus resulting a function comparison operation. Other than that, comparing functions for equality is a powerful trait which may open the door to compiler optimizations.
The "LambdaFun" project aims at the ambitious ideal of mechanically deciding whether two functions are semantically equivalent by exploring that is the most we can acquire with what the D ecosystem offers.