Index: TODO =================================================================== diff -u -r086816f529d19d7ea2c7de455cbfe7c0d2f46643 -r89376e0f64856bb395fdb4407c9646787545a08b --- TODO (.../TODO) (revision 086816f529d19d7ea2c7de455cbfe7c0d2f46643) +++ TODO (.../TODO) (revision 89376e0f64856bb395fdb4407c9646787545a08b) @@ -87,7 +87,7 @@ to achiev conformance with ::xotcl::forward and ::xotcl::method --per-obejct +-per-object nach methodName: vor methodName: alias forward method methodproperty setter @@ -582,7 +582,7 @@ - removed obsolete generic/xotclAppInit.c - changed loading method in xotclsh from Xotcl_Init() to Tcl_PkgRequire() -- updating tcl.m4 to the actual verison (TEA 3.7) +- updating tcl.m4 to the actual version (TEA 3.7) - minor cleanup (varresolution test and comment) - defined "xotcl::current" as synonym for "::xotcl::self" @@ -1355,8 +1355,13 @@ in respect to fully-qualified names ::nsf::dispatch $obj ::nsf::cmd::ObjectInfo2::hastype $class ::nsf::parametercheck object,type=$class $obj - extended regression test (paramters.tcl) + extended regression test (parameters.tcl) +- renamed "parameter" into "attributes" in nx +- renamed "info parameter" into "info attributes" in nx +- updated migration guide +- fixed several common typos + TODO: - subcmd * handle sucmd for other method factories Index: doc/next-migration.html =================================================================== diff -u -rd168a26bce713de8daa5bbe79d740926e961c5bc -r89376e0f64856bb395fdb4407c9646787545a08b --- doc/next-migration.html (.../next-migration.html) (revision d168a26bce713de8daa5bbe79d740926e961c5bc) +++ doc/next-migration.html (.../next-migration.html) (revision 89376e0f64856bb395fdb4407c9646787545a08b) @@ -389,6 +389,11 @@ Object create o {
  :attribute oa2
}
+
+ Class create C \
   -attributes {
+     x
+     {y 1}
+
}
@@ -636,7 +641,7 @@ -

Object Parameters

+

Object Parameters/Attributes

@@ -658,7 +663,7 @@
XOTclNext Scripting Language
- Class create Foo -parameter {a {b 1}}

+ Class create Foo -attributes {a {b 1}}

# Create instance of the class Foo
Foo create f1 -a 0

# Object f1 has a == 0 and b == 1
@@ -716,7 +721,7 @@ # ascii, boolean, control, digit, double, false, graph,
# integer, lower, print, punct, space, true, upper,
# wordchar, xdigit

- Class create Foo -parameter {
+ Class create Foo -attributes {
   a:boolean
   {b:integer 1}
}
@@ -734,7 +739,7 @@
# Required parameter
- Class create Foo -parameter {
+ Class create Foo -attributes {
   a:boolean,required
   {b:integer 1}
}
@@ -752,7 +757,7 @@
# Required parameter
- Class create Foo -parameter {
+ Class create Foo -attributes {
   ...
   ints:integer,multivalued
   {objs:object,multivalued ""}
@@ -1444,6 +1449,6 @@
- Last modified: Fri Sep 10 10:36:34 CEST 2010 + Last modified: Mon Sep 13 16:07:33 CEST 2010 Index: doc/tutorial2.html =================================================================== diff -u -rd168a26bce713de8daa5bbe79d740926e961c5bc -r89376e0f64856bb395fdb4407c9646787545a08b --- doc/tutorial2.html (.../tutorial2.html) (revision d168a26bce713de8daa5bbe79d740926e961c5bc) +++ doc/tutorial2.html (.../tutorial2.html) (revision 89376e0f64856bb395fdb4407c9646787545a08b) @@ -3788,7 +3788,7 @@

XOTcl provides a short-hand notation for creating attribute slots, which is backward compatible for the most important options of XOTcl -verison prior to 1.5.0. Instead of writing

+version prior to 1.5.0. Instead of writing

   Class Car -slots {
Index: library/nx/nx.nxd
===================================================================
diff -u -r25f4f3c883ff0021b8564377f6658afb69c346c8 -r89376e0f64856bb395fdb4407c9646787545a08b
--- library/nx/nx.nxd	(.../nx.nxd)	(revision 25f4f3c883ff0021b8564377f6658afb69c346c8)
+++ library/nx/nx.nxd	(.../nx.nxd)	(revision 89376e0f64856bb395fdb4407c9646787545a08b)
@@ -1,3 +1,4 @@
+# -*- Tcl -*-
 # @package ::nx
 #
 # The Next Scripting Language is a compact and expressive object-oriented language
@@ -592,7 +593,7 @@
 #
 # Specifies superclasses for a given class. As a setter ***
 # generell: setter kann hier mit der methode namens "setter"
-# verwechselt werden; wir sollten hier die paramter syntax
+# verwechselt werden; wir sollten hier die parameter syntax
 # anfuehren, die allerdings in zwei varianten kommt:
 #{{{
 #  obj superclass ?value?
Index: library/nx/nx.tcl
===================================================================
diff -u -r1a5cc7b02f162167f0d7ac22317b1711358673b8 -r89376e0f64856bb395fdb4407c9646787545a08b
--- library/nx/nx.tcl	(.../nx.tcl)	(revision 1a5cc7b02f162167f0d7ac22317b1711358673b8)
+++ library/nx/nx.tcl	(.../nx.tcl)	(revision 89376e0f64856bb395fdb4407c9646787545a08b)
@@ -898,7 +898,7 @@
     #puts stderr "... objectparameter [::nsf::current object]"
     set parameterdefinitions [::nsf::parametersFromSlots [::nsf::current object]]
     if {[::nsf::is class [::nsf::current object]]} {
-      lappend parameterdefinitions -parameter:method,optional
+      lappend parameterdefinitions -attributes:method,optional
     }
     lappend parameterdefinitions \
         -noinit:method,optional,noarg \
@@ -1202,7 +1202,7 @@
   # Define method "parameter" for backward 
   # compatibility and convenience
   ############################################
-  Class public method parameter arglist {
+  Class public method attributes arglist {
   
     foreach arg $arglist {
       Attribute createFromParameterSyntax [::nsf::current object] {*}$arg
@@ -1211,7 +1211,7 @@
     ::nsf::setvar $slot __parameter $arglist
   }
 
-  Class method "info parameter" {} {
+  Class method "info attributes" {} {
     set slot [::nx::slotObj [::nsf::current object]]
     if {[::nsf::existsvar $slot __parameter]} {
       return [::nsf::setvar $slot __parameter]
Index: library/serialize/serializer.tcl
===================================================================
diff -u -rd168a26bce713de8daa5bbe79d740926e961c5bc -r89376e0f64856bb395fdb4407c9646787545a08b
--- library/serialize/serializer.tcl	(.../serializer.tcl)	(revision d168a26bce713de8daa5bbe79d740926e961c5bc)
+++ library/serialize/serializer.tcl	(.../serializer.tcl)	(revision 89376e0f64856bb395fdb4407c9646787545a08b)
@@ -140,7 +140,7 @@
   # Serializer Class, independent from Object System
   ###########################################################################
 
-  Class create Serializer -parameter {ignoreVarsRE} {
+  Class create Serializer -attributes {ignoreVarsRE} {
     
     :method ignore args {
       # Ignore the objects passed via args.
Index: library/xotcl/doc/Announce-1.5.4
===================================================================
diff -u -re8715774bf274fbeadabf08a5a0777a968f71148 -r89376e0f64856bb395fdb4407c9646787545a08b
--- library/xotcl/doc/Announce-1.5.4	(.../Announce-1.5.4)	(revision e8715774bf274fbeadabf08a5a0777a968f71148)
+++ library/xotcl/doc/Announce-1.5.4	(.../Announce-1.5.4)	(revision 89376e0f64856bb395fdb4407c9646787545a08b)
@@ -12,7 +12,7 @@
     * Improved code quality: 
 
       + provided compatibility with Tcl 8.5 
-          (currently, this requires the verison of Tcl 8.5 
+          (currently, this requires the version of Tcl 8.5 
          from CVS head, including the changes for VarReform
          (For details, see http://groups.google.at/group/comp.lang.tcl/browse_frm/thread/bff391a7f1bd8f6c/3f214d088a28ed13?hl=de#3f214d088a28ed13)
 
Index: library/xotcl/library/actiweb/WebAgent.xotcl
===================================================================
diff -u -rf3b7952aabc9e4f9079febd1f5b7f5fb833fd50c -r89376e0f64856bb395fdb4407c9646787545a08b
--- library/xotcl/library/actiweb/WebAgent.xotcl	(.../WebAgent.xotcl)	(revision f3b7952aabc9e4f9079febd1f5b7f5fb833fd50c)
+++ library/xotcl/library/actiweb/WebAgent.xotcl	(.../WebAgent.xotcl)	(revision 89376e0f64856bb395fdb4407c9646787545a08b)
@@ -1,4 +1,4 @@
-# $Id: WebAgent.xotcl,v 1.3 2005/09/09 21:09:01 neumann Exp $
+# -*- Tcl -*-
 
 package provide xotcl::actiweb::webAgent 0.8
 
@@ -13,7 +13,7 @@
 
     #
     # Web Agent are special agents that allow us to define another
-    # object in the paramter webfacade as a facade for the web agent
+    # object in the parameter webfacade as a facade for the web agent
     # itself and the sub-system shielded by the web agent with an interface
     # for agents
     #
Index: library/xotcl/library/xotcl2.tcl
===================================================================
diff -u -rd168a26bce713de8daa5bbe79d740926e961c5bc -r89376e0f64856bb395fdb4407c9646787545a08b
--- library/xotcl/library/xotcl2.tcl	(.../xotcl2.tcl)	(revision d168a26bce713de8daa5bbe79d740926e961c5bc)
+++ library/xotcl/library/xotcl2.tcl	(.../xotcl2.tcl)	(revision 89376e0f64856bb395fdb4407c9646787545a08b)
@@ -285,7 +285,7 @@
   Object instproc self {} {::xotcl::self}
 
   #
-  # object-parameter definition, backwards compatible
+  # objectparameter definition, backwards compatible
   #
   ::xotcl::Object instproc objectparameter {} {
     set parameterdefinitions [::nsf::parametersFromSlots [self]]
@@ -297,7 +297,7 @@
   #
   # Use parameter definition from next 
   # (same with classInfo parameter, see below)
-  ::nsf::alias ::xotcl::Class parameter ::nsf::classes::nx::Class::parameter
+  ::nsf::alias ::xotcl::Class parameter ::nsf::classes::nx::Class::attributes
 
   # We provide a default value for superclass (when no superclass is
   # specified explicitely) and metaclass, in case they should differ
@@ -563,7 +563,7 @@
 	  {*}[expr {$closure ? "-closure" : ""}] \
 	  {*}$pattern
     }
-    :alias parameter          ::nx::Class::slot::__info::parameter
+    :alias parameter          ::nx::Class::slot::__info::attributes
     :alias slots              ::nx::Object::slot::__info::slots
     :alias subclass           ::nsf::cmd::ClassInfo::subclass
     :alias superclass         ::nsf::cmd::ClassInfo::superclass
@@ -842,7 +842,7 @@
     }
   }
 
-  ::nx::Class create ::xotcl::package -superclass ::xotcl::Class -parameter {
+  ::nx::Class create ::xotcl::package -superclass ::xotcl::Class -attributes {
     provide
     {version 1.0}
     {autoexport {}}
Index: library/xotcl/tests/testx.xotcl
===================================================================
diff -u -rd9b42d77f43db84a9983cc3bbc4124cf0b52df29 -r89376e0f64856bb395fdb4407c9646787545a08b
--- library/xotcl/tests/testx.xotcl	(.../testx.xotcl)	(revision d9b42d77f43db84a9983cc3bbc4124cf0b52df29)
+++ library/xotcl/tests/testx.xotcl	(.../testx.xotcl)	(revision 89376e0f64856bb395fdb4407c9646787545a08b)
@@ -1758,7 +1758,7 @@
     ::errorCheck [a0 procsearch f5] "::A instparametercmd f5" procsearch-4
     ::errorCheck [a0 procsearch f6] "::a0 parametercmd f6" procsearch-6
     ::errorCheck [a0 procsearch set] "::xotcl::Object instcmd set" procsearch-6
-    ::errorCheck [catch {a0 parametercmd f6 puts}] 1 "paramtercmd with wrong args returns error"
+    ::errorCheck [catch {a0 parametercmd f6 puts}] 1 "parametercmd with wrong args returns error"
 
     set mixinResult ""
     i4 moveAgent 5 6
Index: tests/doc.tcl
===================================================================
diff -u -rd168a26bce713de8daa5bbe79d740926e961c5bc -r89376e0f64856bb395fdb4407c9646787545a08b
--- tests/doc.tcl	(.../doc.tcl)	(revision d168a26bce713de8daa5bbe79d740926e961c5bc)
+++ tests/doc.tcl	(.../doc.tcl)	(revision 89376e0f64856bb395fdb4407c9646787545a08b)
@@ -1087,7 +1087,7 @@
   # Most likely, it could be partly solved with a logic for optional
   # first arguments (if the number of actual arguments is 
   # higher than the minimal number of arguments, one could fill optional
-  # paramter up..... but this calculation requires as well the interactions
+  # parameter up..... but this calculation requires as well the interactions
   # with nonpos arguments, which might be values for positional arguments
   # as well.... not, sure, it is worth to invest much time here.
 
Index: tests/object-system.tcl
===================================================================
diff -u -rd9b42d77f43db84a9983cc3bbc4124cf0b52df29 -r89376e0f64856bb395fdb4407c9646787545a08b
--- tests/object-system.tcl	(.../object-system.tcl)	(revision d9b42d77f43db84a9983cc3bbc4124cf0b52df29)
+++ tests/object-system.tcl	(.../object-system.tcl)	(revision 89376e0f64856bb395fdb4407c9646787545a08b)
@@ -98,9 +98,9 @@
 ? {::nsf::is metaclass c1} 0
 ? {c1 info class} ::nx::Object
 
-# basic parameter tests
+# basic attributes tests
 
-Class create C -parameter {{x 1} {y 2}}
+Class create C -attributes {{x 1} {y 2}}
 ? {::nsf::isobject C} 1
 ? {::nsf::isobject C::slot} 1
 ? {C info children} ::C::slot
@@ -113,10 +113,10 @@
 ? {::nsf::isobject X::slot} 1
 
 #? {C::slot info vars} __parameter
-? {C info parameter} {{x 1} {y 2}}
+? {C info attributes} {{x 1} {y 2}}
 
 #? {X::slot info vars} __parameter
-? {X info parameter} {{x 1} {y 2}}
+? {X info attributes} {{x 1} {y 2}}
 
 #
 # tests for the dispatch command
Index: tests/parameters.tcl
===================================================================
diff -u -r086816f529d19d7ea2c7de455cbfe7c0d2f46643 -r89376e0f64856bb395fdb4407c9646787545a08b
--- tests/parameters.tcl	(.../parameters.tcl)	(revision 086816f529d19d7ea2c7de455cbfe7c0d2f46643)
+++ tests/parameters.tcl	(.../parameters.tcl)	(revision 89376e0f64856bb395fdb4407c9646787545a08b)
@@ -19,7 +19,7 @@
 Test case parametercheck {
 
   Object create o1
-  Class create C -parameter {a {b:boolean} {c 1}}
+  Class create C -attributes {a {b:boolean} {c 1}}
   C create c1 
   Class create M
   c1 mixin M
@@ -235,7 +235,7 @@
 #     arg
 # } -- typical object parameters
 #
-# MethodParameterSlot -parameter {type required multivalued noarg arg}
+# MethodParameterSlot -attributes {type required multivalued noarg arg}
 # -- typical method parameters
 
 
@@ -245,11 +245,11 @@
 Test parameter count 10
 Test case objectparameter {
 
-  Class create C -parameter {a {b:boolean} {c 1}}
+  Class create C -attributes {a {b:boolean} {c 1}}
   C create c1
  
   ? {C eval {:objectparameter}} \
-      "-object-mixin:relation,slot=::nx::Class::slot::object-mixin -mixin:relation,arg=class-mixin,slot=::nx::Class::slot::mixin -superclass:relation,slot=::nx::Class::slot::superclass -object-filter:relation,slot=::nx::Class::slot::object-filter -filter:relation,arg=class-filter,slot=::nx::Class::slot::filter -class:relation,slot=::nx::Object::slot::class -parameter:method,optional -noinit:method,optional,noarg -volatile:method,optional,noarg __initcmd:initcmd,optional"
+      "-object-mixin:relation,slot=::nx::Class::slot::object-mixin -mixin:relation,arg=class-mixin,slot=::nx::Class::slot::mixin -superclass:relation,slot=::nx::Class::slot::superclass -object-filter:relation,slot=::nx::Class::slot::object-filter -filter:relation,arg=class-filter,slot=::nx::Class::slot::filter -class:relation,slot=::nx::Object::slot::class -attributes:method,optional -noinit:method,optional,noarg -volatile:method,optional,noarg __initcmd:initcmd,optional"
 
 
 
@@ -263,14 +263,14 @@
 #######################################################
 Test case reclass {
 
-  Class create C -parameter {a {b:boolean} {c 1}}
+  Class create C -attributes {a {b:boolean} {c 1}}
   C create c1
 
   c1 class Object
   ? {c1 eval :objectparameter} \
       "-mixin:relation,arg=object-mixin,slot=::nx::Object::slot::mixin -filter:relation,arg=object-filter,slot=::nx::Object::slot::filter -class:relation,slot=::nx::Object::slot::class -noinit:method,optional,noarg -volatile:method,optional,noarg __initcmd:initcmd,optional"
   
-  Class create D -superclass C -parameter {d:required}
+  Class create D -superclass C -attributes {d:required}
   D create d1 -d 100
   
   ? {d1 eval :objectparameter} \
@@ -282,12 +282,12 @@
 #######################################################
 Test case objparam-mixins {
 
-  Class create C -parameter {a {b:boolean} {c 1}}
-  Class create D -superclass C -parameter {d:required}
+  Class create C -attributes {a {b:boolean} {c 1}}
+  Class create D -superclass C -attributes {d:required}
   D create d1 -d 100
 
-  Class create M -parameter {m1 m2 b}
-  Class create M2 -parameter {b2}
+  Class create M -attributes {m1 m2 b}
+  Class create M2 -attributes {b2}
   D mixin M
   ? {d1 eval :objectparameter} \
       "-b:slot=::M::slot::b -m1:slot=::M::slot::m1 -m2:slot=::M::slot::m2 -d:required,slot=::D::slot::d -a:slot=::C::slot::a {-c:slot=::C::slot::c 1} -mixin:relation,arg=object-mixin,slot=::nx::Object::slot::mixin -filter:relation,arg=object-filter,slot=::nx::Object::slot::filter -class:relation,slot=::nx::Object::slot::class -noinit:method,optional,noarg -volatile:method,optional,noarg __initcmd:initcmd,optional" \
@@ -319,8 +319,8 @@
 
 Test case passed-arguments {
 
-  Class create C -parameter {a {b:boolean} {c 1}}
-  Class create D -superclass C -parameter {d:required}
+  Class create C -attributes {a {b:boolean} {c 1}}
+  Class create D -superclass C -attributes {d:required}
 
   ? {catch {D create d1 -d 123}} 0 "create d1 with required argument given"
   ? {catch {D create d1}} 1 "create d1 without required argument given"
@@ -432,7 +432,7 @@
       {invalid value in "o d1 x": expected object but got "x" for parameter m} \
       "multiple values"
   
-  Class create Foo -parameter {
+  Class create Foo -attributes {
     {ints:integer,multivalued}
   }
   ? {Foo create foo -ints {1 2}} "::foo"
@@ -471,7 +471,7 @@
   
   ? {d1 bar -c 1} {::d1-[current]-1-2} "substdefault in method parameter"
   
-  Class create Bar -superclass D -parameter {
+  Class create Bar -superclass D -attributes {
     {s "[current]"} 
     {literal "\\[current\\]"} 
     {c "[:info class]"} 
@@ -491,18 +491,18 @@
       "substdefault and switch in object parameter 2"
   
   # Observations:
-  #  1) syntax for "-parameter" and method parameter is quite different.
+  #  1) syntax for "-attributes" and method parameter is quite different.
   #     it would be nice to be able to specify the objparameters in
   #     the same syntax as the method parameters. 
   #
-  # 1a) Especially specifying "-" in front of a -parameter or not might
+  # 1a) Especially specifying "-" in front of a -attributes or not might
   #     be confusing.
   #
   # 1b) Positional args for obj parameter and arguments for init
   #     might be confusing as well. Should we forget about 
   #     passing arguments to init?
   #
-  #  2) substdefault for '$' in -parameter defaults does not make much sense.
+  #  2) substdefault for '$' in -attributes defaults does not make much sense.
   #     deactivated for now; otherwise we would need "\\"
   
   D method bar {
@@ -578,7 +578,7 @@
 #######################################################
 Test case user-types {
 
-  Class create D -parameter d
+  Class create D -attributes d
   D create d1
 
   # create a userdefined type
@@ -677,7 +677,7 @@
 Test case mp-object-types {
 
   Class create C
-  Class create D -superclass C -parameter d
+  Class create D -superclass C -attributes d
 
   Class create M
   D create d1 -d 1
@@ -735,7 +735,7 @@
 #######################################################
 Test case substdefault {
 
-  Class create S -parameter {{x 1} {y b} {z {1 2 3}}}
+  Class create S -attributes {{x 1} {y b} {z {1 2 3}}}
   S create s1 {
     :method foo {{y:substdefault ${:x}}} {
       return $y
@@ -820,7 +820,7 @@
 Test case op-object-types {
 
   Class create C
-  Class create D -superclass C -parameter d
+  Class create D -superclass C -attributes d
 
   Class create MC -superclass Class
   MC create MC1
@@ -829,7 +829,7 @@
   C create c1 -mixin M
   Object create o
   
-  Class create ParamTest -parameter {
+  Class create ParamTest -attributes {
     o:object
     c:class
     c1:class,type=::MC
@@ -1087,7 +1087,7 @@
 Test parameter count 1000
 Test case slot-optimizer {
 
-  Class create C -parameter {a b:integer c:integer,multivalued}
+  Class create C -attributes {a b:integer c:integer,multivalued}
   
   C create c1 
   ? {c1 a 1} 1
@@ -1107,7 +1107,7 @@
 
 Test parameter count 10
 Test case slot-nosetter {
-  Class create C -parameter {a b:integer,nosetter {c:nosetter ""}}
+  Class create C -attributes {a b:integer,nosetter {c:nosetter ""}}
   
   ? {C create c1 -a 1 -b 2} ::c1
   ? {c1 info vars} "a b c"
Index: tests/varresolutiontest.tcl
===================================================================
diff -u -rd168a26bce713de8daa5bbe79d740926e961c5bc -r89376e0f64856bb395fdb4407c9646787545a08b
--- tests/varresolutiontest.tcl	(.../varresolutiontest.tcl)	(revision d168a26bce713de8daa5bbe79d740926e961c5bc)
+++ tests/varresolutiontest.tcl	(.../varresolutiontest.tcl)	(revision 89376e0f64856bb395fdb4407c9646787545a08b)
@@ -276,7 +276,7 @@
 # tests for the compiled var resolver on Class
 ###############################################
 Test case var-resolver-class
-Class create C -parameter {{x 1}}
+Class create C -attributes {{x 1}}
 C create c1
 C method foo {x} {set :y 2; return ${:x},${:y}}
 C method bar {} {return ${:x},${:y}}
@@ -300,7 +300,7 @@
 # tests for the compiled var resolver with eval
 ###############################################
 Test case compiled-var-resolver
-Class create C -parameter {{x 1}}
+Class create C -attributes {{x 1}}
 C create c1
 C method foo {x} {
   set :y 2;