Hola mundo

Programa "Hola Mundo" escrito en el lenguaje C++.

Hola, mundo u ¡Hola, mundo! (en inglés: Hello, World!), en informática, es un programa que muestra el texto «¡Hola, mundo!» en un dispositivo de visualización, en la mayoría de los casos la pantalla de un monitor. Este programa suele ser usado como introducción al estudio de un lenguaje de programación, siendo un primer ejercicio típico, y se considera fundamental desde el punto de vista didáctico.

En algunos lenguajes, configurar un conjunto de herramientas básicas completo, desde cero hasta el punto en que los programas triviales puedan ser compilados y ejecutados involucra una cantidad de trabajo sustancial. Por esta razón, generalmente es usado un programa muy simple para probar un nuevo conjunto de herramientas.

En los sistemas basados en microcontroladores empleados para el aprendizaje, se suele considerar Hola mundo el programa que permite poner en modo intermitente un led.[1]​ El programa consiste en mandar alternativamente un nivel alto y uno bajo por uno de los puertos del sistema, dando a cada uno de dichos niveles un valor de retardo.

Historia

Hello_World_Brian_Kernighan_1978
Programa "Hello, World!", por Brian Kernighan (1978)

Si bien han existido pequeños programas de prueba desde el desarrollo de las computadoras programables, la tradición de usar la frase «¡Hola, mundo!», como mensaje de prueba fue influenciado por un programa de ejemplo en el libro de 1978 El lenguaje de programación C, [2]​ pero no hay evidencia de que se haya originado allí. El programa de ejemplo en ese libro imprime hello, world, y fue heredado de un memorando interno de 1974 de Bell Laboratories por Brian Kernighan, Programming in C: A Tutorial:[3]

main( )
{
    printf("hello, world");
}

En el ejemplo anterior, la función main() define dónde debe comenzar a ejecutarse el programa. El cuerpo de la función consta de una sola declaración, una llamada a la función printf, que significa «formato de impresión». Esta función hará que el programa genere cualquier cosa que se le pase como parámetro, en este caso la cadena hello, world.

HolaMundoScratch
Programa "Hola mundo" en Scratch.

La versión en lenguaje C fue precedida por el propio A Tutorial Introduction to the Language B de Kernighan de 1972, donde la primera versión conocida del programa se encuentra en un ejemplo utilizado para ilustrar variables externas:

main( )
{
    extern a, b, c;
    putchar(a); putchar(b); putchar(c); putchar('!*n');
}
 
a 'hell';
b 'o, w';
c 'orld';

El programa imprime hello, world en el terminal, incluido un carácter de nueva línea. La frase se divide en múltiples variables porque en B una constante de carácter está limitada a cuatro caracteres ASCII. El ejemplo anterior en el tutorial imprimió hi en el terminal, y la frase hello, world se introdujo como un saludo un poco más largo que requería varios caracteres constantes para su expresión.

The Jargon File afirma que «hola, mundo» se originó, en cambio, con BCPL (1967).[4]​ Esta afirmación supuestamente está respaldada por las notas archivadas de los inventores de CPL, Christopher Strachey y BCPL, Martin Richards en Cambridge. La frase es anterior en más de una década a su uso en informática; ya en la década de 1950, era el eslogan del disc jockey de la radio de Nueva York, William B. Williams.

Ejemplos

with Ada.Text_IO;
procedure Hello is
begin
   Ada.Text_IO.Put_Line ("Hello, World!");
end Hello;
10 PRINT "Hello, World!"
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    printf("Hello, World!\n");
    return EXIT_SUCCESS;
}
#include <iostream>
using namespace std;
int main()
{
  cout << "Hello, World!" << endl;
  return 0;
}
using System;

namespace HelloWorld
{
    class Program
    { 
        public static void Main(string[] args)
        {
            System.Console.WriteLine("Hello, World!");
        }
    }
}

o usando instrucciones de nivel superior (a partir de C#v9):[5]

Console.WriteLine("Hello, World!");
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
PROCEDURE DIVISION.
    DISPLAY 'Hello, World!'.
    STOP RUN.
." Hello, World!" CR
program Hello
  print *, "Hello, World!"
end program Hello
public class Main {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

Para consola de navegador/Javascript runtime (Como por ejemplo Node.js):

console.log("Hello, World!");

para un documento HTML:

document.write("Hello, World!");

o

alert("Hello, World!");

o como función en JS:

export function helloWorld(){return "Hello, World!";}
program hello(output);
begin
    writeln('Hello, World!');
end.
main() :- write("Hello, World!"), nl.
puts "Hello, World!"
fn main() {
    println!("Hello, world!");
}
print("Hello, world!")
print("Hello, world!")
print("Hello, world!");
print("Hello, World!")

Referencias

  1. González, Juan (2008). «Taller de Robótica Básico - Skybot v1.4. - SESION 3 - “Hola mundo“ en Linux». Consultado el 12 de abril de 2009. 
  2. Kernighan, Brian W. (1978). The C Programming Language (en inglés) (1st edición). Englewood Cliffs, NJ: Prentice Hall. ISBN 0-13-110163-3. 
  3. Kernighan, Brian (1974). Bell Labs, ed. «Programming in C: A Tutorial». 
  4. «BCPL». Jargon File. 
  5. BillWagner. «Instrucciones de nivel superior: programas sin métodos Main». learn.microsoft.com. Consultado el 13 de febrero de 2023. 

Enlaces externos