Wednesday, December 22, 2010

Concept 2.0 sneak preview

I've been working a lot lately to the new services and Concept Application Server.
A new operator added to the language core:

operator ?? (cannot be overloaded)

Is somehow similar to || except that instead of true it returns the first non-null value.

Example

var object=new A();
var object2=new B();
var a=object ?? object2;

If object is null, then a==object2 , if object is not null, a=object
Also, arrays are a little special. An empty array is considered to be null, same for empty strings, so:

var a= [] ?? [1,2,3];

will return [1,2,3] and:

var s= "" ? "123";

will return "123"

A few changes in Concept Application Server core, more environment variables, like: CONCEPT_LOGFILE, CONCEPT_LIBRARY, CONCEPT_INCLUDE, CONCEPT_CERTIFICATE, CONCEPT_SERVERROOT, CONCEPT_INIPATH, CONCEPT_UseSharedMemoryPool, CONCEPT_PORT, CONCEPT_CGI_PORT, CONCEPT_SERVERNAME and CONCEPT_FILENAME

A better serialization engine and a safer InterApp message exchange system is now available.

Some screen shots from the working version of Concept BeeKeeper (concept administration tool):

For Concept Application Server 2.0 a new Client is provided (2.0). Old clients remain compatible (though some controls will look different).

I'll post back when a BETA version will be available.

No comments: