Claude No es un Compilador

Las afirmaciones de que modelos de lenguaje grandes como Claude pueden reemplazar compiladores o equipos completos de ingeniería reciben aquí un fuerte escepticismo. Los comentaristas argumentan que los LLMs son potentes generadores de código y herramientas de prototipado, pero carecen del determinismo, la previsibilidad y la semántica bien definida de los compiladores, lo que los hace poco adecuados como base para sistemas fiables sin supervisión humana, especificaciones formales y suites de pruebas sólidas. Gran parte del intercambio se centra en hasta dónde puede llevarse el “vibe coding” en producción, qué tipos de decisiones de software pueden delegarse de forma segura a la IA y si el desarrollo guiado por especificaciones o por prompts puede alguna vez sustituir el diseño y la revisión tradicionales.

LLMs vs Compiladores

  • Muchos sostienen que los LLMs no son compiladores: los compiladores son deterministas, mapean un lenguaje fuente bien definido a un lenguaje objetivo bien definido y, en su mayor parte, preservan la semántica operacional.
  • Los LLMs generan código probabilísticamente a partir de lenguaje natural subespecificado, pueden cambiar drásticamente su comportamiento con pequeños retoques del prompt y quizá no preserven el significado previsto.
  • Algunos siguen encontrando útil la analogía de “LLM como compilador” en un sentido laxo e histórico: ambos cambian cómo se produce el software, y ambos pueden transformar descripciones de más alto nivel en artefactos de más bajo nivel.
  • Otros sugieren que los LLMs se parecen más a intérpretes, transpilers o “cargo cult developers” que a compiladores.

Determinismo, Caos y Algoritmos

  • El determinismo se destaca como diferenciador clave: los compiladores producen la misma salida para la misma entrada; los LLMs normalmente no.
  • Incluso si se hacen deterministas, los LLMs siguen siendo “caóticos”: pequeños cambios en el prompt pueden producir programas completamente distintos, a diferencia de la mayoría de los cambios en el código fuente con compiladores.
  • Hay debate sobre qué es un “algoritmo”; algunos señalan que, en un sentido amplio de computabilidad, tanto los compiladores como los LLMs son algoritmos, pero los compiladores son deductivos y los LLMs inductivos/heurísticos.

Especificaciones, Prompts y Proceso de Desarrollo

  • Varios rechazan la idea de que una especificación larga “simplemente exista” y luego se alimente a un LLM; las especificaciones y el código coevolucionan mediante bucles de retroalimentación.
  • A menudo se considera que los prompts son especificaciones subespecificadas; los LLMs son buenos rellenando vacíos, pero pueden tomar decisiones de diseño ocultas y con consecuencias.
  • Algunos imaginan futuros en los que las especificaciones de más alto nivel sean centrales, con compilación determinista a código y garantías tipo lockfile, posiblemente con LLMs ayudando a redactar especificaciones y pruebas.
  • Otros contraargumentan que las especificaciones no son realmente “de más alto nivel” que el código, comparándolas con garabatos burdos frente a una pintura terminada; las decisiones de implementación siguen siendo cruciales.

Vibe Coding y Calidad del Código

  • Quienes lo apoyan elogian el “vibe coding” por la rápida creación de prototipos y la configuración de infraestructura con poca fricción, especialmente para proyectos pequeños o de bajo riesgo.
  • Los críticos desconfían de la actitud de “no leas el código”, relatan malas experiencias con software generado así y se preocupan por errores sutiles y a largo plazo, así como por la falta de conocimiento del dominio.
  • Existe una tensión entre revisar todo el código generado por IA (perdiendo velocidad) o confiar solo en pruebas (arriesgando sistemas incompletos o incorrectos).

Preocupaciones sobre DNS y Sistemas Distribuidos

  • Un subhilo importante analiza el sistema distribuido de DNS personalizado descrito:
    • Discusión sobre propagación de DNS, cachés, TTLs y caché negativa (NXDOMAIN).
    • Algunos creen que el enfoque es razonable si los TTLs se ajustan bien; otros dicen que las cachés upstream siguen dominando y cuestionan qué problema se está resolviendo realmente.
    • Se sugieren alternativas como registros comodín, anycast y software DNS existente; no queda claro por el hilo cuánto beneficio real aporta el sistema a medida.

Herramientas Probabilísticas, Verificación y Riesgo

  • Los LLMs se comparan con máquinas de Turing probabilísticas o algoritmos de Las Vegas: no deterministas, pero con una distribución de exactitud.
  • Para algunos, la no determinación es una característica (como UDP, SGD, la ejecución especulativa) si se combina con verificadores sólidos: pruebas, benchmarks, métodos formales.
  • Otros enfatizan que el hype actual en torno a los LLMs minimiza las tasas de error y que los mecanismos robustos de evaluación de riesgos y corrección siguen siendo inmaduros.

Ecosistema, Energía y Escepticismo frente al Hype

  • Algunos comentarios ven el blog como marketing de “picos y palas” para el boom de la IA, enmarcando la historia como una anécdota interna pulida de éxito.
  • Se cuestiona cuánto tiempo se ahorró realmente, cómo envejecerán las decisiones de producto tomadas por la IA y cómo medir los costes a largo plazo.
  • Hay un breve desacuerdo sobre el uso de energía: un lado critica “quemar sangre de dinosaurio” para evitar la colaboración humana; otro descarta los argumentos de “la energía es mala” como anti-humanos y prefiere más energía como señal de progreso.