En JavaScript, nous avons quelque chose appelé non défini . J'ai dit quelque chose, parce que je ne sais vraiment pas si c'est une classe de base, ou une variable intégrée, ou un mot-clé, ou autre chose. Je sais juste que c'est là. Pour le voir en action, vous pouvez …
Cela fait partie d'une série de questions qui se concentre sur un projet appelé le projet d'abstraction, qui vise à résumer les concepts utilisés dans la conception de langage sous la forme d'un cadre. Une autre page qui lui est associée concernant le typage structurel peut être consultée ici . …
J'ai commencé à jeter un œil sérieux à Lisp ce week-end (j'entends par là que je n'ai appris que Lisp et que je ne suis pas revenu à des projets en C #) et je dois dire que j'adore ça. J'ai essayé d'autres langages fonctionnels (F #, Haskell, Erlang) mais …
Pourquoi C ++ a-t-il fait une distinction entre les globaux statiques (liaison interne) et les symboles dans un espace de noms sans nom (liaison externe, mais aucun moyen de s'y référer de l'extérieur de toute façon), lors de l'introduction de ce dernier? Certaines de ces raisons sont-elles toujours valables ou …
Java et C # assurent la sécurité de la mémoire en vérifiant les limites des tableaux et les déréférences des pointeurs. Quels mécanismes pourraient être mis en œuvre dans un langage de programmation pour éviter la possibilité de conditions de concurrence et de blocages?
J'essaie de lire les détails de l'implémentation de Swift, et une chose que je ne peux pas comprendre, ce sont ses "tables témoins". Il semble que ce soit un pointeur vtable distinct utilisé pour les structures. Mais pourquoi en auriez-vous besoin? Les structures sont copiées par valeur, donc vous savez …
Les continuations sont extrêmement utiles dans les langages de programmation fonctionnels (par exemple la Contmonade dans Haskell) car elles permettent une notation simple et régulière pour le code de style impératif. Ils sont également utiles dans certains anciens langages impératifs car ils peuvent être utilisés pour implémenter des fonctionnalités de …
Fermé . Cette question est basée sur l'opinion . Il n'accepte pas actuellement les réponses. Voulez-vous améliorer cette question? Mettez à jour la question afin d'y répondre avec des faits et des citations en modifiant ce message . Fermé il y a 5 ans . Considérer ce qui suit: if(a …
J'implémente actuellement un évaluateur d'expressions (expressions sur une seule ligne, comme des formules) basé sur les éléments suivants: l'expression entrée est symbolisée pour séparer les booléens littéraux, les entiers, les décimales, les chaînes, les fonctions, les identificateurs (variables) J'ai implémenté l'algorithme Shunting-yard (légèrement modifié pour gérer les fonctions avec un …
J'ai récemment trouvé le concept de programmation alphabétisée . Et je l'ai trouvé plutôt intrigant. Pourtant, je n'ai pas été confronté à des affirmations selon lesquelles c'est une mauvaise façon de structurer un programme. Il ne semble pas avoir couvert beaucoup d'endroits. Pas même ici, je ne pouvais trouver de …
Je connais le concept d'orthogonalité, mais du point de vue du langage de programmation, existe-t-il un moyen de le vérifier / le prouver? Par exemple en C #, on peut utiliser publicou staticpour une signature de méthode. Vous pouvez utiliser l'un ou les deux et ils n'interfèrent pas les uns …
Je discute de la conception d'un langage spécifique au domaine pour simplifier un modèle de programmation obscur donné. Une partie du débat est de savoir si le construire (sous forme de script) sur un langage / runtime existant (par exemple Java) ou le rendre autonome (propre compilateur, etc.). Ceux d'entre …
Pourquoi est-ce que lorsque j'essaye de faire un tableau de ArrayLists: ArrayList<Integer>[] arr=new ArrayList<Integer>[40];il y a une erreur et java ne le permet pas? Y a-t-il une raison liée à l'implémentation par Java des génériques, des génériques dans n'importe quelle langue, ou quelque chose d'arbitraire?
Configuration: Supposons que nous avons un type appelé Iteratorqui a un paramètre de type Element: interface Iterator<Element> {} Ensuite, nous avons une interface Iterablequi a une méthode qui retournera un Iterator. // T has an upper bound of Iterator interface Iterable<T: Iterator> { getIterator(): T } Le problème d' Iteratorêtre …
PHP, C #, Python et probablement quelques autres langages ont un yieldmot-clé qui est utilisé pour créer des fonctions de générateur. En PHP: http://php.net/manual/en/language.generators.syntax.php En Python: https://www.pythoncentral.io/python-generators-and-yield-keyword/ En C #: https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/yield Je suis préoccupé par le fait qu'en tant que fonctionnalité / fonctionnalité de langue, cela yieldbrise certaines conventions. L'un …
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.