1/20
Flashcards covering essential vocabulary and concepts related to programming languages, particularly functional programming.
Name | Mastery | Learn | Test | Matching | Spaced |
|---|
No study sessions yet.
Functional Programming
A programming paradigm where computation is treated as the evaluation of mathematical functions.
Lisp
The first functional programming language, developed in the late 1950s.
Scheme
A dialect of Lisp designed to teach programming; known for its simple syntax and powerful features.
First-class functions
Functions that can be passed as arguments, returned as values, and assigned to variables.
Lambda notation
A way to express anonymous functions in functional programming.
Recursion
A programming technique where a function calls itself to solve a problem.
Expressiveness
The breadth of concepts that can be expressed in a programming language.
Evaluation semantics
Rules that dictate how and when expressions in a programming language are evaluated.
Tail recursion
A specific kind of recursion where the recursive call is the last operation in the function.
List manipulation
Using functions like 'car', 'cdr', and 'cons' to operate on and modify lists.
Numeric predicates
Functions that perform tests on numerical values and return boolean results.
Higher-order functions
Functions that take other functions as arguments or return them as results.
Map function
A function that applies a given function to each item in a list, producing a new list.
Filter function
A function that processes a list and retains only the elements that satisfy a specified condition.
Quoting in Scheme
Using 'quote' to prevent evaluation of an expression and treat it as data.
Control structures
Constructs that dictate the flow of control in a program, such as 'if' and 'cond'.
Equality functions
Functions used to compare values in Scheme and return true or false.
GCD function
A function that computes the greatest common divisor of two numbers.
Object modeling
Using functions to model the behavior and characteristics of objects in a programming language.
DrScheme
An integrated development environment for the Scheme programming language.
REPL
Read-Eval-Print Loop; an interactive programming environment where expressions are read, evaluated, and printed.