Temas en tendencia
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Desplegé un entorno Python totalmente en cadena en Solana
Ahora ejecutas scripts nativos de Python y bytecode en Solana
indirizz de programa: pythonKBk7JcXsbwYzMRy2tL8L9tZqUbgekxRfT1bTE
Interfaz aquí:
Algunos ejemplos:
imprimir("¡Hola Solana!")
>>> "¡Hola Solana!"
imprimir(math.sqrt(2.0))
>>> 1.414213
imprimir(tiempo.asctime())
"Jue 18 Dic 19:26:15 2025"

Las cuentas de Solana se tratan como archivos
Lo que significa que puedes leer/escribir en cuentas Solana y desplegar paquetes de Python en cuentas Solana
que permite código en python como:
f = abierto("/sol/1", "w")
f.write("def greet(name):\n return 'Hello' + nombre")
importar sol_1 como my_package
print(my_package.greet("Solana"))
>> "Hola Solana"

La mayoría de los sistemas integrados, base58/64, struct, json, time y un paquete de matemáticas están incluidos
Existe un paquete Solana con soporte para PDAs, invocación cruzada de cadenas y la mayoría de las llamadas de sistema Solana
El paquete del tiempo envuelve el reloj Solana
y el programa devuelve la última sentencia no evaluada como return_data para que otros programas puedan invocar el programa en Python y usar el resultado

El programa Python soporta análisis sintáctico, compilación y ejecución de código en Python
Sin embargo, analizar en cadena es muy caro. cualquier script recursivo complicado en Python se encuentra rápidamente en el límite de 1,4M de unidades de cálculo
Para programas Python más complejos, los usuarios pueden compilar el script en bytecode de Python fuera de la cadena. Esto resulta en un ahorro de gas ~10-100x y permite que programas Python mucho más complejos se ejecuten en cadena
Un script recursivo simple como Print(1+2+3) consume 1.328.442/1.399.700 unidades de cálculo
Compilado en bytecode, consume 13.579/1.339.700 unidades de cálculo (100 veces más barato)
El frontend contiene un Conformador Python de WASM, por lo que los usuarios pueden compilar fácilmente a bytecode y ejecutar el programa en cadena


Empecé a programar este proyecto en Vibe durante Acción de Gracias cuando estaba matando el tiempo y me encontré con PikaPython: un intérprete de C Python que funciona con solo 4KB de RAM, cero dependencias
casualmente, @solana tiene una pila de 4 KB (RAM), soporta C y no tiene muchas de las dependencias estándar de C
el proyecto está portado en un 99% por IA, y solo lo he probado de forma vaga, así que por favor no lo utilicéis para operaciones críticas ni con carteras valiosas
Sin embargo, es un parque divertido para explorar Solana y aprender cómo funciona Solana
eventualmente, con más paquetes y soporte para aplicaciones DeFi, esto podría convertirse en una herramienta útil para el análisis y prototipado de datos en Solana
Tuve que hacer varias modificaciones para portar el proyecto al BPF Solana
- BPF no soporta estado global de escritura, así que tuve que mover todos los globales al montón
- BPF no soporta > 5 argumentos de funciones (en la cadena de herramientas C), por lo que tuve que pasar funciones con 5+ argumentos como punteros a las estructuras
- los punteros de función que apuntan fuera del segmento de texto están prohibidos, por lo que los arrays de punteros y otros destinos de llamada "inseguros" tuvieron que ser refactorizados
- Funciones estándar de libc como Printf tuvieron que ser reimplementadas
- optimizar el uso de la pila y mover grandes estructuras al heap
- implementó un asignador personalizado que preasigna varios búferes grandes
- implementar sysout como sol_log y devolver la última sentencia no evaluada como return_data
Enlace de github abajo. No dudes en contribuir:

actualmente la máquina virtual está restringida a 1,4 millones de unidades de cálculo
En el futuro, el intérprete de Python podría usar bundles para extender el límite de CU hasta el límite de cuenta de 12M o más allá
Esto requeriría:
- comprobar el uso de la CU dentro del intérprete
- suspender el analizador y la unidad VM cuando empiece a acercarse al límite de 1,4M CU
- persistir el estado del analizador/VM almacenado en el heap a una cuenta
- cargar el montón cuando el intérprete reanuda
otras extensiones futuras serían implementar paquetes para aplicaciones DeFi populares para que los usuarios puedan interactuar más fácilmente con programas on-chain en Python
el soporte para Pyo3 o Cython permitiría a los usuarios escribir fácilmente paquetes Python eficientes que amplíen las bibliotecas existentes de Solana Rust
Por último, portar Numpy que está soportado por PikaPython sería un proyecto genial
El proyecto es gratuito y de código abierto - no hay token
Lo hice por amor al juego
Disfruta - Moonshiesty
138
Populares
Ranking
Favoritas
