関数仕様の作成と使用を統一的に扱うための仕様インターフェースの設計において、主な課題は、異なる分離論理（SLおよびISL）に基づく関数仕様の相互運用性を確保することでした。具体的には、以下のような設計上の考慮点がありました。
仕様の整合性: SLとISLの間で仕様を一貫して扱うためには、両者の特性を理解し、それに基づいた共通のインターフェースを設計する必要がありました。これにより、異なる論理に基づく仕様が同じエンジンで利用できるようになります。
消費と生成の操作の特性: consumeおよびproduce操作の特性を明確に定義し、これらがSLおよびISLの仕様に対して健全であることを保証する必要がありました。これにより、関数呼び出し時の状態更新が正確に行われることが求められました。
エラー処理の統一: 言語エラーとリソース不足エラーを明確に区別し、それぞれに対する仕様を適切に扱うことが重要でした。特に、リソース不足エラーはUX推論において重要な役割を果たすため、これを考慮した設計が必要でした。
ユーザー定義の述語の取り扱い: ユーザー定義の述語を折りたたむ（folding）および展開する（unfolding）機能を統一的に扱うためのメカニズムを設計することも課題でした。これにより、複雑なデータ構造を扱う際の柔軟性が向上します。