zlacker

[parent] [thread] 1 comments
1. riffra+(OP)[view] [source] 2025-12-13 20:45:11
the comment is wrong, what Gleam lacks is interfaces.

Which feels super strange, but doesn't seem to really be a problem, e.g. imagine a language where you'd write

    fun sum_all_numbers(Iterable<T> it) { it.fold(...) } # an interface
    sum_all_numbers(a_list) # a list implements iterable

Gleam wants you to write

    fun sum_all_numbers(Iterator<T> it) { it.fold(...) } # a concrete type
    sum_all_numbers(a_list.iterator) # get the caller to build the right object

edit: found an article that explained this a bit better https://mckayla.blog/posts/all-you-need-is-data-and-function...
replies(1): >>akkad3+9Fb
2. akkad3+9Fb[view] [source] 2025-12-17 17:33:49
>>riffra+(OP)
Yes this is the article I was referring to. Gleam does not need interfaces or traits because functions can do it
[go to top]