我来自Javascript背景&我想了解我需要如何用Reason/Ocaml的模块系统构建/构建程序。OCaml /原因设计模块
作为练习,让我们说,我想写这段JavaScript OCaml中/原因(编译会回到JS通过js_of_ocaml)
var TeaType = new GraphQLObjectType({
name: 'Tea',
fields:() => ({
name: {type: GraphQLString},
steepingTime: {type: GraphQLInt},
}),
});
我应该如何设计我的程序做到这一点?
我应该创建一个模块,它需要另一个模块通过js_of_ocaml在js中生成GraphQLObjectType吗?
我该如何构造这种支持GraphQLObjectType的类型?
Tea.re
let name = "Tea";
let fields = /* what type should I make for this? Tea is
just one of the many graphql-types I'll probably make */
我的意思是字段,它返回一个地图包含字段的未知量的形实转换。 (每个graphqlobject有不同的字段) 这是OCaml/Reason中的映射类型,我需要自己创建吗?
这有点微妙的回答你,因为你正在传送的概念,是javascript中的习惯用法与OCaml以及OCaml使用不同的习语。在这种情况下,如果我理解正确,看起来像带有标签和可选参数的单个函数应该能够做到这一点。 – Drup
你知道任何资源,我可以更多地了解OCaml思考吗?即书籍? – Seneca
http://ocaml.org/learn/和https://realworldocaml.org/ – Drup