Ошибки на сайте, в справке и прочее

Да, никак не реализуют нормальный анализатор кода для лямбд… Очень давно известная проблема.

Нет, тут подсказка для MatrGen не правильная. Вот что тут такое … “заполненный элементами x”? Это элементы, которые получаются на выходе функции gen(i, j) И в справке то же самое.

А… Действительно)

В чем отличие между Pos и PosEx?

begin
  var s := 'Hello Hello';
  var s0 := 'Hello';
  Pos(s0, s).Println;//1
  Pos(s0, s, 2).Println;//7
  PosEx(s0, s).Println;//1
  PosEx(s0, s, 2).Println;//7
end.

Подсказка для Pos: Pos

Подсказка для PosEx: PosEx

Но они работают одинаково. Кроме того подсказка не показывает, что параметр from - параметр по умолчанию у обеих.

Надо не на результат а на реализацию смотреть:


function Pos(subs, s: string; from: integer): integer;
begin
  if (subs = nil) or (subs.Length = 0) or (from > s.Length) then
    Result := 0
  else Result := s.IndexOf(subs, from - 1, System.StringComparison.Ordinal) + 1;
end;

function PosEx(subs, s: string; from: integer) := Pos(subs,s,from);

То есть - ни в чём.

Отличия нет, это сделано для совместимости с языками-предшественниками. Как говорили в первые годы советской власти, “тяжкое наследие царизма”.

Ошибка описания процедуры, в среде и в справке. WriteElements<T>(fname: string; ss: sequence of T);

И, кстати, почему нет встроенного одноименного метода расширения, такого:

WriteElements<T>(self: file of T; ss: sequence of T); extensionmethod;,

чтобы работал с уже открытым файлом и не перезаписывал все, а вставлял последовательность, начиная с позиции файлового указателя? Это с чем-то связано или просто забыли выписать?

Да, спасибо, исправили описание.

По поводу предлагаемого вами варианта - нам не хочется иметь стандартный метод, который массово пишет что-то в открытый файл с позиции указателя. С нашей точки зрения, такой подход провоцирует ошибки и не может быть включён в стандартную библиотеку.

Если вам такой подход нравится, напишите свою функцию и пользуйтесь на свой страх и риск

1 лайк

@Admin

Справочник по языку>>Элементы функционального программирования>>Методы для последовательностей>>Метод Cast:

begin
  var a: sequence of integer; 
  var b: sequence of real;
  a := Seq(1,3,5);
  b := a.Cast&<real>();
end.

Этот код неправильный, если добавить вывод для b - получите ошибку, потому что integer as real не работает.

не помешало бы тут обновить инфо о версии.
да и на GitHub раздел релизов обновлять периодически или вообще удалить, что бы с толку не сбивал тоже надо по моему мнению

Кстати, в [Справка → Структура программы → Структура программы: обзор] всё ещё используется старый синтаксис в виде program и writeln(x);. При этом ничего не сказано о, например, коротких программах ## и функциях современно консольного чтения вида ReadInteger. Не то что бы это ошибка, но стоило бы как-то поменять, раз уж pabc пропагандирует свой стиль написания

1 лайк

Да, исправили. ReadInteger есть кстати

Многократное повторение описания System.Windows.Forms.CheckBoxRenderer

Только у меня последнее время постоянно “дёргаются” сообщения при пролистывании форума? Как-то напрягает уже

Web вариант справки отстаёт от того, что идёт вместе с ide

а, ясно. такие дёрганья только если в настройках включить vincent тему

Здесь напутано:

Pen

Исправьте, пожалуйста.

Да, исправили. В следующем обновлении выйдет

Здесь напутано:

Исправьте, пожалуйста.

Да, исправили