scala
TRANSCRIPT
![Page 1: Scala](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/1.jpg)
Guerra ● Mera ● Velasco
![Page 2: Scala](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/2.jpg)
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](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/3.jpg)
FuncionalOrientado a
objetos
Imperativo Concurrente
![Page 4: Scala](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/4.jpg)
https://github.com/scala/scala
25 845 commits
7 branches
105 releases
266 contributors
![Page 5: Scala](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/5.jpg)
Scala puede ser usado en cualquier plataforma que tenga Java runtime 1.6 o superior
Scala 2.12 requiere Java 8
![Page 6: Scala](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/6.jpg)
El hecho de correr sobre la JVM le da la ventaja de poder comportarse de manera compilada e
interpretada
![Page 7: Scala](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/7.jpg)
Scala 2.11.8 binariesLightbend Activator es una
herramienta basada en navegador
o línea de comando para
empezar.
![Page 8: Scala](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/8.jpg)
Versión actual: 4.4.1Versión actual: 2016.1
Requiere Plugin
Versión actual: 8.1
Requiere Pluginv2.10.0-0.9.8.8
Requiere compilar
![Page 10: Scala](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/10.jpg)
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](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/11.jpg)
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](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/12.jpg)
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](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/13.jpg)
ESPecial: un lenguaje de programación de sistemas embebidosChristopher Métrailler ● Pierre-André Mudry
![Page 14: Scala](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/14.jpg)
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](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/15.jpg)
Proveer una manera más sencilla y flexible de programar sistemas embebidos simples
![Page 16: Scala](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/16.jpg)
![Page 17: Scala](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/17.jpg)
![Page 18: Scala](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/18.jpg)
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](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/19.jpg)
• 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](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/20.jpg)
• É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](https://reader031.vdocumento.com/reader031/viewer/2022022123/58a1b8391a28ab537c8b5b9b/html5/thumbnails/21.jpg)
• 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