File: defs.l

package info (click to toggle)
picolisp 3.1.0.7-1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 4,100 kB
  • sloc: ansic: 14,205; lisp: 795; makefile: 290; sh: 13
file content (66 lines) | stat: -rw-r--r-- 1,560 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# 07jun12abu
# (c) Software Lab. Alexander Burger

# Constants
(equ HEAP (* 1024 1024))      # Heap size in bytes
(equ CELLS (/ HEAP 16))       # Number of cells in a single heap (65536)
(equ STACK (* 4 1024 1024))   # Default stack segment size
(equ ZERO (short 0))          # Short number '0'
(equ ONE (short 1))           # Short number '1'
(equ TOP (hex "10000"))       # Character top
(equ DB1 (hex "1A"))          # Name of '{1}'

# Pointer offsets
(equ I 8)
(equ II 16)
(equ III 24)
(equ IV 32)
(equ V 40)
(equ VI 48)
(equ VII 56)
(equ VIII 64)
(equ IX 72)

(equ -I . -8)
(equ -II . -16)
(equ -III . -24)
(equ -IV . -32)
(equ -V . -40)
(equ -VI . -48)
(equ -VII . -56)
(equ -VIII . -64)

# Cell offsets
(equ CNT 2)    # Count tag
(equ BIG 4)    # Rest of a bignum + bignum tag
(equ DIG -4)   # First digit of a big number
(equ CDR 8)    # CDR part of a cons pair
(equ SIGN 8)   # Sign bit of a number
(equ SYM 8)    # Symbol tag
(equ TAIL -8)  # Tail of a symbol

# I/O Tokens
(equ NIX 0)       # NIL
(equ BEG 1)       # Begin list
(equ DOT 2)       # Dotted pair
(equ END 3)       # End list
(equ NUMBER 0)    # Number
(equ INTERN 1)    # Internal symbol
(equ TRANSIENT 2) # Transient symbol
(equ EXTERN 3)    # External symbol

# DB-I/O
(equ BLK 6)       # Block address size
(equ BLKSIZE 64)  # DB block unit size
(equ BLKTAG 63)   # Block tag mask

# Networking
(equ UDPMAX 4096) # UDP buffer size

# Case mappings from the GNU Kaffe Project
(equ CHAR_UPPERCASE 1)
(equ CHAR_LOWERCASE 2)
(equ CHAR_LETTER 62)
(equ CHAR_DIGIT 512)

# vi:et:ts=3:sw=3