> -- Galkov писал(а):
> Но что главное-то хотел я сказать: обойти по эффективности применение  - практически не реальноНу изготовьте этот тип сами если он Вам так нравится:
## Код:
```
TYPE
  MyProcedure* = PROCEDURE (this: ANYPTR; ... аргументы...);

  MyProcedureOfObject* = RECORD
    object*: ANYPTR;
    procedure*: MyProcedure;
  END;

  PROCEDURE (VAR this: MyProcedureOfObject) Init* (object: ANYPTR; procedure: MyProcedure), NEW;
  BEGIN ASSERT(object # NIL, 20); ASSERT(procedure # NIL, 21);
    this.object := object; this.procedure := procedure
  END Init;

  PROCEDURE (IN this: MyProcedureOfObject) Invoke* (... аргументы...), NEW;
  BEGIN ASSERT(this.object # NIL, 100); ASSERT(this.procedure # NIL, 101);
    this.procedure(this.object, ... аргументы...)
  END Invoke;
```
