3 ms·
It is encouraging to see the C# team learn from real-world scenarios and improve the language.
by MartinCron 15y ago
It is encouraging to see the C# team learn from real-world scenarios and improve the language.
- tlb 15y agoIt is discouraging to see them make the same mistake that early Lisps did, the solution to which was well understood in the Scheme community since 1975.
- solutionyogi 15y agoWell, they are human after all. Overall, I feel that C# team has definitely achieved their goal of being a 'Pit of Success'. http://www.codinghorror.com/blog/2007/08/falling-into-the-pit-of-success.html http://www.codinghorror.com/blog/2007/08/falling-into-the-pi... E.g. Order of evaluation is strictly defined as left to right in C#. http://blogs.msdn.com/b/ericlippert/archive/2008/05/23/precedence-vs-associativity-vs-order.aspx http://blogs.msdn.com/b/ericlippert/archive/2008/05/23/prece... Disallowing use of uninitialized local variable. http://stackoverflow.com/questions/7797424/why-arent-unassigned-local-variables-automatically-initialized http://stackoverflow.com/questions/7797424/why-arent-unassig... C# warns you if you do if (i = 1) //notice the '=' instead of '==' { } warning CS0665: Assignment in conditional expression is always constant; did you mean to use == instead of = ? Obviously, they failed in the case of 'foreach' but I feel great knowing that they will be fixing it in the next release.
- skrebbel 15y agoIt's lovely how you confirm the common prejudice: 1958 - John McCarthy and Paul Graham invent LISP. Due to high costs caused by a post-war depletion of the strategic parentheses reserve LISP never becomes popular[1]. In spite of its lack of popularity, LISP (now "Lisp" or sometimes "Arc") remains an influential language in "key algorithmic techniques such as recursion and condescension.[2]" (from http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html http://james-iry.blogspot.com/2009/05/brief-incomplete-and-m...)
- deleted 15y ago[deleted]
- bunderbunder 15y agoIn fairness, they stumbled into it more than they deliberately perpetrated the error. In the beginning, when the rules for foreach loops were laid out, C# didn't have closures so it didn't really make a difference.