Пропустить к содержанию
Руководство Varlig
Главная страница Varlig

Ошибки, диагностика и ограничения

Если Varlig не может вычислить строку, вместо результата появляется ошибка. Найдите сообщение ниже, чтобы узнать обычную причину. Здесь также перечислены распознаваемые, но неподдерживаемые записи и ограничения размера вычислений. Ошибка одной строки не останавливает остальные.

Во время ввода имени ошибка не появляется сразу: 5 + pri на пути к price ждёт паузы примерно в полторы секунды или ухода курсора. Если имя остаётся неопределённым, например rent2 в 5 + rent2, появляется ошибка; цифра внутри имени не используется как число.

Сообщения об ошибках

Сообщение Что это значит Пример
Error: divide by zero Деление точно на ноль 10 / 0, split £90 among 0
Error: division without divisor Присваиваемое значение похоже на веб-адрес или имя с точками, за которым следует / link = example.com/docs
Error: imaginary number. For a complex answer, write … Действительный квадратный корень или логарифм отрицательного числа либо обратная функция вне области определения. Сообщение предлагает комплексную запись, например sqrt(-4 + 0i) sqrt(-4), ln(-1), asin(2)
Error: incompatible units: can't add km and kg Единицы несовместимы или значение не подходит для операции, например сравнения дат или среза [a:b]. Сообщение называет обе единицы; при конвертации используется can't convert 2 m + 3 kg, 5 kg in L, [1, 2, 3][0:2]
Error: unsupported multiplicative unit Корень из денежной суммы или массы, корень с нецелой степенью единицы либо умножение температуры sqrt(£4), sqrt(4 m^3), 2 celsius * 3 m
Error: unsupported exponent operation Степень, которую система единиц не может представить 2 m ^ 0.5
Error: unsupported unit in rate Единицы обменного курса не соответствуют конвертации £100 in EUR at 1.17 EUR/USD
Нет ответа Нечего показывать: незавершённое вычисление, неопределённое имя или строка определения x =, tip(bill, pct) = bill * pct
Error: ∞ Результат слишком велик или мал для числового формата, срок кредита равен нулю либо исторический курс недоступен 10^1000, monthly repayment on £12000 over 0 years at 4%
Error: missing rate: XXX Нет курса для этой валюты, например пока курсы ещё не загрузились 100 USD in EUR
Error: imprecision due to magnitude Малое число потеряло бы точность рядом с очень большим 1e100 + 1
Error: overflow Дата или число вне диапазона Varlig 1 January 2024 + 100000000 years
Error: calculation limit Достигнуто одно из ограничений; также появляется при обратной записи 5 combinations of 2 range(1, 2000), factorial(100000)
Unsupported: Unknown name: … Имя без значения внутри sum, product, solve, integrate или производной в точке integrate(a*x, x, 0, 1)
Error: no real solution Квадратное уравнение без действительных корней. Varlig сообщает об этом вместо выдачи комплексного корня solve(x^2 + 1 = 0)
Unsupported: Expected a square matrix det, inverse или trace для матрицы с разным числом строк и столбцов det([[1,2,3],[4,5,6]])
Unsupported: Singular matrix has no inverse Определитель равен нулю: строки линейно зависимы, обратной матрицы нет inverse([[1,2],[2,4]])
Unsupported: Matrix entries must be plain numbers; … Единицы, денежная сумма или комплексное значение в матрице. Матричные операции их не сохраняют det([[1 kg,2],[3,4]])
Unsupported: No value repeats, so this list has no mode; … mode, когда нет повторений или несколько значений встречаются одинаково часто. Сообщение предлагает modes, median и average mode([1,2,3])
Unsupported: A variance squares its observations, so it takes plain numbers; … Дисперсия величин с единицами дала бы ответ в квадрате единицы. Используйте stddev variance([1 kg, 2 kg])
Unsupported: A percentile is between 0 and 100 Ранг percentile вне допустимого диапазона percentile([1,2,3,4],101)
Unsupported: A quartile is 0, 1, 2, 3 or 4 Номер quartile вне допустимого диапазона quartile([1,2,3,4],5)
Unsupported: unrecognized calculation … Varlig не может разобрать часть строки: запятые в числе не разделяют тысячи на группы по три цифры (запятая не служит десятичным разделителем) либо вместо значения стоит слово. Сообщение называет его и ближайшее определённое вами имя. Словом считается и имя с цифрами или подчёркиваниями, а также имя в скобках, вызове функции или перед конвертацией 12,50, rnt + £200, rent2 * 12
Unsupported: money times money … Умножение двух денежных сумм не имеет повседневного смысла. Умножайте на количество или процент $4 * $4
Unsupported: a percentage and an amount do not add up … Не указано, от какой суммы брать процент. Уточните это, например 1.4% + 20p on £2,255 или £31.50 * 4% + 20p 4% + 20p
Unsupported: at needs a price, a rate or a percentage after an amount at между двумя суммами в одной валюте само по себе не задаёт осмысленную операцию £500 at £20
Unsupported: no amounts above to add up Строка total, sum, average, max или min, над которой в текущем разделе нет значений, обычно из-за заголовка или разделителя --- total под заголовком # Groceries без сумм
Unsupported: conversion to … Цель конвертации начинается с вашего имени и может означать как масштаб, так и единицу 15.2 m in scale miles при scale = 76.2
Unsupported: an amount and an amount per … do not add up … Обычная сумма прибавляется к сумме за период. Задайте для первой суммы тот же период £100 + £50/month
Unsupported: weeks or days of an amount need its period … Число недель или дней именованной суммы, у которой не задан собственный период 5 weeks rent при rent = £1,850
Unsupported: a distance or weight times … has no everyday meaning Величина умножается на длительность. Укажите величину за период, например 2,500 miles a year * 3 years 2,500 miles * 3 years
Unsupported: ambiguous commas in … Запятые в скобках могут разделять как тысячи, так и значения. Сообщение показывает оба варианта записи max(1,000,2,000), sum(10,100)
Unsupported: unknown time zone: … Varlig не распознал место или часовой пояс при переводе времени 3:00 pm London in Narnia
Error: undefined variable: … Имя использовано до получения значения, например из-за ошибки в строке его определения 2 * cost при cost = hello
Error: line2 refers to a deleted line Удалена строка, на которую указывает ссылка. Отмена действия восстановит её line2 * 2 после удаления строки 2
Unsupported: line1 has no answer Ссылка на строку без результата, например заголовок line1 + line2 под заголовком
Unsupported: no lines tagged #food above Для суммы по тегу выше нет строк с этим тегом в текущем разделе total of #food, когда строк с этим тегом нет
Unsupported: #4A is no tag: a tag name starts with a letter Имя тега для суммы начинается с цифры total of #4A
Unsupported: no amounts on the checklist above В пунктах контрольного списка нет цен для подсчёта итога planned для пунктов без сумм
Error: No note named “…” Строка use ссылается на несуществующую заметку. Для защищённых, удалённых в корзину и циклических источников есть отдельные сообщения use [[Assumptions]], когда такой заметки нет
Unsupported: an inflation projection needs this year or a later one Прогноз инфляции запрошен для прошедшего года value of $500 in 2020 at 3% inflation
Unsupported: unknown unit: … При конвертации или прибавлении к дате слово после числа не является единицей. Проверьте написание в каталоге единиц 3 bananas in kg, today + 2 sprints
Unsupported: unknown ingredient: … При переводе чашек в граммы неизвестна плотность ингредиента. Выберите близкий вариант из списка ингредиентов 1 cup rice in g
Unsupported: … needs a rate Налог указан без процентной ставки. Добавьте её, например with 20% VAT, или задайте налог с продаж в настройках £10.50 plus VAT
Unsupported: dates can't be added Две даты соединены знаком +. Вычтите одну из другой для интервала между ними или прибавьте к дате длительность today + 25 December 2026
Unsupported: Function names can't contain spaces Имя функции состоит из нескольких слов. Сообщение предлагает соединить их подчёркиваниями area of circle(r) = pi * r^2
Unsupported: … has no … Указанного дня или дня недели нет в этом месяце, поэтому дата не подбирается наугад fifth monday of February 2025, February 30 2025
Unsupported: recurring dates: … Указано повторяющееся расписание вместо одной даты. Запросите нужную дату, например next monday every monday, every 2 weeks from 1 October 2026, one a week from 5 October 2026
Unsupported: … Varlig распознал запрос, но не может его выполнить, например из-за лишних слов после фразы. Причина указана в сообщении split £90 among 2.5

Неподдерживаемая запись

Некоторые записи похожи на математику, но не поддерживаются. Вместо частичного расчёта Varlig показывает конкретное сообщение с символом начала проблемы, например at "±".

Обозначение Сообщение Что использовать вместо неё
10 ± 0.5, 10 +/- 0.5 Unsupported: Uncertainty notation is not supported at "±" Вычислите каждую границу отдельно: 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

Ограничения

Параметр Ограничение
Размер строки и заметки 64 КиБ на строку; 1 МиБ и 10 000 строк на заметку
Точные дроби Числитель и знаменатель — до 4 096 бит каждый
Десятичные числа Коэффициент до 2^128−1, показатель степени от −128 до 127
Списки, включая range 1 024 элемента
Матрицы От 1 до 32 строк и столбцов
Вложенные скобки списков или матриц 16 уровней
Сумма или произведение по счётчику 10 000 членов
Расширенные операции: матрицы, решение уравнений, математический анализ Общий лимит 100 000 шагов
Параметры собственной функции 32
Вложенные вызовы функций 16 уровней, не более 16 384 вызовов на один вызов верхнего уровня
Функции, определённые в заметке 1,024
Производная в виде формулы 8 192 символа
Решение уравнений 128 итераций
Интегрирование 2 048 уточнений с глубиной до 20

При достижении ограничения строка показывает Error: calculation limit. Частичный результат не выводится, остальные строки работают. Ограничения функций описаны в Собственные функции.