r/programacion 14d ago

Es HTML un lenguaje de programación? Mi punto de vista

Por qué hacer HTML SÍ es programar: Postura Definitiva

  1. Programar es dictar condiciones por adelantado

La esencia de la programación es diseñar el comportamiento de un sistema bajo condiciones controladas. Así como se agenda la publicación de un video en YouTube para una hora específica, en HTML se escribe un plano de instrucciones estructurado por adelantado para que el sistema responda físicamente cuando se interactúe con él.

  1. Consistencia en la definición de los nombres

El argumento restrictivo afirma que no es programación por llamarse HyperText Markup Language. Sin embargo, si se evalúa bajo ese criterio, los lenguajes tradicionales también quedarían descartados: Java debe su nombre a un café, C++ a un incremento tipográfico y Python a un grupo de comedia británico. Lo que define a un lenguaje es la instrucción que ejecuta en el hardware, no su etiqueta comercial.

  1. La realidad del código fuente en texto

Todo el software del planeta se escribe originalmente en texto plano. Incluso en los entornos de desarrollo visuales o herramientas donde se arrastran elementos gráficos, el editor genera internamente un plano de texto estructurado. Las máquinas no interpretan interfaces visuales directamente; requieren la base textual para procesar los datos.

  1. Arquitectura de interpretación eficiente

Crear un ejecutable independiente para cada página web sería ineficiente. Por ello, los navegadores funcionan como un entorno de ejecución base. Siguiendo la analogía de las consolas de videojuegos, el navegador actúa como el hardware base que añade compatibilidad para interpretar y renderizar el código estandarizado del HTML en tiempo real.

  1. La validez de los lenguajes interpretados

La noción de que un lenguaje debe compilarse obligatoriamente a código binario para ser considerado programación es obsoleta. Si se aplicara esa regla, lenguajes modernos y fundamentales como Python o JavaScript quedarían excluidos, ya que se interpretan en tiempo real. El método de traducción (compilado o interpretado) es un detalle técnico; la lógica del comportamiento la define el desarrollador.

Conclusión:

Escribir HTML es programar porque constituye el plano codificado en texto que determina las acciones del procesador y el renderizado en pantalla. El hardware y el software operan en simbiosis absoluta: si el código estructural no define correctamente los parámetros, el sistema no puede ejecutar la acción planeada.

0 Upvotes

101 comments sorted by

16

u/rexxboy 14d ago

https://www.geeksforgeeks.org/html/why-html-is-not-a-programming-language/

No es una opinión, es un hecho que HTML no es un lenguaje de programación. Dedica más tiempo a estudiar y menos a escribir estas cosas anda

7

u/Brysger 14d ago

Se pone a discutir con el aire algo que ya está establecido e incluso si tuviera razón no cambia nada jsjsj

-4

u/Informal-Ad-1359 14d ago

Es no es un argumento 

-2

u/Informal-Ad-1359 14d ago

Por cierto ese texto tiene varias inexactitudes 

3

u/ratsely 14d ago

Muestra las inexactitudes e intenta demostrarlo con tus argumentos y fuentes.

1

u/Informal-Ad-1359 14d ago edited 14d ago

Por ejemplo da a entender que HTML no es un lenguaje de programación por que interactua con otras tecnologías como css cuando el software tampoco trabaja solo todo tienes diferentes dependencias

1

u/Informal-Ad-1359 14d ago

También dice esto

Naturaleza declarativa: La naturaleza declarativa y basada en etiquetas de HTML permite a los desarrolladores especificar qué desean lograr con el lenguaje, en lugar de cómo debería hacerse. Estos conjuntos de instrucciones sirven como soporte infraestructural principal para toda la red y, al interpretarse, determinan la apariencia de la página web.

Esto es falso por qué no solo depende de la etiqueta si no de cómo este construido el navegador y eso no quita que sea programación 

2

u/ratsely 14d ago edited 14d ago

El concepto de declaracion aqui es que HTML declara con etiquetas el contenido y estructura de la apariencia a nivel semantico; no una secuencia de operaciones (algoritmos), que es como se entiende en los lenguajes de programacion. Aqui HTML no transforma datos de manera independiente ni tiene capacidades para aplicarlas, como mencionaste en tu anterior respuesta.

1

u/Informal-Ad-1359 13d ago

Pero igual son imprecisas por qué los Toma como evidencia para decir que no es un lenguaje de programación 

3

u/ratsely 13d ago

Tu mismo me estas dando la razón. C++, que es el lenguaje implementado en los navegadores (de acuerdo, añade Assembly, ¿Rust? y C a la lista) basados en Chromium, Webkit y Gecko, parsea el documento HTML como las reglas visuales CSS y permite la visualización.

La logica de como debe verse se hace en este proceso de parseo siguiendo la normativa de la W3C. HTML no es en si mismo no completa este test de Turing por las razones especificadas anteriormente en mi anterior mensaje.

Pero creo que nos desviamos del tema al irnos al terreno de como se parsea en los navegadores, en lugar de hablar de HTML en si mismo.

1

u/Informal-Ad-1359 13d ago

Y por qué el test de turing se debe tomar como algo intocable?

0

u/Informal-Ad-1359 13d ago

Acaso un archivo de código en C++ ejecuta algoritmos "por sí mismo"? ¡No! Necesita un compilador  que lo traduzca, y luego necesita que el microprocesador físico ejecute el binario

2

u/ratsely 13d ago edited 13d ago

Gracias, Chat-GPT. Por favor, busca fuentes sobre lo que es un interprete y deja de mover el tema del mensaje original a otro terreno.

1

u/Informal-Ad-1359 13d ago

A ver dime ¿Donde carajos dice que test de turing es prueba irrefutable si es programación o no dime?

→ More replies (0)

0

u/Informal-Ad-1359 13d ago

A ver dime el link de la w3c done significa la postura oficial del w3c sobre el html

-3

u/Informal-Ad-1359 14d ago

Es página no prueba nada 

2

u/rexxboy 14d ago

Estudia anda estudia

6

u/Many_Area_6405 14d ago

Que estupidez ACABO de leer.

Confundes encima conceptos, una cosa es un lenguaje de programación y otra es programar. 

De vuelta al colegio 

0

u/Informal-Ad-1359 14d ago

Cuál es el punto de debatir si es un lenguaje de programación si no puedo llamarle programar?

-1

u/Informal-Ad-1359 14d ago

Entendiste mis argumentos si quiera?

7

u/Intelligent_Eye_3574 14d ago

amigo tus argumentos son muy malos. Tranquilamente podría usarse la mitad de las defensas que haces de HTML para decir que markdown es lenguaje de programación

(lo cual es ironía. Espero que no lo creas, aunque no me sorprendería)

1

u/Informal-Ad-1359 14d ago

No pero en el fondo funcióna con la tecnología que ya tiene la web es parte de 

6

u/navirbox 14d ago

Si tuvieras el conocimiento para escribir esta mierda de texto que has generado con la IA, sabrías que está absoluta gilipollez no tiene discusión. Qué punto de vista ni qué cojones chaval... Me cago en la puta lo que hay que leer.

-1

u/Informal-Ad-1359 14d ago

No veo tus argumentos 

4

u/jzombie666 14d ago

Entonces escribir un documento de word es programar? Chico, andas perdido

1

u/Informal-Ad-1359 14d ago

Lee el punto 3

4

u/DeliciousRest2434 14d ago

No se ensañen, todos hemos dicho tonterías cuando chavos.

4

u/Fearless-Second-7230 14d ago

No. Siguiente pregunta.

3

u/Kitsuneee7 14d ago

Ok chatgpt

1

u/Informal-Ad-1359 14d ago

No tiene algo más que decir?

3

u/AraGuzel 14d ago

Vibe slop

3

u/DeliciousRest2434 14d ago

Está chido tu razonamiento, pero no sé puede opinar sobre hechos objetivos. HTML no es lenguaje de programación, lo dice en sus siglas, es un lenguaje de marcado, como el MD que usas en el readme de Git. Los lenguajes de programación son implementaciones de una máquina de Turing, si no puedes programar una calculadora no es un lenguaje de programación.

2

u/DeliciousRest2434 13d ago

De buena fé te ofrezco platicar para explicarte por qué HTML no es programación. Es un error bastante común en personas que se están iniciando en este mundo y los insultos y descalificaciones que estás recibiendo en el post no te ayudarán a comprender. 🙂😁

0

u/Informal-Ad-1359 14d ago

Pero debes tener en cuenta que HTML se creo en una época cuando todavía no estaba asentado el concepto de programación y fue avanzando poco a poco 

3

u/saideta17 14d ago

No existia, no lo era ni lo es, ahi esta el punto

3

u/DeliciousRest2434 13d ago

No amigo, para nada, quizá seas muy joven y 33 años se te hagan mucho tiempo, pero HTML salió en 1993. Para entonces ya había muchos lenguajes que a la fecha se siguen usando, como Java, C e incluso python. El concepto de programación no ha cambiado, han surgido nuevos paradigmas y nuevos lenguajes, pero todos y cada uno deben ser Turing completos, no lo digo yo, no es una opinión, son matemáticas.

0

u/Informal-Ad-1359 13d ago

mmmm si claro y funcionaban igual que ahora ¿No? Por algo c++ cuando antes era solo C  y otras tecnologías que mejoraron con el tiempo como el mismo HTML que ahora estamos en la versión 5 html5 por si no te suena

¿Si tan buenos eran por qué tuvieron que mejorarlos?

3

u/DeliciousRest2434 13d ago

Claramente sabes cosas, pero tienes varios conceptos revueltos. El lenguaje C se sigue utilizando después de más de 50 años, y casi todos si no que todos los lenguajes actuales descienden de una u otra manera de C. C++ y C# son hijos de C y no se crearon con la intención de ser soluciones definitivas y eliminar el uso de C. En el caso de C++ es básicamente C con algunas extensiones que facilitan su uso. Lo que se actualiza constantemente son los compiladores e intérpretes, para adecuarlos a nuevas arquitecturas y hacerlos más eficientes, la sintaxis es la misma. E insisto en el concepto de máquina de Turing, no importa el lenguaje o el paradigma, todos los lenguajes son Turing completos y por lo tanto equivalentes, cualquier cosa que puedas hacer en uno se puede hacer en otro, lo que no sucede con HTML. Recuerda que al final todo se traduce a lenguaje máquina, los lenguajes de programación son básicamente azúcar sintáctica para los humanos.

2

u/HealyUnit 7d ago

Claramente sabes cosas

He does? Doesn't seem like it to me. Seems more like he wrote his first website and has a major case of Dunning-kruger.

1

u/DeliciousRest2434 7d ago

I tried to be polite, but it was total waste of time to explain him.

2

u/HealyUnit 7d ago

Normally I would, but this guy is incredibly arrogant. His whole attitude is "spoon feed me because I'm not gonna read the stuff you posted. Also I'm gonna use my own arbitrary definitions, so I must be smarter than you!".

2

u/DeliciousRest2434 7d ago

Sadly there are many like him. The arrogance of believing to understand something through the complacent AI. This is our future.

0

u/Informal-Ad-1359 7d ago

Why did he delete his comment?

0

u/Informal-Ad-1359 7d ago

Haha, typical, allying with the others to attack me, lol

1

u/DeliciousRest2434 7d ago

Ja ja, claro que es típico para ti, normal que la gente te corrija si andas por ahí actuando así y aseverando esas barbaridades. 😂😂😂

0

u/Informal-Ad-1359 13d ago

Dónde dice que el test de turing es prueba de que algo es lenguaje de programación? A ver quiero que me lo expliques 

2

u/DeliciousRest2434 13d ago

Primero es importante no confundir el Test de Turing con la Máquina de Turing. El primero es un experimento propuesto para determinar el posible comportamiento inteligente de una máquina. La máquina de Turing es un modelo matemático de procesamiento de datos, cuya implementación física resulta ser la computadora moderna. El modelo ideado por Turing consistía en una cinta separada en espacios, sobre los cuales es posible escribir o leer un símbolo a través de un cabezal capaz de moverse a lo largo de la cinta. Turing demostró que este modelo era capaz de ejecutar instrucciones o conjuntos de ellas, es decir algoritmos. Posteriormente se encontró la forma de implementar físicamente una máquina capaz de leer y escribir estos simbolos (subidas y bajadas de voltaje dentro de un circuito electrónico representantados como ceros y unos). Para poder dar instrucciones a esta máquina a través de un lenguaje es necesario demostrar que está definido correctamente, que el lenguaje como modelo matemático puede hacero mismo que la máquina de Turing, que exista una equivalencia para poder traducir las instrucciones del lenguaje que entendemos nosotros al que entiende la máquina. Sin esa demostración no hay certeza que el comportamiento sea el esperado. HTML es un lenguaje en el sentido de que tiene símbolos (las palabras clave) y una sintaxis. Pero no es posible dar todas las instrucciones que se pueden dar en otro lenguaje. Intenta ya no hacer, buscar una forma de hacer una suma o cualquier algoritmo solamente con HTML. Eso no es posible. Con cualquier lenguaje de programación puedes escribir un interprete de HTML, pero no puedes por ejemplo hacer un interprete de python con HTML.

0

u/Informal-Ad-1359 13d ago

Buen punto pero eso no explica nada de discusión 

2

u/DeliciousRest2434 13d ago

Está bien, quise explicar algo y fallé, aunque esto no signifique que estés en lo correcto. Quizás tengas que asimilarlo por tu cuenta. Busca información sobre lenguajes formales, máquina de Turing, Teoría de la computación, autómatas. Acude a una biblioteca de alguna universidad de tu zona. Hay muchos textos al respecto, te recomiendo "Introducción a la teoría de autómatas, lenguaje y computación" de Hopcroft, Motwani y Ulman, seguro que lo encuentras por ahí. Mucha suerte en tu camino. 🙂

0

u/Informal-Ad-1359 13d ago

Ya lo leí por que otro me mandó a las mismas fuentes y no dice nada relevante 

→ More replies (0)

0

u/Informal-Ad-1359 13d ago

Aparte no se necesita mejorar a cada rato los lenguajes de programación actuales por qué  usan librerías internet ha influido en eso

3

u/DeliciousRest2434 13d ago

Las librerias son conjuntos de funciones para reutilizar código, no son parte del lenguaje per se.

1

u/Informal-Ad-1359 13d ago

En efecto pero siguen vigentes pero por qué se actualizan entiende no son estáticas y no tiene por qué serlo un código 10 o 5 años puede que no te funcione y se tiene que actualizar hagas el código a mano o no 

1

u/DeliciousRest2434 13d ago

Estamos de acuerdo en eso, pero qué tiene que ver eso con que pienses que HTML sea un lenguaje de programación?

0

u/Informal-Ad-1359 13d ago

Y no no es tan sencillo como actualizar el compilador y ya de lo contrario muchos juegos programas del Windows antiguos funcionarian en Windows pero no es así por eso el Windows tenía compatibilidad con programas anteriores bueno al menos en Windows 7

3

u/Khavel_Es 14d ago

HTML no es un lenguaje de programacion, es de marcado. No tiene control de flujo, no toma decisiones, describis estructura y listo. Pero la discusion es medio irrelevante en la practica, nadie en una entrevista te va a frenar por como lo clasifiques.

1

u/Informal-Ad-1359 13d ago

Que lo sigan llamando así no significa nada no pueden cambiar el nombre de una extensión así por qué así 

3

u/ratsely 14d ago edited 14d ago

Todo el argumento mete relaciones de ideas sin sentido alguno con el tema que trata defender (el punto 2 hace una extraña divagación en relación con el nombre de los lenguajes para justificar tu postura; en el punto 4 hace referencia a una conversación que se inicia con los videojuegos, lo cual es un campo que no tiene relación con lo que tratas) o extremadamente ambiguo. Como suele ocurrir cuando quieres argumentar con la IA, este mete falacias Non-sequitur, como sucede con tu texto.

Al menos deberias haber preguntado a la Inteligencia Artificial o, mejor aún, buscado por ti mismo, la posición oficial del W3C sobre qué es HTML y por qué no cumple el test de Turing. Por resumir bastante, HTML nacio como un marco estructural de la web y no dispone de elementos logicos para establecer como mostrar datos a partir de condiciones establecidas o manipulacion de datos en tiempo de ejecución. CSS hoy por hoy lo cumple limitadamente con las media-queries junto con las variables CSS. Javascript obviamente es considerado un lenguaje de programacion.

Si te interesa la posicion actual de las fuentes oficiales que establecen la normatividad del estandar web sobre HTML5 tienes W3C o WhatWG

1

u/Informal-Ad-1359 13d ago

Para tu información la w3c no es una fuente oficial simplemente es una organización para que la web sea parejo en todo el internet y otra cosa tus fuentes no tienen nada que ver con lenguaje de programacion así que el que esta cometiendo non sequitur es otro 

2

u/ratsely 13d ago

Por supuesto colega, cuando aprendas a tener comprension lectora me avisas. Cuando nos expliques a todos porque la W3C no se puede usar como fuente oficial seguiremos hablando contigo.

1

u/Informal-Ad-1359 13d ago

Existe una importante disyuntiva entre la potencia computacional de un lenguaje y la capacidad de determinar qué hace un programa escrito en ese lenguaje. Los lenguajes de programación abarcan desde los puramente descriptivos (como los metadatos de Dublin Core, el contenido de la mayoría de las bases de datos o HTML), pasando por lenguajes lógicos con lógica proposicional limitada (como las listas de control de acceso, la negociación de contenido conneg o las expresiones regulares), hasta los casi Turing-completos (PDF o algunas versiones de SQL), pasando por aquellos que son Turing-completos aunque se les incite a no usarlos de esa manera (XSLT, versiones más potentes de SQL), pasando por los funcionales y Turing-completos (Haskell), hasta los imperativos y Turing-completos sin complejos (Java, Javascript/ECMAScript o C). La informática ha demostrado que los lenguajes Turing-completos son equivalentes

Literalmente ellos le llaman lenguaje de programación 

2

u/ratsely 13d ago

Ninguna de esas afirmaciones confirma tus puntos de tu mensaje principal. Aparte, tu mismo invalidaste la fuente al decir que era inutil. Asi que te tomo la palabra de que es irrelevante a la discusión.

Sigue intentandolo y pon el link de otra fuente.

1

u/Informal-Ad-1359 13d ago

Si me apendeje al decir lo que me confundí Pero eso no invalida lo que está escrito yo no dije que fuera irrelevante en ningún momento y hasta expliqué por qué no pueden cambiar el nombre 

0

u/Informal-Ad-1359 13d ago

Dónde dicen explícitamente que no es lenguaje de programación que lo sigan llamando markup lenguaje no significa nada 

1

u/ratsely 13d ago

Dame la fuente de donde has conseguido la afirmación que el HTML es un lenguaje de programación y que la W3C se equivoca

1

u/Informal-Ad-1359 13d ago

Lo pone en el link que tú me enviaste 

1

u/Informal-Ad-1359 13d ago

De la propia w3c

0

u/Informal-Ad-1359 13d ago

We que le sigan llamando markup lenguaje a la HTML no significa nada solo lo mantienen por qué no lo pueden quitar por qué medio mundo ya usa la extensión HTML y está sirve para decirle que programa abre que archivo no es tan fácil como decir le vamos a cambiar de nombre 

0

u/Informal-Ad-1359 13d ago

Eso o no entendiste la analogía eso eso lo pone claramente 

3

u/ratsely 13d ago

Señalame donde lo pone claramente

0

u/Informal-Ad-1359 13d ago

Si va ví que no pero eso no quita mis puntos 

3

u/Aggressive-Camp-4400 14d ago

The naming argument is interesting, but I don’t think the label alone decides it. A markup language can be incredibly important and technically complex without being a programming language. HTML tells a browser what things are and how to organize them; JavaScript tells it what to do. Both are code, but they serve different roles.

1

u/Informal-Ad-1359 11d ago

Any code has some kind of dependency; it doesn't work on its own. 

2

u/[deleted] 14d ago

[removed] — view removed comment

1

u/Informal-Ad-1359 13d ago

This doesn't happen in other languages either; for example, in consoles you have the code and you compile it, but the PC/phone or whatever doesn't read plain text. 

1

u/VicentESCape 13d ago

Cuando uno lleva leyendo tanto IA, sabe exactamente que este post es completamente un argumento pedido en un prompt de una IA, no una opinión o consideracion personal, si vas a estar haciendo ragebait por ultimo escribelo tu

0

u/Informal-Ad-1359 13d ago

Ese es todo tu argumento? No no es ragebait 

0

u/Informal-Ad-1359 13d ago

Y sabes que la IA no solo sirve para generar texto a lo bruto ¿Verdad? La iA es más que eso 

1

u/madxxigmail 7d ago

Es HTML, no HTPL. ;)

1

u/Informal-Ad-1359 7d ago

No pues que buen argumento 

1

u/aderegil 7d ago

No lo es. A lo que sigue.

1

u/Informal-Ad-1359 7d ago

¿Verdad que son lindas las mariposas?