Anoche, abrí un contrato de DuskVM desde @DuskFoundation y noté dos archivos WASM construidos a partir de la misma fuente. Uno se ejecuta en cadena y el otro fuera de cadena. Me quedé ahí: ¿un contrato realmente necesita dos WASM, o esto solo añade complejidad?
Al revisar la interfaz, encontré argbuf: 64 KB. La interfaz está simplificada: los bytes entran al búfer, un u32 le indica al contrato cuánto debe leer y la salida vuelve por la misma ruta.
Entonces, los dos WASM empezaron a tener sentido. El WASM del contrato ejecuta la lógica. El WASM del “data-driver” traduce los datos: el JSON de wallets, exploradores o frontends se codifica en un formato que el contrato entiende, y luego el resultado se decodifica de nuevo.
El intercambio está claro: los desarrolladores necesitan entender una frontera extra entre lo que corre en cadena y lo que se queda fuera para manejar la traducción. Abrí la documentación porque 64 KB me llamó la atención. Al final, recordé los dos archivos: uno ejecuta. El otro traduce. Misma fuente, tareas diferentes.
@Dusk_Foundation $CYS $ACE $DUSK #dusk
¿Dos WASM de una sola fuente, buen diseño inteligente o complejidad extra?
Al revisar la interfaz, encontré argbuf: 64 KB. La interfaz está simplificada: los bytes entran al búfer, un u32 le indica al contrato cuánto debe leer y la salida vuelve por la misma ruta.
Entonces, los dos WASM empezaron a tener sentido. El WASM del contrato ejecuta la lógica. El WASM del “data-driver” traduce los datos: el JSON de wallets, exploradores o frontends se codifica en un formato que el contrato entiende, y luego el resultado se decodifica de nuevo.
El intercambio está claro: los desarrolladores necesitan entender una frontera extra entre lo que corre en cadena y lo que se queda fuera para manejar la traducción. Abrí la documentación porque 64 KB me llamó la atención. Al final, recordé los dos archivos: uno ejecuta. El otro traduce. Misma fuente, tareas diferentes.
@Dusk_Foundation $CYS $ACE $DUSK #dusk
¿Dos WASM de una sola fuente, buen diseño inteligente o complejidad extra?
Smart separation
75%
Extra complexity
0%
Depends on the use case
25%
Need to dig deeper
0%
4 Votos • Votación cerrada