A1sCode Главная Библиотека Стандарты History Changelog История версий A1sAR
v2.0.0 18 января 2026
🚀 Major Release

⚠️ Breaking Changes

  • Маркер пустого слота изменён с Неопределено на "__A1S_∅__"
  • Функция Of() теперь корректно обрабатывает Неопределено как значение

✨ Добавлено

  • ConvertTo(Array, TargetType, DefaultValue) — приведение типов
  • Reset(Array) — сброс к значениям по умолчанию
  • ResetDeep(Array) — глубокий сброс
  • Equals(Array1, Array2) — сравнение массивов
  • EqualsDeep(Array1, Array2) — глубокое сравнение

🐛 Исправлено

  • Of(1, Неопределено, 3) теперь возвращает [1, Неопределено, 3] вместо [1, 3]

🗑️ Удалено

  • Зависимость от A1sDS в функциях Split(), SplitAt()
  • Зависимость от A1sS.Print() в обработчиках ошибок
  • Зависимость от A1sFixed в OfFixed() — используется платформенный Новый ФиксированныйМассив()
v1.3.0 23 декабря 2025
Типизация

✨ Добавлено

  • PickByType(Array, Type) — выборка по типу
  • OmitByType(Array, Type) — исключение по типу
  • PickNumbers(), PickStrings(), PickDates(), PickBooleans(), PickRefs()
  • PickFilled(), PickNotNull()
  • GetTypes(Array) — массив уникальных типов
  • GroupByType(Array) — группировка по типам
  • IsHomoTyped(Array), IsHeteroTyped(Array)
  • MostFrequentType(Array)
  • Split(Array, Separator), SplitAt(Array, Index)

🔄 Изменено

  • Добавлена зависимость от A1sDS для Split() / SplitAt()
v1.2.0 15 декабря 2025
Set-операции

✨ Добавлено

  • Union(A1, A2, ..., A8) — объединение до 8 массивов
  • Intersection(A1, A2, ..., A8) — пересечение
  • Difference(A1, A2, ..., A8) — разность
  • Concatenate(A1, A2, ..., A8) — склейка с дубликатами
v1.1.0 20 ноября 2025
Fluent Interface

✨ Добавлено

  • Обработка A1sDP_AR — Fluent-обёртка для цепочек вызовов
  • Трансформеры: Filter(), Map(), Sort(), Reverse(), Unique(), Take(), Skip(), Slice()
  • Терминаторы: Value(), First(), Last(), Count(), Total(), Avg(), Minimum(), Maximum(), Reduce(), Join()
  • Переменные в выражениях: v (элемент), acc (аккумулятор)
v1.0.0 15 октября 2025
🎉 Initial Release

✨ Добавлено

  • Of(P1, ..., P40) — создание массива
  • OfN(Size, Value) — заполненный массив
  • Fill(Array, Value) — заполнение
  • First(), Last() — доступ к элементам
  • Contains(), IndexOf() — поиск
  • IsEmpty() — проверка пустоты
  • RemoveDuplicates() — удаление дубликатов
Планы Q1-Q2 2026
🔮 Roadmap

📋 v2.1.0

  • Chunk(Array, Size) — разбиение на части
  • Zip(Array1, Array2) — объединение в пары
  • FindIndex(Array, Expression) — поиск по условию
  • Every(Array, Expression) — все соответствуют
  • Some(Array, Expression) — хотя бы один
  • Partition(Array, Expression) — разделение по условию

📋 v3.0.0

  • Поддержка ФиксированныйМассив во всех функциях
  • Ленивые вычисления (lazy evaluation)
  • Параллельная обработка больших массивов