scala

21
Guerra Mera Velasco

Upload: madelyne-velasco

Post on 13-Feb-2017

78 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Scala

Guerra ● Mera ● Velasco

Page 2: Scala

Aparece Java (1995)

Martin Odersky crea Pizza con la intención de

mejorar Java (1996)

Odersky crea Generic Java como soporte de

programación genérica. 6 años después se convierte

en característica nativa de Java (1997-1998)

Odersky desarrolla Scala (2002)

Lanzamiento de Scala (2004)

Page 3: Scala

FuncionalOrientado a

objetos

Imperativo Concurrente

Page 4: Scala

https://github.com/scala/scala

25 845 commits

7 branches

105 releases

266 contributors

Page 5: Scala

Scala puede ser usado en cualquier plataforma que tenga Java runtime 1.6 o superior

Scala 2.12 requiere Java 8

Page 6: Scala

El hecho de correr sobre la JVM le da la ventaja de poder comportarse de manera compilada e

interpretada

Page 9: Scala

Versión 2.5.3Versión 2.4.0

Page 10: Scala

Bases de datos GUIs JSON

Big DataAnálisis

científico y de datos

Procesamiento y análisis de imágenes

Sistemas distribuidos

Android Autenticación

Page 11: Scala

Scala Symposium 2016: foro sobre investigación enScala. La primera fue en 2015 en EU.

Obtiene una beca de 2.3 millones de euros del Consejo de Búsqueda de Europa para abordar la

programación popular paralela (2011)

Se crea la compañía TypeSafe (ahora Lightbend) que impulsó todos los proyectos open source de Scala

(2011)

Page 12: Scala

Interacción con Java sin problemas

Inferencias de tipos de variable

Procesamiento asincrónico de

datos

Combinación flexible entre

interfaz y comportamiento

Permite cambios en las estructuras

Las funciones pueden ser

valores

Page 13: Scala

ESPecial: un lenguaje de programación de sistemas embebidosChristopher Métrailler ● Pierre-André Mudry

Page 14: Scala

Arduino es usado para enseñar sistemas embebidos

Se utiliza un C simple

Se puede mejorar a pesar de que C esté bien la mayor parte del tiempo

No se requiere/aporta mucho la proximidad de C al hardware

Page 15: Scala

Proveer una manera más sencilla y flexible de programar sistemas embebidos simples

Page 16: Scala
Page 17: Scala
Page 18: Scala

DSL Dataflow (diagramas de bloques, modelos)

No se requiere conocimientos de C/C++

Extensible

Nuevos hardwares pueden ser integrados

Modelos secuenciales pueden ser restrictivos

No pueden tener ciclos

Simulación en QEMU limitada

Page 19: Scala

• ACM. (2015). Scala 2015 _ Scala Symposium 2015, Co-Located with PLDI _ June 13, 2015, Portland, Oregon, USA. Obtenido de http://lampwww.epfl.ch/~hmiller/scala2015/

• Busa, N. (1 de Abril de 2013). Natalino Busa_ Scala_ a multiparadigm programming language. Obtenido de http://www.natalinobusa.com/2013/04/scala-multiparadigm-programming-language.html

• Dzilums, L. (2015). lauris_awesome-scala_ A community driven list of useful Scala libraries, frameworks and software. Obtenido de GitHub: https://github.com/lauris/awesome-scala

• École Polytechnique Fédérale de Lausanne. (12 de Mayo de 2011). Commercial Support for Scala _ The Scala Programming Language. Obtenido de http://www.scala-lang.org/old/node/9484

Page 20: Scala

• École Polytechnique Fédérale de Lausanne. (10 de Enero de 2011). ScalaTeamWins ERC Grant _ The ScalaProgramming Language. Obtenido de http://www.scala-lang.org/old/node/8579

• Métrailler, C. (2015). hevs-isi_especial-frontend_ An embedded systems programming language based on the dataflow paradigm. Obtenido de GitHub: https://github.com/hevs-isi/especial-frontend

• Métrailler, C., & Mudry, P.-A. (2015). ESPeciaL: An Embedded Systems Programming Language. University of Applied Sciences Western Switzerland, Sion. Obtenidode http://delivery.acm.org/10.1145/2780000/2774982/p51-metrailler.pdf?ip=186.3.241.6&id=2774982&acc=OPENTOC&key=4D4702B0C3E38B35%2E4D4702B0C3E38B35%2E4D4702B0C3E38B35%2E9F04A3A78F7D3B8D&CFID=782804110&CFTOKEN=44204126&__acm__=1462769127_7c15b8992ee399905a71f

Page 21: Scala

• Ochsenreither, S. (16 de Abril de 2016). Tools and Libraries - Scala Wiki - Scala Wiki. Obtenido de https://wiki.scala-lang.org/display/SW/Tools+and+Libraries

• scala. (2003). scala_scala_ The Scala programming language. Obtenido de GitHub: https://github.com/scala/scala

• SCALA 2016. (2016). Scala 2016. Obtenido de Scala2016: http://conf.researchr.org/home/scala-2016

• Sommers, F., & Venners, B. (4 de Mayo de 2009). TheOrigins of Scala. Obtenido de http://www.artima.com/scalazine/articles/origins_of_scala.html

• Venners, B., & Sommers, F. (11 de Mayo de 2009). The Goals of Scala's Design. Obtenido de http://www.artima.com/scalazine/articles/goals_of_scala.html