[SYMBOL][A][B][C][D][E][F][G][H][I][J][K][L][M][N][O][P][Q][R][S][T][U][V][W][X]
_200 function
_404 function
. operator
.jar files
+ function
++ function, 2nd
++= method
== method
=> sign
~/bin folder
abstract members
Abstract method
abstract modifier
abstract type annotation
abstraction techniques
access principles
Account type, 2nd
ACID (atomicity, consistency, isolation, durability)
Active object
Actor API
Actor class
actor library
migrating to Akka
Actor model
actor path
actor system
actor path
guardian actor
shutting down all actors
threads executing.
See also ActorSystem.
actor, and blocking operation
ActorDSL
ActorRef
actors
divide-and-conquer pattern
guardian
handling a message
how they work
in Akka
defining
remote actors
in Akkaoogle application example
no direct reference
sending message to
separating blocking and nonblocking
vs using Future
when not to use
ActorSystem
creating an actor
ad hoc polymorphism, with type classes
modeling orthogonal concerns using
solving expression problem using
add function
addOne function
addThree function
Administrable trait
ADTs (algebraic data types)
advantages, of functional programming, 2nd
Agent, handling shared resources with
Agha, Gul
AkkaoogleActorServer, 2nd, 3rd
AkkaoogleSchema object
algebraic data types.
See ADTs.
All-for-One
andThen method, 2nd
AngryMood trait
annotations, Scala classes in Java
AnyRef
AnyVal
Application trait
application.conf file
application-context.xml file
applications
connecting to databases
saving to
using Squeryl
creating web pages for
Kanban boards
creating views for
defined
moving cards in
setting up project with SBT
SBT
adding dependencies
build file for
for Mac
for Unix
for Windows
project structure for
Scalaz HTTP module
configuring with SBT
overview
setting up servlet
apply method, 2nd, 4th, 7th, 8th
and cons method
in Map
treat object as a function object
applyCostPlusBusinessRule method
applyOptions function
applyPercentage
arbitrary generator
arguments
ArithmeticException
Array class
ArrayList() method
arrays
Arrays.asList method
Artist object
ArtistDb class
ArtistDb.scala database
ArtistRepository class
Ask pattern
asynchronous HTTP, with Play2-mini
asynchronous messaging systems, testing
ATaxStrategy
atomic method
atomicDelete function
atomicInsert function
atomicity
atomicity, consistency, isolation, durability.
See ACID.
Awaitility
BalancingDispatcher
BasicDBObject() method, 2nd
BasicResponseHandler() method
Bean property
@BeanProperty annotation
beEqualTo matcher
behavior-driven development
specifications for
using Specs2
board example, Kanban
creating view for
moving cards in
BookOrdering object
Boolean parameter
BTaxStrategy
Budd, Timothy
build file, for SBT
build.properties file, 2nd, 3rd
build.sbt file, 2nd, 3rd, 4th
build.scala file, 2nd, 3rd
builder.toString() method
byte code, Java
Byte type
c.countWords() method
cake pattern, dependency injection
calculatePrice method, 2nd, 3rd
CalculatePriceService class, 2nd
Calculator trait
calculus
call-by-name
call-by-reference
call-by-value
CallingThreadDispatcher
CanadaContractorPayrollSystem
CanadaPayroll method
case classes, 2nd
and pattern matching
companion object
option.
See also value classes.
case keyword
catch block
challenges, of concurrent programming
new trends in concurrency
shared-state concurrency with threads
Char type
Char.MAX_VALUE
Char.MIN_VALUE
character types
CheapestDealFinder
checked exceptions, Java classes in Scala
CI (continuous integration)
claimHandlers
claimId
class linearization, 2nd
close method
closure function, 2nd
CLR (Common Language Runtime)
CMSClassUnloadingEnabled flag
codomain
collection.immutable.List, 2nd
collection.mutable.ListBuffer, 2nd
collection.mutable.Map package
collection.mutable.Set[String]() method
com.akkaoogle.http.App
com.kanban.application.WeKanbanApplication
com.mongodb package
com.mongodb.Mongo class
com.scalainaction.mongo package
com.typesafe.play.mini.Setup
Common Language Runtime.
See CLR.
companion objects, overview
components
abstract type annotation
and type classes
modeling orthogonal concerns using
solving expression problem using
and types in Scala
higher-kinded types
phantom types
structural types
extensible components
challenge of
solving expression problem
scalable components
self type annotation
composability, 2nd
composition, of functions
compute function
computing nodes
concreteFactory variable
concurrent programming
challenges of
new trends in concurrency
shared-state concurrency with threads
defined
using actors
with actors, when not to use
Configuration file
cons(::) method
consistency
console-project task
constructors
and classes
copy constructors
overloading
container:start task
ContentType object
continuous integration.
See CI.
Contractor type
ContractorPayrollVisitor
contravariant, 2nd
copy constructors
copy method, 2nd
core modules, Akka
CostPlusCalculator() method
countWords method
covariance
CPU core
create a new Story screen
create, read, update, delete.
See CRUD operations.
createDB method
createSchema() method, 2nd
CreateStory view object, 2nd, 3rd, 4th
CRUD (create, read, update, delete) operations
currentTime function
currying functions
cursor.hasNext() method, 2nd
cursor.next() method, 2nd
d.getDays() method
data loader
data transfer object.
See DTO.
databases, for web applications
saving to
using Squeryl
dataflow concurrency
dataflow variables
DataTables trait
Date class
DateTime.now() method
DB class, 2nd, 3rd
db method
DB.apply(underlying.getDB(name)) function
DB.scala file
DB(underlying.getDB(name)) function
DBCollection class, 2nd
DBCollection.scala file
DbConnection
DBObject parameter
declaring packages
decorators
def keyword
default arguments
default constructor
default-afcdbe project
DefaultHttpClient() method, 2nd
DELETE method
Delete method
dependencies, in SBT
DI (dependency injection), 2nd
cake pattern
implicit parameters
in functional style
structural typing
using Spring framework
dispatchers, in Akkaoogle application example
distributed computing
divide and conquer
doctype
documentation
DogMood trait
domain models, in Akkaoogle application example
domains
domain-specific See language DSL
don’t-repeat-yourself code.
See DRY.
draggable method
Driver class
DRY (don’t-repeat-yourself) code
DSL
DTO (data transfer object)
dynamic languages, transitioning from
Dynamic type
dynamic typing
e.hasMoreElements() method
e.withFilter
efficiency
Elem type
EmployeePayrollVisitor
end-to-end test
environment, for test-driven development
equals method
Erlang
error detection
errorLogger() method
eta-expansion
evenFilter
event-based actors
exception handling
overview
extensible components
challenge of
solving expression problem
extensible languages, Scala as
external load balancer
ExternalPriceCalculator, 2nd, 3rd
external-price-calculator-actor-dispatcher
externalPriceSource
externalPriceSourceCalculator, 2nd
ExternalVendor, 2nd
ExternalVendor.findAll
ExternalVendorProxyActor, 2nd
Extractor object, 2nd
F[_] type
factory pattern
fault tolerance
File class
file.getName() method
FileToCount type, 2nd
filter method, 2nd
find method
findAllByPhase method, 2nd
findAllStoriesByPhase method
findByDescription, 2nd
findCalculator function
finder method, 2nd
findLowestPrice method
findOne method, 2nd
FindPrice message, 2nd, 3rd
firstName parameter
flatMap function, 2nd
floating-point types
foldLeft method, 2nd, 3rd
foldRight method, 2nd
forAll method
for-comprehensions
overview
using with collections
fork-join
fullClasspath
Function type
Function1 trait
functional languages, Scala as
Functional Object pattern
functional objects
functional programming, 2nd
ADTs
advantages of, 2nd
defined
function composition
function currying
higher-order functions
methods vs. functions
monads
managing state using
methods used with
moving from OOP to
modeling purely functional programs
object-oriented patterns
pure vs. impure programming
partial functions
pure functional programs
recursion in
functional style, dependency injection
Future
divide and conquer
mixing with actors
vs using actors
Gen class, 2nd, 3rd
GenTraversableOnce, 2nd
GET method
Get method
getChronologyUsed() method
getCount method
getEntity() method
getName() method
getOrElse method
getOrElseUpdate method
getResource() method
gets method
getSender() method
Global object
greet method
GreetingsActor
handle method
head :: tail
head recursion
Hewitt, Carl
hierarchy
of classes
of collections
of parallel collections
higher-kinded types, 2nd
higher-order functions, 2nd
Hindley-Milner type
host parameter
HTTP method, 2nd, 3rd
http.proxy environment variable
HttpClient library
HttpGet method
HttpServlet
HttpServletRequest
Hughes, John
I/O monad
identifiers
immutable collections
immutable data, vs. mutable
immutable objects
implicit conversion
implicit keyword
implicit parameters
dependency injection
overview, 2nd
implicits
import statements
importance, of testing
impure programming, vs. pure programming
InCompleteOrder
Infix Operation pattern
init() method, 2nd, 3rd, 4th
input
Int object
Int type, 2nd, 3rd
integer types
Integer.parseInt
integration test, 2nd, 3rd
interactive mode
internal load balancer
InternalPriceCalculator, 2nd, 3rd
InternalPriceCalculatorActor
internal-price-calculator-actor-dispatcher
interoperability with Java
Java classes in Scala
checked exceptions
generics
static members
Scala classes in Java
Scala web applications using Java
frameworks
model, view, controller
using Spring configuration
inTransaction method, 2nd
invariant, 2nd
io.monads package
IOMonad type
IOResource
isDefinedAt method
isEmpty method
isLeft method
isolation
isRight method
Iterable trait
JapanPayroll method
JAR file
Java byte code
Java class
Java Database Connectivity.
See JDBC.
Java driver, 2nd, 3rd, 4th
Java interface, 2nd
Java Virtual Machine.
See JVM.
java.io.File class
java.lang.Thread class
java.sql package
java.sql.Date
java.util.concurrent package
java.util.Date() method, 2nd
JavaConversions object
JavaScript Object Notation.
See JSON.
JDBC (Java Database Connectivity)
jetty-run build action
jettyVersion
jquery-ui library
JSON (JavaScript Object Notation)
JUnit, test-driven development using
junitInterface
Kanban boards
board
defined
setting up project with SBT
example
creating view for
moving cards in
view object
KanbanBoard() method
KanbanSchema class, 2nd
KanbanSchema.scala file
Kay, Alan
Kestrel
KeyedEntity trait
lambda calculus
lambda function
languages() method
lastName parameter
lazy collections
and Stream class
converting strict collections to
leftValueGenerator, 2nd
libraryDependencies, 2nd, 3rd, 4th
Limit option
linearization
LinearSeq type
List class
List collection, overview
List.WithFilter
List() method
ListBuffer, overview
lists
load balancers
loadArtists() method
loan pattern
locale field
LocaleAware trait
logStep method
LogTimeout message, 2nd
logTimeout method
Long type
loopTill construct
Lotus Notes, IBM
m.keys
m.values
Mac, SBT on
main.js file, 2nd
Map collection, overview
map function, 2nd
Map type
Mapper trait
mathematical functions
Maybe class, 2nd
Maybe construct
Maybe.scala, 2nd
memoization
Memoizer trait
message passing concurrency with actors
message routing, in Akkaoogle application example
MessageDispatcher
messageFromFuture() method
message-oriented concurrency
method dependent type
method invocations, overview
MethodParts.unapply
microworlds, 2nd
minus sign
Mixin composition, 2nd
modeling, pure functional programs
modifiers
modify method, 2nd
modifyPriceState, 2nd
modular mixin composition
monadic laws
monads
managing state using
methods used with
Mongo class
Mongo driver, 2nd
MongoClient class, 2nd, 3rd
MongoClient.scala
MongoDB database
driver for in Scala
overview, 2nd, 3rd
monitor actor, 2nd
Moore’s law
moveCard function, 2nd
moveTo method, 2nd
Movie class
MovieConverterWithoutRating
msg message
multicore processors
and Moore’s law
programming for
multi-paradigm languages, Scala as
mutable collections
mutable data, vs. immutable data
mutable.ArrayBuffer
mutable.ListBuffer
mydb database
myFirstMethod() method
MyScript class
name() method
named arguments
nano-http-server project
NanoHttpServer.scala
nanoTime method
new keyword
newFunction.apply
Nil class, 2nd, 3rd
NoAddress
NoItem
nonduplicate element
NoOption() method, 2nd
NotFound class
Null object
NullPointerException
<object>.apply() method
<object>(<arguments>)
Object Relational Mapping.
See ORM.
object-oriented languages, Scala as
object-oriented programming.
See OOP.
objects, overview
Odersky, Martin
One-for-One
OOP (object-oriented programming)
modeling purely functional programs
object-oriented patterns
pure vs. impure programming
operations, CRUD
Option type, 2nd, 3rd
OPTIONS method
Order type
OrderingService() method
OrderingSystem
orderSavedInDatabase
orElse block
orElse method
org.scalacheck.Gen class
org.scalacheck.Prop trait
org.scalacheck.Prop.forAll
org.scalacheck.Properties
org.squeryl.Query class
org.squeryl.Schema
org.squeryl.Table class, 2nd
organizationHomePage
ORM (Object Relational Mapping)
OUT[_] type
Outer class
output
overloading constructors
override modifier, 2nd
package object
package.scala file
packages
declaring
overview
parallel collections
hierarchy of
switching between sequential and
parallel programming
param method
parameters, implicit, 2nd
parametric polymorphism
parsedMessage() method
PartialFunction, 2nd, 3rd
PATH variable
pattern matching, 2nd
Payroll interface
Payroll type, adding for Japan
PayrollProcessorsExtension object
PC (Pricing Criteria)
Persistable interface
Persistable.class file
persistence data structures
Person class, 2nd, 3rd
phantom types
PinnedDispatcher
pipeTo pattern
placeOrder
plain old Java object.
See POJO.
play.core.server.NettyServer
Play2-mini, asynchronous HTTP with
plus sign
POJO (plain old Java object)
POM (Project Object Model) files
pom.xml file
popMessageFromASlowQueue() method
port parameter
position function, 2nd
POST method
Post method
Predef class, 2nd
priceCalculator method
Pricing Criteria.
See PC.
primary constructors, 2nd, 3rd, 4th, 5th
printAccountDetails
private modifier
processContractors method, 2nd
processEmployees method, 2nd
processPayroll method
Product class
productivity, improvements to when transitioning from Java
Products table
Programmer class
project definition, debugging
Project Object Model files.
See POM.
project structure, for SBT
Promise
create a Future
Prop.forAll method
Properties class
protected modifier
pure functional languages
pure functions
pure programming, vs. impure programming
PureSquare object
Querulous
Query class, 2nd, 3rd
r.dispose() method
Random class
Random() method
read-evaluate-print loop.
See REPL.
ReadOnly trait, 2nd
recursion, in functional programming
red-green-refactor cycle, 2nd
redirects method
Ref object
refactoring
referential transparency, 2nd, 3rd
refresh() method
remote actors, in Akka
Remote interface
removeDups function
REPL (read-evaluate-print loop), in Scala interpreter
Representational State Transfer.
See REST.
request handler
Request object, 2nd
request.getHeaderNames() method
request.getParameterNames() method
RequiredServices trait
resolvers key
@Resource annotation
ResourceLocator type
Response object, 2nd, 3rd
response.getWriter() method
REST (Representational State Transfer) client example
retrieveAndLoadArtists() method
Return parameter
Rich type
RichConsole object, 2nd
rightValueGenerator, 2nd
RMI interface
root_package
RoundRobinRouter
routees
run() method
RunPayroll object
RunWith annotation
SalesPerson trait
save() method
saveStory method
implementing
overview
SBT (Simple Build Tool), 2nd
adding dependencies
build file for
command, 2nd
for Mac
for Unix
for Windows
project structure for
sbt compile run command
sbt.Keys object
sbt.version key
sbtVersion key
scala.Any class, 2nd, 3rd
scala.AnyRef class
scala.collection package, 2nd
scala.collection.immutable package
immutable for everyone
overview
scala.collection.Iterator
scala.collection.mutable package
scala.collection.parallel.Splitter trait
scala.collection.Stream, 2nd
scala.Either class, 2nd, 3rd
scala.Function1 class
scala.Function1 trait
scala.io.Source package, 2nd
scala.Nothing type, 2nd, 3rd
scala.Null type
scala.Option type
scala.ScalaObject trait, 2nd
scala.util package
scala.xml.NodeSeq object, 2nd
scalable components
scalable languages, Scala as
ScalaCheck
example of
generators for
testing string behavior
scalacOptions
scalaMiniProject method
ScalaObject trait
ScalaQuery
scala-version command
scalaz.http.InputStreamer
scalaz.http.response.OK class
scalaz.http.servlet.ScalazServlet
scalaz.http.servlet.ServletApplication
scalaz.http.servlet.StreamStreamServlet
scalaz.http.servlet.StreamStreamServlet-Application trait
ScalazServlet, 2nd, 3rd
scalazVersion
scheduleShipping method
Schema class, 2nd
schemas, in MongoDB
scoping approach
search cheapest product
select function
selectDynamic
self type annotation
and placeOrder method
and product finder
common annotation names
sendOff method
sequential collections, switching between parallel and
servlet parameter
servlets, lifecycle of
Session object
SessionFactory object
SessionFactory.concrete
SessionFactory.concreteFactory
Set() method
setter methods
SettingKey, 2nd
Setup class
shared resources, handling with Agent
shared-state concurrency with threads
should method
shouldUseCostPlusCalculatorWhenPriceTypeIsCostPlus() method, 2nd
side-effecting functions
Simple Build Tool.
See SBT.
SimpleDB, Amazon
single execution core
Single Responsibility Principle
single() method
singleton objects, 2nd
SmallestMailboxRouter
Smalltalk
software transactional memory.
See STM.
someMap
someTimeConsumingOperation() method
Sort option
SortedSet
Source class
Source.fromURL, 2nd
source.getLines() method
specification-based unit testing tools
specifications, for behavior-driven development
Specs2, behavior-driven development using
Spring framework, dependency injection using
SQL database
Squeryl, 2nd
src/main/java folder
src/main/scala folder
stackable traits
StackOverflowError
startDatabase method
startH2Task
State object, 2nd
StateMonad
static keyword
static members, Java classes in Scala
static typing, in Scala
STM (software transactional memory), 2nd
handling mutable data
state in
stopH2Task
STORIES table
Story class, 2nd, 3rd, 4th
Stream class, and lazy collections
StreamStreamServletApplication
strict collections, converting to lazy collections
String class, 2nd, 3rd, 4th, 5th
String parameter
String type, 2nd
StringBuilder() method
StringSpecification.scala file
structural types
structural typing, dependency injection
structures, data
collections
and Option
hierarchy of
lazy collections
List and ListBuffer
Map and Tuple
mutable and immutable
parallel collections
Set and SortedSet
using for-comprehension with
foldLeft and foldRight methods for
function objects
higher-order functions
type bounds for
type parameterization for
type variance for
subexpressions
subpackages
subproblems
subtype polymorphism
Successor Value pattern
succint code, in Scala
Suereth, Joshua
sum method, 2nd
Summable trait
Sun Microsystems
supervision strategies
All-for-One
One-for-One
supervisors, responsibility
System class
tail recursion, in functional programming
@tailrec annotation
TaskKey, defines tasks
taxFree function
taxingStrategy function
taxIt function, 2nd
TaxStrategy trait
TDD (test-driven development), 2nd, 5th, 6th
setting up environment
using JUnit
tell method
template method pattern
test double
test-code-refactor cycle
test-driven development.
See TDD.
TestFindByQuery.scala
testing
asynchronous messaging systems
behavior-driven development
specifications for
using Specs2
dependency injection
cake pattern
implicit parameters
in functional style
structural typing
using Spring framework
importance of
test-driven development
setting up environment
using JUnit
using ScalaCheck
example of
generators for
testing string behavior
TestPricingSystem
testShouldReturnExternalPrice()
this() method, 2nd, 3rd
threads, concurrent programming using, challenges of
throwableToLeft
toString method
total function
toXml method
Trait class
traits, 2nd, 5th
and class linearization
stackable
transaction parameter
TransactionFailure
Traversable
parameter
trait, 2nd
try-finally block
Tuple, overview
tx method, 2nd
type
abstraction
bounds
inference
parameterization
parameters
projection
variance
type classes, ad hoc polymorphism with
modeling orthogonal concerns using
solving expression problem using
TypedActor
types, 7th
character
floating-point
higher-kinded types
integer
phantom types
string
structural types
XML
unapply method, 2nd, 3rd
unapplySeq method
Unicode method
Unit method
universal traits
Unix
pipes
SBT on
UntypedActor
up$extension method
Updatable trait
UpdatableCollection class, 2nd
uppercase characters, finding
url property
UrlBasedViewResolver class
USContractorPayrollSystem
user story
UseResource class
USPayroll class
USPayroll method
util.Random class
validate method, 2nd
ValidationException, 2nd
value classes rules
var prefixes
variables, overview
Vector collection
Vector() method
views
views.index() method
WAR file
weather function
web applications
connecting to databases
saving to
using Squeryl
creating web pages for
Kanban boards
creating view for
defined
moving cards in
setting up project with SBT
SBT
adding dependencies
build file for
for Mac
for Unix
for Windows
project structure for
Scalaz HTTP module
configuring with SBT
overview
setting up servlet
using Java frameworks
model, view, controller
using Spring configuration
web.xml file
weKanban application, 4th, 5th
setting up project
user stories
WeKanbanApplication, 2nd, 3rd, 4th
WeKanbanProjectDefinition.scala file, 2nd
WeKanbanSchema object
while loop
Windows, SBT on
with keyword
withDispatcher method
withFilter
WordCount implementation using actors
WordCount type
WordCountMaster class
WordCountWorker class, 2nd