Category:Cowgol
This programming language may be used to instruct a computer to perform a task.
Execution method:  Compiled (machine code) 

Garbage collected:  No 
Parameter passing methods:  By value 
Type safety:  Safe 
Type strength:  Strong 
Type compatibility:  Structural 
Type expression:  Explicit 
Type checking:  Static 
See Also: 

Cowgol is a procedural, imperative, stackless programming language with Adastyle syntax, meant for use on very small systems such as 8bit micros. Cowgol is also the name of the premier (and so far only) implementation, which is itself written in Cowgol and selfhosting, and which is small enough to run on several 8bit micros. Cowgol was developed by David Given.
Because most of the processors Cowgol targets do not support stack frames efficiently, Cowgol was designed not to use them. Instead, every variable in the program is statically assigned a single location in memory. (The official implementation overlaps variables it can prove aren't in scope at the same time.) Recursion is forbidden.
Aside from this, Cowgol has most of the features one would expect of a modernish procedural language. Cowgol has strict type checking, type aliases, records with inheritance, and arbitarily nested subroutines. Cowgol also has system programming features such as pointers and inline assembly, and it allows the programmer to explicitly define the layout in memory of a record.
Cowgol currently supports MSDOS (on the 8086), CP/M (on the 8080 and Z80), the BBC Micro (6502), as well as others; modern Linux (x86 or PowerPC) is also supported. The Cowgol compiler is written to make it easy to add other backends.
Pages in category "Cowgol"
The following 146 pages are in this category, out of 146 total.
A
C
D
F
H
I
L
M
N
 N'th
 Nested function
 Numbers divisible by their individual digits, but not by the product of their digits.
 Numbers in base 10 that are palindromic in bases 2, 4, and 16
 Numbers in base16 representation that cannot be written with decimal digits
 Numbers which binary and ternary digit sum are prime
 Numbers with equal rises and falls
 Numbers with same digit set in base 10 and base 16
P
R
S
 Sexpressions
 Sequence: smallest number with exactly n divisors
 Shoelace formula for polygonal area
 Show ASCII table
 Sierpinski triangle
 Sieve of Eratosthenes
 Smallest square that begins with n
 Smith numbers
 Sort three variables
 Sorting algorithms/Bubble sort
 Sorting algorithms/Quicksort
 Special divisors
 Split a character string based on change of character
 Square but not cube
 SternBrocot sequence
 Strange numbers
 Strange plus numbers
 Sum digits of an integer
 Sum multiples of 3 and 5
 Sum of divisors
 Sum of first n cubes
 Sum of squares
 Sum of the digits of n is substring of n