with names identical to the named parameters, you can use a shortcut that will use the name of the variable for the named parameter: my $first-name = "Sam"; my $last-name = "Ashe"; my $age = 42; my $p0 = Person.new( :$first-name, :$last-name, :$age ); Ruby In Ruby, constructors are created by defining a method called initialize. This method is executed to initialize each new instance. irb(main):001:0> class ExampleClass irb(main):002:1> def initialize irb(main):003:2> puts "Hello there" irb(main):004:2> end irb(main):005:1> end => nil irb(main):006:0> ExampleClass.new Hello there => #<ExampleClass:0x007fb3f4299118> Visual Basic .NET In Visual Basic .NET, constructors use a method declaration with the name "New". Class Foobar Private strData As String ' Constructor Public Sub New(ByVal someParam As String) strData = someParam End Sub End Class ' code somewhere else ' instantiating an object with the above constructor Dim foo As New Foobar(".NET") See also RAII Allocation site Creational pattern Destructor Global constructor in C++, and its C counterpart, ((constructor)) function attribute Notes References Method (computer programming) Programming language comparisons