In Part 1:
What is an "Objective-C Literal"? It's a chunk of code that references a specific Cocoa object, creating it if necessary. Objective-C has had literals for NSStrings since the beginning of time [...].
The new literals for NSNumbers, NSArrays, and NSDictionaries take a similar approach
In Part 2:
The new collection-access syntax is a welcome change, making it very convenient to dig into collections. What's even better is that our own classes can play in this world.
There are two flavors of convenient collection access: scalar indexing which is used by NSArray, and object indexing which is used by NSDictionary.
With these features, Objective-C becomes more expressive and takes the best syntactic sugars from dynamic languages like Ruby and Python. More expressiveness with less syntax noise.