抛开技术细节,Fae仅基于一个原则:懒。这是一种构造程序的方法,以便按需执行代码,例如交易和调用合约的代码。Fae交易消息是关于它们所依赖合约的预先信息,这允许Fae维持合约状态的有组织存储,可以精确定位每个依赖关系而无需观察其他内容。6 M0 Y6 ~8 v. @
Fae使用Haskell作为一种实施语言,因为它本质上就是懒的,计算的延后(defer)和调度已经由专门的研究人员和开发人员实现。懒作为一个概念需要一种功能性的编程风格,因为它拒绝具体的执行顺序,就像Fae拒绝具体的交易排序一样。 ' Z _" E- f YFae认识到区块链的可扩展性与其交易的“懒”执行密切相关。出于这个原因,以及使用Haskell进行合约编程,Fae必须具有功能性。