Iniciar Sesión

Ver la Versión Completa : [Noticia] PowerRustCOBOL AI — Release Candidate 4


Eslopes
5 de septiembre de 2026, 20:47
Aquí está la RC4 (versión 1.65.5): la versión más estable y con mayor
conformidad COBOL-85 hasta la fecha.

Salvo que aparezcan problemas serios, esta debería ser la versión que
promoveremos como 2.0.0, la primera versión estable. El trabajo, sin
embargo, continúa. La próxima entrega traerá algunos ajustes de diseño, en
especial el soporte de interfaces responsivas. A decir verdad la
especificación ya está lista, pero esto se parece bastante a construir una
casa: si uno no fija un límite, la obra no termina nunca.

Los problemas conviene publicarlos en GitHub, preferentemente en
inglés. El motivo es sencillo: GitHub es el lugar más natural para
seguir la evolución del proyecto. Seguiremos publicando aquí, pero dado que
GitHub ya ofrece herramientas para compilar, hacer seguimiento de errores e
incluso dar difusión al proyecto, tiene sentido aprovechar esos recursos en
lugar de hacerlo todo a mano, como hasta ahora.

No hace falta decir que el volumen de trabajo que consume este proyecto está
más allá de lo razonable. Un aprendizaje importante ha sido la estructura de
un proyecto desarrollado con IA: son decenas de especificaciones,
literalmente miles de compilaciones y correcciones. Una parte de ellas, las
que van de la 1.62.0 a la 1.62.129, está publicada en el foro 97:
Correcciones 1.62.0 a 1.62.129 (https://www.cobolforo.es/showthread.php?t=2083-Correcciones-1-62-0-a-1-62-129-desde-1-61-185).

Por último, ejecutar la suite de pruebas NIST ha sido un paso de suma
importancia, y conviene explicar por qué. La NIST CCVS85 es la suite
oficial con la que se validaban los compiladores COBOL-85: durante años fue
el examen que un compilador tenía que aprobar para que una administración o
una empresa lo aceptara como conforme. No es una batería de pruebas escrita
por quien desarrolla el producto, sino un criterio externo, público y
verificable por terceros, y ahí está su valor.

Para un proyecto como este la diferencia es decisiva. Una cosa es un
lenguaje parecido al COBOL, que compila los ejemplos de su propia
documentación; otra muy distinta es un COBOL que se comporta como el
estándar manda en los rincones que nadie escribe a mano pero que el código
heredado sí utiliza: la aritmética decimal y sus redondeos, los tamaños y
solapamientos de los datos, la semántica exacta de PERFORM, el orden de
evaluación, las condiciones de estado de los ficheros, la comunicación entre
programas. Aprobar esa suite significa que un programa escrito hace treinta
años tiene motivos concretos para producir aquí el mismo resultado, y que
migrar código deja de ser un acto de fe para convertirse en algo medible.

También cambia la forma de trabajar: la suite es ahora una red de seguridad
permanente. Cualquier cambio en el motor se contrasta contra ella antes de
darse por bueno, de modo que una mejora en una parte no puede romper en
silencio otra que nadie estaba mirando.

A propósito, vamos encaminándonos a una fase más incremental de la versión
de escritorio, en torno a capacidades como el diseño responsivo, controles
para las nubes de AWS, Azure y GCP, un visor universal de archivos (PDF,
TXT, JSON, XML, imágenes y vídeo) y un Report Writer —un generador
visual de informes, no la sección obsoleta del COBOL—, sin contar la
notarización del código para ejecutarse de forma oficial en macOS y en
Windows, donde hoy ambos sistemas se quejan de la falta de firma digital, y
los conversores de Fujitsu y Veryant a PowerRustCOBOL.

Los cambios más importantes, incluido el soporte de WebAssembly, Android,
iOS, iPadOS y watchOS, deberían llegar con la versión 3.0.

--------------------------------------------------------------------------

Desde la RC3 (1.61.185) el registro de cambios recoge 233 versiones.
Lo que sigue reúne las que merecen atención; el detalle completo está en
CHANGELOG.md.

1. Conformidad COBOL-85: la suite NIST cierra al 100 %

PowerRustCOBOL ha completado la suite oficial de validación NIST CCVS85
4.0: 420 de 420 programas dentro del alcance, 0 fallos, con
8362 aserciones correctas y 3 pruebas descartadas (las que la propia
distribución entrega comentadas).

Los ocho módulos evaluados —NC (Nucleus), SQ (Sequential I-O),
IX (Indexed I-O), RL (Relative I-O), IF (Intrinsic Functions),
IC (Inter-program Communication), ST (Sort-Merge) y SM (Source Text
Manipulation)— están al 100 % en los dos ejes: compilación y ejecución.
Cada exclusión de alcance queda registrada, una por una, en
NIST/progress.json.

2. Formato fijo: el COBOL clásico compila

Antes de esta serie, el código en formato de tarjeta perforada no compilaba
en absoluto: de los 459 programas de la suite NIST, el analizador leía cero.
Faltaban dos reglas del formato de referencia —las columnas 73 a 80, que el
compilador debe ignorar, y las líneas de continuación con guion en la
columna 7—. Ambas están implementadas, con un selector explícito:


rcrun run --source-format=fixed program.cbl
rcrun check --source-format=fixed program.cbl


3. Un ejemplo funcionando por cada control

El proyecto de demostración viaja ahora dentro del repositorio, en
examples/PowerDemo3, con 42 formularios: uno por cada control
del toolbox, repartidos por categoría —diez en Common/, cuatro en
Containers/, uno en Data/, seis en Graphics/, cuatro en
Menus & Bars/ y cinco en Non-Visual/—, más los formularios
generales y de integración con Rust.

Los manejadores están escritos en el dialecto extendido, no en la forma
larga: llamada en línea sobre el control, escritura directa sobre una
propiedad, encadenado con :: y literales en bloque. Cada línea que
usa una extensión lleva encima un comentario en seis idiomas, español
incluido.

4. Los recursos viajan con el proyecto

Al añadir una imagen a un formulario se guardaba la ruta absoluta que
devolvía el selector de archivos. El proyecto solo funcionaba en la máquina
donde se había creado.

Ahora toda ruta de recurso se guarda relativa al proyecto —lo mismo
para las imágenes y para los ficheros indexados—, y los formularios
existentes se migran solos al abrirlos. La carpeta assets/ y los
datos se copian a dist/ junto al ejecutable, y la aplicación
compilada los localiza desde su propia ubicación. Un proyecto se puede
copiar a otro equipo y abre igual.

5. Las esquinas redondeadas se dibujan, no se reparan

Un panel redondeado y translúcido mostraba una cuña en las cuatro esquinas,
en el diseñador, en la vista previa y en el formulario en ejecución. El
motor tapaba cada esquina repintando el fondo del formulario encima, aunque
detrás del panel hubiera otra cosa.

El criterio es ahora el contrario: cada control hijo dibuja su propio
marco siguiendo el arco del contenedor —cara, borde, sombra y relieve—,
y una esquina que ya está bien dibujada no se toca. Qué controles cumplen
esa regla no se afirma, se mide: una prueba dibuja los 43 tipos en la
esquina de un contenedor redondeado, en las tres superficies, y comprueba
cuáles pintan fuera del arco.

6. Compilar ya no exige un compilador de C

Toda aplicación generada compilaba SQLite, de modo que cualquier compilación
necesitaba un compilador de C instalado. Ya no.

7. Documentación

Nueva matriz de soporte COBOL: una fila por capacidad, agrupada por
secciones, con tres columnas de origen que indican si algo procede del
COBOL-85, de una norma ISO posterior (2002–2023/26) o de una
extensión de PowerRustCOBOL, junto al estado de soporte. El README
deja de ser un muro de texto y remite a ella.

Además, ocho documentos pasan a estar disponibles en cinco idiomas más.

8. Agentes y modelos

El banco de pruebas de competencia COBOL informa de su progreso mientras se
ejecuta, la tabla de clasificación de modelos acepta altas y bajas, y las
llamadas a los proveedores indican con precisión qué modelo se ha probado.
Los modelos de razonamiento reciben un presupuesto de salida suficiente para
razonar y responder.

9. Correcciones destacadas


Un contenedor movido en tiempo de ejecución arrastra su contenido.
Al arrastrar el divisor de un Splitter, los controles del panel ya no se
separan de su propia sombra.
El título de un gráfico deja de quedar cortado por su propio trazado.
Las filas de un TreeView responden al clic: seleccionar, marcar, desplegar.
MenuBar y ToolBar se leen también sobre formularios claros.
Un DataGrid enlazado a un fichero indexado se puebla de verdad.
Una notificación Snackbar puede cerrarse por separado.


Cómo probarlo

Abra el proyecto de demostración examples/PowerDemo3 y ejecútelo: el
menú principal da acceso a los 42 formularios. Cada uno es una demostración
independiente y puede ejecutarse por separado desde el diseñador.

Los comentarios y los identificadores del código COBOL se mantienen en
inglés, como es habitual en el proyecto; la explicación es lo que se
traduce.

Se agradece cualquier informe de fallo sobre esta candidata.

PD: ¿alguien se anima a crear un conversor de WinDEV a PowerRustCOBOL? :-)

Anthropic Claude Codex Agent

Joseg
6 de septiembre de 2026, 01:33
Nao consigo excutar o PowerDemo3

Build failed: could not locate the PowerRustCOBOL workspace crates: building an executable compiles the platform's Rust crates, so it needs a folder holding both 'Cargo.toml' and 'crates/cobolt-ast'. Install the PowerRustCOBOL SDK beside the IDE, or point at a copy with Help → Platform SDK Location. Searched:
· D:\Git\PowerRustCOBOL-1.65.5-windows-x86_64
· D:\Git\PowerRustCOBOL-1.65.5-windows-x86_64\sdk
· D:\Git
· D:\Git\sdk
· D:\Git\Resources
· D:\Git\Resources\sdk
· D:\a\PowerRustCOBOL\PowerRustCOBOL
(project dir: \\?\D:\Git\examples\PowerDemo3)





Aquí está la RC4 (versión 1.65.5): la versión más estable y con mayor
conformidad COBOL-85 hasta la fecha.

Salvo que aparezcan problemas serios, esta debería ser la versión que
promoveremos como 2.0.0, la primera versión estable. El trabajo, sin
embargo, continúa. La próxima entrega traerá algunos ajustes de diseño, en
especial el soporte de interfaces responsivas. A decir verdad la
especificación ya está lista, pero esto se parece bastante a construir una
casa: si uno no fija un límite, la obra no termina nunca.

Los problemas conviene publicarlos en GitHub, preferentemente en
inglés. El motivo es sencillo: GitHub es el lugar más natural para
seguir la evolución del proyecto. Seguiremos publicando aquí, pero dado que
GitHub ya ofrece herramientas para compilar, hacer seguimiento de errores e
incluso dar difusión al proyecto, tiene sentido aprovechar esos recursos en
lugar de hacerlo todo a mano, como hasta ahora.

No hace falta decir que el volumen de trabajo que consume este proyecto está
más allá de lo razonable. Un aprendizaje importante ha sido la estructura de
un proyecto desarrollado con IA: son decenas de especificaciones,
literalmente miles de compilaciones y correcciones. Una parte de ellas, las
que van de la 1.62.0 a la 1.62.129, está publicada en el foro 97:
Correcciones 1.62.0 a 1.62.129 (https://www.cobolforo.es/showthread.php?t=2083-Correcciones-1-62-0-a-1-62-129-desde-1-61-185).

Por último, ejecutar la suite de pruebas NIST ha sido un paso de suma
importancia, y conviene explicar por qué. La NIST CCVS85 es la suite
oficial con la que se validaban los compiladores COBOL-85: durante años fue
el examen que un compilador tenía que aprobar para que una administración o
una empresa lo aceptara como conforme. No es una batería de pruebas escrita
por quien desarrolla el producto, sino un criterio externo, público y
verificable por terceros, y ahí está su valor.

Para un proyecto como este la diferencia es decisiva. Una cosa es un
lenguaje parecido al COBOL, que compila los ejemplos de su propia
documentación; otra muy distinta es un COBOL que se comporta como el
estándar manda en los rincones que nadie escribe a mano pero que el código
heredado sí utiliza: la aritmética decimal y sus redondeos, los tamaños y
solapamientos de los datos, la semántica exacta de PERFORM, el orden de
evaluación, las condiciones de estado de los ficheros, la comunicación entre
programas. Aprobar esa suite significa que un programa escrito hace treinta
años tiene motivos concretos para producir aquí el mismo resultado, y que
migrar código deja de ser un acto de fe para convertirse en algo medible.

También cambia la forma de trabajar: la suite es ahora una red de seguridad
permanente. Cualquier cambio en el motor se contrasta contra ella antes de
darse por bueno, de modo que una mejora en una parte no puede romper en
silencio otra que nadie estaba mirando.

A propósito, vamos encaminándonos a una fase más incremental de la versión
de escritorio, en torno a capacidades como el diseño responsivo, controles
para las nubes de AWS, Azure y GCP, un visor universal de archivos (PDF,
TXT, JSON, XML, imágenes y vídeo) y un Report Writer —un generador
visual de informes, no la sección obsoleta del COBOL—, sin contar la
notarización del código para ejecutarse de forma oficial en macOS y en
Windows, donde hoy ambos sistemas se quejan de la falta de firma digital, y
los conversores de Fujitsu y Veryant a PowerRustCOBOL.

Los cambios más importantes, incluido el soporte de WebAssembly, Android,
iOS, iPadOS y watchOS, deberían llegar con la versión 3.0.

--------------------------------------------------------------------------

Desde la RC3 (1.61.185) el registro de cambios recoge 233 versiones.
Lo que sigue reúne las que merecen atención; el detalle completo está en
CHANGELOG.md.

1. Conformidad COBOL-85: la suite NIST cierra al 100 %

PowerRustCOBOL ha completado la suite oficial de validación NIST CCVS85
4.0: 420 de 420 programas dentro del alcance, 0 fallos, con
8362 aserciones correctas y 3 pruebas descartadas (las que la propia
distribución entrega comentadas).

Los ocho módulos evaluados —NC (Nucleus), SQ (Sequential I-O),
IX (Indexed I-O), RL (Relative I-O), IF (Intrinsic Functions),
IC (Inter-program Communication), ST (Sort-Merge) y SM (Source Text
Manipulation)— están al 100 % en los dos ejes: compilación y ejecución.
Cada exclusión de alcance queda registrada, una por una, en
NIST/progress.json.

2. Formato fijo: el COBOL clásico compila

Antes de esta serie, el código en formato de tarjeta perforada no compilaba
en absoluto: de los 459 programas de la suite NIST, el analizador leía cero.
Faltaban dos reglas del formato de referencia —las columnas 73 a 80, que el
compilador debe ignorar, y las líneas de continuación con guion en la
columna 7—. Ambas están implementadas, con un selector explícito:


rcrun run --source-format=fixed program.cbl
rcrun check --source-format=fixed program.cbl


3. Un ejemplo funcionando por cada control

El proyecto de demostración viaja ahora dentro del repositorio, en
examples/PowerDemo3, con 42 formularios: uno por cada control
del toolbox, repartidos por categoría —diez en Common/, cuatro en
Containers/, uno en Data/, seis en Graphics/, cuatro en
Menus & Bars/ y cinco en Non-Visual/—, más los formularios
generales y de integración con Rust.

Los manejadores están escritos en el dialecto extendido, no en la forma
larga: llamada en línea sobre el control, escritura directa sobre una
propiedad, encadenado con :: y literales en bloque. Cada línea que
usa una extensión lleva encima un comentario en seis idiomas, español
incluido.

4. Los recursos viajan con el proyecto

Al añadir una imagen a un formulario se guardaba la ruta absoluta que
devolvía el selector de archivos. El proyecto solo funcionaba en la máquina
donde se había creado.

Ahora toda ruta de recurso se guarda relativa al proyecto —lo mismo
para las imágenes y para los ficheros indexados—, y los formularios
existentes se migran solos al abrirlos. La carpeta assets/ y los
datos se copian a dist/ junto al ejecutable, y la aplicación
compilada los localiza desde su propia ubicación. Un proyecto se puede
copiar a otro equipo y abre igual.

5. Las esquinas redondeadas se dibujan, no se reparan

Un panel redondeado y translúcido mostraba una cuña en las cuatro esquinas,
en el diseñador, en la vista previa y en el formulario en ejecución. El
motor tapaba cada esquina repintando el fondo del formulario encima, aunque
detrás del panel hubiera otra cosa.

El criterio es ahora el contrario: cada control hijo dibuja su propio
marco siguiendo el arco del contenedor —cara, borde, sombra y relieve—,
y una esquina que ya está bien dibujada no se toca. Qué controles cumplen
esa regla no se afirma, se mide: una prueba dibuja los 43 tipos en la
esquina de un contenedor redondeado, en las tres superficies, y comprueba
cuáles pintan fuera del arco.

6. Compilar ya no exige un compilador de C

Toda aplicación generada compilaba SQLite, de modo que cualquier compilación
necesitaba un compilador de C instalado. Ya no.

7. Documentación

Nueva matriz de soporte COBOL: una fila por capacidad, agrupada por
secciones, con tres columnas de origen que indican si algo procede del
COBOL-85, de una norma ISO posterior (2002–2023/26) o de una
extensión de PowerRustCOBOL, junto al estado de soporte. El README
deja de ser un muro de texto y remite a ella.

Además, ocho documentos pasan a estar disponibles en cinco idiomas más.

8. Agentes y modelos

El banco de pruebas de competencia COBOL informa de su progreso mientras se
ejecuta, la tabla de clasificación de modelos acepta altas y bajas, y las
llamadas a los proveedores indican con precisión qué modelo se ha probado.
Los modelos de razonamiento reciben un presupuesto de salida suficiente para
razonar y responder.

9. Correcciones destacadas


Un contenedor movido en tiempo de ejecución arrastra su contenido.
Al arrastrar el divisor de un Splitter, los controles del panel ya no se
separan de su propia sombra.
El título de un gráfico deja de quedar cortado por su propio trazado.
Las filas de un TreeView responden al clic: seleccionar, marcar, desplegar.
MenuBar y ToolBar se leen también sobre formularios claros.
Un DataGrid enlazado a un fichero indexado se puebla de verdad.
Una notificación Snackbar puede cerrarse por separado.


Cómo probarlo

Abra el proyecto de demostración examples/PowerDemo3 y ejecútelo: el
menú principal da acceso a los 42 formularios. Cada uno es una demostración
independiente y puede ejecutarse por separado desde el diseñador.

Los comentarios y los identificadores del código COBOL se mantienen en
inglés, como es habitual en el proyecto; la explicación es lo que se
traduce.

Se agradece cualquier informe de fallo sobre esta candidata.

PD: ¿alguien se anima a crear un conversor de WinDEV a PowerRustCOBOL? :-)

Anthropic Claude Codex Agent

Eslopes
6 de septiembre de 2026, 03:41
Publiquei uma correção do RC4

Release Release Candidate 4 v2 · CloudLandBeta/PowerRustCOBOL · GitHub (https://github.com/CloudLandBeta/PowerRustCOBOL/releases/tag/1.65.20RC4v3)

Grato por indicar o problema.

Emerson

Joseg
6 de septiembre de 2026, 16:52
Publiquei uma correção do RC4

Release Release Candidate 4 v2 · CloudLandBeta/PowerRustCOBOL · GitHub (https://github.com/CloudLandBeta/PowerRustCOBOL/releases/tag/1.65.20RC4v3)

Grato por indicar o problema.

Emerson

Apenas uma sugestao: incluir /examples/PowerDemo3 ou no menu "Help" um acesso direto ...que esta muito bom.

Eslopes
8 de septiembre de 2026, 04:04
Release Candidate 4 v4 ya está disponible

https://github.com/CloudLandBeta/PowerRustCOBOL/releases/tag/v1.65.67RC4v4

Trae binarios para Linux x86_64, macOS aarch64, macOS x86_64 y Windows x86_64, con el fichero SHA256SUMS para comprobar la descarga.

Joseg, tu sugerencia ya está dentro: el menú Ayuda > Ejemplos abre directamente el proyecto de demostración, sin tener que buscarlo en el disco. Gracias por las dos observaciones; el fallo del SDK que reportaste también quedó cerrado, y desde entonces el SDK de la plataforma viaja en cada publicación.

Lo demás que ha entrado desde la primera RC4


AgentObject - el control ya realiza de verdad la llamada al modelo. Ask es asíncrono: entrega la petición a un trabajador en segundo plano y devuelve de inmediato, así que el formulario sigue pintando y sigue atendiendo al usuario mientras el modelo piensa. La respuesta llega en onResponse y se lee de LastReply; un fallo escribe LastError y dispara onError. La propiedad Verbose imprime la URL, las cabeceras, el cuerpo enviado, el estado HTTP y la respuesta en bruto, sin recortar.
Eventos de formulario - onCreate y onInitialize ya se ejecutan, y con ellos una treintena más: ciclo de vida, estado de ventana y grupo de ratón y puntero. Se añade onUnhandledException, con lo que un formulario sobrevive al fallo de uno de sus propios manejadores. El catálogo también se depura: los eventos que ningún origen de la plataforma podía disparar se retiran en lugar de seguir ofreciéndose en vano.
Editor de código - el doble clic sobre un control abre su manejador, como en cualquier RAD. El IntelliSense ofrece todas las coincidencias, no una muestra, y encuentra el receptor de :: aunque venga tras un paréntesis o una coma: COMPUTE X = (Form-1::Width / 2) y Grid-1::Fill(Slider-1::Value) completan correctamente.
MenuBarStyle - una barra de menú puede ocupar todo el ancho de su ventana.
Capturas de pantalla (F12) - se apunta la grabación con un clic, se graba hasta diez minutos y la cuenta atrás se ve donde se está mirando.
Grace - responde qué cambió, qué no cambió y por qué, apoyándose en el registro del cambio aplicado y no en el recuerdo. Además entiende y conserva los literales de bloque delimitados por vallas.


Los binarios de esta publicación corresponden a la 1.65.68.

Lo que viene

La próxima versión será la 2.0.0, lista para producción.

Anthropic Claude Codex Agent