Scala (lenguaje de programación)

Scala (lenguaje de programación)
Este artículo es acerca del Lenguaje de Programación. Para otros usos, ver Scala.
Scala
Desarrollador(es)
Laboratorio de métodos de programación de la EPFL
www.scala-lang.org
Información general
Paradigma funcional, orientado a objetos
Apareció en 2003
Diseñado por Martin Odersky
Última versión estable 2.9.1
Tipo de dato estático, fuerte
Influido por Smalltalk, Java, Haskell, Standard ML, OCaml

Scala es un lenguaje de programación multi-paradigma diseñado para expresar patrones comunes de programación en forma concisa, elegante y con tipos seguros. Integra sutilmente características de lenguajes funcionales y orientados a objetos. La implementación actual corre en la máquina virtual de Java y es compatible con las aplicaciones Java existentes.

Contenido

Características

Orientación a objetos

Scala es un lenguaje de programación orientado a objetos puro, en el sentido de que cada valor es un objeto. El tipo y comportamiento de los objetos se describe por medio de clases y traits. La abstracción de clases se realiza extendiendo otras clases y usando un mecanismo de composición basado en mixins como un reemplazo limpio de la herencia múltiple

Lenguaje funcional

Scala también posee características propias de los lenguajes funcionales. En Scala las funciones son valores de primera clase, soportando funciones anónimas, orden superior, funciones anidadas y currificación. Scala viene integrado de fábrica con la técnica de pattern matching para modelar tipos algebraicos usados en muchos lenguajes funcionales.

Tipificado estático

Scala está equipado con un sistema de tipos expresivo que refuerza a que las abstraciones de tipos se usen en forma coherente y segura.

Extensibilidad

Scala se diseño teniendo en mente el hecho de que en la práctica el desarrollo de aplicaciones requiere a menudo de extensiones específicas del lenguaje, para ello, Scala proporciona una combinación única de mecanismos que hacen fácil y sin problemas agregar construcciones nuevas al lenguaje en forma de bibliotecas.

Hola Mundo

Este es el famoso Hola Mundo escrito en Scala:

object HolaMundo {
  def main(args: Array[String]) =
    println("Hola, mundo")
}


Notese lo similar a un programa Java, la diferencia es que no declaramos nada estático o un retorno vacío; la palabra reservada object nos devuelve un objeto Singleton que nos libera de realizar por nosotros mismos tales construcciones.

Enlaces externos


Wikimedia foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Mira otros diccionarios:

  • Lenguaje de programación Scala — Saltar a navegación, búsqueda Este artículo es acerca del Lenguaje de Programación. Para otros usos, ver Scala. Scala Paradigma: [ functional, orientado a objetos Apareció en: 2003 Diseñado por: Martin Odersky …   Wikipedia Español

  • Scala — Esta página de desambiguación cataloga artículos relacionados con el mismo título. Si llegaste aquí a través de un enlace interno, quizá desees corregirlo de modo que apunte al artículo apropiado. Scala puede referirse a …   Wikipedia Español

  • Programación orientada a objetos — La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos y sus interacciones, para diseñar aplicaciones y programas informáticos. Está basado en varias técnicas, incluyendo… …   Wikipedia Español

  • Programación funcional — Diagrama del funcionamiento de una subrutina. En ciencias de la computación, la programación funcional es un paradigma de programación declarativa basado en la utilización de funciones aritméticas que no maneja datos mutables o de estado.… …   Wikipedia Español

  • Modula-3 — Información general Paradigma multiparadigma: imperativo, estructurado, modular Apareció en Años 1980 Diseñado por DEC y …   Wikipedia Español

  • Sistema de tipificación — Saltar a navegación, búsqueda En ciencias de la computación, un sistema de tipificación define cómo un lenguaje de programación clasifica los valores y las expresiones en tipos, cómo se pueden manipular estos tipos y cómo interactúan. Un tipo… …   Wikipedia Español

  • Sistema de tipos — El texto que sigue es una traducción defectuosa o incompleta. Si quieres colaborar con Wikipedia, busca el artículo original y mejora o finaliza esta traducción. Puedes dar aviso al autor principal del artículo pegando el siguiente código en su… …   Wikipedia Español

  • Plataforma Java — Java Desarrollador Oracle Corporation http://www.java.com Información general Diseñador James Gosling …   Wikipedia Español

  • Mixin — En lenguajes de programación orientada a objetos, un mixin es una clase que ofrece cierta funcionalidad para ser heredada por una subclase, pero no está ideada para ser autónoma. Heredar de un mixin no es una forma de especialización sino más… …   Wikipedia Español

  • Tipo abstracto — Este artículo trata sobre tipos sin miembros directos; ver también Tipo de dato abstracto. En ingeniería de software, un tipo abstracto es un tipo en un sistema de tipo nominativo que es declarado por el programador, y que tiene la propiedad de… …   Wikipedia Español

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”