Aprende a instalar 8th localmente para resolver los ejercicios de Exercism en tu propia computadora
8th se distribuye en un archivo ZIP que lo incluye todo, y que contiene versiones de 8th para todas las plataformas que admite la versión que descargaste. Tus versiones de 8th tienen una licencia específica para ti y no se pueden compartir.
A partir de la página Get 8th,
Para usar 8th, debes descomprimir el archivo zip en cualquier carpeta a la que tengas acceso.
El zip incluye varias carpetas:
| carpeta | descripción |
|---|---|
| bin | ejecutables de 8th para todas las plataformas admitidas |
| docs | el manual y los tutoriales |
| libs | bibliotecas de soporte de 8th (código de 8th) |
| samples | código de ejemplo que complementa los tutoriales y el manual |
| keys | el 'id.blob' que contiene tus claves y tu información de registro |
Usuarios Pro+: ten en cuenta que las claves de cifrado del id.blob son únicas para cada versión específica de 8th que descargues, y son importantes para compilar aplicaciones cifradas y desplegables. Si mueves 8th fuera de su paquete de distribución y no encuentra id.blob , entonces si ejecutas 8th -v mostrará custid: id.blob? como recordatorio de que no encuentra la información de identificación.
Sin importar la plataforma en la que desarrolles, puedes producir aplicaciones para cualquier plataforma que admita 8th.
Una vez que hayas descomprimido el archivo zip, puedes ejecutar 8th directamente. Por ejemplo, si lo instalaste en /opt/8th en Linux de 64 bits, deberías poder escribir /opt/8th/bin/lin64/8th con los parámetros que quieras, y debería funcionar correctamente. Haz algo similar en macOS o Windows.
Agregar la carpeta del binario de 8th a la variable de entorno PATH de tu sistema te permitirá escribir simplemente 8th en lugar de toda la ruta hasta él.
8th en sí es un programa de línea de comandos. No está pensado para iniciarse haciendo clic en un icono del escritorio. Con él puedes crear programas con interfaz gráfica (GUI) normales que sí se pueden iniciar así, pero el compilador de 8th en sí es un programa de interfaz de línea de comandos (CLI).
Si usas Windows y trabajas con un shell de MSys o Cygwin, es posible que también necesites el programa winpty, disponible de forma gratuita, para que tus programas en modo consola funcionen bien. Las versiones recientes de Windows 10 no parecen necesitarlo.
Si usas MacOS, lee este hilo del foro de 8th.
La línea de comandos de 8th se ve así:
8th [options] [[-f] file...] [-e 'code'...]
Donde la opción [-f] file significa «interpreta el contenido del archivo», y -e code significa «interpreta ese código de 8th específico». Ambas opciones se pueden indicar más de una vez en la línea de comandos, y el efecto es acumulativo. En otras palabras:
8th -f first.8th -f second.8th
interpretará el contenido del archivo first.8th y después interpretará el contenido del archivo second.8th . Ten en cuenta que si solo quieres ejecutar un archivo de 8th, no necesitas escribir 8th -f first.8th , puedes escribir directamente 8th first.8th .
Estas son todas las opciones de la CLI que entiende 8th:
| opción | descripción |
|---|---|
| -b | invoca la utilidad bin/build |
| -D dir | establece el directorio principal en dir (el valor predeterminado depende del sistema operativo) |
| -e str | interpreta la cadena str como código de 8th |
| -ee str | interpreta la cadena str como código de 8th y luego sale |
| -f nm | interpreta el archivo llamado nm |
| -g | habilita la depuración/verificación de SED |
| -G | establece la versión de GL requerida (p. ej., 3.1) |
| -h | muestra la ayuda |
| -H N | establece el tamaño del historial de la consola en N líneas (predeterminado: 100) |
| -k N | establece los tamaños de la pila de datos y de la pila r en N elementos (predeterminado: 128K) |
| -l | más información de depuración |
| -r N | establece el tamaño de la pila de datos de devolución de llamada en N elementos (predeterminado: 256) |
| -s N | establece el tamaño de la pila de recursión en N bytes (predeterminado: 0, que significa el valor predeterminado del sistema) |
| -S | enumera los controladores SDL detectados y sale |
| -v | imprime la versión de 8th y sale |
| -vv | igual que -v pero con información adicional para depuración |
| -x | desactiva la verificación de tipos y límites de la pila |
| -z | activa el conteo de elementos de datos |
| -Z | como -z, pero incluye la biblioteca 'debug/allocs' |
| -? nm | imprime la ayuda para el elemento 'nm' |
| -- | indica el final de las opciones de 8th |
En general no deberías necesitar las opciones -k, -r o -s; se incluyen por si te resultan útiles, por ejemplo si 128K elementos en la pila a la vez son demasiado pocos (siendo honestos, deberías cambiar tu algoritmo si ese es el caso...).
Si te das cuenta de que usas mucho los modificadores de la línea de comandos, puedes simplemente usar un «shell script» (en macOS o Linux) o un «batch file» (en Windows; también llamado «command file») para iniciar 8th con las opciones que prefieras.
También puedes crear un archivo fuente de 8th en la carpeta app:datadir , llamado settings.8th . Si está presente, el REPL de 8th lo cargará al iniciarse y mostrará un mensaje al respecto. Por razones de seguridad, ese archivo no se buscará ni se cargará en una aplicación empaquetada.
Para salir de 8th, haz cualquiera de estas cosas:
bye y pulsa ENTER . Eso le indica a 8th que salga de forma normal1 die y pulsa ENTER . Eso le indica a 8th que salga de forma anormal y devuelva el código de estado 1 al sistema operativothrow provocará una excepción. Si estás ejecutando desde la consola de 8th, en la mayoría de los casos volverás a ella; si estás ejecutando un archivo o una aplicación empaquetada, se mostrará un mensaje y se cerrará la aplicación.8th puede ejecutar tus programas en varios modos:
| modo | descripción |
|---|---|
| interactivo | simplemente inicia 8th y escribe tu código en la consola |
| script | pon tu código en un archivo de texto y ejecútalo con 8th mycode.8th (por ejemplo). Mira el consejo de abajo... |
| app | convierte tu código en una aplicación empaquetada con el script build (o la opción -b de la CLI) |
Usuarios Pro+: puedes crear aplicaciones cifradas que ayudan a disuadir a hackers y a otras personas malintencionadas
En los dos últimos casos, tu código debe estar en archivos de texto sin formato (por ejemplo, no en un formato de procesador de textos). Los archivos de apoyo deben colocarse en la misma carpeta que tu código, o en una subcarpeta de ella. Puedes acceder a esos otros archivos en 8th invocando app:asset .
Una «app» es un programa independiente que se ejecuta por sí solo como cualquier otro programa de la plataforma de destino, y no necesita que 8th lo ejecute desde la línea de comandos. Su contenido puede cifrarse para ayudar a disuadir a los hackers, como se mencionó antes. Los detalles para producir aplicaciones independientes están en la sección sobre cómo usar la herramienta build.
Consejo: si usas macOS, Linux o sistemas RPI, puedes hacer que tu script se ejecute como un comando normal del sistema así:
chmod +x scriptname
#! /usr/bin/env 8th
Esto también funciona con appdata empaquetado, así que si usaste bin/build para crear un ejecutable, puedes usar el appdata que creó de la misma manera haciendo:
cat - path/to/appdata > newappdata
#! /usr/bin/env 8th<ENTER><CTRL+D>
chmod +x newappdata