- Para as línguas que usam interfaces, tente Java, C #, C ++ ou.
Python, C ++, e muitos outros idiomas permitem herança múltipla, enquanto Scala usa "traços", uma interessante combinação de interfaces, herança múltipla e resumos.
- Para programação orientada a objeto com base em protótipo, aprender JavaScript (ECMAScript). O JavaScript não tem classes: em vez disso, tem protótipos. Auto é a língua original que começou a programar com base em protótipo, e ActionScript, Lua, e REBOL pode ser usado para este tipo de programação.
- Para a programação funcional, considerar aprender OCaml ou Haskell.
Estes são estaticamente digitado linguagens de programação funcional. Para linguagens ligeiramente mais práticos funcionais, considere Scala (no Java Virtual Machine) ou F # (em .NET)
-. Se você quiser tentar uma linguagem de programação muito dinâmica, tente Ruby, Python, Perl, ou Lisp. Os sistemas do tipo em línguas são muito diferentes de uma linguagem como Java ou C.
Vale a pena tentar estes tipos de linguagens para ver o tipo de coisas que você precisa fazer para codificar em torno de não ter este tipo de sistema de tipos - testes de unidade, metaprogramming técnicas de digitação, pato, e assim por diante.
- Tente linguagens específicas de domínio, estas são línguas construídas para fins muito específicos, ou abstração de linguagem construída em cima de um idioma existente para expressar algum conjunto específico de funcionalidade. Alguns destes são SQL, XSLT, FreeMarker, ASP.net, LINQ C #, Scripts Shell, YACC, AWK, SED, e centenas mais.
Ruby e Scala podem ser usados para criar linguagens específicas de domínio. Note-se que muitas linguagens específicas de domínio não são Turing completa.
Passo 4:
Saiba mais sobre diferentes abordagens para a simultaneidade.
- A simultaneidade é um problema difícil na computação, e muitas novas linguagens estão fornecendo novas maneiras de escrever rotinas simultâneas. Algumas destas abordagens não pode facilmente ser construído com bibliotecas e em vez disso exige apoio da própria