Fatti
La controversia oppone Karl Staub, un impiegato comunale, alla società Treuvag, Treuwerte- und Verwaltungs-AG e alla società Brunner, Möbel- und Innenausbau AG. Il 6 ottobre 1956, Staub ha concluso con la Treuvag un "contratto di risparmio per l'acquisto di mobili" con il quale si impegnava a risparmiare 5'000 franchi per poter successivamente acquistare mobili, tappeti, biancheria per la casa e tende presso la Brunner o un altro fornitore designato. Staub ha effettuato un primo versamento nel novembre 1956, poi ha rifiutato di proseguire i pagamenti, ritenendo che il contratto fosse nullo per immoralità. Le società Treuvag e Brunner hanno quindi agito in giudizio per ottenere il pagamento delle rate scadute.Legge
Il DTF ritiene che il contratto controverso costituisca una combinazione di un "contratto di risparmio" tra Staub e la Treuvag e di un "precontratto di acquisto" tra Staub e la Brunner. Sebbene il contratto non possa essere qualificato in modo preciso, il suo contenuto è valido nei limiti della legge (art. 19 cpv. 1 CO).
Per quanto riguarda la determinazione dei beni da acquistare e del loro prezzo, il DTF ritiene che tali elementi siano sufficientemente determinabili. Gli oggetti sono definiti come mobili, tappeti, biancheria per la casa e tende che Staub potrà scegliere tra l'assortimento dei fornitori designati. Quanto al prezzo, esso è fissato con riferimento ai prezzi di vendita al contante esposti nei locali espositivi o riportati nelle liste dei prezzi del settore.
Il DTF respinge anche l'argomento di Staub secondo cui la possibilità di trasferire i diritti…