Archive for the ‘CPL’ Category
TeX, LaTeX, and LyX
TeX is a programming language optimized to print books.
http://www.troubleshooters.com/linux/lyx/lyx_latex_tex.htm
Computer Programming & Programming Language
A programming paradigm is a fundamental style of computer programming. Paradigms differ in the concepts and abstractions used to represent the elements of a program (such as objects, functions, variables, constraints, etc.) and the steps that compose a computation (assignment, evaluation, continuations, data flows, etc.).
Different programming languages advocate different programming paradigms. Some languages are designed to support one particular paradigm (Smalltalk supports object-oriented programming, Haskell supports functional programming), while other programming languages support multiple paradigms (such as Object Pascal, C++, Java, C#, Visual Basic, Common Lisp, Scheme, Perl, Python, Ruby, Oz and F Sharp).
1st generation: binary code
2nd generation: assembly languages
3rd generation (the first described as high-level languages): procedural languages, object-oriented languages
4th generation: declarative programming (e.g. constraint programming, functional programming, logical programming)
Algebraic Modeling Languages (AML) are high-level computer programming languages for describing and solving high complexity problems for large scale mathematical computation (i.e. large scale optimization type problems).[1] One particular advantage of some algebraic modeling languages like AIMMS[1], AMPL[2] or GAMS[1] is the similarity of their syntax to the mathematical notation of optimization problems. This allows for a very concise and readable definition of problems in the domain of optimization, which is supported by certain language elements like sets, indices, algebraic expressions, powerful sparse index and data handling variables, constraints with arbitrary names. The algebraic formulation of a model does not contain any hints how to process it.
An AML does not solve those problems directly; instead, it calls appropriate external algorithms to obtain a solution. These algorithms are called solvers and can handle certain kind of mathematical problems like:
linear problems
integer problems
(mixed integer) quadratic problems
mixed complementarity problems
mathematical programs with equilibrium constraints
constrained nonlinear systems
general nonlinear problems
non-linear programs with discontinuous derivatives
nonlinear integer problems
global optimization problems
stochastic optimization problems