[Haskell-cafe] Proposal: Non-recursive let

David Thomas davidleothomas at gmail.com
Tue Jul 23 22:02:52 CEST 2013


It strikes me as unlikely static analysis would be confused by shadowing.


On Tue, Jul 23, 2013 at 12:37 PM, i c <ivan.chollet at gmail.com> wrote:

> let's consider the following:
>
> let fd = Unix.open ...
> let fd = Unix.open ...
>
> At this point one file descriptor cannot be closed. Static analysis will
> have trouble catching these bugs, so do humans.
> Disallowing variable shadowing prevents this.
> The two "fd" occur in different contexts and should have different names.
>
>
>
> On Tue, Jul 23, 2013 at 8:17 PM, Bardur Arantsson <spam at scientician.net>wrote:
>
>> On 2013-07-22 17:09, i c wrote:
>> > Usage of shadowing is generally bad practice. It is error-prone. Hides
>> > obnoxious bugs like file descriptors leaks.
>>
>> These claims need to be substantiated, I think.
>>
>> (Not that I disagree, I just think that asserting this without evidence
>> isn't going to convince anyone who is of the opposite mindset.)
>>
>> Regards,
>>
>>
>>
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe
>>
>
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20130723/774d9cdf/attachment.htm>


More information about the Haskell-Cafe mailing list