Errors, diagnostics and limits
When Varlig can’t work out a line, it shows an error in place of the answer. Look up the message below to see what usually causes it. The page also lists notation that Varlig recognises but doesn’t support, and the limits that stop a calculation from growing too large. An error on one line doesn’t stop the rest of the note from working.
A name you’re still typing doesn’t show an error yet: 5 + pri, on the way to price, waits until
you pause for about a second and a half or move the cursor away. A name that stays undefined, such
as rent2 in 5 + rent2, is then an error, never read as the number in it.
Error messages
| Message | What it means | Example |
|---|---|---|
Error: divide by zero |
Division by exactly zero | 10 / 0, split £90 among 0 |
Error: division without divisor |
An assignment whose value looks like a web address or dotted name followed by / |
link = example.com/docs |
Error: imaginary number. For a complex answer, write … |
A real square root or logarithm of a negative number, or an inverse function outside its range. The message shows the complex form to write, such as sqrt(-4 + 0i) |
sqrt(-4), ln(-1), asin(2) |
Error: incompatible units: can't add km and kg |
The units don’t match, or a value doesn’t suit the operation, such as comparing dates or slicing with [a:b]. The message names both units, and says can't convert for a conversion |
2 m + 3 kg, 5 kg in L, [1, 2, 3][0:2] |
Error: unsupported multiplicative unit |
A root of money or a mass, a root that would leave an uneven unit, or multiplying a temperature | sqrt(£4), sqrt(4 m^3), 2 celsius * 3 m |
Error: unsupported exponent operation |
A power the unit system can’t express | 2 m ^ 0.5 |
Error: unsupported unit in rate |
An exchange rate whose units don’t fit the conversion | £100 in EUR at 1.17 EUR/USD |
| No answer | Nothing to show: an unfinished calculation, a name that isn’t defined, or a definition line | x =, tip(bill, pct) = bill * pct |
Error: ∞ |
A result too large or too small for the number format, a loan with a term of zero, or a historical exchange rate that isn’t available | 10^1000, monthly repayment on £12000 over 0 years at 4% |
Error: missing rate: XXX |
No exchange rate for that currency, for example before rates have loaded | 100 USD in EUR |
Error: imprecision due to magnitude |
A small number would be lost next to a very large one | 1e100 + 1 |
Error: overflow |
A date or number outside the range Varlig can represent | 1 January 2024 + 100000000 years |
Error: calculation limit |
One of the limits was reached; also shown for the reversed form 5 combinations of 2 |
range(1, 2000), factorial(100000) |
Unsupported: Unknown name: … |
A name without a value inside sum, product, solve, integrate or a derivative at a point |
integrate(a*x, x, 0, 1) |
Error: no real solution |
A quadratic with no real root. Varlig says so rather than giving a complex root | solve(x^2 + 1 = 0) |
Unsupported: Expected a square matrix |
det, inverse or trace of a matrix that doesn’t have as many rows as columns |
det([[1,2,3],[4,5,6]]) |
Unsupported: Singular matrix has no inverse |
The determinant is zero, so the rows aren’t independent and there is no inverse | inverse([[1,2],[2,4]]) |
Unsupported: Matrix entries must be plain numbers; … |
A unit, an amount of money or a complex value in a matrix. No matrix operation would preserve them | det([[1 kg,2],[3,4]]) |
Unsupported: No value repeats, so this list has no mode; … |
mode where nothing repeats, or where several values tie. The message names modes, median and average |
mode([1,2,3]) |
Unsupported: A variance squares its observations, so it takes plain numbers; … |
A variance of amounts with a unit, whose answer would be in squared units. Use stddev instead |
variance([1 kg, 2 kg]) |
Unsupported: A percentile is between 0 and 100 |
A percentile rank outside its range |
percentile([1,2,3,4],101) |
Unsupported: A quartile is 0, 1, 2, 3 or 4 |
A quartile outside its range |
quartile([1,2,3,4],5) |
Unsupported: unrecognized calculation … |
Varlig can’t read part of the line: a number whose commas don’t group thousands in threes (a comma is never a decimal point), or a word standing where a value should be, named in the message with the closest name you’ve defined. A name with digits or underscores counts as a word, and so does one in brackets, in a function call or before a conversion | 12,50, rnt + £200, rent2 * 12 |
Unsupported: money times money … |
Multiplying two amounts of money, which has no everyday meaning. Multiply by a count or a percentage instead | $4 * $4 |
Unsupported: a percentage and an amount do not add up … |
A percentage with nothing to take it from. Say what it applies to, as in 1.4% + 20p on £2,255 or £31.50 * 4% + 20p |
4% + 20p |
Unsupported: at needs a price, a rate or a percentage after an amount |
at between two amounts of the same money, which says nothing on its own |
£500 at £20 |
Unsupported: no amounts above to add up |
A total, sum, average, max or min line with nothing above it in its section, usually because of a heading or a --- divider |
total under a # Groceries heading with no amounts |
Unsupported: conversion to … |
A conversion target that starts with one of your names, so it could be a scale or a unit | 15.2 m in scale miles with scale = 76.2 |
Unsupported: an amount and an amount per … do not add up … |
A bare amount added to an amount per period. Give the bare amount the same period | £100 + £50/month |
Unsupported: weeks or days of an amount need its period … |
Weeks or days of a named amount that has no period of its own | 5 weeks rent with rent = £1,850 |
Unsupported: a distance or weight times … has no everyday meaning |
A measurement multiplied by a length of time. Write the amount per period, as in 2,500 miles a year * 3 years |
2,500 miles * 3 years |
Unsupported: ambiguous commas in … |
Commas inside brackets that could either group thousands or separate values. The message shows both ways to write it | max(1,000,2,000), sum(10,100) |
Unsupported: unknown time zone: … |
A place or zone in a time-zone conversion that Varlig doesn’t recognise | 3:00 pm London in Narnia |
Error: undefined variable: … |
A name used before it holds an amount, for example because its own line failed | 2 * cost with cost = hello |
Error: line2 refers to a deleted line |
A line reference whose row was deleted. Undo brings it back | line2 * 2 after deleting line 2 |
Unsupported: line1 has no answer |
A reference to a line that shows nothing, such as a heading | line1 + line2 under a heading |
Unsupported: no lines tagged #food above |
A tag total with no tagged line above it in its section | total of #food with nothing tagged |
Unsupported: #4A is no tag: a tag name starts with a letter |
A tag total whose name starts with a digit | total of #4A |
Unsupported: no amounts on the checklist above |
A checklist total whose items hold no prices | planned over items with no amounts |
Error: No note named “…” |
A use line naming a note that doesn’t exist. Protected, trashed and circular sources have their own messages |
use [[Assumptions]] with no such note |
Unsupported: an inflation projection needs this year or a later one |
An inflation projection aimed at a past year | value of $500 in 2020 at 3% inflation |
Unsupported: unknown unit: … |
A word after a number that isn’t a unit, when you convert it or add it to a date; check the spelling in the unit catalogue | 3 bananas in kg, today + 2 sprints |
Unsupported: unknown ingredient: … |
An ingredient without a known density in a cup-to-gram conversion; pick a close match from the ingredient list | 1 cup rice in g |
Unsupported: … needs a rate |
A tax named without a percentage. Add the rate, as in with 20% VAT, or set your sales tax in Settings |
£10.50 plus VAT |
Unsupported: dates can't be added |
Two dates joined with +. Subtract them for the time between, or add a duration |
today + 25 December 2026 |
Unsupported: Function names can't contain spaces |
A function named with several words. The message suggests the same name with underscores | area of circle(r) = pi * r^2 |
Unsupported: … has no … |
A weekday or day that the month doesn’t have, so no date is guessed | fifth monday of February 2025, February 30 2025 |
Unsupported: recurring dates: … |
A repeating schedule rather than one date. Ask for the date you need, such as next monday |
every monday, every 2 weeks from 1 October 2026, one a week from 5 October 2026 |
Unsupported: … |
Something Varlig recognised but can’t do, such as extra words after a phrase; the message says what went wrong | split £90 among 2.5 |
Unsupported notation
Some notation looks like maths but isn’t supported. Rather than work out part of the line and
give a misleading answer, Varlig shows a specific message that quotes the symbol where the
problem starts, such as at "±".
| Notation | Message | Instead |
|---|---|---|
10 ± 0.5, 10 +/- 0.5 |
Unsupported: Uncertainty notation is not supported at "±" |
Work out each end separately: 10 - 0.5, 10 + 0.5 |
2d6 |
Unsupported: Dice notation is not supported at "d" |
random(1, 6) + random(1, 6) |
5 < 4 < 10 |
Unsupported: Comparison chains are not supported at "<"; combine separate comparisons with && |
4 < 5 && 5 < 10 |
Limits
| What | Limit |
|---|---|
| Line and note size | 64 KiB per line; 1 MiB and 10,000 lines per note |
| Exact fractions | Numerator and denominator up to 4,096 bits each |
| Decimal numbers | Coefficient up to 2^128−1, with an exponent from −128 to 127 |
Lists, including range |
1,024 items |
| Matrices | 1 to 32 rows and columns |
| Nested list or matrix brackets | 16 levels |
| Summation or product over a counter | 10,000 terms |
| Advanced operations (matrices, solving, calculus) | A shared budget of 100,000 steps |
| Parameters of your own function | 32 |
| Nested function calls | 16, with at most 16,384 calls for each top-level call |
| Functions defined in a note | 1,024 |
| Derivative as a formula | 8,192 characters |
| Equation solver | 128 iterations |
| Integration | 2,048 refinements, to a depth of 20 |
Reaching a limit shows Error: calculation limit on that line. No partial answer is shown, and
the rest of the note keeps working. See Your own functions for
the function limits in context.