Numlex Documentación
Referencia

Unidades y constantes personalizadas

Define tus propias unidades y constantes de toda la app: gramática, dependencias, límites y reglas de rechazo.

Dos ajustes permiten ampliar lo que puede decir una hoja: Settings → Units define unidades nuevas a partir de las existentes (o como átomos nuevos independientes), y Settings → Constants define hasta 100 valores con nombre que cualquier hoja puede usar.

Esta página documenta ambos sistemas: reglas de nombres, expresiones de definición, resolución de dependencias y ciclos, el ámbito global de la app (ninguno se escribe en las exportaciones .nlx) y los valores exactos que cada sistema acepta o rechaza.

Unidades personalizadas (Settings → Units)

Nombres

  • 1–6 palabras ASCII, como máximo 40 caracteres; la primera palabra empieza por letra.
  • El nombre debe ser único: una colisión con el catálogo o con otra unidad personalizada se rechaza.
  • La forma plural del nombre se acepta automáticamente, igual que en los átomos del catálogo.

Definiciones

Se aceptan dos tipos de definición:

  • <number> <existing unit expression> — por ejemplo 2.54 cm — que define la unidad nueva en términos de las existentes;
  • el literal new unit, que declara un átomo nuevo independiente.

Dependencias y límites

  • Las dependencias se resuelven en el orden de declaración y fuera de él: el orden no importa.
  • Un ciclo es un error.
  • El límite global es 100 unidades personalizadas.
  • Las unidades personalizadas son globales de la app (ajustes de la aplicación) y no se guardan en una hoja .nlx.
  • En una hoja, las unidades personalizadas se comportan como las del catálogo: cantidades, conversión y aritmética funcionan como se describe en Unidades y cantidades.

Constantes (Settings → Constants)

Nombres

  • 1–6 palabras ASCII, como máximo 40 caracteres; la primera palabra empieza por letra.
  • Existen categorías reservadas: los nombres y categorías del sistema no se pueden sobrescribir.

Expresiones

  • La expresión se guarda literalmente como texto fuente, con un máximo de 256 caracteres.
  • El resultado debe ser un escalar sin dimensiones finito, un porcentaje o un valor de dinero con un único código fiduciario.
  • Una constante puede referenciar otras constantes.

Dependencias y límites

  • Las dependencias son independientes del orden de declaración: los valores se recalculan cada vez que cambias Ajustes, así que una edición actualiza al instante todas las hojas.
  • Una dependencia cíclica es un error.
  • El límite es 100 constantes.
  • Las constantes son globales de la app y no se guardan en .nlx.
  • Dentro de una hoja, las constantes son inmutables: solo se editan en Ajustes.

Ejemplos

Con PI, Tax y Rent declaradas en Settings → Constants:

PI × 2              → 6.283185307179586
Tax × 100           → 8           (Tax = 8% = 0.08; in multiplication the
                                   percent scalar returns as an ordinary number)
Rent × 12           → 14400 USD   (Rent = 1200 USD)

Valores rechazados

Una línea de constante que resuelve a cualquiera de estos permanece inactiva:

  • un valor con unidades (9.81 m/s²),
  • booleanos,
  • fechas,
  • asignaciones,
  • marcadores de token de respuesta,
  • divisas mezcladas,
  • nombres desconocidos,
  • ciclos.

Nombres de hoja frente a constantes

Los valores con nombre de una hoja son un mecanismo aparte de las constantes de Ajustes (consulta Lenguaje de hojas). Un valor con nombre entero conserva su forma exacta:

x = 0x1F
x & 1               → 1
x as hex            → 0x1F

y x no se modifica con la línea x + 1.

Relacionado

¿Has encontrado un error en esta documentación? Infórmalo en GitHub