underscore/replicate.go
Ruidy d6f1e1cff5
feat: add Tap, Transpose, Unzip, ParallelReduce, and Replicate
- Add Tap: for side effects/debugging in pipelines
- Add Transpose: flip matrix rows and columns
- Add Unzip: split tuple slice into two slices
- Add ParallelReduce: parallel reduction (experimental)
- Add Replicate: create n copies of a value

Comprehensive tests included for all functions.

Resolves Issues 21, 22, 23, 24, 25

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-14 14:55:43 +01:00

17 lines
380 B
Go

package underscore
// Replicate creates a slice containing count copies of value.
// Returns an empty slice if count is less than or equal to 0.
//
// Example: Replicate(3, "hello") → ["hello", "hello", "hello"]
func Replicate[T any](count int, value T) []T {
if count <= 0 {
return []T{}
}
res := make([]T, count)
for i := range res {
res[i] = value
}
return res
}