Edit report at https://bugs.php.net/bug.php?id=55617&edit=1

 ID:                 55617
 Comment by:         kexianbin at diyism dot com
 Reported by:        kexianbin at diyism dot com
 Summary:            make array to support mode class
 Status:             Open
 Type:               Feature/Change Request
 Package:            Class/Object related
 Operating System:   Irrelevant
 PHP Version:        Irrelevant
 Block user comment: N
 Private report:     N

 New Comment:

It's easier to realize MyPHP(Mode Class PHP) based on quercus,
because "you doesn't need to write a super GC or JIT to be fast(like in C), 
only a compiler".


Previous Comments:
------------------------------------------------------------------------
[2011-09-06 07:52:08] kexianbin at diyism dot com

Description:
------------
In my mind, we phper can thoroughly throw away the concept of Object(class 
instance), we only need Array and Mode Class:

All arrays in initial mode support any array function as it's method:

<?php
$array1->array_flip(this);
?>

Use "->mode()" to validate the minimal data set, and then switch mode class:

<?php
$array1->mode('class1', $success);
?>

Any mode class has no "construct()" in it, but has "validate()" to validate the 
minimal data set.

The array in a mode still could use array function as its method, but after 
using any of them the array will be switched back into basic array mode, and we 
need to use "->mode('class1', $success);" to switch mode back.

The radical thought is data-centric programming, we need seperate the 
data(array) and the activity(class method).

We could modify php engine, to get rid of parts of OO(object oriented), and 
support Mode Class, we could call it MyPHP.

For example: $array_man1 could be set into two modes:cls_normal_man and 
cls_crazy_man:

<?php
$array_man1->mode('cls_normal_man')->normal_method1()->mode('cls_crazy_man')->crazy_method1();
?>



------------------------------------------------------------------------



-- 
Edit this bug report at https://bugs.php.net/bug.php?id=55617&edit=1

Reply via email to