Lenguaje Scala

download Lenguaje Scala

of 9

Transcript of Lenguaje Scala

  • 7/24/2019 Lenguaje Scala

    1/9

    Escuela Profesional de Ingeniera deSistemas

    Responsables: Contreras Benites Eddy

    Lizunde Damiano Welmer Ziga Muos Heinz uispe Cusinga !ladys M" Zalasar Elizabet#"

    $ng" Wilson Candia uispe

    Lengua%e de programa&i'n

  • 7/24/2019 Lenguaje Scala

    2/9

    QU ES SCALA?

    Es un lenguaje de programacin de alto nivelmulti-paradigma diseado para expresar patronescomunes de programacin en forma concisa,elegante y con tipos seguros.

    Integra sutilmente caractersticas de lenguajesfuncionales y orientados a objetos.

    Scala no es una extensin de ava, pero estotalmente interoperable con !l.

    Scala se traduce a bytecodes ava y la e"cienciade los programas compilados por lo general esigual #ue ava.

  • 7/24/2019 Lenguaje Scala

    3/9

    HISTORIA

    $ue creado en la Escuela %olit!cnica $ederal

    de &ausanne por 'artin (ders)y en el ao*++.

    $ue liberada pblicamente en la plataformaava en Enero del *++, y en la

    plataforma./E0 en unio del mismo ao. 1nasegunda versin del lenguaje fue liberado en'ar2o de *++3.

    (ders)y tena como objetivo combinar la

    programacin funcional y la programacinorientada a objetos.

  • 7/24/2019 Lenguaje Scala

    4/9

    +C(L(

    Scala es un lenguaje puramente orientado aobjetos en el sentido de #ue todo es un objeto.&os tipos y comportamientos de objetos sondescritos por clases y traits 4#ue podra ser

    traducido como un 5rasgo67. &as clases puedenser extendidas a trav!s de subclases y unmecanismo 8exible de composicin me2clada#ue provee un claro rempla2o a la 9erenciamltiple.

    +&ala es orientado a ob%etos"

    &os traits en Scala son una de las 9erramientas m:s

    poderosas #ue posee el lenguaje en cuanto a orientacin aobjetos. /os permite, no solamente reducir el tamao delcdigo de forma considerable, sino #ue adem:s nos proveede formas de modi"car comportamientos para casos dondesea necesario.

  • 7/24/2019 Lenguaje Scala

    5/9

    +C(L(

    Scala es tambi!n un lenguaje funcional en el sentido#ue toda funcin es un valor. Scala provee unasintaxis ligera para de"nir funciones annimas.Soporta funciones de primer orden, permite #ue las

    funciones sean anidadas, y soporta currying.&as clases caso de Scala y las construccionesincorporadas al lenguaje para reconocimiento depatrones modelan tipos algebraicos usados enmuc9os lenguajes de programacin funcionales.

    +&ala es ,un&ional"

    El trmino Currying se refiere a tomar una funcin que toma n

    parmetros y transformarla en una serie de funciones que

    toman un nmero menor de parmetros.

  • 7/24/2019 Lenguaje Scala

    6/9

    +C(L(

    Scala cuenta con un expresivo sistema de tipado #uefuer2a est:ticamente las abstracciones a ser usadasen una manera co9erente y segura.

    En particular, el sistema de tipado soporta;

  • 7/24/2019 Lenguaje Scala

    7/9

    +C(L(

    Scala se dise teniendo en mente el 9ec9o de #ue en la

    pr:ctica el desarrollo de aplicaciones re#uiere a menudo de

    extensiones espec"cas del lenguaje, para ello, Scala

    proporciona una combinacin nica de mecanismos #ue 9acen

    f:cil y sin problemas agregar construcciones nuevas al lenguaje

    en forma de bibliotecas.

    Scala est: diseado para interoperar bien con el popular Entorno

    de ejecucin de ava * 4>E7. En particular, la interaccin con el

    lenguaje orientado a objetos ava es muy sencillo. Scala tiene el

    mismo es#uema de compilacin 4compilacin separada, carga

    de clases din:mica7 #ue java y permite acceder a las miles delibreras de gran calidad existentes.

    +&ala es e.tensible

  • 7/24/2019 Lenguaje Scala

    8/9

    (/L$C(C$01E+ C01 +C(L(

    Compa2as:0?itter; @ac)end 4cola de mensajes7Sony %ictures; 'iddle?are 4capa deconversinAtraduccin7/ature.com

    S=% community>ea)tor Innovations'imesis >epublic; juegos multijugador onlineEB$ 0rading; inversiones burs:tiles

    /roye&tos 0pen +our&e:

    &ift; $rame?or) de aplicaciones ?eb similar a >uby on>ails./et&ogo; &enguaje de programacin multiagente.Isabelle; Bemostrador de teoremas - Intefa2 deusuario

    3ui4n lo usa5

  • 7/24/2019 Lenguaje Scala

    9/9

    CD1I/ &( 1S=F

    6ni7ersidades:

    %rogramming 'et9ods Group - Escuela %olit!cnica$ederal de &ausana 4E%$&7, Sui2a.%rogram Structures and Bata (rgani2ation Institute4I%B7 - 1niversidad de Harlsru9e, =lemania.

    )esis:

    (bject-(riented %attern 'atc9ing. @ura) Emir. E%$&(ct-*++.=n (bject-(riented %rogramming 'odel for Event-@ased =ctors. %9ilipp Jaller. E%$& 'ay-*++3.

    = 0yped Intermediate &anguage and =lgorit9ms fore?ritings. %9ilippe=lt9err. E%$& 'ar-*++3.$oundations for Scala; Semantics and %roof of Kirtual

    0ypes. Kincent