La programmation fonctionnelle est un paradigme de programmation basé sur la construction d'abstractions à l'aide de fonctions, évitant les effets secondaires et le changement d'état. La programmation fonctionnelle pure est thread-safe.
Voici un morceau de code de la documentation de fs2 . La fonction goest récursive. La question est de savoir comment savoir si elle est sans danger pour la pile et comment raisonner si une fonction est sans danger pour la pile? import fs2._ // import fs2._ def tk[F[_],O](n: Long): …
Pour nettoyer une liste de données, j'ai créé une méthode qui accepte la liste des données et la liste des opérations de nettoyage à effectuer. public <T> List<T> cleanData(List<T> data, List<Function<T, T>> cleanOps) { List<T>dataNew=data.stream().map((str) -> { T cleanData = str; for(Function<T,T> function:cleanOps) { cleanData=function.apply(cleanData); } return cleanData; }).collect(Collectors.toList()); return …
Je lis la programmation du livre en scala, et il est dit: ... dans ce cas, son effet secondaire est l'impression sur le flux de sortie standard. et je ne vois pas où est l'effet secondaire, car, pour la même entrée, println imprimera la même sortie (je pense) UPDATE par …
J'ai une fonction de style ES6 qui est définie à l'aide de la composition de fonction avec asyncPipe. import { getItemAsync } from 'expo-secure-store'; const asyncPipe = (...fns) => x => fns.reduce(async (y, f) => f(await y), x); const getToken = () => getItemAsync('token'); const liftedGetToken = async ({ ...rest …
J'ai trébuché sur des choses irritantes. Je sais que haskell fonctionne avec une forme normale de tête faible (WHNF) et je sais ce que c'est. Taper le code suivant dans ghci (j'utilise la commande: sprint qui réduit l'expression à WHNF à ma connaissance.): let intlist = [[1,2],[2,3]] :sprint intlist intlist …
Nous avons un POJO qui est généré automatiquement avec environ 60 propriétés. Ceci est généré avec avro 1.4, qui n'inclut pas les getters / setters. Une bibliothèque que nous utilisons pour fournir des transformations simples entre des objets nécessite des méthodes de type getter / setter pour fonctionner correctement. Existe-t-il …
J'ai vraiment du mal à comprendre callCC. J'ai la puissance de Continuations et j'ai utilisé le concept dans certains de mes projets pour créer des concepts sympas. Mais je n'ai jamais eu besoin d'utiliser quelque chose avec de plus grandes capacités quecont :: ((a->r)->r)-> Cont r a . Après l'avoir …
Lorsque vous utilisez un environnement fonctionnel comme Scala et cats-effect, la construction d'objets avec état doit-elle être modélisée avec un type d'effet? // not a value/case class class Service(s: name) def withoutEffect(name: String): Service = new Service(name) def withEffect[F: Sync](name: String): F[Service] = F.delay { new Service(name) } La construction …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.