abl - Online en la nube

Este es el comando abl que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


abl - Representación prefijada para funciones booleanas

DESCRIPCIÓN


libablmmm.a es una biblioteca que permite representar una función booleana en una forma similar a LISP.
Un ABL es una representación interna prefijada para una función booleana que tiene estándar
operadores como OR, NOR, NAND, XOR, NOT y AND. Un ABL solo se compone de dobletes. Un doblete es
compuesto por dos campos que son accesibles por el funcional #definir AUTOMÓVIL y CDR. La
el doblete se implementa con un MBK lista_cadena.
expresión es el término genérico para una función booleana representada por una ABL. Una expresión
puede ser una expresión atómica o una expresión de operador. La función f = a es representado
por una expresión atómica mientras que f = (o a b) está representado por una expresión de operador. Un
La expresión atómica se compone de un solo doblete que tiene el Next puntero igual a NULL y
DATOS puntero igual al puntero identificador. Una expresión atómica constante es una expresión atómica
expresión que tiene la cadena "'0'" o "'1'" como identificador.
Una expresión de operador es más complicada que una expresión atómica. Es una lista de
elementos, el primer elemento es el operador principal de la expresión y los siguientes elementos son
los argumentos de la expresión. Es posible analizar los argumentos llamando al
funcional #definir CDR. Entonces cada argumento es accesible por el funcional #definir AUTOMÓVIL.
Un argumento puede ser recursivamente una expresión atómica o de operador. La aridad de un
La expresión del operador es el número de argumentos del primer nivel.
Las funciones se dividen en dos grupos, las funciones de bajo nivel se escriben con #definir
y se utilizan para gestionar el formulario interno ABL, las funciones de alto nivel se utilizan para gestionar
las expresiones booleanas. Todas las funciones están definidas en el archivo "prefbib.c" (#definir in
"logmmm.h").

Funcional #definir

ATOM - comprueba el tipo de expresión (expresión atómica o de operador).

AUTOMÓVIL - devuelve el DATOS puntero de un doblete.

CARD - devuelve el DATOS puntero del Next puntero de un doblete.

CDR - devuelve el Next puntero de un doblete.

ÓPERA : devuelve el número de operador de una expresión de operador.

VALOR_ATOM - devuelve el asociado tanque * de una expresión atómica.

Clave y procedimientos

añadirHExpr : agrega nuevos argumentos al principio de una expresión de operador.

agregarQExpr : agrega nuevos argumentos en la cola de una expresión de operador.

cualquierExpr - devuelve el valor de un OR lógico aplicado a los resultados de la
aplicación de una función sobre los argumentos de una expresión de operador.

cambioOperExpr - cambia el operador del encabezado de una expresión.

CharToOper - convierte una cadena de operador en un número de operador.

copiaExpr - copia una expresión.

crearátomo - crea una expresión atómica.

crearBinExpr - crea una expresión de operador binario con una eventual fusión de la
operador.

crearExpr : crea el encabezado de una expresión de operador.

eliminarNumExpr : elimina el argumento i-ésimo en una expresión de operador.

devXor2Expr - convierte XOR 2 en OR-AND.

devXorExpr - elimina XOR en una expresión.

mostrarExpr : muestra una expresión en una notación prefijada.

mostrarInfExpr : muestra una expresión en notación infija.

igualExpr : comprueba que dos expresiones son estrictamente iguales.

igualVarExpr : comprueba que dos expresiones sean sintácticamente iguales.

cadaExpr - devuelve el valor de un AND lógico aplicado a los resultados de la
aplicación de una función sobre los argumentos de una expresión de operador.

exprToChar - convierte una expresión en una cadena.

charToExpr - convierte una cadena en una expresión.

pisoArityExpr - aplana los operadores de una expresión.

planaPolaridadExpr - traduce los inversores de una expresión al nivel de atómico
expresiones

libreExpr - libera una expresión.

identExpr - da un identificador de una expresión de operador.

longitudExpr : devuelve el número de argumentos en una expresión.

mapaCarExpr - crea una nueva expresión aplicando una función a todos los argumentos de
una expresión de operador.

mapaExpr : aplica un procedimiento a todos los argumentos de una expresión de operador.

MaxExpr : devuelve el argumento más alto de una expresión de operador.

minExpr : devuelve el argumento más bajo de una expresión de operador.

normaExpr - normaliza una expresión.

noExpr - complementa una expresión y eventualmente hace una simplificación.

númeroAtomExpr : devuelve el número de átomos en una expresión.

numeroOccExpr : devuelve el número de veces que aparece un átomo en una expresión.

númeroOperBinExpr : devuelve el número de operadores binarios equivalentes en una expresión.

operaToChar - convierte un número de operador en una cadena de operador.

ProfExpr : devuelve la profundidad de una expresión.

profAOExpr - devuelve la profundidad de una expresión sin llevar los inversores a
cuenta.

búsquedaExpr : busca un átomo específico en una expresión.

buscarNumExpr : obtiene el argumento i-ésimo en una expresión de operador.

buscarOperExpr : busca un operador en una expresión.

simplif10Expr - realiza simplificaciones en una expresión, incluida la constante atómica
expresiones

simplifNotExpr - simplifica una expresión, incluidos los inversores.

ordenarExpr - ordena una expresión.

substExpr - copia una expresión sustituyendo un átomo dado por una expresión.

substPhyExpr - sustituye una expresión atómica por una expresión dentro de un
expresión.

soporteChain_listExpr
- devuelve el soporte de una expresión en un lista_cadena.

soportePtype_listExpr
- devuelve el soporte de una expresión en un lista_tipo_p.

wPMExpr - devuelve 1 si la coincidencia de patrones es posible entre dos
expresiones

Use abl en línea usando los servicios de onworks.net



Últimos programas en línea de Linux y Windows