Una versión HTML de esta documentación puede ser encontrada en https://docs.perl6.org/. Esta es la documentación recomendada.
También hay disponible un comando para la terminal: "p6doc".
(Si estás buscando el repositorio en GitHub, la mayoría de los archivos no serán mostrados correctamente, ya que esto es Raku Pod6, y GitHub asume que es Perl Pod).
Este módulo está disponible en el ecosistema de módulos de Raku. Usa:
$ zef install p6docpara instalar los binarios y añadirlo a tu path.
Cuando tengas perl6 (Rakudo) añadido al PATH, ejecuta
$ ./bin/p6doc Strpara ver la documentación para la clase Str, o
$ ./bin/p6doc Str.splitpara ver la documentación del método split de la clase Str. Puedes
omitir ./bin si lo has instalado mediante zef.
También puedes hacer
$ p6doc -f slurppara buscar la documentación estándar de funciones. Dependiendo de la velocidad de tu disco duro y de la versión de Rakudo, es posible que tarde unos minutos.
Instala las dependencias ejecutando lo siguiente en el directorio correspondiente:
$ zef --deps-only install .Si usas rakubrew en modo shim, ejecuta también:
$ rakubrew rehashpara actualizar los correctores de compatibilidad de los ejecutables instalados.
Aparte de las dependencias de Raku, necesitas tener graphviz instalado. En Debian
lo puedes instalar mediante:
$ sudo apt-get install graphvizPara generar las páginas webs de la documentación, simplemente ejecuta:
$ make htmlTen en cuenta que debes tener instalado nodejs
para producir el contenido HTML con el anterior comando, en particular,
node debería estar en tu PATH.
Cuando las páginas hayan sido generadas, puedes verlas localmente
en tu ordenador ejecutando el programa app.pl:
$ make runUna vez hecho lo anterior, puedes ver la documentación de ejemplo dirigiéndote a http://localhost:3000 en tu navegador.
Necesitarás, por lo menos, tener Mojolicious instalado. Además precisarás nodejs para activar el resaltado. También hay módulos adicionales que podrías necesitar, instálalos ejecutando:
$ cpanm --installdeps .Raku no es un lenguaje de programación pequeño, y documentarlo requiere mucho esfuerzo. Cualquier ayuda es bienvenida.
Algunas maneras en las que puedes ayudarnos:
- Añadiendo documentación de clases, roles, métodos u operadores.
- Añadiendo ejemplos de uso a la documentación existente.
- Revisando y corrigiendo la documentación.
- Abriendo issues en GitHub si consideras que falta documentación.
- Haciendo
git grep TODOen este repositorio, y reemplazando los items TODO con documentación.
Esta página tiene una lista de issues actuales y partes de la documentación que faltan. El documento CONTRIBUTING explica brevemente cómo empezar a contribuir.
P: ¿Por qué no estáis incluyendo la documentación en el código fuente del CORE?
R: Debido a varias razones:
-
Esta documentación pretende ser universal con respecto a una versión dada de una especificación, y no necesariamente estar atada a una implementación específica de Raku.
-
El tratamiento que las implementaciones hacen de Pod6 es todavía un poco inconsistente; esto evita impactos potenciales en el tiempo de ejecución.
-
Un repo separado en la cuenta de Raku de GitHub invita a más contribuidores y editores a participar.
P: ¿Debería incluir los métodos de las superclases o de los roles?
A: No. La versión en HTML ya los incluye, y el script p6doc también.
Quiero que p6doc y docs.perl6.org lleguen a ser el recurso número 1 para consultar cualquier característica de Raku, ya sea del lenguaje o de sus tipos y rutinas. Quiero que sea útil para todo programador de Raku.
-- moritz
- Poner
RAKU_DOC_TEST_VERBOSEatruepara mostrar mensajes durante la ejecución del conjunto de tests. Práctico para depurar un test suite que falla. RAKU_DOC_TEST_FUDGEcambia los ejemplos de códigoskip-testa TODO en el testxt/examples-compilation.t.
El código en este repositorio está disponible bajo la Artistic License 2.0 como lo publicó la Perl Foundation. Ver el fichero LICENSE para ver el texto completo.
Este repositorio también contiene código de terceros que podría tener otra licencia, en cuyo caso indican al principio de los mismos el copyright y sus términos de licencia. Actualmente incluyen:
- Ejemplos de StackOverflow Licencia MIT; (ref #1 for 1f7cc4e)
- Table sorter plugin from https://github.com/christianbach/tablesorter ; Licencia MIT