OcamlとMLには一般的に非常に新しく、非常に根本的な問題を抱えています。私はパターンマッチを使用しており、1つのマッチ内で2つ以上の連結ステートメントを出力したいと考えています。例えば。 chan^"("^var^")"^op2^(poc p); chan^"("^var^")"^op^(poc p)
Ocamlは1つ後のステートメントを印刷します
let processoperatorchange2 t2s2 proc2 op op2=
let rec poc2 p = match p with
| Zero -> "0"
| Pproc (x) -> String.lowercase x
| In(chan, var, _, p, _) -> chan^"("^var^")"^op^(poc2 p); chan^"("^var^")"^op2^(poc2 p)
in poc2 proc2
しかし、その後、私はこれを実行するたびに、印刷された唯一の文はセミコロンの後に最後のものです。私はこれにいくつかの助けを得ることができますか?
完全一致式を追加できますか?あなたの質問から、私はあなたがそれを印刷する代わりに文字列を返すと推測することができます。 – nefas
こんにちは、はい、コードで質問を編集しました。問題は、連結された文字列が異なるユーザー定義型の組み合わせであることです。今は単純に出力しますが、変数に代入するときは単位を返し、印刷できません。 – user1514567