TOKEN with an address generated from a Smart Contract creation

Tokens on Algorand do not require smart contracts. You can read how to create, transfer, etc here: Algorand Standard Assets (ASAs) - Algorand Developer Portal

That said if you want to use logic(smart contract) with a token you can do that. Take a look at this ARC: ARCs/arc-0020.md at main · algorandfoundation/ARCs · GitHub
The reference implementation has a great readme: GitHub - algorandlabs/smart-asa: Smart ASA reference implementation