the state of scala
Embed Size (px)
DESCRIPTION
Boston Area Scala Enthusiasts first meeting held on Oct. 28, 2009. Talk delivered by Paul Chiusano, Nermin Serifovic & Chris Herron.TRANSCRIPT

The State of Scala
Meeting #1: 10/28/2009
Boston Area Scala Enthusiasts
http://boston-scala.org
Paul ChiusanoNermin SerifovicChris Herron

Abe Egnor &
for hosting us!
Thanks to...

Bill Venners &
for sponsoring foodand donating a copy of
Programming in Scala
Thanks to...

Agenda
1. Short round of introductions2. New features in 2.83. Future direction of the language4. IDE support5. Tools6. Libraries7. Job trends8. Enterprise adoption 9. Optional lightning talks10.Feedback & suggestions for future meetings11.Book draw

SCALA 2.8... AND BEYOND

2.8 features
• Overhaul of collections library• Named and default arguments• Nested annotations• Package objects• @specialized• Continuations plugin, break, "ping-pong" tail calls optimized• Improvements to: REPL, Swing wrapper, compiler interface

TOOL AND IDE SUPPORT

IDE Support
• Eclipse, IDEA, NetBeans• All three:
o syntax highlighting, error highlighting, code completion, go to declaration, code folding, xml, multiple scala sdk support, mixed java/scala projects, debugging, code outline, open type, find references
• Just IDEA and NetBeans (6.8): o auto-import, local and global renaming, multiple scala sdk
support

Build Tools
SBT (Simple Build Tool)
ant tasks (scalac, fsc, scaladoc)
maven plugin
buildr

Testing Tools
ScalaTest
Reductio
Specs
ScalaCheck
Rehersal

Command Line Tools
scala
scaladoc
scalac
scalap, javap & jad
Scala Bazaar System (sbaz)
fsc

Other Tools
Productivity tool: JRebel (free license provided for Scala developers)

Does anybody think there is a lack of tool support?
If so, what kind of tool would you like to see?

LIBRARIES

Interoperability with Java libraries
Reuse of Java open source libraries is one of Scala's selling points.
However, does it work seamlessly?
Also, should the community strive more on reuse or developing Scala libraries?

General Purpose Libraries
Scalax
Scalaz
Scala Migrations
Scala/xml
Akka (Actor Kernel)
ScalextricScales
MetaScala

Most of the more specific libraries seem to be scientific or math oriented (Scala-rel, Jiva, Scalala, Scalalab).
Do you see that as an indicator of Scala's primary usage?
Is it a consequence of Scala's functional programming support?

JOB TRENDS

Compared With Other Alt-JVM Languages

Companies Using Scala
'High Profile': Twitter, Sony, Yahoo, SAP, Siemens, others?
Local: Capital IQ ClariFI Synthesis Studios (wattzon.com) others?

ENTERPRISE ADOPTION

Enterprise Adoption
Group question: who is using Scala for enterprise work?
Evidence• Web articles, blog traffic, mailing list questions
o How to use Scala with X JPA/Hibernate, Spring, Wicket, Stripes
Challenges• Technical
o Annotations support Nested annotations @BeanProperty annotation copy behavior All addressed in Scala 2.8

Enterprise Adoption
Challenges (continued)• Tension: Java interop vs. Scala best-practices
o Uniform access principle vs. Java Bean conventiono Option vs. null handlingo DI/AOP vs. Cake Pattern etc.o Annotations vs. Partial Functionso Popular Java libs vs. Scala rewrites
• Conservative Boss Concernso Local availability of expertiseo Perception that Scala is academic/experimental/in-fluxo Lack of commercial backing
• Tool Supporto Basic editing / refactoringo Java EE tools correct treatment of Scala as Java

Enterprise Adoption
• Opportunitieso Java is mature, slow to changeo Oracle aquisition of Suno Polyglottism becoming more acceptedo Sneak it in?o Tool support is improvingo Killer-app
Concurrency Will Lift be for Scala what Rails was for Ruby?

Lightning Talks
Anybody interested in giving a talk?
Don't forget, they are a good way to make yourself learn language features...
Plus, you don't have to join a local Toastmasters club...

Feedback
Suggestions
Ideas for next meetings

Thank you all for coming and participating!
and now...
The Book Draw

Credits
Photos:http://www.flickr.com/photos/mycakeswithlove/3035963582/sizes/l/http://www.flickr.com/photos/jimheid/321544717/sizes/o/Creative Commons 2.0http://www.flickr.com/photos/jeremybrooks/3115366057/http://www.flickr.com/photos/jaxmac/1492034448/in/[email protected]
Books:Programming Scala by Dean Wampler and Alex Payne