title: In Solidity, can the constructor function have the same name as the contract?
body: <p>According to this <a href="https://programtheblockchain.com/posts/2017/12/08/writing-a-very-simple-smart-contract/" rel="nofollow noreferrer">article</a>, the constructor - or initialization - function has the same name as the contract.  However, the remix compiler returns an error when I have a function with the same name, saying "defining constructors as functions with the same name as the contract is deprecated.  Use "constructor(...) { ... }" instead."</p>
  
  <p>So, my question is, is using the same name in this situation something that should simply be avoided?  (Perhaps it is an out of date practice?)</p>