Ubiquitous computing uses a variety of information for which access needs to be controlled. For instance, a person’s current location is a sensitive piece of information, which ...
Compared to imperative programming languages like Pascal or Basic, or functional programming languages like ML or Haskell learning Java is hampered by the fact that to get even th...
At the heart of most computer systems is a file system. The file system contains user data, executable programs, configuration and authorization information, and (usually) the bas...
Module systems are a powerful, practical tool for managing the complexity of large software systems. Previous attempts to formulate a type-theoretic foundation for modular program...
An increasing variety of malware, such as worms, spyware and adware, threatens both personal and business computing. Remotely controlled bot networks of compromised systems are gr...