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

ARCHITECTURE.md: Initial revision #202

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

schancel
Copy link
Contributor

@schancel schancel commented Aug 6, 2016

The intent of this PR is to introduce the ARCHITECTURE.md root file. This file will eventually include a high level overview of the SDC compiler and how it operates. New contributors should be able to read this file to make sense of the subsystems in the compiler, and which APIs they should be working with to obtain the information they need to process.

@deadalnix
Copy link
Contributor

Maybe you want to put this into a doc folder or something and add a link in the README ?

Overall I think that this is a very nice effort. Make you don't go too much into details in part that are partially in flux, as wrong doc is worse than no doc usually. I'll be traveling over the weekend, so I won't be able to provide too much feedback before monday.

@schancel
Copy link
Contributor Author

schancel commented Aug 6, 2016

Thanks for the suggestion. I'll do that. I think that the current topics are where I am going to stop. I'm intending to provide what each thing does; and where a contributor can find the entry point to that subsystem; and possibly some implementation details where it's relevant (e.g. how the visitor pattern works with the scheduler, etc.)

@JohanEngelen
Copy link
Contributor

Thank you very much for this documentation. I am looking at SDC again since a while and... man all those directories... A guide to the directory structure would be very nice too.

@schancel
Copy link
Contributor Author

Thanks for the feedback! That's my plan. I need to get back at this. I had
the same problem. I did a few small patches awhile ago and every time I get
back to it I have to mentally figure out this and it takes a long time.
On Sat, Aug 13, 2016 at 11:00 AM Johan Engelen notifications@github.com
wrote:

Thank you very much for this documentation. I am looking at SDC again
since a while and... man all those directories... A guide to the directory
structure would be very nice too.


You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#202 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AANC7KFSxRTt3-RDnlXMbJ9hcjfEQRF0ks5qfgZTgaJpZM4JeJnr
.

ARCHITECTURE.md Outdated
@@ -38,6 +38,11 @@ Character Streams -> Lexer -> (Token Stream) -> Parser -> (AST) -> Semantic Pass
+ May reduce some higher level Ast concepts into easier concepts to express in the IR.
+ *** Need to cover visitors, and require, scheduler, etc.
+ Cover how visitors work -- Equivalent to functional programming concept of parameter specialization
+ Operates in multiple passes over the AST/IR (Ew that it modifies the IR/AST?)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The AST and the IR are separate.
Rather the AST is the basis for the IR.
The AST is not touched after parsing.
The IR is indeed subject to lowering and other transformations

@deadalnix deadalnix force-pushed the master branch 2 times, most recently from 575b9f1 to 0e151f4 Compare November 18, 2016 23:44
@deadalnix deadalnix force-pushed the master branch 2 times, most recently from 9448061 to ad47c1f Compare January 29, 2017 00:50
@schancel
Copy link
Contributor Author

If anyone is interested, I've begun working on this again.

@deadalnix deadalnix force-pushed the master branch 11 times, most recently from 20b3372 to 32cd75e Compare April 15, 2018 17:54
@deadalnix deadalnix force-pushed the master branch 4 times, most recently from dc3ea09 to 1f71c2a Compare December 1, 2022 00:10
@deadalnix deadalnix force-pushed the master branch 2 times, most recently from 0fb9de0 to 208c449 Compare January 2, 2023 16:27
@deadalnix deadalnix force-pushed the master branch 2 times, most recently from f94baa8 to 87a9baf Compare August 23, 2023 22:14
@deadalnix deadalnix force-pushed the master branch 3 times, most recently from cf07b66 to 39f39ba Compare January 3, 2024 14:18
@deadalnix deadalnix force-pushed the master branch 2 times, most recently from 4acd1ab to e854d3d Compare June 17, 2024 21:01
@deadalnix deadalnix force-pushed the master branch 3 times, most recently from 0896895 to 5a79292 Compare October 13, 2024 11:52
@deadalnix deadalnix force-pushed the master branch 3 times, most recently from 7ce40a5 to 4dbe602 Compare December 4, 2024 01:18
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.

4 participants