Typová inference

Staticky typované jazyky vyžadují, aby typ hodnoty byl předem definován. V některých programovacích jazycích je třeba datový typ výslovně deklarovat, což je pro vývojáře nepohodlné. V mnoha případech je možné typ automaticky odvodit. Například v následujícím kódu:

var msg: String = "Hello, world!";

je jasné, jakého typu proměnná msg je. Scala, jako příklad jazyka mající tuto schopnost, tedy v tomto případě typ nevyžaduje:

var msg = "Hello, world!";

Naopak, jsou situace, kdy je třeba typ explicitně uvést, protože by jinak došlo k nejednoznačnosti, se kterou by si kompilátor nedovedl poradit.

A nebo, jsou situace, kdy je třeba typ explicitně uvést, protože by kompilátor zvolil jiný, například příliš obecný, nebo příliš konkrétní, který vývojáři nevyhovuje.

V jazycích s generickým typovým systémem lze odvozovat také typové parametry.[1]

Jazyky podporující typovou inferenci

Reference

  1. Algoritmus pro inferenci typových parametrů
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.