The following example iterates over each word in $(list).
In each iteration, first the variable with the name word is set to the value of the word of the iteration, and then, the text $(word)-$(word) is expanded.
Thus, this makefile prints foo-foo bar-bar baz-baz when invoked.
list = foo bar baz
list_2 = $(foreach word,$(list),$(word)-$(word))
all:
@echo $(list_2)