Hola a todos, me presento y comparto el proyecto que se ha vuelto mi obsesión. Para los que prefieren un resumen técnico, aquí va en formato comentario de código: // Name: AtomiJD // Coding Since: 1976 APL on IBM 5100 // Current Stack: C++, Python, C# // Core Passion: Building programming languages
Mi primera experiencia con la programación fue en un IBM 5100 usando APL. Pero esto no es solo memoria histórica. La pregunta que planteo es simple: y si BASIC no hubiera dejado de evolucionar y hubiera adoptado ideas de APL, Python y LISP y además se hubiera preparado para la era de la inteligencia artificial?
El sprint de desarrollo
El resultado de ese experimento es jdBasic, un intérprete creado en un intenso maratón de código de dos meses. No fue un trabajo solitario a oscuras, fue un proceso colaborativo con modelos de IA como asistentes de diseño. El objetivo fue combinar la simplicidad retro con potencia moderna.
Qué es jdBasic y sus rasgos principales
jdBasic es un intérprete moderno fácil de aprender y suficientemente potente para tareas complejas. Sus características más destacadas incluyen programación orientada a arrays inspirada en APL, un núcleo funcional con funciones de orden superior y lambdas, sintaxis para estilo orientado a objetos mediante TYPE ENDTYPE, un motor 2D para crear juegos retro con sprites y tilemaps, programación reactiva tipo hoja de cálculo con un operador flecha para dependencias automáticas, y un motor de IA integrado con objetos Tensor y diferenciación automática para entrenar redes neuronales dentro del propio intérprete.
Ejemplos prácticos de uso
1. Pipelines funcionales
numbers = IOTA(10) result = numbers |> FILTER(lambda val -> val > 5, ?) |> SELECT(lambda v -> v * 10, ?) PRINT Result: ; result
2. One liners estilo APL para manipulación de arrays y visualización
BD=1967-10-21:W=41:H=21:D=DATEDIFF(D,CVDATE(BD),NOW()):X=D-W/2+IOTA(W):C=RESHAPE([ ],[H,W]):PY=INT((SIN(2*PI*X/23)+1)*((H-1)/2)):EY=INT((SIN(2*PI*X/28)+1)*((H-1)/2)):IY=INT((SIN(2*PI*X/33)+1)*((H-1)/2)):C[H/2,IOTA(W)-1]=-:C[IOTA(H)-1,INT(W/2)]=|:C[PY,IOTA(W)-1]=P:PRINT Biorhythm for BD | PRINT FRMV$(C)
3. Tipos estilo objeto para juegos
TYPE Player Name AS STRING Health AS INTEGER SUB TakeDamage(damage) THIS.Health = THIS.Health - damage IF THIS.Health < 0 THEN THIS.Health = 0 PRINT THIS.Name ; takes ; damage ; damage ENDSUB ENDTYPE DIM Hero AS Player Hero.Name = Arion Hero.Health = 100 Hero.TakeDamage(15)
4. IA integrada y diferenciación automática
A = TENSOR.FROM([[1,2],[3,4]]) B = TENSOR.FROM([[5,6],[7,8]]) C = MATMUL(A,B) TENSOR.BACKWARD C PRINT Gradient of A: ; TENSOR.TOARRAY(A.grad)
A quién va dirigido
jdBasic está pensado para educadores y aficionados que quieren un entorno sencillo para enseñar conceptos, desarrolladores indie que desean prototipar juegos 2D sin la complejidad de grandes motores, estudiantes y curiosos de IA que buscan entender redes neuronales sin depender exclusivamente del ecosistema Python, y power users que necesitan un lenguaje flexible para scripting y automatización.
Q2BSTUDIO y cómo encaja esto en soluciones empresariales
En Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida especializada en inteligencia artificial, ciberseguridad y servicios cloud. Ofrecemos soluciones personalizadas que incluyen aplicaciones a medida y software a medida para cubrir necesidades específicas de negocio. Si buscas integrar capacidades de IA en tus procesos, contamos con servicios de disponibilidad completa en servicios de inteligencia artificial y desarrollos a medida que aceleran la adopción de agentes IA y modelos entrenados para tareas reales.
Nuestra experiencia también abarca ciberseguridad y pentesting para proteger tus activos, servicios cloud aws y azure para desplegar infraestructuras escalables, y servicios de inteligencia de negocio con Power BI para convertir datos en decisiones. Para proyectos de software a medida y aplicaciones multiplataforma puedes consultar nuestras propuestas de desarrollo en software a medida y aplicaciones a medida.
Reflexión final
jdBasic es una exploración de cómo lenguajes sencillos pueden evolucionar hasta convertirse en plataformas completas para aprendizaje, creación de juegos y experimentación con IA. En 2025 un lenguaje así encuentra su lugar como herramienta educativa, prototipado rápido y como entorno para entender los fundamentos de la inteligencia artificial sin perder la elegancia de los orígenes.
Me encantaría conocer la opinión de la comunidad: cuál fue el primer lenguaje que les enamoró y qué construirían primero con una herramienta como jdBasic. En Q2BSTUDIO podemos ayudar a llevar esas ideas a producción, desde la automatización de procesos hasta integraciones de IA para empresas y soluciones seguras en la nube.