エラー、診断、制限
Varligが行を計算できない場合は、答えの代わりにエラーが表示されます。下の表でメッセージを探すと、よくある原因がわかります。このページでは、Varligが認識はするものの対応していない表記と、計算が大きくなりすぎるのを防ぐ制限も紹介します。1つの行でエラーが起きても、ノートのほかの部分は引き続き動作します。
入力している途中の名前には、まだエラーは表示されません。price と入力する途中の 5 + pri は、1.5秒ほど手を止めるか、カーソルを離すまで待ちます。そのあとも定義されていない名前、たとえば 5 + rent2 の rent2 はエラーになり、中の数字が数値として読まれることはありません。
エラーメッセージ
| メッセージ | 意味 | 例 |
|---|---|---|
Error: divide by zero |
ちょうど0で割っている | 10 / 0, split £90 among 0 |
Error: division without divisor |
代入する値が、Webアドレスやドットで区切った名前の後に / が続く形に見える |
リンク = 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 =, チップ(金額, 率) = 金額 * 率 |
Error: ∞ |
数値の形式で表すには大きすぎる、または小さすぎる結果、期間が0のローン、利用できない過去の為替レート | 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 |
行列式が0で、行が独立していないため逆行列が存在しない | 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; … |
単位付きの値の分散。答えが単位の2乗になってしまいます。代わりに 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 … |
行の一部を読み取れない:カンマが3桁ごとの区切りになっていない数値(カンマが小数点として扱われることはありません)、または値があるべき場所に置かれた語。後者の場合、定義済みの名前のうち最も近いものがメッセージに示されます。数字やアンダースコアを含む名前も語として扱われ、括弧の中、関数呼び出しの中、換算の前にある場合も同じです | 12,50, 家貸 + £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 |
Unsupported: conversion to … |
換算先が自分で付けた名前で始まっているため、縮尺とも単位とも読める | 縮尺 = 76.2 としたうえでの 15.2 m in 縮尺 miles |
Unsupported: an amount and an amount per … do not add up … |
期間の付かない金額を、期間あたりの金額に足した。同じ期間を書き添えてください | £100 + £50/month |
Unsupported: weeks or days of an amount need its period … |
期間を持たない名前付きの金額に対して、週数や日数を求めた | 家賃 = £1,850 としたうえでの 5 weeks 家賃 |
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: … |
金額を持つ前に使われた名前。その名前を定義する行自体が失敗した場合などです | 費用 = hello としたうえでの 2 * 費用 |
Error: line2 refers to a deleted line |
参照先の行が削除された行参照。Undoで元に戻ります | 2行目を削除したあとの line2 * 2 |
Unsupported: line1 has no answer |
見出しなど、何も表示しない行への参照 | 見出しの下に書いた line1 + line2 |
Unsupported: no lines tagged #食費 above |
そのセクション内に、そのタグの付いた行が上にないタグの合計 | タグを1つも付けていない状態での total of #食費 |
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 [[前提]] |
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 |
2つの日付を + でつないだ。日付の間の期間を求めるなら引き算にするか、期間を足してください |
today + 25 December 2026 |
Unsupported: Function names can't contain spaces |
複数の語で関数に名前を付けた。メッセージには、同じ名前をアンダースコアでつないだ形が提案されます | 円の 面積(半径) = pi * 半径^2 |
Unsupported: … has no … |
その月にない曜日や日を指定した。日付を推測することはありません | fifth monday of February 2025, February 30 2025 |
Unsupported: recurring dates: … |
1つの日付ではなく、繰り返しの予定を指定した。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 |
制限
| 対象 | 制限 |
|---|---|
| 行とノートのサイズ | 1行あたり64 KiB。1ノートあたり1 MiB、10,000行 |
| 正確な分数 | 分子と分母はそれぞれ最大4,096ビット |
| 小数 | 係数は最大2^128−1、指数は−128から127 |
リスト(range を含む) |
1,024項目 |
| 行列 | 1〜32行、1〜32列 |
| リストや行列のかっこの入れ子 | 16階層 |
| カウンターを使った総和・総乗 | 10,000項 |
| 高度な演算(行列、方程式の求解、微積分) | 共有の100,000ステップ |
| 自分で作る関数のパラメーター | 32 |
| 関数呼び出しの入れ子 | 16。トップレベルの呼び出し1回につき、呼び出しは最大16,384回 |
| 1つのノートで定義できる関数 | 1,024 |
| 式としての導関数 | 8,192文字 |
| 方程式ソルバー | 128回の反復 |
| 積分 | 細分化2,048回、深さ20 |
制限に達すると、その行に Error: calculation limit が表示されます。途中までの答えは表示されず、ノートのほかの部分は引き続き動作します。関数の制限について詳しくは、自分で作る関数を参照してください。