Shortcodes: Best practice for named parameters quoting?

My understanding is that shortcodes only accept strings:

Shortcode parameters mimic HTTP parameters; i.e. all strings and the datatype is contextual.

Given this shortcode:
{{with .Params }}{{printf "%#v " .}}{{end}}

{{< get-parameters-test-01 42 "foo bar" >}}
we get:
[]string{"42", "foo bar"}
all fine.

But with
{{< get-parameters-test-01 arg1=42 arg2="foo bar" >}}
=>
map[string]string{"arg1":"foo bar"}

the 42 is dropped and “foo bar” is assigned to arg1. arg2 gets dropped as well.

With
{{< get-parameters-test-01 arg1="42" arg2="foo bar" >}}
we get as expected:
map[string]string{"arg1":"42", "arg2":"foo bar"}

Maybe the above is kind of special as
{{< get-parameters-test-01 arg1=42 arg2=24 >}}
throws a hugo error:

unterminated quoted string in shortcode parameter-argument: '42 arg2=24 >}}

So “best practice” would be to always quote using " the values for named parameters?