Browse Wiki & Semantic Web

Jump to: navigation, search
Http://dbpedia.org/resource/Parametric polymorphism
  This page has no properties.
hide properties that link here 
  No properties link to this page.
 
http://dbpedia.org/resource/Parametric_polymorphism
http://dbpedia.org/ontology/abstract Em linguagens de programação e teoria dos Em linguagens de programação e teoria dos tipos, polimorfismo paramétrico é uma forma de se tornar uma linguagem mais expressiva, enquanto continua mantendo toda sua tipagem estática segura. Usando o polimorfismo paramétrico, a função ou tipo de dado pode ser escrita genericamente para que possa suportar valores idênticos sem depender de seu tipo. Essas funções e tipos de dados são chamados funções genéricas e tipos de dados genéricos respectivamente e formam a base da programação genérica. Por exemplo, a função append que junta duas listas pode ser construída para que não se preocupe com o tipo dos elementos: ela pode juntar listas de inteiros, listas de números reais, listas de strings, e assim por diante. Suponhamos que o tipo da variável a denota o tipo de elementos da lista. Então append pode ser escrito da forma [a] x [a] -> [a], onde [a] denota o tipo de listas cujos elementos são do tipo a. Dizemos que o tipo de append é parametrizado por a para todos os valores de a. (Note que como há apenas um único tipo de variável, a função não pode ser aplicada para qualquer par de listas: o par, assim como a lista resultante, deve consistir do mesmo tipo de elementos.) Para cada local no qual append é aplicado, o valor é decidido por a. De acordo com Christopher Strachey, o polimorfismo paramétrico pode ser posto em contraste com o polimorfismo ad-hoc, no qual uma única função polimórfica pode ter um número distinto e potencialmente heterogêneo de implementações dependendo do tipo do(s) argumento(s) para o(s) qual(is) ela é aplicada. Dessa forma, o polimorfismo ad-hoc pode apenas suportar um número limitados de tipos distintos, desde que seja provida uma implementação separada para cada tipo.uma implementação separada para cada tipo. , In programming languages and type theory, In programming languages and type theory, parametric polymorphism allows a single piece of code to be given a "generic" type, using variables in place of actual types, and then instantiated with particular types as needed. Parametrically polymorphic functions and data types are sometimes called generic functions and generic datatypes, respectively, and they form the basis of generic programming. Parametric polymorphism may be contrasted with ad hoc polymorphism. Parametrically polymorphic definitions are uniform: they behave identically regardless of the type they are instantiated at. In contrast, ad hoc polymorphic definitions are given a distinct definition for each type. Thus, ad hoc polymorphism can generally only support a limited number of such distinct types, since a separate implementation has to be provided for each type.entation has to be provided for each type. , 参数多态在程序设计语言与类型论中是指声明与定义函数、复合类型、变量时不指定其具体的类型,而把这部分类型作为参数使用,使得该定义对各种具体类型都适用。参数化多态使得语言更具表达力,同时保持了完全的静态类型安全。 这被称为泛化函数、泛化数据类型、泛型变量,形成了泛型编程的基础。 , Параметрический полиморфизм в языках прогрПараметрический полиморфизм в языках программирования и теории типов — свойство семантики системы типов, позволяющее обрабатывать значения разных типов идентичным образом, то есть исполнять физически один и тот же код для данных разных типов. Параметрический полиморфизм считается «истинной» формой полиморфизма, делая язык более выразительным и существенно повышая коэффициент повторного использования кода. Традиционно ему противопоставляется ad-hoc-полиморфизм, предоставляющий единый интерфейс к потенциально различному коду для разных допустимых в данном контексте типов, потенциально не совместимых (статически или динамически). В ряде исчислений, например, в теории квалифицированных типов, ad-hoc-полиморфизм рассматривается как частный случай параметрического. Параметрический полиморфизм лежит в основе систем типов языков семейства ML; такие системы типов называют полиморфными. В сообществах языков с неполиморфными системами типов (потомки Алгола и BCPL) параметрически полиморфные функции и типы называют «обобщёнными».ные функции и типы называют «обобщёнными». , Στις γλώσσες προγραμματισμού και στη θεωρίΣτις γλώσσες προγραμματισμού και στη θεωρία τύπων, ο παραμετρικός πολυμορφισμός είναι ένας τρόπος να κάνουμε μια γλώσσα πιο εκφραστική, διατηρώντας ταυτόχρονα την στατική ασφάλεια τύπων. Χρησιμοποιώντας παραμετρικό πολυμορφισμό, μία συνάρτηση ή ένας τύπος δεδομένων μπορεί να γραφεί γενικά ώστε να χειρίζεται πανομοιότυπα τις τιμές ανεξάρτητα από τον τύπο τους. Τέτοιες συναρτήσεις και τύποι δεδομένων ονομάζονται γενικές συναρτήσεις και γενικοί τύποι δεδομένων αντίστοιχα και σχηματίζουν τη βάση του γενικού προγραμματισμού. Για παράδειγμα, μία συνάρτηση append η οποία συνενώνει δύο λίστες μπορεί να κατασκευαστεί έτσι ώστε να μην νοιάζεται για των τύπο των στοιχείων της λίστας: μπορεί να συνενώσει λίστες ακεραίων, λίστες πραγματικών αριθμών, λίστες συμβολοσειρών κτλ. Έστω ότι η μεταβλητή τύπου a δηλώνει τον τύπο των στοιχείων της λίστας. Τότε η append έχει τύπο [a] × [a] → [a], όπου [a] δηλώνει τον τύπο της λίστας από στοιχεία τύπου a. Λέμε ότι ο τύπος της append είναι παραμετρικός με παράμετρο το a για όλες τις τιμές του a. (Σημειώστε ότι αφού υπάρχει μόνο μία μεταβλητή τύπου, η συνάρτηση δεν μπορεί να εφαρμοστεί σε οποιοδήποτε ζευγάρι λιστών: το ζευγάρι λιστών καθώς επίσης και το αποτέλεσμα, πρέπει να αποτελείται από στοιχεία του ίδιου τύπου.) Οπουδήποτε εφαρμόζεται η συνάρτηση append, αποφασίζεται μία τιμή για το a. Σύμφωνα με τον Christopher Strachey, ο παραμετρικός πολυμορφισμός μπορεί να αντιπαρατεθεί με τον , ο οποίος ονομάζεται και υπερφόρτωση, και στον οποίο μια πολυμορφική συνάρτηση μπορεί να έχει ένα πλήθος διακριτών και ίσως και ετερογενών υλοποιήσεων ανάλογα με τον τύπο των παραμέτρων στις οποίες εφαρμόζεται. Ως εκ τούτου, ο πολυμορφισμός ad-hoc polymorphism μπορεί γενικά να υποστηρίξει μόνο έναν περιορισμένο αριθμό διακριτών τύπων, καθώς πρέπει να παρέχεται ξεχωριστή υλοποίηση για κάθε τύπο.ρέχεται ξεχωριστή υλοποίηση για κάθε τύπο.
http://dbpedia.org/ontology/wikiPageExternalLink https://figshare.com/articles/journal_contribution/Towards_a_Theory_of_Type_Structure/6611015 + , http://lucacardelli.name/Papers/OnUnderstanding.A4.pdf%7Cjournal + , https://www.pure.ed.ac.uk/ws/files/15143545/1_s2.0_0022000078900144_main.pdf +
http://dbpedia.org/ontology/wikiPageID 3390146
http://dbpedia.org/ontology/wikiPageLength 16271
http://dbpedia.org/ontology/wikiPageRevisionID 1123107945
http://dbpedia.org/ontology/wikiPageWikiLink http://dbpedia.org/resource/Haskell_%28programming_language%29 + , http://dbpedia.org/resource/Programming_language + , http://dbpedia.org/resource/Julia_%28programming_language%29 + , http://dbpedia.org/resource/Visual_Basic_.NET + , http://dbpedia.org/resource/Category:Generic_programming + , http://dbpedia.org/resource/Journal_of_Computer_and_System_Sciences + , http://dbpedia.org/resource/Type_system + , http://dbpedia.org/resource/Ad_hoc_polymorphism + , http://dbpedia.org/resource/System_F + , http://dbpedia.org/resource/Intuitionistic_type_theory + , http://dbpedia.org/resource/Transactions_of_the_American_Mathematical_Society + , http://dbpedia.org/resource/OCaml + , http://dbpedia.org/resource/Category:Type_theory + , http://dbpedia.org/resource/Standard_ML + , http://dbpedia.org/resource/Impredicativity + , http://dbpedia.org/resource/C%2B%2B + , http://dbpedia.org/resource/Generic_programming + , http://dbpedia.org/resource/Parametricity + , http://dbpedia.org/resource/Formal_logic + , http://dbpedia.org/resource/Subtype_polymorphism + , http://dbpedia.org/resource/F_Sharp_%28programming_language%29 + , http://dbpedia.org/resource/Template_specialization + , http://dbpedia.org/resource/Product_type + , http://dbpedia.org/resource/Subtyping + , http://dbpedia.org/resource/Python_%28programming_language%29 + , http://dbpedia.org/resource/Polymorphic_recursion + , http://dbpedia.org/resource/C_Sharp_%28programming_language%29 + , http://dbpedia.org/resource/Luca_Cardelli + , http://dbpedia.org/resource/Ada_%28programming_language%29 + , http://dbpedia.org/resource/TypeScript + , http://dbpedia.org/resource/Type_inference + , http://dbpedia.org/resource/Trait_%28computer_programming%29 + , http://dbpedia.org/resource/Peter_Wegner + , http://dbpedia.org/resource/ML_%28programming_language%29 + , http://dbpedia.org/resource/Type_class + , http://dbpedia.org/resource/Lambda_cube + , http://dbpedia.org/resource/ML_programming_language + , http://dbpedia.org/resource/Append + , http://dbpedia.org/resource/NuPRL + , http://dbpedia.org/resource/ACM_Computing_Surveys + , http://dbpedia.org/resource/Lecture_Notes_in_Computer_Science + , http://dbpedia.org/resource/Syntax_%28programming_languages%29 + , http://dbpedia.org/resource/Category:Polymorphism_%28computer_science%29 + , http://dbpedia.org/resource/Scala_%28programming_language%29 + , http://dbpedia.org/resource/Quantifier_%28logic%29 + , http://dbpedia.org/resource/Typed_lambda_calculus + , http://dbpedia.org/resource/Haskell + , http://dbpedia.org/resource/Most_general_unifier + , http://dbpedia.org/resource/Linked_list + , http://dbpedia.org/resource/Type_variable + , http://dbpedia.org/resource/Identity_function + , http://dbpedia.org/resource/Call_site + , http://dbpedia.org/resource/Universal_quantification + , http://dbpedia.org/resource/Mercury_%28programming_language%29 + , http://dbpedia.org/resource/Type_theory + , http://dbpedia.org/resource/Visual_Prolog + , http://dbpedia.org/resource/Prenex + , http://dbpedia.org/resource/Java_%28programming_language%29 + , http://dbpedia.org/resource/Object_Pascal +
http://dbpedia.org/property/wikiPageUsesTemplate http://dbpedia.org/resource/Template:Short_description + , http://dbpedia.org/resource/Template:Cite_conference + , http://dbpedia.org/resource/Template:Polymorphism + , http://dbpedia.org/resource/Template:Cite_book + , http://dbpedia.org/resource/Template:Refimprove_section + , http://dbpedia.org/resource/Template:Sfn + , http://dbpedia.org/resource/Template:Reflist + , http://dbpedia.org/resource/Template:Citation + , http://dbpedia.org/resource/Template:Main + , http://dbpedia.org/resource/Template:Rp + , http://dbpedia.org/resource/Template:Data_types + , http://dbpedia.org/resource/Template:Cite_journal + , http://dbpedia.org/resource/Template:Citation_needed +
http://purl.org/dc/terms/subject http://dbpedia.org/resource/Category:Type_theory + , http://dbpedia.org/resource/Category:Polymorphism_%28computer_science%29 + , http://dbpedia.org/resource/Category:Generic_programming +
http://purl.org/linguistics/gold/hypernym http://dbpedia.org/resource/Way +
http://www.w3.org/ns/prov#wasDerivedFrom http://en.wikipedia.org/wiki/Parametric_polymorphism?oldid=1123107945&ns=0 +
http://xmlns.com/foaf/0.1/isPrimaryTopicOf http://en.wikipedia.org/wiki/Parametric_polymorphism +
owl:sameAs http://el.dbpedia.org/resource/%CE%A0%CE%B1%CF%81%CE%B1%CE%BC%CE%B5%CF%84%CF%81%CE%B9%CE%BA%CF%8C%CF%82_%CF%80%CE%BF%CE%BB%CF%85%CE%BC%CE%BF%CF%81%CF%86%CE%B9%CF%83%CE%BC%CF%8C%CF%82 + , http://zh.dbpedia.org/resource/%E5%8F%82%E6%95%B0%E5%A4%9A%E6%80%81 + , http://fa.dbpedia.org/resource/%DA%86%D9%86%D8%AF%D8%B1%DB%8C%D8%AE%D8%AA%DB%8C_%D9%BE%D8%A7%D8%B1%D8%A7%D9%85%D8%AA%D8%B1%DB%8C + , http://ru.dbpedia.org/resource/%D0%9F%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%BF%D0%BE%D0%BB%D0%B8%D0%BC%D0%BE%D1%80%D1%84%D0%B8%D0%B7%D0%BC + , http://rdf.freebase.com/ns/m.0gh6f31 + , http://www.wikidata.org/entity/Q7135231 + , http://dbpedia.org/resource/Parametric_polymorphism + , http://pt.dbpedia.org/resource/Polimorfismo_param%C3%A9trico + , https://global.dbpedia.org/id/4t8au +
rdfs:comment 参数多态在程序设计语言与类型论中是指声明与定义函数、复合类型、变量时不指定其具体的类型,而把这部分类型作为参数使用,使得该定义对各种具体类型都适用。参数化多态使得语言更具表达力,同时保持了完全的静态类型安全。 这被称为泛化函数、泛化数据类型、泛型变量,形成了泛型编程的基础。 , Em linguagens de programação e teoria dos Em linguagens de programação e teoria dos tipos, polimorfismo paramétrico é uma forma de se tornar uma linguagem mais expressiva, enquanto continua mantendo toda sua tipagem estática segura. Usando o polimorfismo paramétrico, a função ou tipo de dado pode ser escrita genericamente para que possa suportar valores idênticos sem depender de seu tipo. Essas funções e tipos de dados são chamados funções genéricas e tipos de dados genéricos respectivamente e formam a base da programação genérica.e e formam a base da programação genérica. , Στις γλώσσες προγραμματισμού και στη θεωρίΣτις γλώσσες προγραμματισμού και στη θεωρία τύπων, ο παραμετρικός πολυμορφισμός είναι ένας τρόπος να κάνουμε μια γλώσσα πιο εκφραστική, διατηρώντας ταυτόχρονα την στατική ασφάλεια τύπων. Χρησιμοποιώντας παραμετρικό πολυμορφισμό, μία συνάρτηση ή ένας τύπος δεδομένων μπορεί να γραφεί γενικά ώστε να χειρίζεται πανομοιότυπα τις τιμές ανεξάρτητα από τον τύπο τους. Τέτοιες συναρτήσεις και τύποι δεδομένων ονομάζονται γενικές συναρτήσεις και γενικοί τύποι δεδομένων αντίστοιχα και σχηματίζουν τη βάση του γενικού προγραμματισμού.ίζουν τη βάση του γενικού προγραμματισμού. , In programming languages and type theory, In programming languages and type theory, parametric polymorphism allows a single piece of code to be given a "generic" type, using variables in place of actual types, and then instantiated with particular types as needed. Parametrically polymorphic functions and data types are sometimes called generic functions and generic datatypes, respectively, and they form the basis of generic programming.hey form the basis of generic programming. , Параметрический полиморфизм в языках прогрПараметрический полиморфизм в языках программирования и теории типов — свойство семантики системы типов, позволяющее обрабатывать значения разных типов идентичным образом, то есть исполнять физически один и тот же код для данных разных типов. Параметрический полиморфизм лежит в основе систем типов языков семейства ML; такие системы типов называют полиморфными. В сообществах языков с неполиморфными системами типов (потомки Алгола и BCPL) параметрически полиморфные функции и типы называют «обобщёнными».ные функции и типы называют «обобщёнными».
rdfs:label Parametric polymorphism , Παραμετρικός πολυμορφισμός , Параметрический полиморфизм , 参数多态 , Polimorfismo paramétrico
hide properties that link here 
http://dbpedia.org/resource/Parametric + , http://dbpedia.org/resource/Polymorphism + http://dbpedia.org/ontology/wikiPageDisambiguates
http://dbpedia.org/resource/Bounded_parametric_polymorphism + , http://dbpedia.org/resource/Rank_%28type_theory%29 + , http://dbpedia.org/resource/Higher-ranked_polymorphism + , http://dbpedia.org/resource/Higher-ranked_type + , http://dbpedia.org/resource/First-class_polymorphism + , http://dbpedia.org/resource/Predicative_polymorphism + , http://dbpedia.org/resource/Impredicative_polymorphism + , http://dbpedia.org/resource/Type_arguments + , http://dbpedia.org/resource/Parametric_Polymorphism + , http://dbpedia.org/resource/First_class_polymorphism + , http://dbpedia.org/resource/Rank-n_polymorphism + , http://dbpedia.org/resource/Rank2Types + , http://dbpedia.org/resource/RankNTypes + , http://dbpedia.org/resource/Rank_n_polymorphism + , http://dbpedia.org/resource/Higher-rank_type + , http://dbpedia.org/resource/Higher_rank_type + http://dbpedia.org/ontology/wikiPageRedirects
http://dbpedia.org/resource/Ruby_%28programming_language%29 + , http://dbpedia.org/resource/Julia_%28programming_language%29 + , http://dbpedia.org/resource/Type_inference + , http://dbpedia.org/resource/ML_%28programming_language%29 + , http://dbpedia.org/resource/OCaml + , http://dbpedia.org/resource/Unification_%28computer_science%29 + , http://dbpedia.org/resource/Hindley%E2%80%93Milner_type_system + , http://dbpedia.org/resource/Visual_Prolog + , http://dbpedia.org/resource/Glasgow_Haskell_Compiler + , http://dbpedia.org/resource/Haxe + , http://dbpedia.org/resource/ILNumerics + , http://dbpedia.org/resource/Top_type + , http://dbpedia.org/resource/Type_system + , http://dbpedia.org/resource/G%C3%B6del_%28programming_language%29 + , http://dbpedia.org/resource/Parametric + , http://dbpedia.org/resource/C%2B%2B + , http://dbpedia.org/resource/Generic_programming + , http://dbpedia.org/resource/Ceylon_%28programming_language%29 + , http://dbpedia.org/resource/Many-sorted_logic + , http://dbpedia.org/resource/Polymorphism + , http://dbpedia.org/resource/Object-oriented_programming + , http://dbpedia.org/resource/Variable_%28computer_science%29 + , http://dbpedia.org/resource/Trait_%28computer_programming%29 + , http://dbpedia.org/resource/Reification_%28computer_science%29 + , http://dbpedia.org/resource/System_U + , http://dbpedia.org/resource/Monad_%28functional_programming%29 + , http://dbpedia.org/resource/Subtyping + , http://dbpedia.org/resource/System_F + , http://dbpedia.org/resource/Generalized_algebraic_data_type + , http://dbpedia.org/resource/Option_type + , http://dbpedia.org/resource/Monomorphization + , http://dbpedia.org/resource/Bounded_parametric_polymorphism + , http://dbpedia.org/resource/Fundamental_Concepts_in_Programming_Languages + , http://dbpedia.org/resource/Function_type + , http://dbpedia.org/resource/Simply_typed_lambda_calculus + , http://dbpedia.org/resource/David_Turner_%28computer_scientist%29 + , http://dbpedia.org/resource/Denotational_semantics + , http://dbpedia.org/resource/Kind_%28type_theory%29 + , http://dbpedia.org/resource/Covariance_and_contravariance_%28computer_science%29 + , http://dbpedia.org/resource/Type_variable + , http://dbpedia.org/resource/Natural_deduction + , http://dbpedia.org/resource/Template_metaprogramming + , http://dbpedia.org/resource/Generic_function + , http://dbpedia.org/resource/Idris_%28programming_language%29 + , http://dbpedia.org/resource/Polymorphic_recursion + , http://dbpedia.org/resource/Universal_type + , http://dbpedia.org/resource/Rank_%28type_theory%29 + , http://dbpedia.org/resource/Polymorphism_%28computer_science%29 + , http://dbpedia.org/resource/Algebraic_data_type + , http://dbpedia.org/resource/Intersection_type + , http://dbpedia.org/resource/Bounded_quantification + , http://dbpedia.org/resource/Scala_%28programming_language%29 + , http://dbpedia.org/resource/Alt-Ergo + , http://dbpedia.org/resource/Type_class + , http://dbpedia.org/resource/List_of_important_publications_in_computer_science + , http://dbpedia.org/resource/Programming_language_theory + , http://dbpedia.org/resource/Ad_hoc_polymorphism + , http://dbpedia.org/resource/Logic_for_Computable_Functions + , http://dbpedia.org/resource/Flix_%28programming_language%29 + , http://dbpedia.org/resource/Map_%28higher-order_function%29 + , http://dbpedia.org/resource/History_of_programming_languages + , http://dbpedia.org/resource/Typing_rule + , http://dbpedia.org/resource/Value_restriction + , http://dbpedia.org/resource/Higher-ranked_polymorphism + , http://dbpedia.org/resource/Higher-ranked_type + , http://dbpedia.org/resource/Lambda_cube + , http://dbpedia.org/resource/Bottom_type + , http://dbpedia.org/resource/Parametricity + , http://dbpedia.org/resource/Intersection_type_discipline + , http://dbpedia.org/resource/First-class_polymorphism + , http://dbpedia.org/resource/Predicative_polymorphism + , http://dbpedia.org/resource/Impredicative_polymorphism + , http://dbpedia.org/resource/Type_arguments + , http://dbpedia.org/resource/Parametric_Polymorphism + , http://dbpedia.org/resource/First_class_polymorphism + , http://dbpedia.org/resource/Rank-n_polymorphism + , http://dbpedia.org/resource/Rank2Types + , http://dbpedia.org/resource/RankNTypes + , http://dbpedia.org/resource/Rank_n_polymorphism + , http://dbpedia.org/resource/Higher-rank_type + , http://dbpedia.org/resource/Higher_rank_type + , http://dbpedia.org/resource/Higher_ranked_type + http://dbpedia.org/ontology/wikiPageWikiLink
http://dbpedia.org/resource/Julia_%28programming_language%29 + http://dbpedia.org/property/typing
http://en.wikipedia.org/wiki/Parametric_polymorphism + http://xmlns.com/foaf/0.1/primaryTopic
http://dbpedia.org/resource/Parametric_polymorphism + owl:sameAs
http://dbpedia.org/resource/C%2B%2B + rdfs:seeAlso
 

 

Enter the name of the page to start semantic browsing from.