Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Functional programming plai类型:如何定义函数类型?_Functional Programming_Racket_Static Typing_Plai - Fatal编程技术网

Functional programming plai类型:如何定义函数类型?

Functional programming plai类型:如何定义函数类型?,functional-programming,racket,static-typing,plai,Functional Programming,Racket,Static Typing,Plai,我在玩plai类型的语言。我有一个函数,它应该使用一个谓词函数(返回true或false)和一个项目列表 我的代码如下所示: (define-type-alias IndexT (listof IndexItemT)) (define (index->filter pf [index : IndexT]) : IndexT (filter pf index)) 我想表示,pf可以使用IndexItemT类型的值并返回bool 可以用plai语言写吗?如果是,如何进行?是。您可以使用

我在玩plai类型的语言。我有一个函数,它应该使用一个谓词函数(返回true或false)和一个项目列表

我的代码如下所示:

(define-type-alias IndexT (listof IndexItemT))

(define (index->filter pf [index : IndexT]) : IndexT
  (filter pf index))
我想表示,
pf
可以使用
IndexItemT
类型的值并返回
bool

可以用plai语言写吗?如果是,如何进行?

是。您可以使用类型构造函数来表示
pf
的类型

(define (index->filter [pf : (IndexItemT -> boolean)] [index : IndexT]) : IndexT
  ....)