MPL Documentation

NEW

is used to request a chunk of memory that is reserved for your application, usually to how a structure of data.

Do not mix, New and FreeMem, or GetMem and Dispose, internally they are using different regions of memory.
Type
   PUserData = ^UserData;
   UserData = Packed Record
      Username:String[36];
      Password:String[40];
{.. more fields here ..}

var
   UserRec=PUserData;

Begin
   New(UserRec);
   UserRec^.Username:='Ozz Nixon';
   UserRec^.Password:=SHA1('MySecret');
{.. more stuff ..}
   // When finished:
   Dispose(UserRec);
End.
Source: Reserved Words
See Also:
SYSTEM getmem, SYSTEM freemem, dispose.