Resultados da pesquisa a pedido "sml"
A variável de tipo a ser unificada ocorre no tipo
Eu tenho uma função para reconstruir uma árvore de 2 listas. Retorno uma lista em todas as ramificações, mas estou recebendo um erro que não entendo. Mas presumo que isso tenha a ver com os tipos de retorno. O erro é este: Can't unify ''a with ...
SML Como verificar o tipo de variável?
Existe alguma maneira de verificar / testar o tipo de uma variável? Eu quero usá-lo assim: if x = int then foo else if x = real then bar else if x = string then ... else .....
o que é um tipo mutuamente recursivo?
Se no ML, um exemplo de um tipo de dados recursivo é:
Dica para inferência do tipo SML
Eu sou novo no SML e estou tentando praticar na referência de tipo SML. Estou tentando deduzir os tipos abaixo: a)fun add42 x =x+42 b)fun comp F G = let fun C x = G(F(x)) in C end c)fun compA42 x = comp add42 x d)val foo = compA42 add42 e)fun ...
Quais são as opções ALGUNS e NENHUMS no SML?
Eu sou novo em SML (e programação, na verdade). fun readlist (infile : string) = let val ins = TextIO.openIn infile fun loop ins = case TextIO.inputLine ins of SOME line => line :: loop ins | NONE => [] in loop ins before TextIO.closeIn ins end ...
Explicando a correspondência de padrões versus a chave
Eu tenho tentado explicar a diferença entre instruções de comutação e correspondência de padrões (F #) para algumas pessoas, mas eu realmente não consegui explicar bem .. na maioria das vezes elas apenas olham para mim e dizem "e por que você não ...
A saída é truncada com # -signs no REPL
Eu escrevi uma função que funciona como esperado, mas eu não entendo por que a saída é assim. Função:datatype prop = Atom of string | Not of prop | And of prop*prop | Or of prop*prop; (* XOR = (A And Not B) OR (Not A Or B) *) local fun ...
Como decidir se deve ser parametrizado no nível de tipo ou no nível do módulo ao projetar módulos?
Estou trabalhando para uma compreensão profunda dos módulos no estilo ML: acho que o conceito é importante e adoro o tipo de pensamento que eles incentivam. Agora, estou descobrindo a tensão que pode surgir entre tipos paramétricos e módulos ...
Sml dobrando uma árvore
Eu estou tentando obter o produto de uma árvore usando a função fold até agora, é isso que eu tenho. Estou confuso sobre como usar o método fold enquanto atravessa a árvore datatype 'a bin_tree = Leaf of 'a | Node of 'a bin_tree * 'a bin_tree ...