diff --git a/README.md b/README.md index 2259da2a8..9d6f13735 100644 --- a/README.md +++ b/README.md @@ -37,7 +37,8 @@ What does Prog8 provide? - small program boilerplate/compilersupport overhead - programs can be run multiple times without reloading because of automatic variable (re)initializations. - conditional branches -- 'when' statement to provide a concise jump table alternative to if/elseif chains +- ``when`` statement to provide a concise jump table alternative to if/elseif chains +- ``in`` expression for concise and efficient multi-value/containment check - many built-in functions such as ``sin``, ``cos``, ``rnd``, ``abs``, ``min``, ``max``, ``sqrt``, ``msb``, ``rol``, ``ror``, ``swap``, ``sort`` and ``reverse`` - various powerful built-in libraries to do I/O, number conversions, graphics and more - convenience abstractions for low level aspects such as ZeroPage handling, program startup, explicit memory addresses diff --git a/docs/source/index.rst b/docs/source/index.rst index 11b29bb70..0b6bbfbf6 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -54,6 +54,9 @@ Language features - Subroutines with parameters and return values - Complex nested expressions are possible - Variables are allocated statically +- Conditional branches to map directly on processor branch instructions +- ``when`` statement to avoid if-else chains +- ``in`` expression for concise and efficient multi-value/containment test - Nested subroutines can access variables from outer scopes to avoids the overhead to pass everything via parameters - Variable data types include signed and unsigned bytes and words, arrays, strings. - Floating point math also supported if the target system provides floating point library routines (C64 and Cx16 both do).