This method can be written more simply like this:
```
fun {LogicList2ASTList Fields}
   case Fields
   of nil then NIL
   [] H|T then fRecord(fAtom('|' unit) [H {LogicList2ASTList T}])
   end
end
```
and it will support `nil`.

The compiler should be able to tail-call eliminate that method. And if it doesn't, well, who cares? It's not like there will be dozens of elements in that list.