# HG changeset patch
# User sourcer
# Date 1318367053 -10800
# Node ID df71a307ef9b269a32dff81e6dc1af63b71d2aea
# Parent  74c27daf2e7ba91c8cb5a43446b6835fcac68cf3
new constructor syntax
diff -r 74c27daf2e7b -r df71a307ef9b .includepath
--- a/.includepath	Wed Oct 05 16:23:45 2011 +0400
+++ b/.includepath	Wed Oct 12 00:04:13 2011 +0300
@@ -1,5 +1,5 @@
-
-
-  
-
-
+
+
+  
+
+
diff -r 74c27daf2e7b -r df71a307ef9b Lib/IMPL/lang.pm
--- a/Lib/IMPL/lang.pm	Wed Oct 05 16:23:45 2011 +0400
+++ b/Lib/IMPL/lang.pm	Wed Oct 12 00:04:13 2011 +0300
@@ -38,6 +38,8 @@
 		  &property
 		  &static
 		  &property
+		  &ctor
+		  &base
 		  )
 	],
 	compare => [
@@ -117,6 +119,24 @@
 	$class->static_accessor( $name, $value );
 }
 
+sub ctor(&;$) {
+	my ( $code, $base ) = @_;
+	no strict 'refs';
+	my $class = caller;
+	
+	if ($code) {
+		*{"${class}::CTOR"} = $code;
+	}
+	
+	if (ref $base eq 'HASH') {
+		%{"${class}::CTOR"} = %$base;
+	}
+}
+
+sub base($) {
+	return shift;
+}
+
 sub equals {
 	if (defined $_[0]) {
 		return 0 if (not defined $_[1]);