Les listes sont dynamiques. Vous pouvez facilement ajouter ou supprimer des éléments d'une liste si nécessaire. Vous utilisez la fonction Insérer ou la fonction Insérer dans pour ajouter des éléments à une liste. Par défaut, les éléments sont ajoutés en fin de liste. Vous pouvez éventuellement inclure un argument pour spécifier la position de l'élément que vous ajoutez. La fonction Insert renvoie une nouvelle liste avec l'élément ajouté mais ne modifie pas la liste d'origine. La fonction Insérer dans modifie la liste d'origine mais ne renvoie PAS une nouvelle liste - c'est ce qu'on appelle agir "sur place". De même, vous utilisez la fonction Supprimer ou la fonction Supprimer de pour supprimer des éléments d'une liste. Par défaut, les éléments sont supprimés de la fin de la liste. Vous pouvez éventuellement inclure un argument pour spécifier la position de l'élément que vous souhaitez supprimer. Un autre argument facultatif spécifie le nombre d'éléments à supprimer. La fonction Supprimer renvoie une nouvelle liste sans les éléments supprimés mais ne modifie pas la liste d'origine. La fonction Supprimer de, comme la fonction Insérer dans, agit "sur place", de sorte qu'elle modifie la liste d'origine mais ne renvoie pas de nouvelle liste. JMP évalue généralement le code immédiatement, mais il n'évalue pas automatiquement les éléments d'une liste. Ce report peut être utile : vous pouvez collecter des éléments dans une liste, puis les examiner pour détecter d'éventuelles erreurs et apporter les modifications nécessaires avant l'évaluation. Ensuite, vous pouvez utiliser la fonction Eval List pour créer une nouvelle liste dans laquelle chaque élément est le résultat de l'évaluation de l'élément correspondant dans la liste d'origine, mais la liste d'origine reste inchangée.