Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat: (WIP) Stdlib functions #102

Open
wants to merge 10 commits into
base: main
Choose a base branch
from

Conversation

Jolanrensen
Copy link
Collaborator

As discussed in the issue #100 it would be nice to have more stdlib functions to work with Datasets too, since it's one of Kotlin's selling points.

I've started converting the _Collections.kt from the stdlib to Dataset and I've managed to get to about a third, to filterIndexed.

It already contains a lot of helpful functions, like last(), firstOrNull {}, drop(), all {} etc, but there are many left to do.
Many are faster but prone to out of memory issues when first converted to an Iterable. This holds for functions like first {} etc. I plan to have a code inspection plugin hint the user in these cases.

It's nowhere near done, but since I'm going away for a couple of weeks, I thought it might be cool to share the functions I already created so they can be tested already and maybe encompassed in the API itself. Of course, feel free to continue my work in my absence. Many stdlib functions are still left and the RDD could also use them ;).

@asm0dey
Copy link
Contributor

asm0dey commented Sep 13, 2021

@Jolanrensen would you be able to fix the conflicts?

@Jolanrensen
Copy link
Collaborator Author

@asm0dey It's nowhere near finished though.
I'm having second thoughts about the scale of the standard library though. Maybe it's a bit too much to add everything for Spark and we need to take a look at what is helpful and what isn't.

@asm0dey
Copy link
Contributor

asm0dey commented Sep 14, 2021

IMHO it is, yes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants