Différence entre les langues fortement et faiblement typées?

J'ai lu plusieurs pages, dont la page wiki http://en.wikipedia.org/wiki/Strong_and_weak_typing traitant fortement et faiblement typé langues. Pour la plupart, je pense que je comprends la différence. Cependant, je voudrais un droit au point de répondre à différencier les deux.

À partir de ma compréhension, faiblement typé langues, types de données n'ont pas à être appelée explicitement. Ce serait une langue comme Matlab où vous pouvez ajouter les 4 et 2.3, sans avoir à transtypage. Langages fortement typés nécessitent que le programmeur de déclarer un type de données pour chaque variable et/ou de la valeur. Par exemple, en C, vous aurez besoin de faire quelque chose comme 4 + (int) 2.3 ou (float)4 + 2.3 (ne me souviens pas si c'est valide de type C-casting).

Toutes les informations de l'expansion ou de la correction de ma compréhension de ces concepts seraient grandement appréciés.

source d'informationauteur Josh