¿Primer lenguaje de programación ficticio en ciencia ficción o fantasía?

Estoy buscando el primer lenguaje de programación ficticio escrito. Esto excluiría cuando una computadora interpreta el habla humana, y donde 'suponemos' que un humano está programando, ya que se puede ver haciendo una entrada a una computadora, pero no vemos esa entrada. Las referencias por nombre sin código también son aceptables, siempre que sea claramente un lenguaje de programación.

El código debe ser ejecutado por algo externo al escritor, y no debe ser solo un hechizo mágico (que es equivalente a una computadora que interpreta el habla).

He encontrado a SARTRE pero eso no está en una obra de Ciencia Ficción o Fantasía. También encontré ~ ATH que contaría, pero es solo de 2018 (por lo que puedo decir). También está la computadora Hex que aparece por primera vez en Soul Music (1994) y se ejecuta en Softlore, aunque no sé si se llama así en los libros o si aparece por primera vez en ese libro. Los círculos druidas en el Mundodisco funcionan como computadoras, pero nunca vemos que se programe uno.

¿El programa enviado en el mensaje en "A for Andromeda"? en.wikipedia.org/wiki/A_for_Andromeda
@Alith posiblemente? ¿Es definitivamente un lenguaje de programación ficticio o podría ser un código encriptado escrito en un lenguaje de programación del mundo real?
No he leído los libros "Wizardry" de Richard Cook desde que salieron (comenzado en 1989). ¿Alguien con una copia que pueda verificar? El primero fue en 1989 y creo recordar algo de programación allí, pero podría haber sido Lisp de la vida real y/o Emacs Lisp en lugar de un lenguaje ficticio. no recuerdo
The Moon is a Harsh Mistress menciona LOGLAN (en una sola oración) pero ese era un lenguaje real .
En la serie Wizardry, sé que en el segundo libro trae un equipo de programadores para crear un compilador mágico. Un lenguaje de programación para hacer que lanzar hechizos sea más fácil y algo automatizado. "La hechicería compilada"
Babel-17 (1966) menciona ALGOL y FORTRAN, y también, curiosamente, ¡luego menciona a Ruby y Python en la misma oración! Pero significa dos bailarines con esos nombres, no los lenguajes de programación :)
Estoy seguro de que Asimov tenía al menos una historia en la que una computadora estaba programada a través de un código y no le hablaba ... pero ¿era un lenguaje con nombre ?
@davidbak, no necesita un nombre a menos que no veamos un ejemplo de código. Básicamente algo para demostrar que es ficticio.
Bueno, no recuerdo ninguna muestra de código en los libros o historias de Asimov, así que voy por la otra parte de la pregunta...
~ATH se vio por primera vez en algún momento de 2011.
@LAK, no he leído los libros posteriores, pero el primero fueron juegos de palabras/parodias directas de la terminología informática existente.
No es una respuesta, porque fue escrito en 2009 y se trata de lenguajes de programación realistas, pero una historia corta de ficción realmente muy interesante es Coding Machines de Lawrence Kesteloot. Creo que todo programador que sepa lo que hace lo encontrará increíble.
Deseo que para esta pregunta, las respuestas puedan ordenarse por la fecha del trabajo, en lugar de los votos a favor. Me parece claro que Jurassic Park está recibiendo votos a favor adicionales solo porque ya tiene más votos a favor, y que las personas que responden a esta pregunta ni siquiera están leyendo las otras respuestas, tres o cuatro de las cuales son tan buenas o mejores que Jurassic Park, y obviamente antes.
@RossPresser He defendido algo similar en el pasado, usando algo de Code Golf para acumular las respuestas, pero depende de que todos se ajusten a un título de apertura.
@davidbak Una de las historias de Robots tenía la programación fundamental realizada por algún tipo de golpe de teclado, sobre el cual un escolar visitante pasó los dedos con efectos desafortunados.
@AncientSwordRage A propósito de "A para Andrómeda", el artículo de Wp dice explícitamente que el mensaje incluía un "programa". Es interesante que tengamos dos menciones de (Profesor Sir) Fred Hoyle en esta discusión, a pesar de su relativa oscuridad.
@Ross Presser No tengo una copia a mano, pero creo que la frase fue "describió los cambios en LOGLAN".
Creo que sería útil si indicara cuál de los ejemplos sugeridos cumple con sus requisitos. Por ejemplo, si The Black Cloud es un ejemplo válido de lo que está buscando, entonces no hay necesidad de más entradas posteriores a 1957.
@ user14111 Se reduce a que, en los casos anteriores, los programas están muy cerca de los lenguajes de programación existentes. No estoy seguro de dónde termina la licencia artística/no científica y comienza un nuevo lenguaje de programación.
es tu pregunta Si no estás seguro, nadie lo está. Y si nadie sabe qué respuestas cuentan, ¿qué impide que esto se convierta en una lista de todos los lenguajes de programación ficticios jamás escritos?
@ user14111 parece que esto requiere matices. Todavía no lo sé, ya que no me he tomado el tiempo para considerar cada pregunta detenidamente. Tomaré una decisión cuando pueda.
@MarkMorganLloyd: aquí están las 7 coincidencias para Loglan en mi copia de libro electrónico.

Respuestas (12)

¿ Qué pasa con Gateway de 1977?

Intercalados a lo largo del libro hay extractos de las sesiones del personaje principal con un programa psiquiatra artificialmente inteligente (al que llama Sigfrid von Shrink), aunque pueden ser más registros que código.

Un ejemplo que muestra la combinación de código y registros:

507 .IRRAY.MATURITY.GOTO             26,830
     *M80                            26,835
508 ,C, Maybe maturity is wanting    26,840

Continúa así, pero la línea con GOTO está claramente destinada a ser código.

(página 44, edición SFBC)

COBOL inspirado, tal vez.
En la escuela secundaria, tuvimos una animada discusión sobre si esto era a) un código real, b) los pensamientos de Robinette sobre cómo Sigfrid realmente lo estaba analizando, o c) solo un escaparate para que el lector recordara que Sigfrid no es una persona real. La conclusión a la que llegamos fue que tienes que leer el código para darte cuenta de que Sigfrid es verdaderamente alienígena (una invención de las mentes humanas usando tecnología Heechee) y podría tener más motivos de los que permite el código.
@ JesseC.Slicer Sin embargo, esa es una conclusión extraña. Pensé que Siegfried era solo un artefacto de computadora, básicamente inspirado en la (abismalmente mala) ELIZA del mundo real. Evidentemente, ese lenguaje no parece tener sentido. Es lo que surgiría en una red neuronal antagónica cuando la alimentas con un lenguaje de programación de los años 70 y le indicas que genere algo que se parezca. (Oye, ese es un buen proyecto de término de CS). En el universo, los humanos ni siquiera obtienen el código de colores de la cápsula espacial, ¿cómo conectarían algo a un sistema informático?
@DavidTonhofer bueno, ahora me has dado una buena razón para volver a leer la serie completa. Mi recuerdo es que los humanos estaban bastante ansiosos por agarrar cualquier cosa Heechee e intentar integrarla (a menudo con resultados fatales) y que Sigfrid se armó usando parte de su tecnología junto con la nuestra. Especialmente dado que después de que Robinette "muere", su yo almacenado (nuevamente, usando la tecnología de "ancestros antiguos" Heechee) interactúa felizmente con Albert, que fue creado en la misma línea que Sigfrid.
@JesseC.Slicer Ah, eso debe estar en los seguimientos. Acabo de leer Gateway II, lo encontré notablemente inferior a Gateway (especialmente porque no explica correctamente los agujeros negros; no puedes tener un sistema estelar dentro de uno, y cuál es el problema con la constante alfa), así que dejé caer el " poscuela".
@David Tonhofer La codificación de colores puede ser completamente arbitraria, y comprenderla depende de saber cómo funciona la fisiología visual de los creadores. OTOH, se puede esperar que un programa de computadora tenga algún efecto útil, y cuanto más crítica sea su ubicación, más se puede esperar que el efecto sea consistente. Por lo tanto, en principio, un programa de computadora podría decodificarse con muy poco conocimiento de sus creadores.
@MarkMorganLloyd Estoy totalmente en desacuerdo con eso. La codificación por colores es extremadamente fácil de descifrar utilizando técnicas estadísticas básicas porque no puede ser aleatoria, por lo que codifica algunos atributos del objeto indicado por la codificación. Sin embargo, un programa de computadora lo suficientemente complejo puede resistir los esfuerzos de depuración más duros para abrir su significado previsto. De hecho, la teoría de la computabilidad establece que puede tener ante usted algo que es un "programa", pero no existe ningún programa que le diga las características esenciales o incluso lo que calcula en un tiempo razonable o incluso en absoluto.
@David Tonhofer Te recordaría "Mote in God's Eye", donde los ojos de los pajeños no mezclaban azul+amarillo=verde. Sugeriría también que gran parte del uso es cultural: rojo (el color de la sangre de los vertebrados) como peligro y verde (el color de un prado tranquilo) como seguridad y así sucesivamente... las criaturas con sangre verdosa (moluscos, etc.) probablemente adoptarían una convención diferente.

Lo más antiguo que puedo encontrar de lo que creo que es un lenguaje de programación ficticio está en Jurassic Park (1990). Vemos el código de Dennis Nedry y luego a Ray Arnold investigando para encontrar el problema. Sin embargo, por lo que puedo decir, no parece tener un nombre y tampoco es totalmente consistente. Esta pregunta sobre el idioma entra un poco más en detalle y obtenemos algunos fragmentos del libro, por ejemplo:

*/Jurassic Park Main Modules/
*/
*/ Call Libs
Include: biostat.sys
Include: sysrom.vst
Include: net.sys
Include: pwr.mdl
*/
*/Initialize
SetMain [42]2002/9A{total CoreSysop %4 [vig. 7*tty]}
if ValidMeter(mH) (**mH).MeterVis return
Term Call 909 c.lev { void MeterVis $303 }  Random(3 #*MaxFid)
on SetSystem(!Dn) set shp_val.obj to lim(Val{d}SumVal)
  if SetMeter(mH) (**mH).ValdidMeter(Vdd) return
  on SetSystem(!Telcom) set mxcpl.obj to lim(Val{pd})NextVal

Parque jurásico

Esto se siente como un buen contendiente, y es anterior a Soul Music por unos buenos 4 años.
Parece que alguien miró uno de los primeros libros de Unix de "Programación para Unix" y arrojó fragmentos aleatorios a la pantalla mientras inventaba locamente.
iirc en el texto dice que el sistema operativo era algo personalizado que Nedry también escribió, ¿no? Puede que eso no signifique que el idioma en sí era personalizado, pero está cerca
@BinaryWorrier Aún más extraño ya que la respuesta en la pregunta vinculada menciona que Crichton también era programador.
@martheen todos los programadores deberían saber cómo desconcertar a sus gerentes, Crichton solo está ejerciendo esa habilidad... /s
¿Cuál era el código en Sphere? Eso es 1987.
Congo (1980) también presentó a un programador, aunque no recuerdo si apareció algún código fuente en el libro (o si apareció alguno, si era un simple ejemplo de un lenguaje ensamblador real).
¡Es un sistema Unix! ¡Yo se esto!
Con respecto a mi comentario anterior: no hay código en Congo , pero el personaje Munro hace una referencia de pasada (en el libro electrónico que leí, no sé cómo aparece impreso) a "BASIC y TW/GESHUND" como dos principales "interactivos". lenguas" que había aprendido. No me queda claro si "TW/GESHUND" es ficticio o simplemente un idioma del que nunca he oído hablar.

Valentina: Soul in Sapphire (Joseph H. Delaney y Marc Stiegler, Baen Books, 1984) habla de MODULISP. Aquí hay algunas líneas citando eso:

Podía escribir nuevas rutinas en lenguaje máquina, por supuesto, aunque ella misma estaba escrita en MODULISP, pero no sabía qué escribir.

Unos minutos más tarde estaba construyendo un núcleo MODULISP.

Valentina pasó una última serie de programas de prueba a través del intérprete MODULISP ahora descargado en el Espejo.

No se incluye ningún código MODULISP real, pero aparentemente se ejecuta en una variedad de plataformas. "Looking Glass" en la cita anterior es una arquitectura masivamente paralela con miles de procesadores ópticos.

Eso es muy interesante, porque parece que podría ser un dialecto de LISP, pero también parece ser un término matemático. Pero tener un kernel y un intérprete parece convertirlo indiscutiblemente en un lenguaje de programación basado en el contexto.
Se agregó otra cita que hace indiscutible que está destinado a ser un idioma, y ​​sí, muy probablemente un dialecto LISP.
Creo que sus aciertos "matemáticos" en MODULISP son en realidad la frase modulis p , es decir, "módulo p".
De nada. Fue publicado en 1984 por Baen Books y los autores son Joseph H. Delaney y Marc Stiegler.
¿ Quizás un acrónimo de Modula y LISP ?
Para seguir, LISP era conocido como el lenguaje para la IA, y Modula era el lenguaje orientado a objetos más innovador, influyente y primero. El combo-nombre me hizo reír. Ambos también son famosos por su lentitud. Parece como si "ella" lo supiera y se estuviera reescribiendo a sí misma en lenguaje de máquina para aumentar la velocidad. ¿No es eso lo que se supone que debe hacer la "verdadera IA"?
@OwenReynolds: Modula (1977) no estaba orientado a objetos en absoluto, e incluso si lo fuera, habría llegado 15 años tarde a la parte orientada a objetos. El primer lenguaje orientado a objetos fue Simula (1962), el más innovador e influyente probablemente Smalltalk-72 (todavía 5 años antes que Modula). El primer miembro de la familia de lenguajes de Wirth, a la que pertenece Modula (Algol-X, Algol-W (1966), Pascal (1970), Modula (1977), Modula-2 (1978), Oberon (1987), Oberon- 2 (1991), Component Pascal (1994)) con al menos instalaciones OO limitadas fue Oberon-2 (1991). Además, nunca he oído que Modula sea lento.
@Jörg W Mittag, Re " El primer miembro de la familia de lenguajes de Wirthian [...] con al menos funciones OO limitadas fue Oberon-2 (1991). ", Turbo Pascal 5.5 tenía algunas funciones OO en 1989. Aunque técnicamente era un extensión a Pascal, se consultó a Wirth.
@ikegami: si incluye Turbo Pascal 5.5, también debe incluir Modula-3 (1988), que es anterior a Turbo Pascal 5.5 por un año, y Clascal de Apple (1986). Todo lo cual llegó mucho más tarde que Simula (1962), Simula II (1967) o Smalltalk-72, e incluso Smalltalk-80 V2.0 (1981), que es el lenguaje en el que la mayoría de la gente piensa cuando dice "Smalltalk". ".
@JörgWMittag Ah, claro, siempre confundo Algol, Smalltalk y todos esos lenguajes experimentales de los que los programadores en activo escucharon pero nunca usaron. Siento que esa es la broma con Modula. No obtienes la misma risa con "algolisp" o "lispgol" o "PL/Lisp".
@ owen-reynolds "nunca usado"? Habla por ti mismo. Tuve que usar un derivado de Smalltalk en un entorno de trabajo durante varios años en los años 90.
@OwenReynolds ¿Algol y Smalltalk "experimentales"? Ahora he escuchado probablemente todo.

"La nube negra", Fred Hoyle, 1957. https://en.wikipedia.org/wiki/The_Black_Cloud

El héroe (o al menos el tipo que siempre tomaba la decisión correcta) pasó toda la noche escribiendo un programa astronómico para la computadora central de Cambridge. Un fragmento de esto se muestra en el libro, era en gran parte simbólico (pero no era APL, que aún no se había inventado) y básicamente comprendía cualquier carácter astronómico/astrológico que el tipógrafo tuviera disponible.

El código, en la página 32 de la copia en rústica, tiene cinco líneas:

  T Z 
0 A 23 ⊖ 
1 U 11 ⊖ 
2 A 2  F 
3 U 13 ⊖ 

Descrito como "una breve muestra del código mediante el cual se instruyó a la computadora". [aparentemente esta es una muestra de código de máquina]

Estos símbolos se transcribieron en una tira de papel perforada y "los agujeros en el papel que constituían las instrucciones finales para la computadora".

¡Los libros de Google parecen respaldar esto parcialmente! books.google.co.uk/…
El código, en la página 32 de mi copia de bolsillo, tiene cinco líneas: " T Z", "0 A 23 ⊖", "1 U 11 ⊖", "2 A 2 F", "3 U 13 ⊖".
@johndoty es esa entrada a un programa o código?
@AncientSwordRage Se describe como "una muestra del código mediante el cual se instruyó a la computadora sobre cómo debería realizar sus cálculos y operaciones".
Esta respuesta parece actualmente la más antigua, y podría decirse que sería la mejor si se editaran las dos citas de @JohnDoty.
Muchas gracias a todos los que han comentado. Mi propia copia del libro es inaccesible por razones "interesantes", y no pude encontrar una copia escaneada (a diferencia de un OCRed) en línea.
Es interesante que las primeras computadoras británicas tendieran a la cinta de papel, mientras que las estadounidenses tendían a las tarjetas perforadas. Recuerdo una historia de la "edad de oro" en la que una nave espacial estaba siendo controlada por tarjetas perforadas, pero no había indicios de que se tratara de algún tipo de programa... la discusión en otro lugar hace algún tiempo sugirió que probablemente eran soluciones de navegación precomputadas.
Esas 4 líneas parecen como si alguien estuviera tratando de escribir un ensamblaje hexadecimal sin entender. En otras palabras, verse "maquillado" puede ser un accidente. Esa parte puede tener la intención de educar sobre programación informática real, esp. ya que explica la forma real en que funcionaba la cinta de papel.
No habría sido hexadecimal, que rara vez se usaba en esos días. Sin embargo, pensándolo bien, no es del todo diferente a algunos de los códigos utilizados, por ejemplo, en las primeras computadoras IBM derivadas de máquinas de registro de unidades (tarjetas perforadas, etc.) donde se esperaba que el programador supiera que un carácter o número en un campo específico tenía algún efecto específico. Reflexionando nuevamente, ⊖ parece un indicador de "nada en este campo", en lugar de algún tipo de operador simbólico. Afirmo que estaba trabajando completamente de memoria...
Me parece el tipo de notación mnemotécnica que se convirtió en lenguaje ensamblador. Supongo que Sir Fred lo copió de algún código real. El resto de su descripción del proceso es una descripción muy realista de la computación de mediados de los años 50. El método Adams-Leverrier es algo real. Los resultados intermedios impresos desde la cinta de salida son un poco difíciles de leer porque están formateados para usarse como entrada para otro programa. Las "válvulas" (o tubos de vacío, en otro dialecto) mantienen acogedora la sala de computadoras en enero.
Esto no es ficticio. La novela describe el verdadero Laboratorio Matemático de Cambridge, que de hecho estaba en un edificio que solía ser la Escuela de Anatomía, como dice la novela. La computadora es EDSAC, que de hecho fue programada a través de una cinta de papel, y así es como se ve su lenguaje de programación . cl.cam.ac.uk/events/EDSAC99/history.html cl.cam.ac.uk/events/EDSAC99/simulators/echo/flat.html
Morderé :-) ¿Es ese código EDSAC demostrable, incluido el carácter especial?
El "carácter especial" es theta . Lea la sección de códigos de caracteres de lo que señalé.
@JdeBP No estoy seguro. Se ve igual, pero no veo una referencia a ⊖ en ninguno de los enlaces. Necesito pensarlo un poco
Entonces no has leído la sección de códigos de caracteres, como te dije que leyeras. O puede leer una de las biografías de Fred Hoyle, o incluso el artículo de IEEE de 1992 de JM Wheeler. El hecho de que la computadora de la novela sea EDSAC, y su descripción sea precisa, no es un secreto ni un descubrimiento reciente por mi parte. (-:
@JdeBP Les puedo asegurar que encuentro interesante la conexión EDSAC. He trabajado con muchas más personas asociadas con las primeras computadoras de Manchester (o varias estadounidenses) que con las de Cambridge.

La programación de una computadora se menciona a menudo en (Ciencia) Ficción, pero rara vez se dan detalles.
Por lo general, no es necesario para la historia en sí. Y muchos autores solo tenían una vaga idea de cómo funcionaba la 'programación'. Incluso si lo supieran, la mayoría se daría cuenta de que la gran mayoría de su público lector no sabría nada al respecto, entonces, ¿por qué molestarse?

No estoy seguro si esto califica por sus restricciones, pero lo ofrezco de todos modos:
The Voyage of the Space Beagle de AE ​​Van Vogt es de 1950.
Hace referencia a la 'Lógica simbólica' como una herramienta para estructurar información e ingresarla en computadoras para el procesamiento automático. Tal vez no sea un lenguaje de programación en sí mismo, pero si no recuerdo mal la novela, su uso es tan vago que en realidad podría ser el nombre del lenguaje de programación.

EDITAR: Acabo de descubrir que los conceptos de Lógica simbólica y Nexialismo de AE ​​van Vogt son en realidad más antiguos. "The Voyage of the Space Beagle" es una reelaboración/expansión de su propio cuento "Black Destroyer" de 1938. Los conceptos ya estaban en ese cuento.

La Lógica Simbólica puede ser simplemente una forma antigua de describir un 'Lenguaje de Programación' o 'Lógica Booleana'. Sin embargo, encontré esto: isfdb.org/cgi-bin/title.cgi?2687890 que figura como 'no ficción'
@AncientSwordRage Definitivamente NO es un sinónimo de lógica booleana en el libro.
Recuerdo que la Psicología y la Sociología eran ciencias en ese futuro, con base matemática. El personaje principal era un experto en ese nuevo campo, enviado como "oficial de moral" del barco. Supongo que la lógica simbólica tuvo algo que ver con eso.
La "Lógica simbólica" en el libro es casi con certeza una lógica simbólica , que en gran medida no es ficticia.
@ Mark, creo que tienes razón. van Vogt estaba realmente interesado en este tipo de cosas y basó varias de sus novelas en varios sistemas lógicos (por ejemplo, los libros NULL-A). Voyage es en realidad una reelaboración de su propio cuento (su primer trabajo) "Black Destroyer" de 1938, que es un año después de los trabajos iniciales de Gödels (1929 y 1931) sobre Lógica simbólica.
Estoy de acuerdo con el otro Mark. También se mencionó la lógica simbólica en (¿el primero de?) los libros de la Fundación de Asimov, pero se dejó muy claro que se estaba utilizando para codificar y analizar una secuencia de declaraciones diplomáticas (y demostró que en la práctica se cancelaban y por lo tanto no transmitían nada). mensaje útil).
@MarkMorganLloyd Me había olvidado de Foundation, pero ahora lo mencionas... Van Vogt también utiliza este análisis de contenido significativo. Foundation es posterior a Black Destroyer, pero anterior a Voyage.
IIRC "Voyage of the Space Beagle" tiene algún tipo de instrumento musical similar a un sintetizador que se usa para programar personas... ¿cuenta? :-)
@MarkMorganLloyd Releí Voyage el año pasado. No es realmente un instrumento por lo que recuerdo. Más como un generador de sonido ambiental que "abriría" a las personas susceptibles a la hipnosis. La verdadera hipnosis vino después. El sonido ambiental tuvo varios niveles de éxito. La mayoría de las personas no lo escucharían conscientemente, simplemente se volverían susceptibles. Algunos necesitarían un ligero ajuste en el sonido antes de que fuera realmente efectivo. En otros simplemente no funcionaría en absoluto. (O requiere una sesión especial con el sonido ajustado especialmente para esa persona).

Como dijo @LAK en un comentario que noté después de obtener el libro de mi biblioteca, en el libro de 1989 "The Wiz Biz" de Rick Cook, Wiz creó un lenguaje similar para ejecutar instrucciones mágicas para crear hechizos. Esto no es "interpretación mágica de la palabra hablada", sino invocar verbalmente un lenguaje de programación formal (tal vez algo escrito, ha pasado un tiempo) que Wiz desarrolló y modifica.

http://www.goodreads.com/book/show/407212.The_Wiz_Biz

Consulte también esta pregunta: Serie de fantasía con un mago hacker/programador y una protagonista femenina, similar a Wiz Biz, que describe otros libros con lenguajes informáticos mágicos similares.

El código fuente no se muestra (por lo que pude ver al hojear el libro), pero se describe como "una mezcla de runas, números y símbolos matemáticos que aparecen en un fuego verde brillante" (aunque podría haber sido el código objeto en el que se compiló el lenguaje similar), pero aquí hay algunos ejemplos de la API (comandos) que emite Wiz:

"class drone grep moria"
"$" said the Emac...
"exe," Wiz said...
Estoy muy contento de que hayan mencionado esta serie, la leí cuando era niño y me olvidé por completo, pero la disfruté mucho. Ahora a ver si los consigo...
@dwllama: si tiene una copia, ¿puede dar ejemplos de código?
@Malady: no se muestra el código fuente por lo que pude ver, vea la respuesta para obtener una descripción.

No sé si se puede considerar el tema, pero al principio y al final de Edward Wellen "No other gods" (1972) se enumeran algunas líneas de un código ficticio.
El idioma nunca se nombra, pero puede llamarse "QOGIC", ya que aparece en una sección de OBSERVACIONES en la primera página (ver más abajo). El lenguaje se parece casi exactamente a COBOL, excepto que los números de línea comienzan con la letra Q.

Q01010 IDENTIFICATION DIVISION.  
Q01040 PROGRAM-ID. 'END RUN.'  
Q01060 AUTHOR. COMPUTER.  
Q01080 INSTALLATION. COMMUNICATIONS CENTER AT GALACTIC HUB.  
Q01100 DATE-WRITTEN. YESTERDAY.
Q01120 DATE-COMPILED. TODAY.
Q01140 SECURITY. CLASSIFIED.
Q01160 REMARKS.
Q01161 THIS QOGIC PROGRAM IS FOR THE ESTABLISHING OF TOTAL
Q01162 ENTROPY.

Aquí está en Google Books .

Eso me parece COBOL (basado en un curso obligatorio que tomé hace unos 35 años).
No creo que los números de línea de COBOL comiencen con una 'Q' y creo que otros idiomas pueden haber usado un sistema numérico similar. Pero como este trabajo se publica 15 años después de una respuesta plausible que se publicó antes de esta respuesta, no estoy seguro de que esta respuesta agregue valor.
@JamesJenkins Las menciones de honor generalmente son bienvenidas como respuestas en SFF.SE

Probablemente no sea el primero, pero el más avanzado (o útil) es Furor. Es un lenguaje de programación de secuencias de comandos interpretadas desarrollado por Viola Zoltán (en el orden oriental de los nombres), también conocido como Poliverzum y Harold King o Fossil Codeger. Su propósito es ser utilizado (sin regalías) en sus nuevas novelas de ciencia ficción como lenguaje esotérico por algún imperio galáctico (solo he leído un libro de fantasía de él "Kajjám, a Tévedés", así que no sé más sobre sus libros de ciencia ficción, sin embargo, ese me gustó).

El lenguaje en sí es Turing-completo, tiene una sintaxis extraña y el autor prometió abrir su código fuente una vez que esté completo. Lanzó un intérprete binario preliminar para Linux (alojado por otra persona), que se puede descargar desde aquí (consulte el archivo .tar.bz2).

Es húngaro, he leído el libro antes mencionado en húngaro, pero se mudó a los EE. UU. y escribe sus nuevos libros en inglés.

La pregunta está buscando la más temprana, responda solo si cree que es la más temprana; de lo contrario, esta no es realmente una respuesta y más un comentario.
Dado que OP no definió cómo se entiende el "primer lenguaje de programación ficticio". AFAIK, es el primero que en realidad es un lenguaje de programación funcional con un intérprete que lo ejecuta, no solo una basura que inventó un escritor de ciencia ficción y parece un código.
Dado que Hex from the Discworld se da como ejemplo en la pregunta, estoy bastante seguro de que no se requería 'trabajar en el mundo real'.
Curiosamente, al crear un lenguaje de programación completo para sus historias de ciencia ficción, eso podría descalificarse a sí mismo como lenguaje de programación ficticio.
Bueno, élfico y klingon fueron creados para el arte. ¿Son lenguajes ficticios? Técnicamente existen, por lo que no lo son. Además, al crear un lenguaje y nombrarlo como el ganador, podrías descalificar cualquier lenguaje de programación ficticio.
Incluiría "creado para la ficción" como "ficticio". Pero, ¿vemos el código en la historia o se menciona por su nombre? Porque eso es más lo que cuenta.

@RossPresser ya mencionó "Babel-17" (1966) de Samuel Delaney, pero solo para notar que los lenguajes de la vida real ALGOL y FORTRAN aparecen en el texto. De alguna manera, no mencionó que Babel-17 es en sí mismo el nombre de un lenguaje ficticio. Inicialmente se presenta en la historia como un lenguaje natural que el protagonista debe aprender, pero en un punto importante de la trama se revela más tarde como un lenguaje de programación. Ahora podría decirse que no encaja porque las, er, 'máquinas' que se programan no son mecánicas sino otras criaturas sensibles. Pero cumple con el requisito de que un ser humano pueda componer un programa en Babel-17 que se ejecuta en otro lugar, específicamente en el cerebro de un adversario objetivo.

Gracias, no había pensado en eso.

1983, Superhombre III

Superman III (el artículo de DenOfGeek incluye capturas de pantalla y una discusión de exactamente este tema) presenta a Gus Gorman haciendo algo de codificación.

Si bien es claramente una variación de BASIC o LISP, igualmente claramente no tiene sentido funcional en ningún idioma conocido y, por lo tanto, por definición es un idioma ficticio. (Dentro del universo de todos modos; fuera del universo sabemos que es algo ensamblado para llenar una pantalla de manera suficientemente convincente para un par de segundos de película, por supuesto). El idioma en sí no se nombra en la película, sino en el universo. existe, aparentemente funciona y se puede ver cómo se ingresa.

¿Tienes alguna tapa de pantalla? Solo puedo recordar la escena de kryptonita donde escribe lenguaje humano y la computadora lo interpreta.
@AncientSwordRage El enlace de DenOfGeek incluye algunas capturas de pantalla de la sesión de entrenamiento de Gorman al comienzo de la película. He editado mi respuesta para aclarar esto.
Creo que incluso el artículo implica que es BÁSICO, a menos que lo haya leído mal.
Al programa dentro de un programa le faltan FORs y LETs, así que en el mejor de los casos es Syntax error in 10.
Eso es solo BÁSICO en la pantalla. Lo curioso es que la mayoría de las sentencias PRINT son las que imprimen... ¡más BÁSICO! Me deja con la duda de si fue preparado como una especie de broma interna.

Esto es para consideración ya que no creo que coincida completamente con los criterios de OP. En "Los mundos perdidos de 2001" (1972), uno de los borradores de guiones describe a uno de los astronautas pasando algunas horas modificando y probando el programa de la computadora de la nave para permitirle sacar una de las cápsulas, a pesar de que ninguno de los otros está consciente. El lenguaje de programación no tiene nombre, no se da ningún ejemplo y el borrador no se publicó.

En una de las secuelas, la arquitectura de HAL se describe en términos que la hacen sonar como una especie de máquina de flujo de datos, con la posibilidad de que el remedio que eliminó las psicosis de Hal pase por alto los "recuerdos en tránsito".

Por separado, en Imperial Earth (1975) creo que hubo un ejemplo de programación "si esto sucede, haz aquello" del PDA del protagonista. Nuevamente, no tengo mi copia a mano, así que no puedo verificar.

Para Imperial Earth, ¿quisiste decir este pasaje? "No había # ni EXECUTEsigno al final de las secuencias, pero eso no probaba nada en absoluto, ya que pocas personas se molestaron en escribir algo tan obvio; nueve de cada diez veces, se omitió como entendido. Sin embargo, una de las formas estándar de cancelar una ERASEorden secreta era pulsar EXECUTEdos veces en rápida sucesión. Otra era hacerlo con un intervalo definido entre las dos pulsaciones. ¿La omisión de Karl tenía algún significado, o simplemente estaba siguiendo la convención habitual?
Muy posiblemente, pero tendrá que disculpar mi vaguedad: mi copia es inaccesible (lo que no impide que sea uno de mis libros favoritos de Clarke).

ICE, de Burning Chrome (1982). ICE significa Electrónica de contramedidas de intrusión. Si bien se llama electrónica, la forma en que se usa en el libro lo describe claramente como un lenguaje de programación. Esto tiene sentido en el contexto de las computadoras que existían en ese momento, que a menudo serían circuitos lógicos codificados que se usaban para realizar tareas específicas, como la administración de cuentas bancarias y simulaciones de movimiento newtoniano; en otras palabras, el circuito para realizar el programa era el programa. Si bien no se da nombre a los idiomas en los que escriben los personajes, el libro deja en claro que las imágenes presentes en las alucinaciones del personaje son programas creados en ICE.

Muy bien, parece haber cierta confusión sobre qué es un lenguaje de programación. Tengo una visión muy amplia; un lenguaje de programación es un programa de computadora que proporciona una abstracción de un circuito lógico. Tenga en cuenta que no es lo que "crea" un programa de computadora; crea una abstracción para la lógica detrás del programa. Si quisiera, podría construir directamente cualquier programa de computadora que quisiera a partir de puertas AND, puertas OR y un búfer de almacenamiento de algún tipo, y de todos modos nunca es un lenguaje de programación el que hace la construcción real del programa; sólo sirve como reglas para la construcción. Los lenguajes de programación nos hacen la amabilidad de abstraer la idea de una cierta combinación de esas puertas en algo que tenga más sentido para los humanos. Bajo el encabezado de lo que considero un lenguaje de programación se incluyen Verilog, C, Python,

De acuerdo, me han votado en contra de los pozos del infierno de stackexchange, y aparentemente nadie más parece pensar que ICE es un lenguaje de programación. En lugar de eliminar la publicación, solo voy a ver hasta dónde podemos cavar este hoyo:

  • ¡ICE no es un lenguaje de programación, es una clase de software!

También lo son los IDE. Y también lo son los procesadores de texto, las aplicaciones de hojas de cálculo y los muchos juegos que incluyen funciones que permiten al usuario crear y ejecutar programas dentro del juego, que también considero lenguajes de programación en sí mismos, ya que crean una abstracción diferente de otros lenguajes de programación. su lógica subyacente. ICE obviamente representa la lógica subyacente de los sistemas de defensa en el mundo de Burning Chrome, y los personajes principales pueden modificarlo sobre la marcha a medida que trabajan hacia su objetivo.

  • ¡Los lenguajes de programación deben escribirse!

Ver: Scratch, Minecraft, Powerpoint

La idea de que un idioma debe estar escrito también puede parecer algo ofensiva para aquellos que hablan principalmente en un lenguaje basado en gestos como ASL, y parece un poco sordo considerando muchos de los muchos idiomas actualmente en uso. al borde de la extinción no están escritos - https://www.nytimes.com/1991/12/31/science/in-a-publishing-coup-books-in-unwritten-languages.html

  • ¡Neuromancer vino antes de Burning Chrome!

Si y no. Burning Chrome, la historia corta, se lanzó en 1982, Neuromancer se lanzó en 1984 y Burning Chrome, la compilación de historias cortas, se lanzó en 1986. Consulte https://omnimagazine.com/take-agency/

ICE parece ser un programa y no un lenguaje de programación. Como un cortafuegos malo. En la última mitad de su respuesta, incluso dice que: "mientras no se da ningún nombre...". Lo de la electrónica dedicada, es ciencia ficción, así que tal vez el Sr. Gibson estaba pensando eso, pero probablemente no. De verdad, a fines de la década de 1970 había computadoras bancarias especiales, pero aún estaban programadas.
Tienes que leer la historia para entender lo que quiero decir aquí. Gibson nunca describe "un ICE" cuando habla de las abstracciones visuales en su libro; dice "muros de ICE", "los pasillos de ICE de Chrome", "castillo de ICE", "su ICE más sofisticado está estructurado para defenderse de las órdenes de arresto". El uso de ICE en el contexto de las frases que usa el autor deja en claro que ICE es de lo que se construyen gran parte de las estructuras lógicas del universo de la historia, que es algo que ahora llamaríamos un lenguaje de programación. Todo lo que dije fue que Gibson nunca nombró su lenguaje anti-ICE.
Su último libro, Neuromancer, se expande sobre ICE, cubiertas, ciberespacio... y es famoso. Encontrará muchas descripciones de ICE como programa de seguridad . En cuanto a los muros de hielo, los piratas informáticos conectados ven el ciberespacio como un mundo virtual: un muro de ICE es algo así como un muro de Minecraft de RedStone.
No hay suficiente espacio en estas secciones de comentarios para dar una explicación completa de mi proceso de pensamiento aquí, así que creo que tendremos que estar de acuerdo en discrepar respetuosamente en este punto. He leído Neuromancer, y fue ese libro, de hecho, el que mejor describe ICE como lenguaje, al menos en mi opinión. Burning Chrome fue solo la primera aparición de ICE y, por lo tanto, más relevante para esta discusión.
ICE está claramente programado , claro, pero no es un idioma. Es una construcción que hace algo. En algún lugar, ha ocurrido algo de programación y el ICE es el resultado final, pero es una cosa y no un lenguaje. La obra Macbeth está construida con palabras en inglés, pero eso no convierte a la obra en un idioma. Y no, Gibson nunca describe el proceso de codificación excepto en el sentido más general.
Muy bien, he aclarado mi respuesta. Esperemos que esto aclare algunas cosas.
No creo que esto cumpla con la definición de un idioma, que requiere escritura.
Burning Chrome NO es anterior a Neuromancer .
Y ICE no es un idioma, ni un programa específico. Es una clase de software, como "procesador de textos" o "software de hoja de cálculo".
Sí, Burning Chrome se lanzó antes que Neuromancer ( omnimagazine.com/take-agency ). Estás pensando en el volumen de cuentos de 1986 del mismo nombre. Y no tiene por qué haber una diferencia entre una clase de software y un lenguaje de programación. Como mencioné, muchos videojuegos y procesadores de texto tienen características que permiten al usuario programar a un alto nivel, por lo que pueden denominarse lenguajes de programación dentro de mi definición del término.
@ odd135 Lo siento, no sabía sobre el cuento anterior. Supongo que no está del todo equivocado sobre lo que dice sobre los programas programables individuales, pero al menos no me ha convencido de que ICE califique. Es una categoría demasiado amplia. Se puede hablar de VBA, el lenguaje (anteriormente) utilizado por los programas de MS Office, sin llamar a MS Office un lenguaje de programación. Tampoco creo que convenza a la mayoría de los demás lectores de esta pregunta, y es por eso que su respuesta ha sido seriamente rechazada. (Aunque no por mí.)
@ odd135 "¡Los lenguajes de programación deben escribirse!" No creo que sea necesario sondear^H^H^H^H^H escalar las alturas de la corrección política para discutir esto. OP dijo que no debería ser simplemente un conjunto hablado de instrucciones y la implicación era que debería ingresarse a través de algún tipo de terminal; Sugiero que dado que APL es un lenguaje informático de buena fe y dado que creo que hay un lenguaje de programación ruso que usa cirílico, también sería justo considerar lenguajes informáticos basados ​​en caracteres árabes o chinos, por lo que las descripciones de alto nivel como Scratch son completamente juego justo.