These 65 examples will make this cool-new-kid-on-the-block your steady, reliable friend
Let's parse that.
Using discussion forums
Please use the discussion forums on this course to engage with other students and to help each other out. Unfortunately, much as we would like to, it is not possible for us at Loonycorn to respond to individual questions from students:-(
We're super small and self-funded with only 2 people developing technical video content. Our mission is to make high-quality courses available at super low prices.
The only way to keep our prices this low is to *NOT offer additional technical support over email or in-person*. The truth is, direct support is hugely expensive and just does not scale.
We understand that this is not ideal and that a lot of students might benefit from this additional support. Hiring resources for additional support would make our offering much more expensive, thus defeating our original purpose.
It is a hard trade-off.
Thank you for your patience and understanding!
A quick run-through of the reasons why people are so excited about Scala
Let's plunge in! Setting up Scala is surprisingly simple. You do need Java though.
Immutable variables are a big part of Scala - understand why.
Scala aims to achieve the best of both worlds: rapid prototyping like Python, type safety like Java, C++ and other statically typed languages.
Scala has 3 types that unify the type system: Any (literally anything!), AnyRef (supertype to all reference types) and AnyVal (supertype to all value types)
Nil, null, Null, Nothing, Unit..Scala has many ways to skin a non-existent cat!
This is an important semantic difference - statements don't return a value, while expressions do. Scala converts many familiar constructs into expressions - which allows them to be composed.
Expression blocks are prototypical "r-values", i.e. they sit on the right of assignment statements.
Scala has if-else expressions (not if-else statements). This is a fine point, and an important one.
Pattern matching is very easy in Scala - this is a more popular language construct than if/else expressions
Scala has a way to convert for loop statements into for loop expressions - using 'yield'
While loops are pure statements, and are rather clunky. See why they are not the most popular construct in town.
Functions are 'first class citizens' in Scala - this actually has a technical term!
Scala allows parameters to be specified out of order - using their names
Yet another mechanism to encourage code re-use
Scala loves using formidable terms for everyday concepts:-) Think generics in Java.
Functions that take in other functions as parameters, or return function objects, are called Higher Order Functions
Partially Applied Functions are a really cool code re-use trick: fix some (but not all) parameters of a function and you have a new function!
Loonycorn is us, Janani Ravi and Vitthal Srinivasan. Between us, we have studied at Stanford, been admitted to IIM Ahmedabad and have spent years working in tech, in the Bay Area, New York, Singapore and Bangalore.
Janani: 7 years at Google (New York, Singapore); Studied at Stanford; also worked at Flipkart and Microsoft
Vitthal: Also Google (Singapore) and studied at Stanford; Flipkart, Credit Suisse and INSEAD too
We think we might have hit upon a neat way of teaching complicated tech courses in a funny, practical, engaging way, which is why we are so excited to be here on Udemy!
We hope you will try our offerings, and think you'll like them :-)