This only applies to dot notation you write directly in the method. If you 
reference properties with brackets [], you can use any property name string you 
like. 

One feature that I think is missing is that you can't access a complex property 
path using a string. For example.

$object:=New object("one";1;"child";New object("two";2))

I can use

$object.child.two (or $object["child"]["two"])

But if I pass $object and the string "child.two" to another method, I can't get 
the property unless I parse the path and handle each level. I think it would be 
helpful to have an extra parameter to OB Get and OB Get type to treat the 
property as a valid path, e.g.

OB Get($object;"child.two";*) `2
OB Get type($object;"child.two";*) `Is real


John DeSoi, Ph.D.

> On Apr 30, 2018, at 10:49 AM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> BTW - object properties (keys) are becoming more restrictive
> <http://doc.4d.com/4Dv16R6/4D/16-R6/Using-object-notation-preview.300-3548251.en.html>.
> They must begin with a letter, underscore or $. But the $ doesn't have any
> particular significance in the name and can be used anywhere. Numbers are
> OK just not for the first character. Dashes, spaces and such are not to be
> used. As someone else said if you are still using spaces in names of
> anything (except constants I suppose) you deserve what you get. Just stop
> it.

**********************************************************************
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: https://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**********************************************************************

Reply via email to