[SP-pm] [OFF-TOPIC] Masturbações Mentais sobre Undefined Behavior

Blabos de Blebe blabos at gmail.com
Mon Feb 14 07:32:47 PST 2011


Oras, isso me lembra

http://www.ioccc.org/1987/wall.c

Uma coisa é você usar isso em um golf, outra é usar em código de produção.

Tem gente que empeteca o código com meia dúzia de regexp e se ahca 'O
Hackerzão'.

A maior parte dos bugs (com os quais estou lidando agora, por
exemplo), teria sido evitada se fossem respeitados os padrões mínimos
de boas práticas. Coisa que qualquer estagiário *deveria* sair da
escolinha sabendo.

Abraços

2011/2/14 Stanislaw Pusep <creaktive em gmail.com>:
> Não sei pq, mas lembrei da seguinte sintaxe, compilável em Perl:
>
> -f>@+?*<.-&'_:$#/%!
>
> ABS()
>
>
>
> 2011/2/14 Blabos de Blebe <blabos em gmail.com>
>>
>> Bom dia,
>>
>> Sem querer entrar em flames, ou no mérito da discussão, que tomo
>> apenas como exemplo.
>>
>> A thread abaixo é uma discussão que está acontecendo na principal
>> lista de C++ brasileira, sobre undefined behavior.
>>
>>
>> http://groups.google.com/group/ccppbrasil/browse_thread/thread/9b9a7be45917095e#
>>
>> Notem como o Undefined behavior deste exemplo em particular pode ser
>> resolvido com 'codificação elegante'. Ok, o assunto era outro e foi só
>> um exemplo rápido, mas levantou a discussão que está acontecendo até
>> agora.
>>
>> A maioria dos 'Undefined Behaviors' das linguagens de programação que
>> conheço (não são muitos) são casos específicos, incomuns, bem
>> documentados, bem avisados, normalmente abertos por 'depender da
>> implementação' e invocados por código porco de programadores meia-boca
>> (não que este caso de *exemplo* seja um).
>>
>> É claro, nenhuma linguagem é perfeita (exceto lisp), mas elas possuem
>> especificações, mais abrangentes ou menos abrangentes. Por isso, não
>> importa a linguagem, ou você se aprofunda e aprende, ou mais cedo ou
>> mais tarte, vai acabar caindo em alguma dessas asrmadilhas.
>>
>> Na minha opinião, C tem mais armadilhas e/ou hacks que precisam de um
>> pouco mais de conhecimento de arquitetura de computadores para escapar
>> do que Perl, enquanto Perl tem outros tipos de armadilhas.
>>
>> Entenda armadilha aqui como "algo que eu imaginava de um jeito, mas
>> aconteceu de outro", independente da expectativa ser razoável ou não.
>>
>> O negócio é que como Perl é mais fácil de lidar do que C, você alcança
>> as armadilhas de Perl mais cedo do que conseguiria caminhar em C para
>> alcançar as suas, logo, Perl parece mais imprevisível.
>>
>> Abraços
>> =begin disclaimer
>>   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>> =end disclaimer
>
>
> =begin disclaimer
>   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>


More information about the SaoPaulo-pm mailing list