2009/2/24 Angel Arancibia<br>><br>> El día 24 de febrero de 2009 18:24, "Sebastián D. Criado"<br>> <<a href="mailto:sebastian.criado@gmail.com">sebastian.criado@gmail.com</a>> escribió:<br>> > Jose Luis Diaz escribió:<br>
> > Nuevo hilo para el tema así no molestamos.<br>> ><br>> > [...]<br>> >>> Entonces el interprete que uso viene con bola de cristal incorporado<br>> > ya que distingue cadena de número sin que la declare previamente como en<br>
> > C o Pascal..<br>> >><br>> >> Sip, la bola de cristal se llama introspeccion :)<br>> ><br>> > Interesante. No sabía que se le llamada así.<br>> > Encontré un viejo artiuclo de IBM sobre el tema<br>
> ><br>> > Guide to Python introspection<br>> > <a href="http://www.ibm.com/developerworks/linux/library/l-pyint.html">http://www.ibm.com/developerworks/linux/library/l-pyint.html</a><br>><br>> Otra forma de decir "if it walks like a duck and quacks like a duck, I<br>
> would call it a duck" :)<br><br>Creo que son cosas distintas aunque muy relacionadas a los sistemas de tipos de los lenguajes: introspección, type inference (inferencia de tipos), duck typing.<br>Me explico:<br>
<br>* <a href="http://en.wikipedia.org/wiki/Introspection_%28computer_science%29">introspección</a> permite obtener en tiempo de ejecución información acerca del tipo de una variable u objeto (se usa mucho en lenguajes OO: python, ruby, java reflection)<br>
* <a href="http://en.wikipedia.org/wiki/Type_inference">type inference</a> (inferencia de tipos): es deducir o descubrir el tipo del resultado de evaluar una expresión (acabo de leer que en Haskell hace uso intensivo de esto)<br>
* <a href="http://en.wikipedia.org/wiki/Duck_typing">duck typing</a> sería una manera de considerar los tipos basada en el comportamiento y características "apreciables" o "visibles" de un objeto, y no por sus relaciones de herencia o implementaciones de interfaces (o sea mas sus características estáticas)...es frecuente verlo es lenguajes OO dinámicos (Ruby, Python)<br>
<br>mis 20 australes<br><br>saludos,<br>--p<br>><br>> _______________________________________________<br>> Programacion mailing list<br>> <a href="mailto:Programacion@lugro.org.ar">Programacion@lugro.org.ar</a><br>
> <a href="http://www.lugro.org.ar/mailman/listinfo/programacion">http://www.lugro.org.ar/mailman/listinfo/programacion</a><br><br>