ANTLR Abelson Actor Aho Alan Alexandru Alfred Alonzo Anders Any AnyRef AnyVal Application Architecture Array ArrayBuffer AssertionError BDD Bazaar BeanProperty Beck Bertrand Beust BigInt BigInteger Bill Bison Bloch Boolean Bracha Brian Bruce ButtonClicked Byte Callahan Cathedral Cedric Char Church Class Clint Compilers Component Computer Concurrency ConcurrentHashMap Console Construction Container DSL DSLs DeRemer Design Dijkstra Dirty Domain Double Driven Eastwood Eckel Eclipse EditDone Edition Edsger Effective Eiffel Elem EmptyBorder Enumeration Eric Erich Erlang Evans Failure FileReader First Flex Float Fortran Fowler Framework Frank Function GUI GUIs Gamma Gerald Gilad Goetz Gosling Groovy Growing Guice Guido Guy Haller Harold Harry HashMap HashSet Haskell Hejlsberg Hibernate Hindley IDE IDEs Index Int IntelliJ Interpretation Iterable Iterator JFlex JSON JUnit James Java JavaBeans JavaScript JavaTokenParsers Jeffrey Joshua Joy Kay Kent LALR LL LSP Label Landin Language Larry Lex Liskov Lisp List ListBuffer ListView Long MainFrame Manual Map Martin MatchError Matsumoto Meyer Meyers Milner Modeling Multi NET NaN NetBeans Nice Niklaus Nil Nilsson Node NodeSeq None Notation Nothing Null NullPointerException OCaml Object Odersky Option Ordered Oriented PLT Panel ParseResult Parser Parsers PartialFunction Patterns Perl Persistence Peter Philipp Pizza Popescu Practice Predef Principle Principles Programming Programs Publisher Python Queue Rational Raymond Reactor Reader Reference Regex RegexParsers RichDouble RichInt RichString Rickard Rossum Ruby Rumbaugh SML Scala ScalaCheck ScalaObject ScalaTest Scaladoc Scheme Scott ScrollPane Second Seq SerialVersionUID Set Short SimpleGUIApplication Simula Smalltalk Software Some SortedMap SortedSet Source Spoon Spring Stack Steele String StringAdd StringBuilder Structure Substitution Success Sussman Swing SynchronizedMap SynchronizedSet Table TableUpdated Techniques Test TestCase TestNG Text TextField Thinking Thread Tools Torreborre TreeMap TreeSet Tuple Ullman Unicode Unified Unit Unix Value ValueChanged Venners Wall Windows Wirth XML XPath Yacc Yukihiro abs abstract abstraction access accessed accessing accessor accessors act actor actors add addString al algorithm alias aliases aliasing alphabetic alphanumeric already alternative alternatives analysis annotating annotation annotations anonymous append appending application applications applied apply approach args argument arguments arithmetic array arrays arrow artima asInstanceOf assert assertions assignment associativity asterisk asynchronous attributes augmented automatic auxiliary backtracking base based basic behavior binary binding bitwise blank blocks book booksites boolean bottom bound bounds boxing braces break bytecodes caching calculus calling calls camel cannot capitalization capitalize captured case cases casing casting casts catch caution character characters checked checking circuiting circuits class classOf classes clauses clear cloning closed closures code collection collections colon com combination combinator combinators combining command committed companion compare compared compatibility compiler compiling complement complexity composition concat concatenation conciseness concurrency conditional configuration configuring conform conquer cons consing constant constants construct constructor constructors contains contents context continue contract contravariance contravariant control conventions conversion conversions converting copies copyToArray core corners count covariance covariant coverage creating creation curly curried currying data db deadlock deafTo debugging declaration declarations decrementing deep def default defensive defined defining definition definitions defs delimiter demand dependency dependent deprecated depth dequeue derived deserialization design details development diagram diagrams digital divide divided do domain downloading driven drop dropRight dropWhile duplication dynamic effects efficiency element elements eliminated else embedded empty enclosing encoding enqueue ensuring entities entity enum enumerations eq equal equality equals erasure errata error errors escape established et etc event examples exception exceptions exclusive exhaustive existential existentials exists expected expressions extending extends extension external extract extractor extractors eyebrows factories factory false fast field fields file files filter filters final finally finals findAllIn findFirstIn findPrefixOf flatMap flatten floating floatingPointNumber fold foldLeft foldRight follow for forSome forall foreach formatted formatting framework free fsc fully function functional functions generated generator generators generic getLines getter grammars granting graphical greater ground guards handlers handling hasNext hash hashCode hide hiding hierarchy higher http ideas identifier identifiers identity idioms if illegal immutability immutable imperative implement implementation implements implicit implicitly import imported imports incrementing independence indicate indices inference inferred infix influences information inheritance init initialization initialize initialized initializers initializing injection injections inner input insertion inside instance instanceOf instances instantiated instead int integer integral integration interfaces internal interoperability interpreter intersect introduction invert invocations invoke invoking isDefinedAt isEmpty isInstanceOf iterating iterators javac keySet keys keyword keywords kinded lamda language languages launch launcher layouts lazy legal length less lexical library license linearization lines linked linking list listenTo listeners lists literal literals living loadFile loan local locks logical loop looping loops lower magic main managing map maps match matching max meaning meeting member members membership merge message messages meta method methods min minimizing minus mismatch missing mixed mixin mixing mkString mock model modeled modifications modifier modifiers modular modules monads monitors multi multicore multiple mutability mutable names namespaces naming ne needed needs nested nesting new non nonvariance notailcalls notation nothing null numbers numeric object objects occurs offs opening operation operations operator operators opt optimization optional order oriented outer outside overflow overloaded overloading override overrides overriding package packages pair parallel parameter parameterization parameterized parameterless parameters parametric paren parentheses parser parsers parsing partial partially partition passing path pattern patterns performance persistent placeholder plus pointers polymorphism pop position postconditions postfix pound pre precedence preconditions predicates prefer preferred preferring prefix prepend prevent preventing primary primitive principle println private procedures processing processors program programming pronunciation properties property protected public publication pure push qualified qualifiers quick range ranges raw re react reactions reactive reading reassignable reassignment receive receiveWithin recipe recognizing recommendations recommended recursion recursive reduceLeft reducing refactoring reference references referencing referential reflection regex regular relational relationships release remainder remove renaming rendererComponent rep repeat repeated reporting representation repsep require required resource resources restraint result results return returning reverse rich rocket rounded rowHeaderView run running runtime safe safety saveFull scala scalability scalac scanner scope scripts sealed seen selecting selector selectors self semantics semi semicolon send sequence sequences sequential serializable serialization serializing sets setter shadowing shared shell shift short showing shown sign singleton singletons site size snoc sort source sources span special specific specification specifiers specs split splitAt spreadsheets squiggle stack stackable standalone standard start state stateful statement statements static stream string stringLiteral strings stripMargin structural structure structured structures style subclass subclasses subclassing subtyping suites super superclass superclasses supertype switch switching symbol symbolic syntactical syntax table tag tags tail takeWhile takes target teams template term test testing tests text this thread threaded threading threads throw thrown throws tick ticks title toArray toChar toInt toList toString trade trait traits transient translated translating transparency treat treating treatment triple true try tuple tuples turning type typed types typing unapply unapplySeq unary unchecked underscore underscores uniform unit unless unnamed unreachable unsigned unzip update upper user utilities val valid vals value values van var vararg varargs variable variables variance vars verifiable versus via view viewing viewportView visibility volatile warning warnings while wildcard wildcards wire with wrappers writing yield zip zipWithIndex