¿Quién inventó los punteros?

12

Pregunta bastante simple, pero algo que no he podido descubrir. ¿Quién fue la primera persona en describir la idea de un puntero? ¿El concepto abstracto en sí?

    
pregunta Mike 14.10.2011 - 06:14

6 respuestas

15

Los punteros son realmente el almacenamiento dirigido por el contenido de un registro. Como tales, todos los lenguajes de ensamblador implementan esto de alguna manera y, antes de eso, todo el código de máquina codificado por hardware implementó esto.

Habrá algún argumento en cuanto a la primera computadora que implementó esto. Por lo que sé, el Manchestern University Small Scale System fue el primero en incluir el almacenamiento dirigido por los registros controlados por el programa. Puede haber estado precedido por el sistema ENIAC, pero tenía tan poco almacenamiento como para hacer que el almacenamiento direccionable fuera un punto discutible.

    
respondido por el James Anderson 14.10.2011 - 09:03
5

Los punteros son referencias más amplias. El primer idioma para tener algo así fue ALGOL 60, que podía llamar por su nombre. Esta answer sobre SO entra en algunos detalles. PL / Tuve punteros al igual que BCPL , lo que significa que CPL probablemente también lo hizo, aunque no tengo Encontré evidencia de ello. Es muy difícil concretar información sobre CPL.

Para responder de manera más directa a tu pregunta sobre "quién", D. W. Barron, Christopher Strachey o Martin Richards probablemente acuñaron el término "puntero".

    
respondido por el World Engineer 14.10.2011 - 06:37
4

Es difícil adivinar exactamente quién los creó, pero los registros de índice en el IBM 704 fueron probablemente la primera implementación. Desde un punto de vista del lenguaje de programación, por lo tanto, sin duda, habría sido el lenguaje ensamblador del 704.

Aparentemente, pasaron algunos años antes de que se diseñaran lenguajes de programación de nivel superior para aprovechar esta innovación, pero para entonces ya se había hecho la mayoría de los inventos, y principalmente se trataba de elegir nombres, anotaciones, etc. lo que el hardware soporta.

    
respondido por el Jerry Coffin 14.10.2011 - 08:07
3

Bud Lawson recibió Computer Pioneer Award hace unos años, por inventar la variable de puntero en 1964.

    
respondido por el Martin 14.10.2011 - 16:01
0

Los punteros como concepto básico se utilizan en el "direccionamiento indirecto" de una función en la mayoría de las CPU que se remonta al menos como la 6502.

Commodore usó el "kernal" en sus computadoras VIC 20, C64 y C128. un conjunto fijo de software de direcciones podría llamar y luego ser redirigido al código actual. Luego podrían modificar el sistema operativo sin romper el software existente.

Creo que el 8080 y el Z80 tenían una dirección indirecta también, pero no estoy seguro y no lo recuerdo en el 8008.

    
respondido por el Jim C 14.10.2011 - 14:37
0

Bueno: la primera vez que se desarrolló una sintaxis y una semántica concretas para las variables de puntero fue para el lenguaje de programación PL / I en 1964.

El artículo seminal sobre esto apareció en 1967 en ACM Communications en 1967.

    
respondido por el user256131 07.12.2016 - 21:57

Lea otras preguntas en las etiquetas