Asignación de lista paralela en idioma rojo

Tengo 2 listas:

alist: [a b c d]
blist: [1 2 3 4]

(En realidad son largas listas). ¿Cómo puedo asignar variables en una lista a los valores correspondientes en blist de una vez? Por lo tanto, a se convierte en 1, b se convierte en 2 y así sucesivamente.

Lo intenté:

foreach i alist j blist [i: j]

Pero da el siguiente error:

*** Script Error: j has no value
*** Where: foreach
*** Stack: 

También probé:

i: 1
while [true] [ 
    if i > (length? alist) [break]
    alist/i: blist/i  
    i: i + 1
]

Pero tampoco funciona:

*** Script Error: cannot set none in path alist/i:
*** Where: set-path
*** Stack: 

alist/i yblist/i regresonone (al verificar con el comando de impresión).

Preguntas similares también existen para otros idiomas, por ejemplo:Asignación de matriz paralela en PHP yAsignación paralela en Java? . Gracias por tu ayuda.

Respuestas a la pregunta(1)

Su respuesta a la pregunta