Concurrent Clean : CleanJ : List Comprehension -> select命令
の動作がおかしくなっていることに気づいた。
Start = (fc "abc", fi {1,2,3}, gc ['abc'], gi [1,2,3])
fc :: {#Char} -> [Char]
fc t = [x\\x<-:t]
fi :: {#Int} -> [Int]
fi t = [x\\x<-:t]
gc :: [Char] -> {#Char}
gc t = {x\\x<-t}
gi :: [Int] -> {#Int}
gi t = {x\\x<-t}の結果が、
(['a'],[1],"abc",{1,2,3})になってしまっている。
-
-
- -
-
select命令がおかしかったらしい。
select命令は、取り出す配列の要素のインデックスがB-Stackのトップに置かれているが、これを、getしていたのをpopに変更したところ、上手く動作するようになった。