[pyar] Por qué no se puede extender la clase bool?

Moises Rangel moises.rangel en gmail.com
Mar Jun 19 02:37:48 ART 2012


Hola lista, de antemano una disculpa si digo barrabasadas.

1. Como en python "todo" es una clase, se podría decir que SÍ es posible
extender el bool...
2. ... pero en realidad y en muchos otros lenguajes no es tratado como
clase si no como *tipo de dato*...
3. ... que no se puede extender. En dado caso la opción sería crear una
clase personalizada y agregarle los estados necesarios para la aplicación.

Saludos,




El 19 de junio de 2012 00:02, Leonardo Otero <oteroleonardo en gmail.com>escribió:

> Vas a escribir un programa para lógica positrónica agregándole un tercer
> estado al bool?
>
> Saludos.
> Leo
>
>
> 2012/6/16 Juanjo Conti <jjconti en gmail.com>
>
>> Estoy escribiendo el capítulo 5 (Limitaciones) de mi tesis de maestría
>> sobre taintmode[1].
>>
>> Una de las limitaciones es que la biblioteca, que extiende
>> automáticamente clases built-in de Python para hacerlas capaces de
>> trackear manchas, no puede extender bool.
>>
>> Busco en Google: python cant extende bool
>>
>> El primer resultado es de Stack Overflow. Excelente, pienso. Hasta que
>> veo que el que pregunta es mi yo del pasado :)[2]
>>
>> Una respuesta que cita a Guido está buena:
>>
>> '''
>> I thought about this last night, and realized that you shouldn't be
>> allowed to subclass bool at all! A subclass would only be useful when
>> it has instances, but the mere existance of an instance of a subclass
>> of bool would break the invariant that True and False are the only
>> instances of bool! (An instance of a subclass of C is also an instance
>> of C.) I think it's important not to provide a backdoor to create
>> additional bool instances, so I think bool should not be subclassable.
>> '''
>>
>> Aunque es una pena, a los fines prácticos de la bibliotca resulta que
>> no es tan grave ya que, como dice Martelli:
>>
>> '''
>> ..."a and b" is always identical to "b if a else a" for any "a and b"
>> (no bool coercion involved...
>> '''
>>
>> Saludos,
>>
>> [1] http://www.juanjoconti.com.ar/taint/
>> [2]
>> http://stackoverflow.com/questions/2172189/why-i-cant-extend-bool-in-python
>> --
>> Juanjo Conti
>> blog: http://www.juanjoconti.com.ar
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>



-- 
____________________
Moisés Rangel Narváez
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20120619/7105ab2e/attachment.html>


More information about the pyar mailing list