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

[Content] Introduction material for concepts like coroutines, parallelization, vectors etc. #38

Open
Brian-M-J opened this issue Jul 19, 2023 · 5 comments

Comments

@Brian-M-J
Copy link

Currently, the Mojo documentation assumes that the reader is already familiar with system programming concepts. This makes it harder for new and new-ish programmers to understand how to use the low-level features that Mojo provides. I suggest a few articles explaining how the specific feature works, how to use it and a few examples of use cases.

A list of features I have in mind is as follows:

  • How to use autotuning
  • Coroutines
  • DType (It's used in examples on the Modular website but I have no idea what it is)
  • The Functional module in the standard library (vectorize, parallelize, tile etc.)
  • SIMD

This is not a comprehensive list and there may be other things that programmers struggle to understand.

@mojodojodev
Copy link
Owner

Great ideas, thanks very much for raising the things that aren't clear, that is a really good list of next things to tackle and I'll prioritize them

@Lorenzobattistela
Copy link

@mojodojodev i'm thinking about starting to write about SIMD, what format do you think it'll be appropriate? Guide section, article...? I think an article would fit this purpose.

@Brian-M-J
Copy link
Author

I agree. I think articles should be preferred in general for now as Mojo is still in a very early stage. I think the focus should be on making readers understand the underlying concept rather than its specific implementation in Mojo, as not only can that change, but the team might add a high level abstraction that makes it unnecessary to explain the exact details of how the feature works to beginners.

@Lorenzobattistela
Copy link

Will start writing up some content on SIMD

@mojodojodev
Copy link
Owner

Will start writing up some content on SIMD

Sounds great thanks, yeah I think tutorial style introduction will be really good, there's a heap of dunder methods which we can build out over time

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

No branches or pull requests

3 participants