Chris Okasaki
   HOME
*





Chris Okasaki
Chris Okasaki, Ph.D. is an associate professor of computer science at the United States Military Academy. He authored ''Purely Functional Data Structures'' (1998), based on a doctoral dissertation of the same name. He obtained a Ph.D. at Carnegie Mellon University in 1996 under advisers Peter Lee, Robert Harper, Daniel Sleator, and Robert Tarjan. Prior to his current academic appointment, he taught at Columbia University and the University of Glasgow. ''Purely functional data structures'' Dr. Okasaki published his doctoral dissertation as a book in 1998. It approaches the topic of data structures from a functional programming In computer science, functional programming is a programming paradigm where programs are constructed by applying and composing functions. It is a declarative programming paradigm in which function definitions are trees of expressions that ... perspective, describing techniques for designing immutable structures that incorporate persistence. R ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Computer Science
Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to Applied science, practical disciplines (including the design and implementation of Computer architecture, hardware and Computer programming, software). Computer science is generally considered an area of research, academic research and distinct from computer programming. Algorithms and data structures are central to computer science. The theory of computation concerns abstract models of computation and general classes of computational problem, problems that can be solved using them. The fields of cryptography and computer security involve studying the means for secure communication and for preventing Vulnerability (computing), security vulnerabilities. Computer graphics (computer science), Computer graphics and computational geometry address the generation of images. Progr ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Data Structures
In computer science, a data structure is a data organization, management, and storage format that is usually chosen for efficient access to data. More precisely, a data structure is a collection of data values, the relationships among them, and the functions or operations that can be applied to the data, i.e., it is an algebraic structure about data. Usage Data structures serve as the basis for abstract data types (ADT). The ADT defines the logical form of the data type. The data structure implements the physical form of the data type. Different types of data structures are suited to different kinds of applications, and some are highly specialized to specific tasks. For example, relational databases commonly use B-tree indexes for data retrieval, while compiler implementations usually use hash tables to look up identifiers. Data structures provide a means to manage large amounts of data efficiently for uses such as large databases and internet indexing services. Usually, e ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Columbia University Faculty
Columbia may refer to: * Columbia (personification), the historical female national personification of the United States, and a poetic name for America Places North America Natural features * Columbia Plateau, a geologic and geographic region in the U.S. Pacific Northwest * Columbia River, in Canada and the United States ** Columbia Bar, a sandbar in the estuary of the Columbia River ** Columbia Country, the region of British Columbia encompassing the northern portion of that river's upper reaches ***Columbia Valley, a region within the Columbia Country ** Columbia Lake, a lake at the head of the Columbia River *** Columbia Wetlands, a protected area near Columbia Lake ** Columbia Slough, along the Columbia watercourse near Portland, Oregon * Glacial Lake Columbia, a proglacial lake in Washington state * Columbia Icefield, in the Canadian Rockies * Columbia Island (District of Columbia), in the Potomac River * Columbia Island (New York), in Long Island Sound Populated places * ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Carnegie Mellon University Alumni
Carnegie may refer to: People * Carnegie (surname), including a list of people with the name * Clan Carnegie, a lowland Scottish clan Institutions Named for Andrew Carnegie *Carnegie Building (Troy, New York), on the campus of Rensselaer Polytechnic Institute * Carnegie College, in Dunfermline, Scotland, a former further education college *Carnegie Community Centre, in downtown Vancouver, British Columbia *Carnegie Council for Ethics in International Affairs *Carnegie Endowment for International Peace, a global think tank with headquarters in Washington, DC, and four other centers, including: **Carnegie Middle East Center, in Beirut **Carnegie Europe, in Brussels **Carnegie Moscow Center * Carnegie Foundation (other), any of several foundations *Carnegie Hall, a concert hall in New York City * Carnegie Hall, Inc., a regional cultural center in Lewisburg, West Virginia *Carnegie Hero Fund *Carnegie Institution for Science, also called Carnegie Institution of Washington ( ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Living People
Related categories * :Year of birth missing (living people) / :Year of birth unknown * :Date of birth missing (living people) / :Date of birth unknown * :Place of birth missing (living people) / :Place of birth unknown * :Year of death missing / :Year of death unknown * :Date of death missing / :Date of death unknown * :Place of death missing / :Place of death unknown * :Missing middle or first names See also * :Dead people * :Template:L, which generates this category or death years, and birth year and sort keys. : {{DEFAULTSORT:Living people 21st-century people People by status ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Persistent Data Structure
In computing, a persistent data structure or not ephemeral data structure is a data structure that always preserves the previous version of itself when it is modified. Such data structures are effectively immutable, as their operations do not (visibly) update the structure in-place, but instead always yield a new updated structure. The term was introduced in Driscoll, Sarnak, Sleator, and Tarjans' 1986 article. A data structure is partially persistent if all versions can be accessed but only the newest version can be modified. The data structure is fully persistent if every version can be both accessed and modified. If there is also a meld or merge operation that can create a new version from two previous versions, the data structure is called confluently persistent. Structures that are not persistent are called ''ephemeral''. These types of data structures are particularly common in logical and functional programming, as languages in those paradigms discourage (or fully forbid) ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Immutability
In object-oriented and functional programming, an immutable object (unchangeable object) is an object whose state cannot be modified after it is created.Goetz et al. ''Java Concurrency in Practice''. Addison Wesley Professional, 2006, Section 3.4. Immutability This is in contrast to a mutable object (changeable object), which can be modified after it is created. In some cases, an object is considered immutable even if some internally used attributes change, but the object's state appears unchanging from an external point of view. For example, an object that uses memoization to cache the results of expensive computations could still be considered an immutable object. Strings and other concrete objects are typically expressed as immutable objects to improve readability and runtime efficiency in object-oriented programming. Immutable objects are also useful because they are inherently thread-safe. Other benefits are that they are simpler to understand and reason about and offer high ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Functional Programming
In computer science, functional programming is a programming paradigm where programs are constructed by Function application, applying and Function composition (computer science), composing Function (computer science), functions. It is a declarative programming paradigm in which function definitions are Tree (data structure), trees of Expression (computer science), expressions that map Value (computer science), values to other values, rather than a sequence of Imperative programming, imperative Statement (computer science), statements which update the State (computer science), running state of the program. In functional programming, functions are treated as first-class citizens, meaning that they can be bound to names (including local Identifier (computer languages), identifiers), passed as Parameter (computer programming), arguments, and Return value, returned from other functions, just as any other data type can. This allows programs to be written in a Declarative programming, ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

University Of Glasgow
, image = UofG Coat of Arms.png , image_size = 150px , caption = Coat of arms Flag , latin_name = Universitas Glasguensis , motto = la, Via, Veritas, Vita , mottoeng = The Way, The Truth, The Life , established = , type = Public research universityAncient university , endowment = £225.2 million , budget = £809.4 million , rector = Rita Rae, Lady Rae , chancellor = Dame Katherine Grainger , principal = Sir Anton Muscatelli , academic_staff = 4,680 (2020) , administrative_staff = 4,003 , students = () , undergrad = () , postgrad = () , city = Glasgow , country = Scotland, UK , colours = , website = , logo ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

United States Military Academy
The United States Military Academy (USMA), also known metonymically as West Point or simply as Army, is a United States service academy in West Point, New York. It was originally established as a fort, since it sits on strategic high ground overlooking the Hudson River with a scenic view, north of New York City. It is the oldest of the five American service academies and educates cadets for commissioning into the United States Army. The academy was founded in 1802, one year after President Thomas Jefferson directed that plans be set in motion to establish it. It was constructed on site of Fort Clinton on West Point overlooking the Hudson, which Colonial General Benedict Arnold conspired to turn over to the British during the Revolutionary War. The entire central campus is a national landmark and home to scores of historic sites, buildings, and monuments. The majority of the campus's Norman-style buildings are constructed from gray and black granite. The campus is a pop ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Columbia University
Columbia University (also known as Columbia, and officially as Columbia University in the City of New York) is a private research university in New York City. Established in 1754 as King's College on the grounds of Trinity Church in Manhattan, Columbia is the oldest institution of higher education in New York and the fifth-oldest institution of higher learning in the United States. It is one of nine colonial colleges founded prior to the Declaration of Independence. It is a member of the Ivy League. Columbia is ranked among the top universities in the world. Columbia was established by royal charter under George II of Great Britain. It was renamed Columbia College in 1784 following the American Revolution, and in 1787 was placed under a private board of trustees headed by former students Alexander Hamilton and John Jay. In 1896, the campus was moved to its current location in Morningside Heights and renamed Columbia University. Columbia scientists and scholars have ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Robert Tarjan
Robert Endre Tarjan (born April 30, 1948) is an American computer scientist and mathematician. He is the discoverer of several graph algorithms, including Tarjan's off-line lowest common ancestors algorithm, and co-inventor of both splay trees and Fibonacci heaps. Tarjan is currently the James S. McDonnell Distinguished University Professor of Computer Science at Princeton University, and the Chief Scientist at Intertrust Technologies Corporation. Early life and education He was born in Pomona, California. His father, raised in Hungary, was a child psychiatrist, specializing in mental retardation, and ran a state hospital. As a child, Tarjan read a lot of science fiction, and wanted to be an astronomer. He became interested in mathematics after reading Martin Gardner's mathematical games column in Scientific American. He became seriously interested in math in the eighth grade, thanks to a "very stimulating" teacher. While he was in high school, Tarjan got a job, where he work ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]