Download - The State of Scala

Transcript
Page 1: The State of Scala

The State of Scala

Meeting #1: 10/28/2009

Boston Area Scala Enthusiasts

http://boston-scala.org

Paul ChiusanoNermin SerifovicChris Herron

Page 2: The State of Scala

Abe Egnor &

for hosting us!

Thanks to...

Page 3: The State of Scala

Bill Venners & 

for sponsoring foodand donating a copy of

Programming in Scala

Thanks to...

Page 4: The State of Scala

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

Page 5: The State of Scala

SCALA 2.8... AND BEYOND

Page 6: The State of Scala

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

Page 7: The State of Scala

TOOL AND IDE SUPPORT

Page 8: The State of Scala

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

Page 9: The State of Scala

Build Tools

SBT (Simple Build Tool)

ant tasks (scalac, fsc, scaladoc)

maven plugin

buildr

Page 10: The State of Scala

Testing Tools

ScalaTest

Reductio

Specs

ScalaCheck

Rehersal

Page 11: The State of Scala

Command Line Tools

scala

scaladoc

scalac

scalap, javap & jad

Scala Bazaar System (sbaz)

fsc

Page 12: The State of Scala

Other Tools

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

Page 13: The State of Scala

Does anybody think there is a lack of tool support?

If so, what kind of tool would you like to see?

Page 14: The State of Scala

LIBRARIES

Page 15: The State of Scala

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?

Page 16: The State of Scala

General Purpose Libraries

Scalax

Scalaz

Scala Migrations

Scala/xml

Akka (Actor Kernel)

ScalextricScales

MetaScala

Page 17: The State of Scala

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?

Page 18: The State of Scala

JOB TRENDS

Page 19: The State of Scala

Compared With Other Alt-JVM Languages

Page 20: The State of Scala

 Companies Using Scala

'High Profile':     Twitter, Sony, Yahoo, SAP, Siemens, others?

Local:    Capital IQ ClariFI    Synthesis Studios (wattzon.com)    others?

Page 21: The State of Scala

ENTERPRISE ADOPTION

Page 22: The State of Scala

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

Page 23: The State of Scala

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

Page 24: The State of Scala

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?

Page 25: The State of Scala

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...

Page 26: The State of Scala

Feedback

Suggestions

Ideas for next meetings

Page 27: The State of Scala

Thank you all for coming and participating!

and now...

The Book Draw

Page 28: The State of Scala

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/pool-88519191@N00

Books:Programming Scala by Dean Wampler and Alex Payne


Top Related