When trying to parse the parameters to a Form with action=POST I run into this strange behaviour:

crew(Arg, N) ->
  % Name = f("crew_~B", [N]),
    Name = lists:concat(io_lib:format("~s~B", ["crew_",N])),

    case yaws_api:getvar(Arg, Name) of
{ok, Member} -> #crewmember{naam = Member};
_ -> Name

My initial guess was to generate key names with f(...) but that lead to this output where the case matches the _ clause and it shows up as 

When I use the lists:concat it does match the {ok, Member} clause. It gives the expected:

What is going on here? When is a string a string?

Regards, Guido.