@dayme/alien-utils 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -15,7 +15,7 @@ pnpm add @dayme/alien-utils
15
15
  ## Usage
16
16
 
17
17
  ```typescript
18
- import { Option, Result, Iter, Stack, Queue } from "@dayme/alien-utils";
18
+ import { Option, Result, Iter, ParIter, Stack, Queue } from "@dayme/alien-utils";
19
19
 
20
20
  // Option - Handle nullable values
21
21
  const maybeValue = Option.from("hello");
@@ -31,6 +31,12 @@ Iter.from([1, 2, 3])
31
31
  .filter(x => x > 3)
32
32
  .collect(); // [4, 6]
33
33
 
34
+ // ParIter - Parallel processing for CPU-intensive operations
35
+ const result = await ParIter.from([1, 2, 3, 4, 5])
36
+ .map(x => x * 2) // Processed in parallel
37
+ .filter(x => x > 5)
38
+ .collect(); // [6, 8, 10]
39
+
34
40
  // Stack - LIFO
35
41
  const stack = new Stack<number>();
36
42
  stack.push(1).push(2);
@@ -79,6 +85,23 @@ bun run docs:build
79
85
  bun run docs:preview
80
86
  ```
81
87
 
88
+ ## Benchmarks
89
+
90
+ Performance and functionality benchmarks are located in the `benchmarks/` folder:
91
+
92
+ - `benchmark-par-iter.ts`: Performance comparison between Iter and ParIter
93
+ - `compare-functionality.ts`: Comprehensive functionality comparison
94
+
95
+ To run benchmarks:
96
+
97
+ ```bash
98
+ # Run performance benchmark
99
+ bun benchmarks/benchmark-par-iter.ts
100
+
101
+ # Run functionality comparison
102
+ bun benchmarks/compare-functionality.ts
103
+ ```
104
+
82
105
  ## Testing
83
106
 
84
107
  Tests are written using Bun's built-in test framework:
package/dist/index.js CHANGED
@@ -867,6 +867,199 @@ var Some = class e {
867
867
  reverse() {
868
868
  return new n(this.collect().reverse());
869
869
  }
870
+ }, ParIter = class e {
871
+ source;
872
+ ops;
873
+ config;
874
+ opsMask;
875
+ constructor(e, t = [], n = {}) {
876
+ this.source = e, this.ops = t, this.config = {
877
+ workers: n.workers || navigator.hardwareConcurrency || 4,
878
+ chunkSize: n.chunkSize || 1e4,
879
+ strategy: n.strategy || "static",
880
+ ordered: n.ordered ?? !1,
881
+ allowSideEffects: n.allowSideEffects ?? !1
882
+ };
883
+ let r = 0;
884
+ for (let e of t) switch (e.type) {
885
+ case "map":
886
+ r |= 1;
887
+ break;
888
+ case "filter":
889
+ r |= 2;
890
+ break;
891
+ case "reduce":
892
+ r |= 4;
893
+ break;
894
+ case "sum":
895
+ r |= 8;
896
+ break;
897
+ case "count":
898
+ r |= 16;
899
+ break;
900
+ case "groupBy":
901
+ r |= 32;
902
+ break;
903
+ }
904
+ this.opsMask = r;
905
+ }
906
+ static from(t, n = {}) {
907
+ return new e(t, [], n);
908
+ }
909
+ static create(t, n = {}) {
910
+ return new e(t, [], {
911
+ workers: n.workers || navigator.hardwareConcurrency || 4,
912
+ chunkSize: n.chunkSize || 1e4,
913
+ strategy: n.strategy || "static",
914
+ ordered: n.ordered ?? !1,
915
+ allowSideEffects: n.allowSideEffects ?? !1
916
+ });
917
+ }
918
+ map(t) {
919
+ if (this.hasUnsafeOps()) throw Error("Cannot apply map after operations that cannot be parallelized");
920
+ return new e(this.source, [...this.ops, {
921
+ type: "map",
922
+ fn: t
923
+ }], this.config);
924
+ }
925
+ filter(t) {
926
+ if (this.hasUnsafeOps()) throw Error("Cannot apply filter after operations that cannot be parallelized");
927
+ return new e(this.source, [...this.ops, {
928
+ type: "filter",
929
+ fn: t
930
+ }], this.config);
931
+ }
932
+ async sum() {
933
+ if (this.hasUnsafeOps()) throw Error("Cannot perform sum after operations that cannot be parallelized");
934
+ let e = [...this.ops, {
935
+ type: "sum",
936
+ fn: (e, t) => e + t
937
+ }];
938
+ return await this.executeReduction(e, (e) => e.reduce((e, t) => {
939
+ let n = Array.isArray(t) && t.length > 0 ? t[0] : t;
940
+ return e + Number(n);
941
+ }, 0));
942
+ }
943
+ async count() {
944
+ if (this.hasUnsafeOps()) throw Error("Cannot perform count after operations that cannot be parallelized");
945
+ return await this.executeReduction(this.ops, (e) => e.reduce((e, t) => e + (Array.isArray(t) ? t.length : 1), 0));
946
+ }
947
+ async reduce(e, t) {
948
+ if (this.hasUnsafeOps()) throw Error("Cannot perform reduce after operations that cannot be parallelized");
949
+ let n = [...this.ops, {
950
+ type: "reduce",
951
+ fn: e
952
+ }];
953
+ return await this.executeReduction(n, (n) => {
954
+ if (n.length === 0 && t !== void 0) return t;
955
+ let r = n.map((e) => Array.isArray(e) && e.length > 0 ? e[0] : e);
956
+ return r.length === 1 ? r[0] : r.reduce((t, n) => e(t, n), t);
957
+ });
958
+ }
959
+ hasUnsafeOps() {
960
+ for (let e of this.ops) switch (e.type) {
961
+ case "take":
962
+ case "takeWhile":
963
+ case "find":
964
+ case "first":
965
+ case "scan":
966
+ case "inspect": return !0;
967
+ default: break;
968
+ }
969
+ return !1;
970
+ }
971
+ checkSideEffectsAllowed() {
972
+ if (!this.config.allowSideEffects) {
973
+ for (let e of this.ops) if (e.type === "inspect") throw Error("Inspect operations are not allowed when allowSideEffects is false");
974
+ }
975
+ }
976
+ async executeReduction(e, t) {
977
+ let n = Array.from(this.source), r = this.splitIntoChunks(n);
978
+ return t(await this.processChunksParallel(r, e));
979
+ }
980
+ splitIntoChunks(e) {
981
+ return this.config.strategy, this.staticChunking(e);
982
+ }
983
+ staticChunking(e) {
984
+ let t = [], n = Math.max(1, this.config.chunkSize), r = Math.min(this.config.workers, e.length), i = Math.max(1, Math.ceil(e.length / r)), a = Math.min(n, i);
985
+ for (let n = 0; n < e.length; n += a) t.push(e.slice(n, n + a));
986
+ return t;
987
+ }
988
+ async processChunksParallel(e, t) {
989
+ return typeof Worker < "u" ? this.processWithWebWorkers(e, t) : this.processWithBunWorkers(e, t);
990
+ }
991
+ async processWithWebWorkers(e, t) {
992
+ let n = Array(e.length), r = [];
993
+ for (let i = 0; i < Math.min(e.length, this.config.workers); i++) {
994
+ let a = i, o = (async () => {
995
+ for (let r = a; r < e.length; r += this.config.workers) n[r] = await this.processChunk(e[r], t);
996
+ })();
997
+ r.push(o);
998
+ }
999
+ return await Promise.all(r), n;
1000
+ }
1001
+ async processWithBunWorkers(e, t) {
1002
+ let n = [];
1003
+ for (let r of e) {
1004
+ let e = await this.processChunk(r, t);
1005
+ n.push(e);
1006
+ }
1007
+ return n;
1008
+ }
1009
+ async processChunk(e, t) {
1010
+ let n = [...e];
1011
+ for (let e of t) switch (e.type) {
1012
+ case "map":
1013
+ n = n.map((t, n) => e.fn(t, n));
1014
+ break;
1015
+ case "filter":
1016
+ n = n.filter((t, n) => e.fn(t, n));
1017
+ break;
1018
+ case "sum":
1019
+ n = [n.reduce((e, t) => e + Number(t), 0)];
1020
+ break;
1021
+ case "count":
1022
+ n = [n.length];
1023
+ break;
1024
+ case "reduce":
1025
+ if (n.length > 0) {
1026
+ let t = e.fn;
1027
+ n = [n.reduce(t)];
1028
+ } else n = [];
1029
+ break;
1030
+ }
1031
+ return n;
1032
+ }
1033
+ async collect() {
1034
+ if (this.hasUnsafeOps()) throw Error("Cannot collect after operations that cannot be parallelized");
1035
+ return await this.executeReduction(this.ops, (e) => {
1036
+ let t = [];
1037
+ for (let n of e) Array.isArray(n) ? t.push(...n) : t.push(n);
1038
+ return t;
1039
+ });
1040
+ }
1041
+ take(e) {
1042
+ throw Error("take operation cannot be parallelized");
1043
+ }
1044
+ takeWhile(e) {
1045
+ throw Error("takeWhile operation cannot be parallelized");
1046
+ }
1047
+ find(e) {
1048
+ throw Error("find operation cannot be parallelized");
1049
+ }
1050
+ first() {
1051
+ throw Error("first operation cannot be parallelized");
1052
+ }
1053
+ scan(e, t) {
1054
+ throw Error("scan operation cannot be parallelized");
1055
+ }
1056
+ inspect(t) {
1057
+ if (!this.config.allowSideEffects) throw Error("inspect operation is not allowed when allowSideEffects is false");
1058
+ return new e(this.source, [...this.ops, {
1059
+ type: "inspect",
1060
+ fn: t
1061
+ }], this.config);
1062
+ }
870
1063
  };
871
1064
  function match(e) {
872
1065
  return function(t) {
@@ -1302,4 +1495,4 @@ var Bimap = class e {
1302
1495
  this.patches = [this.patches[this.currentIndex]], this.currentIndex = 0;
1303
1496
  }
1304
1497
  };
1305
- export { Bimap, Err, History, Iter, None, Ok, PatchHistory, Queue, Some, Stack, dispatch, isArray, isBoolean, isFunction, isNull, isNumber, isObject, isString, isUndefined, match };
1498
+ export { Bimap, Err, History, Iter, None, Ok, ParIter, PatchHistory, Queue, Some, Stack, dispatch, isArray, isBoolean, isFunction, isNull, isNumber, isObject, isString, isUndefined, match };
@@ -1,2 +1,3 @@
1
1
  export { Iter } from './iterator';
2
+ export { ParIter } from './par-iter';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/package/iterator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/package/iterator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"iterator.d.ts","sourceRoot":"","sources":["../../src/package/iterator/iterator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"iterator.d.ts","sourceRoot":"","sources":["../../src/package/iterator/iterator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,135 @@
1
+ /**
2
+ * Типы операций в pipeline для ParIter
3
+ */
4
+ type ParOpType = "map" | "filter" | "reduce" | "sum" | "count" | "groupBy" | "take" | "takeWhile" | "find" | "first" | "scan" | "inspect";
5
+ /**
6
+ * Операция в pipeline ParIter
7
+ */
8
+ interface ParOp {
9
+ type: ParOpType;
10
+ fn: Function;
11
+ param?: unknown;
12
+ }
13
+ /**
14
+ * Конфигурация для ParIter
15
+ */
16
+ export interface ParIterConfig {
17
+ workers?: number;
18
+ chunkSize?: number;
19
+ strategy?: "static" | "dynamic";
20
+ ordered?: boolean;
21
+ allowSideEffects?: boolean;
22
+ }
23
+ /**
24
+ * Параллельный итератор для data-parallel execution с deterministic reduction.
25
+ *
26
+ * ParIter = data-parallel execution + deterministic reduction
27
+ *
28
+ * Основные принципы:
29
+ * - Разбиение источника (split)
30
+ * - Параллельная обработка чанков
31
+ * - Контролируемая агрегация (reduce / collect / fold)
32
+ * - Не все операции можно параллелизировать
33
+ * - lazy-chain → eager-execution boundary
34
+ */
35
+ export declare class ParIter<T> {
36
+ private readonly source;
37
+ private readonly ops;
38
+ private readonly config;
39
+ private readonly opsMask;
40
+ constructor(source: Iterable<T>, ops?: ParOp[], config?: ParIterConfig);
41
+ /**
42
+ * Создаёт ParIter из итерируемого объекта
43
+ */
44
+ static from<T>(iterable: Iterable<T>, config?: ParIterConfig): ParIter<T>;
45
+ /**
46
+ * Альтернативный способ создания ParIter с явной конфигурацией
47
+ */
48
+ static create<T>(iterable: Iterable<T>, config?: ParIterConfig): ParIter<T>;
49
+ /**
50
+ * Применяет функцию к каждому элементу (параллелизируемая операция)
51
+ */
52
+ map<U>(fn: (value: T, index: number) => U): ParIter<U>;
53
+ /**
54
+ * Фильтрует элементы по предикату (параллелизируемая операция)
55
+ */
56
+ filter(predicate: (value: T, index: number) => boolean): ParIter<T>;
57
+ /**
58
+ * Суммирует элементы (операция редукции)
59
+ */
60
+ sum(): Promise<number>;
61
+ /**
62
+ * Подсчитывает количество элементов (операция редукции)
63
+ */
64
+ count(): Promise<number>;
65
+ /**
66
+ * Выполняет редукцию с ассоциативной функцией (операция редукции)
67
+ */
68
+ reduce<U>(reducer: (acc: U, value: T) => U, initial?: U): Promise<U>;
69
+ /**
70
+ * Проверяет, есть ли в pipeline операции, которые нельзя параллелизировать
71
+ */
72
+ private hasUnsafeOps;
73
+ /**
74
+ * Проверяет, разрешены ли побочные эффекты
75
+ */
76
+ private checkSideEffectsAllowed;
77
+ /**
78
+ * Выполняет редукцию параллельно
79
+ */
80
+ private executeReduction;
81
+ /**
82
+ * Разбивает данные на чанки в зависимости от стратегии
83
+ */
84
+ private splitIntoChunks;
85
+ /**
86
+ * Статическое разбиение на чанки
87
+ */
88
+ private staticChunking;
89
+ /**
90
+ * Обрабатывает чанки параллельно с использованием Web Workers
91
+ */
92
+ private processChunksParallel;
93
+ /**
94
+ * Обработка с использованием Web Workers (браузер)
95
+ */
96
+ private processWithWebWorkers;
97
+ /**
98
+ * Обработка с использованием Bun Workers (Bun runtime)
99
+ */
100
+ private processWithBunWorkers;
101
+ /**
102
+ * Обрабатывает один чанк с применением pipeline
103
+ */
104
+ private processChunk;
105
+ /**
106
+ * Собирает результаты в массив (операция редукции)
107
+ */
108
+ collect(): Promise<T[]>;
109
+ /**
110
+ * Берёт первые n элементов - НЕЛЬЗЯ параллелить
111
+ */
112
+ take(n: number): never;
113
+ /**
114
+ * Берёт элементы пока предикат возвращает true - НЕЛЬЗЯ параллелить
115
+ */
116
+ takeWhile(predicate: (value: T, index: number) => boolean): never;
117
+ /**
118
+ * Находит элемент - НЕЛЬЗЯ параллелить
119
+ */
120
+ find(predicate: (value: T, index: number) => boolean): never;
121
+ /**
122
+ * Получает первый элемент - НЕЛЬЗЯ параллелить
123
+ */
124
+ first(): never;
125
+ /**
126
+ * Сканирует элементы - НЕЛЬЗЯ параллелить
127
+ */
128
+ scan<U>(initial: U, accumulator: (acc: U, value: T) => U): never;
129
+ /**
130
+ * Инспектирует элементы - НЕЛЬЗЯ параллелить без разрешения
131
+ */
132
+ inspect(fn: (value: T, index: number) => void): ParIter<T>;
133
+ }
134
+ export {};
135
+ //# sourceMappingURL=par-iter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"par-iter.d.ts","sourceRoot":"","sources":["../../src/package/iterator/par-iter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=par-worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"par-worker.d.ts","sourceRoot":"","sources":["../../src/package/iterator/par-worker.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dayme/alien-utils",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "type": "module",
5
5
  "description": "TypeScript utility library with functional programming data structures (Option, Result, Iter, Stack, Queue, Bimap, Match, Dispatch)",
6
6
  "keywords": [
@@ -44,7 +44,6 @@
44
44
  "prepublishOnly": "bun run build",
45
45
  "test": "bun test",
46
46
  "test:watch": "bun test --watch",
47
- "bench": "bun run tests/iterator.bench.ts",
48
47
  "playground:dev": "vite dev --config app/playground/vite.config.ts",
49
48
  "playground": "concurrently \"bun run dev\" \"bun run playground:dev\"",
50
49
  "docs:dev": "cd app/docs && vite",
@@ -59,12 +58,10 @@
59
58
  "typescript": "~5.9.3",
60
59
  "vite": "npm:rolldown-vite@7.2.5",
61
60
  "vite-plugin-dts": "^4.3.0",
62
- "vitepress": "^1.6.3"
61
+ "@types/bun": "^1.3.5"
63
62
  },
64
63
  "overrides": {
65
64
  "vite": "npm:rolldown-vite@7.2.5"
66
65
  },
67
- "dependencies": {
68
- "@types/bun": "^1.3.5"
69
- }
66
+ "dependencies": {}
70
67
  }