Search-engine friendly clone of the
ACL2 documentation
.
Top
Documentation
Books
Boolean-reasoning
Projects
Apt
Zfc
Acre
Milawa
Smtlink
Abnf
Vwsim
Isar
Pfcs
Wp-gen
Dimacs-reader
Legacy-defrstobj
Proof-checker-array
Soft
C
Farray
Rp-rewriter
Instant-runoff-voting
Imp-language
Sidekick
Leftist-trees
Java
Taspi
Riscv
Bitcoin
Des
Ethereum
X86isa
Sha-2
Yul
Zcash
Proof-checker-itp13
Regex
ACL2-programming-language
Json
Jfkr
Equational
Cryptography
Poseidon
Where-do-i-place-my-book
Axe
Aleo
Aleobft
Aleovm
Circuits
Language
Grammar
Early-version
Abstract-syntax
Parser
Lex-record
Lex-group-escaped-char-body
Lex-group-instruction-body
Lex-increment
Lex-decrement
Lex-value-type
Lex-unary-op
Lex-rest-of-block-comment-fns
Lex-not-dq-or-backslash
Lex-not-star-or-slash
*defparse-aleo-group-table*
Lex-hex-digit
Lex-transition-output
Lex-transition-input
Lex-binary-op
Lex-transition
Lex-mapping-value
Lex-group-program-declaration
Lex-function-output
Lex-function-input
Lex-finalize-output
Lex-finalize-input
Lex-program
Lex-not-star
Lex-mapping-key
Lex-hash-op
*defparse-aleo-repetition-table*
Lex-cast
Lex-call
Lex-unsigned-type
Lex-signed-type
Lex-function
Lex-finalize-type
Lex-finalize
Lex-commit
Lex-is
Lex-register-type
Lex-mapping
Lex-group-entry-type-visibility
Lex-group-bhp-sizes
Lex-arithmetic-literal
Lex-tuple
Lex-safe-nonascii
Lex-literal-type
Lex-instruction
Lex-entry
Lex-arithmetic-type
Lex-struct
Lex-not-lf-or-cr
Lex-commit-op
Lex-ternary
Lex-plain-ws
Lex-operand
Lex-literal
Lex-hash
Lex-group-letter/digit/_
Lex-finalize-command
Lex-escaped-char
Lex-binary
Lex-unary
Lex-string-element
Lex-import
Lex-group-psd-sizes
Lex-group-escaped-lf/not-lf-or-cr
Lex-group-address-public/private
Lex-group-1*-plain-ws/escaped-lf
Lex-unsigned-literal
Lex-repetition-1*6-hex-digit
Lex-group-u64-public/private
Lex-group-locator/identifier
Lex-signed-literal
Lex-scalar-literal
Lex-group-literal
Lex-group-address-char-*-underbar
Lex-field-literal
Lex-command
Lex-assert
Lex-string-literal
Lex-register-access
Lex-program-id
Lex-plaintext-type
Lex-optional-transition-finalize
Lex-integer-literal
Lex-group-ped-sizes
Lex-group-dot-identifier
Lex-group-digit-*-underbar
Lex-group-1-ws-register
Lex-boolean-literal
Lex-locator
Lex-line-comment
Lex-integer-type
Lex-identifier
Lex-group-1-ws-operand
Lex-group-1-operand
Lex-entry-type
Lex-address-literal
Lex-letter
Lex-comment
Lex-block-comment
Lex-assert-op
Lex-uppercase-letter
Lex-repetition-1*-program-declaration
Lex-repetition-1*-address-char-*-underbar
Lex-register
Lex-lowercase-letter
Lex-is-op
Lex-escaped-ws
Lex-escaped-lf
Lex-visible-ascii
Lex-string-type
Lex-scalar-type
Lex-boolean-type
Lex-address-type
Lex-ternary-op
Lex-repetition-*-program-declaration
Lex-repetition-*-plain-ws-or-escaped-lf
Lex-repetition-*-escaped-lf/not-lf-or-cr
Lex-repetition-*-address-char-*-underbar
Lex-repetition-1*-digit-*-underbar
Lex-group-type
Lex-field-type
Lex-repetition-3-operands
Lex-repetition-1*-ws-register
Lex-repetition-1*-ws-operand
Lex-repetition-1*-instruction
Lex-optional-hyphen
Lex-digit
Lex-sp
Lex-repetition-*-transition-output
Lex-repetition-*-transition-input
Lex-repetition-*-string-element
Lex-repetition-*-letter/digit/_
Lex-repetition-*-function-output
Lex-repetition-*-function-input
Lex-repetition-*-finalize-output
Lex-repetition-*-finalize-input
Lex-repetition-*-dot-identifier
Lex-repetition-*-digit-*-underbar
Lex-repetition-1*-command
Lex-lf
Lex-ht
Lex-dq
Lex-cr
Lex-ws
Lex-repetition-*-ws-register
Lex-repetition-*-ws-operand
Lex-repetition-*-instruction
Lex-repetition-2-operands
Lex-repetition-*-plain-ws
Lex-repetition-*-import
Lex-repetition-*-hex-digit
Lex-repetition-*-comment/ws
Lex-repetition-*-command
Lex-repetition-1*-plain-ws
Lex-group-comment/ws
Lex-repetition-*-underbar
Lex-repetition-*-tuple
Lex-repetition-*-entry
Lex-repetition-*-digit
Lex-repetition-1*-tuple
Lex-repetition-1*-digit
Lex-address-char
Lex-group-address-char
Lex-cws
Address-char-nat-p
*defparse-aleo-option-table*
Concrete-syntax
Concrete-syntax
Leo
Bigmems
Builtins
Execloader
Solidity
Paco
Concurrent-programs
Bls12-377-curves
Debugging
Std
Community
Proof-automation
Macro-libraries
ACL2
Interfacing-tools
Hardware-verification
Software-verification
Math
Testing-utilities
Early-version
Parser
A parser of Aleo instructions.
This is work in progress.
Subtopics
Lex-record
Parse a
record
.
Lex-group-escaped-char-body
Parse a
( dq / "\" / "/" / %s"n" / %s"r" / %s"t" / %s"b" / %s"f" / %s"u" "{" 1*6hex-digit "}" )
.
Lex-group-instruction-body
Parse a
( unary / binary / ternary / is / assert / commit / hash / cast / call )
.
Lex-increment
Parse a
increment
.
Lex-decrement
Parse a
decrement
.
Lex-value-type
Parse a
value-type
.
Lex-unary-op
Parse a
unary-op
.
Lex-rest-of-block-comment-fns
Mutually recursive part of block comment lexing.
Lex-not-dq-or-backslash
Parse a
not-dq-or-backslash
.
Lex-not-star-or-slash
Parse a
not-star-or-slash
.
*defparse-aleo-group-table*
Table of group parsing functions.
Lex-hex-digit
Parse a
hex-digit
.
Lex-transition-output
Parse a
transition-output
.
Lex-transition-input
Parse a
transition-input
.
Lex-binary-op
Lex a
binary-op
.
Lex-transition
Parse a
transition
.
Lex-mapping-value
Parse a
mapping-value
.
Lex-group-program-declaration
Parse a
( mapping / struct / record / function / transition )
.
Lex-function-output
Parse a
function-output
.
Lex-function-input
Parse a
function-input
.
Lex-finalize-output
Parse a
finalize-output
.
Lex-finalize-input
Parse a
finalize-input
.
Lex-program
Parse a
program
.
Lex-not-star
Parse a
not-star
.
Lex-mapping-key
Parse a
mapping-key
.
Lex-hash-op
Parse a
hash-op
.
*defparse-aleo-repetition-table*
Table of repetition parsing functions.
Lex-cast
Parse a
cast
.
Lex-call
Parse a
call
.
Lex-unsigned-type
Parse a
unsigned-type
.
Lex-signed-type
Parse a
signed-type
.
Lex-function
Parse a
function
.
Lex-finalize-type
Parse a
finalize-type
.
Lex-finalize
Parse a
finalize
.
Lex-commit
Parse a
commit
.
Lex-is
Parse a
is
.
Lex-register-type
Parse a
register-type
.
Lex-mapping
Parse a
mapping
.
Lex-group-entry-type-visibility
Parse a
( %s".constant" / %s".public" / %s".private" )
.
Lex-group-bhp-sizes
Parse a
( "256" / "512" / "768" / "1024" )
.
Lex-arithmetic-literal
Parse a
arithmetic-literal
.
Lex-tuple
Parse a
tuple
.
Lex-safe-nonascii
Parse a
safe-nonascii
.
Lex-literal-type
Parse a
literal-type
.
Lex-instruction
Parse a
instruction
.
Lex-entry
Parse a
entry
.
Lex-arithmetic-type
Parse a
arithmetic-type
.
Lex-struct
Parse a
struct
.
Lex-not-lf-or-cr
Parse a
not-lf-or-cr
.
Lex-commit-op
Parse a
commit-op
.
Lex-ternary
Parse a
ternary
.
Lex-plain-ws
Parse a
plain-ws
.
Lex-operand
Parse a
operand
.
Lex-literal
Parse a
literal
.
Lex-hash
Parse a
hash
.
Lex-group-letter/digit/_
Parse a
( letter / digit / "_" )
.
Lex-finalize-command
Parse a
finalize-command
.
Lex-escaped-char
Parse a
escaped-char
.
Lex-binary
Parse a
binary
.
Lex-unary
Parse a
unary
.
Lex-string-element
Parse a
string-element
.
Lex-import
Parse a
import
.
Lex-group-psd-sizes
Parse a
( "2" / "4" / "8" )
.
Lex-group-escaped-lf/not-lf-or-cr
Parse a
( escaped-lf / not-lf-or-cr )
.
Lex-group-address-public/private
Parse a
( %s"address.public" / %s"address.private" )
.
Lex-group-1*-plain-ws/escaped-lf
Parse a
( 1*plain-ws / escaped-lf )
.
Lex-unsigned-literal
Parse a
unsigned-literal
.
Lex-repetition-1*6-hex-digit
Lex a
1*6hex-digit
.
Lex-group-u64-public/private
Parse a
( %s"u64.public" / %s"u64.private" )
.
Lex-group-locator/identifier
Parse a
( locator / identifier )
.
Lex-signed-literal
Parse a
signed-literal
.
Lex-scalar-literal
Parse a
scalar-literal
.
Lex-group-literal
Parse a
group-literal
.
Lex-group-address-char-*-underbar
Parse a
( address-char *"_" )
.
Lex-field-literal
Parse a
field-literal
.
Lex-command
Parse a
command
.
Lex-assert
Parse a
assert
.
Lex-string-literal
Parse a
string-literal
.
Lex-register-access
Parse a
register-access
.
Lex-program-id
Parse a
program-id
.
Lex-plaintext-type
Parse a
plaintext-type
.
Lex-optional-transition-finalize
Parse a
[ finalize-command finalize ]
.
Lex-integer-literal
Parse a
integer-literal
.
Lex-group-ped-sizes
Parse a
( "64" / "128" )
.
Lex-group-dot-identifier
Parse a
( "." identifier )
.
Lex-group-digit-*-underbar
Parse a
( digit *"_" )
.
Lex-group-1-ws-register
Parse a
( ws register )
.
Lex-boolean-literal
Parse a
boolean-literal
.
Lex-locator
Parse a
locator
.
Lex-line-comment
Parse a
line-comment
.
Lex-integer-type
Parse a
integer-type
.
Lex-identifier
Parse a
identifier
.
Lex-group-1-ws-operand
Parse a
( ws operand )
.
Lex-group-1-operand
Parse a
( operand ws )
.
Lex-entry-type
Parse a
entry-type
.
Lex-address-literal
Parse a
address-literal
.
Lex-letter
Parse a
letter
.
Lex-comment
Parse a
comment
.
Lex-block-comment
Parse a
block-comment
.
Lex-assert-op
Parse a
assert-op
.
Lex-uppercase-letter
Parse a
uppercase-letter
.
Lex-repetition-1*-program-declaration
Lex
1*( mapping / struct / record / function / transition )
.
Lex-repetition-1*-address-char-*-underbar
Lex
1*( address-char *"_" )
.
Lex-register
Parse a
register
.
Lex-lowercase-letter
Parse a
lowercase-letter
.
Lex-is-op
Parse a
is-op
.
Lex-escaped-ws
Parse a
escaped-ws
.
Lex-escaped-lf
Parse a
escaped-lf
.
Lex-visible-ascii
Parse a
visible-ascii
.
Lex-string-type
Parse a
string-type
.
Lex-scalar-type
Parse a
scalar-type
.
Lex-boolean-type
Parse a
boolean-type
.
Lex-address-type
Parse a
address-type
.
Lex-ternary-op
Parse a
ternary-op
.
Lex-repetition-*-program-declaration
Parse a
*( mapping / struct / record / function / transition )
.
Lex-repetition-*-plain-ws-or-escaped-lf
Parse a
*( 1*plain-ws / escaped-lf )
.
Lex-repetition-*-escaped-lf/not-lf-or-cr
Parse a
*( escaped-lf / not-lf-or-cr )
.
Lex-repetition-*-address-char-*-underbar
Parse a
*( address-char *"_" )
.
Lex-repetition-1*-digit-*-underbar
Lex
1*( digit *"_"
.
Lex-group-type
Parse a
group-type
.
Lex-field-type
Parse a
field-type
.
Lex-repetition-3-operands
Lex
3( operand ws )
.
Lex-repetition-1*-ws-register
Lex
1*( ws register )
.
Lex-repetition-1*-ws-operand
Lex
1*( ws operand )
.
Lex-repetition-1*-instruction
Lex
1*instruction
.
Lex-optional-hyphen
Parse a
[ "-" ]
.
Lex-digit
Parse a
digit
.
Lex-sp
Parse a
sp
.
Lex-repetition-*-transition-output
Parse a
*transition-output
.
Lex-repetition-*-transition-input
Parse a
*transition-input
.
Lex-repetition-*-string-element
Parse a
*string-element
.
Lex-repetition-*-letter/digit/_
Parse a
*( letter / digit / "_" )
.
Lex-repetition-*-function-output
Parse a
*function-output
.
Lex-repetition-*-function-input
Parse a
*function-input
.
Lex-repetition-*-finalize-output
Parse a
*finalize-output
.
Lex-repetition-*-finalize-input
Parse a
*finalize-input
.
Lex-repetition-*-dot-identifier
Parse a
*( "." identifier )
.
Lex-repetition-*-digit-*-underbar
Parse a
*( digit *"_" )
.
Lex-repetition-1*-command
Lex
1*command
.
Lex-lf
Parse a
lf
.
Lex-ht
Parse a
ht
.
Lex-dq
Parse a
dq
.
Lex-cr
Parse a
cr
.
Lex-ws
Parse a
ws
.
Lex-repetition-*-ws-register
Parse a
*( ws register )
.
Lex-repetition-*-ws-operand
Parse a
*( ws operand )
.
Lex-repetition-*-instruction
Parse a
*instruction
.
Lex-repetition-2-operands
Lex
2( operand ws )
.
Lex-repetition-*-plain-ws
Parse a
*plain-ws
.
Lex-repetition-*-import
Parse a
*import
.
Lex-repetition-*-hex-digit
Parse a
*hex-digit
.
Lex-repetition-*-comment/ws
Lex
*( comment / ws )
.
Lex-repetition-*-command
Parse a
*command
.
Lex-repetition-1*-plain-ws
Lex
1*plain-ws
.
Lex-group-comment/ws
Lex
( comment / ws )
.
Lex-repetition-*-underbar
Lex zero or more underbars.
Lex-repetition-*-tuple
Parse a
*tuple
.
Lex-repetition-*-entry
Parse a
*entry
.
Lex-repetition-*-digit
Parse a
*digit
.
Lex-repetition-1*-tuple
Lex
1*tuple
.
Lex-repetition-1*-digit
Lex
1*digit
.
Lex-address-char
Lex an
address-char
.
Lex-group-address-char
Lex-cws
Address-char-nat-p
*defparse-aleo-option-table*
Table of option parsing functions.