在sicstus prolog中将字符串转换为列表

在sicstus prolog中将字符串转换为列表,prolog,Prolog,我正在做一个象棋一样的游戏,为了进行各种移动,我想读取一些用户输入,比如“11-12”,将位于“坐标”1-1的棋子移动到位置1-2。我想将字符串“11-12”转换为类似于[1,1,-,1,2]的列表。我想以这样的方式结束: ... read(Play), convert_play_to_list_L(Play, L), element_at(StartX,L,1), element_at(StartY,L,2), element_at(EndX,L,3), element_at(EndY,L,4

我正在做一个象棋一样的游戏,为了进行各种移动,我想读取一些用户输入,比如“11-12”,将位于“坐标”1-1的棋子移动到位置1-2。我想将字符串“11-12”转换为类似于[1,1,-,1,2]的列表。我想以这样的方式结束:

...
read(Play),
convert_play_to_list_L(Play, L),
element_at(StartX,L,1),
element_at(StartY,L,2),
element_at(EndX,L,3),
element_at(EndY,L,4),
...
例如:
Play=“1112”,L=[1,1,1,2],StartX=1,StartY=1,EndX=1,EndY=2

最常用的方法是使用常规术语。也就是说,键入
11-22.
“1112”。
而不是不带点的。但是如何将其转换为列表?有关更多信息,请参阅。也就是说,它已经是一个列表了。我仍然不明白在阅读之后如何将“播放”变成一个列表。它已经是一个列表了!