# Map - avram - a virtual machine code interpreter
avram - a virtual machine code interpreter

##### 2.7.13.1 Map

A virtual code application in the following form causes a function with non-`nil` virtual code f to be applied to every item in a list.

T22
  [[`map`]] f = `((nil,nil),((nil,`f`),nil))`

The `map` mnemonic is used in `silly` to express applications in this form as `map` f. This operation is also well known to lisp users and functional programmers. The semantics is determined by these two operator properties (for non-`nil` f).

P24
  ([[`map`]] f) `nil` = `nil`
P25
  ([[`map`]] f) `(`x`,`y`)` = `(`f x`,(`[[`map`]] f`)` y`)`

Note that the representation of lists described in Representation of Numeric and Textual Data, is assumed.