[14:10:25] <metacore> test
[14:10:26] <Жаба> metacore, passed
[14:10:34] <metacore> version
[14:10:35] <Жаба> metacore,  you have Jitsi 2.10.5550 on Windows 10
[14:21:33] <Kemet> version
[14:22:10] <Kemet> test
[14:22:10] <Жаба> Kemet, passed
[14:22:32] <Kemet> >:o
[14:24:22] <valexey> Kemet: hi :-)
[14:24:38] <valexey> А вот кто какой код-ревьювелкой пользуется?
[14:27:18] <Kemet> и тебе не хворать
[14:56:14] <Kemet> version
[14:56:15] <Жаба> Kemet,  you have Psi+ 1.3.396 (2018-06-30, Psi:5ed84161, Psi+:ff32f79, sql) on Windows 10
[14:57:38] <Kemet> valexey: в АО, наконец-то, сделали православный оператор "[]"
[14:58:20] <Kemet> он как бы там был но только для специальношо типа ASOT
[14:58:22] <valexey> это для чего такой оператор?
[14:59:16] <Kemet> это когда типа O = OBJECT ( ARRAY [*,*] OF LONGINT )
[14:59:23] <Kemet> было так
[15:00:06] <Kemet> а сейчас а сейчас для обычного обжекта и записи, а не для спечифического, который тоже удалили
[15:01:42] <Kemet> а сечвс так
[15:01:45] <Kemet>    TYPE O* = OBJECT
   VAR a: ARRAY 100 OF LONGINT;

       OPERATOR "[]"* (index: LONGINT): LONGINT;
       BEGIN
           RETURN a[index]
       END "[]";

       OPERATOR "[]"* (index: LONGINT; value: LONGINT);
       BEGIN
           a[index] := value;
       END "[]";

   END O;
[15:11:44] <Kemet> » [18:55:55] <valexey> это для чего такой оператор?
ну так индексатор, вот полный пример
from Oberon.Execution.Test
   MODULE Test; (** AUTHOR ""; PURPOSE ""; *)

   TYPE O* = OBJECT
   VAR a: ARRAY 100 OF LONGINT;

       OPERATOR "[]"* (index: LONGINT): LONGINT;
       BEGIN
           RETURN a[index]
       END "[]";

       OPERATOR "[]"* (index: LONGINT; value: LONGINT);
       BEGIN
           a[index] := value;
       END "[]";

   END O;

   TYPE Q = OBJECT
   VAR a: ARRAY 100 OF LONGINT;

       OPERATOR "[]" (index: LONGINT): LONGINT;
       BEGIN
           RETURN a[index]
       END "[]";

       OPERATOR "[]" (index: LONGINT; value: LONGINT);
       BEGIN
           a[index] := value;
       END "[]";

   END Q;

   PROCEDURE VarTest(VAR a: LONGINT): LONGINT;
   BEGIN
       a := 1000;
       RETURN 123;
   END VarTest;

   PROCEDURE Test*;
   VAR o: O; q: Q;
   BEGIN
       NEW(o);
       ASSERT(VarTest(o[10])=123);
       ASSERT(o[10]=1000);
       o[5] := 555;
       ASSERT (o[5] = 555);
       NEW(q);
       ASSERT(VarTest(q[10])=123);
       ASSERT(q[10]=1000);
       q[5] := 555;
       ASSERT (q[5] = 555);
   END Test;

   BEGIN
       Test;
   END Test.
[15:16:23] <valexey> А! Так его теперь самостоятельно перегружать/реализовывать можно?
[15:16:27] <valexey> Это круто!
[15:20:26] <Kemet> да и он доступен по VAR
[15:22:51] <Kemet> то есть o[100500] можно передать по ссылке в процедуру
[15:23:55] <Kemet> WITHтоже изменили, теперь он работает как CASE
[15:25:53] <valexey> хыыы
[15:26:04] <valexey> вот за это активный оберон на оберонкоре и не любят :-)
[15:40:43] <Kemet> так это же следование заветам Ильича, то есть Вирта, он же в своем О7 заменил WITH на CASE, а О7 для них что то типа мейнстрима) так что всё ок
[15:43:33] <valexey> ну, я про перегрузку операторов скорее :-)
[15:50:20] <Kemet> нууу, с условием, что свои операторы создавать низзя, то вполне норм.ну не нравится им, ну фиг с ними), пусть на ББ под i486 пишут
[15:51:17] <Kemet> я вот думаю, не портировать ли а2 под андроид
[15:51:47] <Kemet> но вроде там всё равно некая прослойка на жабе нужна
[15:53:04] <Kemet> но в любом случае это будет не скоро, нужно сначала opengl и виджетызакончить
[15:58:37] <valexey> о! как закончишь, или будут хоть какие превьюхи - кинь глянуть плз :-)
[16:04:51] <Kemet> ок
[16:06:22] <Kemet> думаю сделать чтобы под Вин/Лин просто виндинги а для натив своя реализация ОпенДжиЭль
[16:06:49] <Kemet> чтобы собирать под хосты нормальные приложения с ядром а2
[16:13:08] <valexey> да, это должно быть удобно.
[16:30:04] <Kemet> valexey: а в пси этом цвет фона окна сообщений меняется??? а то в настройка вроде нету, есть фон ростера
[17:03:06] <valexey> тоже не нашел