OpenLLM-France/wikimedia huggingface dataset:
# Programación en Erlang/Declaración, definición y uso de métodos y funciones
### Métodos y funciones en Erlang

Para ver una función en Erlang podemos el archivo even_prime.er con el siguiente código -module(even_prime). % 1 -export([is_even_prime/1]). % 2
is_even_prime(2) -> % 4 clause 1 is simple
is_even_prime(N) when is_integer(N) -> % 6 clause 2 has a guard: is_integer(N)
is_even_prime(Any) -> % 8 clause 3 is simple
Las clausulas de las funciones están puestas en el orden en el cual se verifican. Primero is_even_prime(2) es verificada para ver si concuerda. Si el argumento es verificado dicha función regresa verdadero. Si is_even_prime(2) no es verificada, entonces se trata is_even_prime(N). is_even_prime(N) es verificada. La declaración when is_integer es una guardia que solo admite tipos integer a N. al final nos dice que la función se terminad definiendo. is_even_prime(Any) coincide con cualquier cosa de cualquier tipo y regresa “i prefer integer imputs” . la función se ha terminado. Esta función es una función total y cumple todos los los posibles argumentos de entrada. Salidas 2> c(even_prime). ./even_prime.erl:8: Warning: variable 'Any' is unused {ok,even_prime}
3> even_prime:is_even_prime(2). true
4> even_prime:is_even_prime(1). false
5> even_prime:is_even_prime(seven). 'I prefer integer inputs'

### Estructura de una función

================================================================== Syntax/structure of a function: ================================================================== semicolon - ends a clause period - ends a function when - starts a guard arrow - separates the head from the tail of the function function head - input part of function includes the signature and guard function tail - output/consequence(s) part of function signature - the function name and argument structure/count ================================================================== rotate_list( [H|T] ) when is_atom(H) -> T ++ [H].
[----signature-----] [----guard----] .
[-----------function head----------] . [--function tail--]
# Programación en Erlang/Ejemplos pequeños del lenguaje

Para entender mejor el lenguaje que mejor manera que con los ejemplos comunes de todos los lenguajes. Y así notar la diferencia entre Erlang y el resto.

#### factorial.erl

Lo importante de este caso es ver el modo como funciona factorial en Erlang. Las comparaciones que se realizan en Erlang son descritas en la siguiente tabla:
| Operador | Descripción | Tipo |
| X > Y | X es mayor que Y | Coerce |
| X < Y | X es menor que Y | Coerce |
| X =< Y | X es igual o menor que Y | Coerce |
| X >= Y | X es igual o mayor que Y | Coerce |
| X == Y | X es igual a Y | Coerce |
| X /= Y | X no es igual a Y | Coerce |
| X =:= Y | X es igual a Y | Exact |
| X =/= Y | X no es igual a Y | Exact |
La diferencia entre ‘Exact’ y ‘Coerce’ es inmensa. Por ejemplo en ‘Coerce’ cuando comparamos 2 números solo compara magnitudes tal como 5.0 == 4+1. Sin embargo ‘Exact’ lo que hace es decir que no son iguales porque 5.0 no es igual a 5 ya que un entero no es similar a un punto flotante.
Los casos tipos if, else y case se verán aplicados al mismo factorial para entender la diferencia.

#### Tipo If y Else

Si se puede observar esto es como condición instrucción terminada en ‘;’ excepto la condición final.

#### Tipo Case

Si se observa de este código tenemos que podemos hacer condiciones dentro del mismo case. Para demostrar un programa fácil pero con un poco más de complejidad haremos el cifrado de César con rotación 13.

#### Cifrado Cesar (Rotación 13)

El cifrado de cesar con rotación 13 mueve una letra 13 posiciones más adelante.
Al compilar:
Lo que aquí se aprecia es un nuevo tipo de instrucción. EL cual Erlang permite usar una lista y aplicarle una función a todos los elementos de la lista. De ahí la instrucción list_to_atom devuelve la lista de enteros como una lista de caracteres es decir una cadena.
# Programación en Verilog/Máquinas de estado

Uno de los aspectos más destacados y frecuentes en los diseños Verilog, es la realización de máquinas de estados. En esta sección, se propone un método para la estructuración de una máquina de estados, empleando tres procesos.
* Asignación asíncrona del siguiente estado, partiendo de de las entradas al diseño y del estado en el que se encuentre.
* Asignación síncrona, donde el flanco de reloj hace que el estado actual sea el que se ha estado preparando.
* Asignación de las salidas.
A continuación se modela un semáforo en Verilog, mediante una máquina de estados.
# Programación en Verilog/Bibliografía
## Recursos en internet

* GHDL
* IEEE
* Open Cores

## Libros y otros textos

* Manual de Verilog, Jorge Chávez, Marzo 1999.
* Tutorial Verilog, Universidad de Las Palmas, 2001.
# Programación en Verilog/Ejemplos

A continuación se muestra una serie de ejemplos diseñados en Verilog.

## Multiplexor

Como ejemplo se tiene un multiplexor de tres buses de 24 bits (entradas A, B y C), donde se supone que la opción de selección (entrada de dos bits) 2'b11 da una salida con todos los bits a cero.

## De-Multiplexor

Otro ejemplo es un de-multiplexor que está decodificando un bus de direcciones:
* 'h00_00 <= x <= 'h0f_ff activa el bit de selección 0.
* 'h10_00 <= x <= 'h1f_ff activa el bit de selección 1.
* 'h20_00 <= x <= 'h2f_ff activa el bit de selección 2.

## Registro de desplazamiento

En este ejemplo, en una única asignación se inserta el bit de entrada y se realiza el desplazamiento de todos los bits.

## Contador

Este ejemplo es un simple contador que incrementa el valor de un registro interno con cada flanco de reloj.
# Programación en Verilog/Jerarquía

Como se ha detallado en el apartado de los módulos, el identificador module se utiliza para la definición de diseños, estos pueden utilizarse para construir diseños más complejos, es decir, la combinación de módulos con funcionalidad sencilla dan como resultado diseños más complejos. La sintaxis para incluir módulos al diseño es la siguiente.
Un ejemplo para incluir módulos dentro de un diseño es el siguiente.

## Conexionado

El conexionado de un módulo puede realizarse de dos formas distintas.
* Por orden: La asignación se realiza de forma implícita, donde cada señal corresponde con el puerto del módulo.
* Por nombre: La conexión se realiza de forma explícita, utilizando .puerto(señal).
Si se dispone de un módulo cuya interfaz es mux(a, b, sel, y), donde a, b y sel son entradas e y una salida, el conexionado a este módulo puede realizarse de la siguiente manera.
En el conexionado por nombre la asignación sería la siguiente.
# Programación en Verilog/Directivas para el compilador

Verilog ofrece un conjunto de directivas de compilación que permiten obtener diferentes códigos a partir de una única descripción. A continuación se detallan las más comunes. La sintaxis para la definición de una directiva es la siguiente.

## Define

La directiva define permite definir un valor.

## Include

La directiva include, como su nombre indica permite incluir un fichero, el cual puede contener, por ejemplo, la definición de otros módulos.

## Ifdef

La directiva ifdef permite compilar un código siempre y cuando se haya definido el símbolo al que referencia.

## Timescale

La directiva timescale permite definir las unidades de tiempo con las que se va a trabajar. La sintaxis de esta directiva es la siguiente. Donde la unidad de tiempo es mayor o igual a la resolución y los valores que pueden tomar los enteros son 1, 10 y 100 y la unidad de medida puede ser: "s", "ms", "us", "ns", "ps" y "fs".
Un ejemplo de esta directiva es la siguiente.
En el ejemplo, la unidad de tiempo empleada es el nanosegundo y cualquier retraso fraccional se redondeará al primer decimal debido a la resolución especificada.
# Programación en Verilog/Sintetizabilidad

Disponer de un diseño en Verilog que simule correctamente es relativamente fácil. Sin embargo, si lo que se desea es un diseño que sea sintetizable deben respetarse ciertas normas, algunas de las cuales se enumeran a continuación.
* No emplear retardos, dado que ello conduciría a diseños no portables. Por norma general, los sintatizadores suelen ignorar estos retrasos.
* No modificar una misma variable en dos procesos diferentes.
* En una asignación procedural, todas las variables de las que dependa la asignación deben aparecer en la lista de sensibilidad.
* Si no se define completamente una variable, el lenguaje supone que conserva el último valor asignado, sintetizándose un biestable que almacene su estado.
* Los sintetizadores no admiten procesos initial.
* Los sintetizadores no suelen admitir los operadores de división y resto.
* Tener en cuenta el problema de carreara (race condition), que se produce cuando dos asignaciones se realizan al mismo instante pero una depende de la otra, y por tanto el orden de ejecución es importante.
# Programación en Verilog/Introducción
## Introducción

Verilog es un lenguaje de descripción hardware (HDL: Hardware Description Language) utilizado para describir sistemas digitales, tales como procesadores, memorias o elementos más simples como son los flip-flops. Esto significa que un lenguaje de este tipo puede utilizarse para describir cualquier hardware (digital) a cualquier nivel. Estos sistemas se pueden describir de las dos siguientes formas:
* Nivel estructural: Se utilizan elementos previamente creados, por el propio desarrollador o por terceros, donde cada elemento se interconecta con otro. Es decir, se conectan varios bloques cuya funcionalidad es pequeña para que comunicándolos entre si realicen una tarea mayor.
* Nivel de comportamiento: El diseñador describe la transferancia de información entre registros.
Estos dos niveles de descripción pueden mezclarse, dando diseños mixtos. Aunque existen multitud de lenguajes HDL, tan sólo en la actualidad se utilizan dos de ellos: Verilog y VHDL, los cuales son estándares de la IEEE.
Verilog nació en 1985 como un lenguaje propietario, pero en 1990 dicho lenguaje se convirtió de dominio público, permitiendo a las empresas hacer uso del mismo, con el fin de aumentar la difusión del lenguaje.

## Niveles de abstracción

Verilog soporta el diseño de un circuito a diferentes niveles de abstracción, de los cuales caben destacar tres de ellos: nivel de puerta, nivel RTL y nivel de comportamiento.

### Nivel de puerta

Corresponde a una descripción a bajo nivel, también se denomina modelo estructural. El diseño es descrito mediante primitivas lógicas (AND, OR, ...), conexiones y añadiendo distintas propiedades de tiempo. Estas señales pueden tomar los valores '0', '1', 'X' o 'Z' (siendo 'X' el estado indefinido y 'Z' el de alta impedancia). A continuación, se muestra un ejemplo de este tipo de nivel.

### Nivel RTL

También denominado nivel de transferencia de registro. Los diseños descritos en este nivel especifican las características de un circuito mediante operaciones y transferencia de datos. Los circuitos diseñados en este nivel tienen la propiedad de ser sintetizables, por tanto, todo código sintetizable es código RTL. A continuación se muestra un ejemplo de este tipo de nivel.

### Nivel de comportamiento

La principal característica de este nivel es su total independencia de la estructura del diseño. En este nivel, el diseñador define el comportamiento del circuito, definiéndonos mediante algoritmos en paralelo. Cada uno de los algoritmos están formados por un conjunto de instrucciones que se ejecutan de forma secuencial. En ocasiones es posible utilizar código no sintetizable con el fin de realizar los denominados testbenches. Seguidamente se muestra un ejemplo de este nivel.
# Python/Enlaces
### Python en la red

Español
* Sección dedicada a Python del directorio Dmoz
* La lista de python en castellano
* Guía de aprendizaje de Python
Inglés
* Python Software Foundation (el sitio principal sobre Python)
* Dive Into Python El manual en el que se basa este Wikilibro.
* Python code Muchos Python code
* Python Free Ebooks Python Free Ebooks
Python: Índice · Introducción · Enlaces :
* Instalación de Python ·
* Generalidades ·
* Funciones, constantes nativas ·
* Tipos de datos nativos ·
* Herramientas de control de flujo ·
* Definición de funciones ·
* Leer y escribir archivos ·
* Su primer programa en Python ·
* Entrada y salida ·
* Estructuras de datos ·
* Errores y excepciones
* Interfaces gráficas ·
* Módulos relacionados con el sonido ·
* Módulos relacionados con el tiempo ·
* Módulos relacionados con la matemática
# Python

* Instalación de Python
* Generalidades
* Su primer programa en Python
* Módulos relacionados con el tiempo
* Módulos relacionados con el sonido
* Módulos relacionados con la matemática
* Funciones, constantes nativas
* Definición de funciones
* Tipos de datos nativos
* Herramientas de control de flujo
* Estructuras de datos
* Entrada y salida
* Leer y escribir archivos
* Errores y excepciones
* Interfaces gráficas
* Enlaces
* Wikipedia en español tiene un artículo sobre «Python».
* Wikimedia Commons alberga contenido multimedia acerca de «Categoría:Python».
* «Página oficial de Python»
* «INDEX 3.8.4rc1 Documentation» Consultado el 4 de noviembre de 2020
* «The Python Standard Library — Python 3.8.6 documentation» Consultado el 4 de noviembre de 2020
* «tkinter Bindings and events — Python interface to Tcl/Tk» Consultado el 4 de noviembre de 2020
* «tkinter — Python interface to Tcl/Tk — Python 3.8.6rc1 documentation» Consultado el 4 de noviembre de 2020
* «The Python Tutorial — Python 3.8.4rc1 documentation» Consultado el 4 de noviembre de 2020
* «Beautiful Soup Documentation — Beautiful Soup 4.9.0 documentation» Consultado el 4 de noviembre de 2020
* «itertools — Functions creating iterators for efficient looping — Python 3.8.4 documentation» Consultado el 4 de noviembre de 2020
* «A Guide to the Newer Python String Format Techniques – Real Python» Consultado el 4 de noviembre de 2020
* «GUI Programming with Python: Events and Binds» Consultado el 4 de noviembre de 2020
* «Python 3 Programming Tutorials» Consultado el 4 de noviembre de 2020
* «Python Programming Articles» Consultado el 2 Feb 2022
* «Cómo pasar argumentos al comando del botón Tkinter» Consultado el 4 de noviembre de 2020
* «python - How to pass arguments to a Button command in Tkinter? - Stack Overflow» Consultado el 4 de noviembre de 2020
* «TkDocs - Button» Consultado el 4 de noviembre de 2020

### Python en la red

Español
* Sección dedicada a Python del directorio Dmoz
* La lista de python en castellano
* Guía de aprendizaje de Python
Inglés
* Python Software Foundation (el sitio principal sobre Python)
* Dive Into Python El manual en el que se basa este Wikilibro.
* Python code Muchos Python code
* Python Free Ebooks Python Free Ebooks
# Slot

* Introducción al slot
* Slot en casa
* Slot en clubes
* Crear pistas de slot
* Mejorar coches de slot
# Sociedad, Educación y Estado del Bienestar
## ¿Quién debe y quién puede participar aquí?

Este wikilibro nace como el lugar de trabajo de los estudiantes de la asignatura Sociedad, Educación y Estado del Bienestar, parte del Máster de Estudios Universitarios Avanzados en Pedagogía de la Universidad Complutense de Madrid.
La página se inicia en el cuatrimestre Febrero-Mayo de 2012. En esta fase se prevé que intervengan únicamente los estudiantes del curso (y tal vez los de la misma materia en otros másteres: Primaria, Infantil y Educación Social), pues es parte de su carga de trabajo y será objeto de evaluación. Si no eres uno de ellos, rogamos que no intervengas hasta que haya pasado el periodo previsto. Si no pudieras resistir la tentación de participar en tan fascinante proyecto te rogamos que lo hagas, de momento, sólo en las páginas de discusión. Para los estudiantes se recomienda seguir no sólo la página capitulo que corresponda a su equipo de trabajo, sino todo el libro en general y, muy en particular, aquellos capítulos que puedan tener relaciones más directas con el suyo, para evitar duplicidades, dar coherencia al conjunto y posibilitar enlaces entre capítulos. Durante el cuatrimestre objeto de evaluación pueden intervenir en la página de discusión de los otros equipos, si lo creen conveniente, pero deben evitar alterar su página principal. Una vez finalizado el cuatrimestre, el wikilibro (o los capítulos terminados del mismo) quedará a disposición del público (en realidad ya lo está) y de posteriores cohortes de estudiantes. Cualquier sugerencia, observación, etc. sobre la estructura del wikilibro, el acceso y elaboración por otros internautas durante el primer semestre de 2012, etc., hágase, por favor, en la página de discusión asociada a ésta /la solapa o tab de arriba a la izquierda

## Índice del libro:

* Socialización y educación: instituciones primarias y protosistemas escolares
* El Estado moderno y la escolarización universal
* Sociedad civil y educación: demandas, movimientos e instituciones
* La institucionalización de la infancia: modelos, deberes, derechos
* El Estado Social o del Bienestar: orígenes y desarrollos
* El caso español: del paternalismo a la universalización
* La enseñanza en España, de la Ilustración a hoy
* Las reformas comprehensivas desde 1970
* Estado, mercado y sociedad en la educación
* La igualdad y la justicia escolares
* Enseñanza y aprendizaje en la era informacional
* La formación fuera de la escuela
* Del esencialismo al mesianismo pedagógico
* La organización escolar y la profesión docente
# Wikichicos/Pascal para niños
## Prólogo

Los ordenadores no funcionan por arte de magia. Aunque parecen muy listos y hacen cosas maravillosas, sólo son máquinas fabricadas por personas, y hacen todo tipo de cosas gracias a los programas, escritos también por personas.
Este libro es un curso simple para que los niños aprendan a crear programas básicos en el lenguaje de programación Pascal, escrito en palabras sencillas y empezando por explicar lo que es un ordenador y cómo funciona.
* ¿Cómo es un ordenador?
** Las partes de un ordenador
*** La CPU
*** La pantalla
*** El teclado y el ratón
*** La impresora
** ¿Cómo funciona un ordenador?
*** El sistema operativo
*** Los programas
** ¿Qué es un "lenguaje de programación"?
*** Un poco de historia
*** El lenguaje Pascal
*** ¿Cómo puedo utilizar Pascal?
* Los programas
** ¿Cómo es un programa?
** Mi primer programa en Pascal
# Aplicaciones Educativas

El término proviene del acrónimo en inglés, «Application». La expresión «aplicación educativa» hace referencia a todo programa o recurso o material multimedia, dirigido al uso a través de dispositivos electrónicos, que se pueda usar como herramientas tecnológicas de soporte en el ámbito de la educación.
* /Nacimiento y evolución
* /Fundamentos del diseño de las Apps
* /Análisis de Apps de idiomas
* /Ventajas e inconvenientes del uso de APPs educativas
* /Investigación sobre tecnología y aplicaciones educativas
* /El uso de las Apps en las distintas etapas educativas
* /Análisis de Apps aplicadas a las enseñanzas artísticas
* /Análisis de apps de Lengua y Literatura
# Apicultura fácil/Intoducción

La apicultura o el cultivo de abejas es una actividad agropecuaria orientada a criar abejas (del género Apis) y prestarles los cuidados necesarios con el objeto de obtener los productos que son capaces de elaborar y recolectar con el fin de satisfacer las necesidades que el hombre tiene de estos.
Los principales productos que obtiene el hombre en esta actividad es la miel, la cera, el polen, la apitoxina y el propóleo. Un beneficio indirecto producto de la actividad de pecoreo que realizan las abejas corresponde a la polinización que realizan estos insectos. El cultivo similar de otras abejas productoras de miel (melipónidos) se denomina meliponicultura.
# Aplicaciones Educativas/Análisis de apps de Lengua y Literatura
## BASE DE DATOS SOBRE TIC Y APLICACIONES PARA LENGUA Y LITERATURA

http://www.materialesdelengua.org/recursos_tic/enlaces_ticylengua.htm
Lourdes Domenech y Ana Romeo

## BLOG EDUCATIVO DE LENGUA

http://www.controlatulengua.blogspot.com.es/ Ángeles Fernández González 2010
Descripción: Blog educativo de Lengua con más de 250 entradas con las que los alumnos tienen la oportunidad de acercarse a esta materia de un modo más lúdico.
Puntos fuertes: Apariencia, combinación de formatos, actualización.
Puntos débiles: Necesidad de orientador para potenciar el aprendizaje significativo.

## ANALIZADOR MORFOSINTÁCTICO

http://www.mystilus.com/Analizador_morfosintactico#
Descripción: Analizador de morfología y sintaxis.
Puntos fuertes: El analizador ofrece todas las descripciones morfológicas desglosadas y ofrece la sintaxis resuelta de oraciones simples y compuestas.
Puntos débiles: Algunos términos se explican en inglés. Es necesario contar con conocimientos básicos de sintaxis y de un moderador externo que ofrezca las explicaciones necesarias.

## EDITOR DE ANÁLISIS SINTÁCTICO

http://www.analisissintactico.com/
Descripción: Editor personalizado de análisis sintáctico.
Puntos fuertes: Integración de análisis sintáctico, sintagmático y morfológico. Posibilidad de ofrecer a los usuarios un banco de datos con los análisis individuales editados. Posibilidad de personalizar la herramienta.

## CORRECTOR GRAMATICAL

http://www.abccorrector.com/
Descripción: Corrector gramatical de español.
Puntos fuertes: Concordancia de más de dos elementos, corrige muchos casos de subjuntivo, concordancia sujeto y verbo. Puntos débiles: En el caso de errores con formas verbales, ofrece demasiadas sugerencias.

## CONJUGADOR DE VERBOS

http://www.verbolog.com/igca.htm Descripción: Conjugador de verbos y curiosidades sobre esta categoría gramatical.

## APLICACIONES MÓVILES

https://play.google.com/store/apps/details?id=com.probar.ppnkjqyueusktnoyqna
Víctor Villoria 2015
Descripción: Aplicación de lectura de artículos y entradas de Proyecto Aula www.lenguayliteratura.org
Puntos fuertes: acceso a todos los contenidos de la web. Aplicación gratuita. Posibilidad de suscripciones literarias.
Puntos débiles: Sólo disponible para Android.
# Afrikáans/Gramática

* Sujetos
* Partes de discurso
** Sustantivos
** Pronombres
** Adjetivos
** Preposiciones
** Conjunciones
** Verbos
* Referencia de la conjugación del verbo
* Frases
# Afrikáans/Nivel básico

* Pronunciación
* Artículo definido
* Artículo indefinido
* Pronombres personales y posesivos
* Pronombres demostrativos
* Formas verbales en presente
* Construcción de frases
* Negación
* Interrogativo
* Verbos modales
* Inflexión de adjetivos
* Plural
* Numerales
* Horas, meses y días de la semana
* Formas Verbales en pasado y futuro
* Pasado de verbos irregulares
* Verbos separados
* Frases coordinadas y subordinadas
* Verbos reflexivos
* Comparativo y superlativo de adjetivos y adverbios
* Sustantivos compuestos
* Partículas modales
Nivel básico Esta página contiene todo el texto del capítulo de «Nivel básico»
Texto completo de este capítulo Esta página contiene todo el texto del capítulo de «Nivel básico»