Well, if the name is only of interest to the HMI, it's easy. ASCII characters are each represented by an 8-digit integer, so two characters will fit in a 16-bit PLC register. Every HMI that I know of will write strings to a range of registers. If you have a text input or display on the screen that says "MyRecipe" or whatever, the HMI will allow you to specify a starting register and range size (remember two characters per register).
So what I do with recipes (especially in a table-based as opposed to tag-based controller) is this - All recipe settings, numeric, bit, and string, are stored in a contiguous block of memory, say 40 registers or whatever you need. Then there is recipe storage in the PLC with "n" consecutive 40-register blocks to store "n" recipes. If you want to save the current setup as a recipe, you just do a block copy using pointers to the desired recipe slot. To load a saved recipe, just do the reverse. I usually don't bother creating UI to edit recipes in the storage slots, you can only make changes to the current setup, then save that to recipe storage or recall from storage to the current setup.