私はFORTHについて少し知っているので、それに限定します。これは低レベルの言語であり、プログラマーとしてすべてのハードウェアリソースにアクセスできます。だからあなたは好きなことをすることができます。
並行性
parallellプログラム(編集:実際の並行プログラムを言うために使用)を使用するには、少なくとも2つの実行ユニット(CPU)が必要です。たとえば、「これらの2つの引数を使用してプロセッサ2でこの単語を実行する」と言うFORTHの単語を実装するのは簡単です。ワードはプロセッサ2に必要な2つのスタックを割り当て、ワードの実行を開始します。そのプログラムで使用できるコンストラクトを厳密に制限する必要があります。
並行プログラムの数が実行ユニットの数よりも大きい場合は、「疑似並列」プログラムを使用します。基本的には、コルーチンまたはプリエンプティブマルチタスクの2つの方法があります。いずれにせよ、これを実現する方法は可能ですが(簡単ではありませんが、文献に詳しく説明されています)、FORTHを使用すると、必要なすべての低レベルのものにアクセスできます。
遅延評価
もちろん、ほぼすべてのプログラミング言語と同様に、FORTHでこれを行うことができます。Haskellのようにエレガントでも「組み込み」でもありません。非常に素朴な例を使用します。
考え方は、一連の物を返す「関数」(ここでは大まかに使用)を定義することです。1つの例は、すべての整数を返す関数です。次に、このセットに対して操作を行い、完了したら結果を返します。例として、合計が1000を超えるまですべての整数を合計することができます。非遅延評価では、最初にすべての整数がセットとして割り当てられますが、整数が無限にあるため不可能です。その後、このセットで作業を開始します。遅延実装には、「セット内の次の値を与える」方法があります。これを行うには、「最後の値を与える」機能の変数が1つだけ必要です。
Haskellはこのように物事を行います。もちろん、より複雑な状況を処理しますが、考え方は同じです。プログラマーとして、問題の解決方法ではなく、問題に集中できるように評価をシュガーコートします。