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

Documentation updates #2821

Merged
merged 8 commits into from
Mar 14, 2023

Conversation

jonsequitur
Copy link
Contributor

This PR contains a number of documentation updates, primarily related to #2078. There's still more to do here, but I'm happy to merge this and keep making further improvements in future PRs.

@@ -1,38 +1,44 @@
# .NET Interactive Architectural Overview

The kernel concept in .NET Interactive is a component that accepts commands and produces outputs. The commands are typically blocks of arbitrary code, and the outputs are events that describe the results and effects of that code. The `Kernel` class represents this core abstraction.
The kernel concept in .NET Interactive is a component that accepts commands and produces outputs. The commands are typically blocks of code, and the outputs are events that describe the results and effects of that code, including executing code and providing language services such as completions and diagnostics. The `Kernel` class represents this core abstraction.
Copy link
Contributor

Choose a reason for hiding this comment

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

do you mean 'auto-completion' instead of 'completions' ?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The LSP terminology is "completions" but I'm not sure which term is more generally understood.


A kernel doesn't have to run in its own process. The default `dotnet-interactive` configuration runs several kernels in one process, enabling scenarios such as language-switching and .NET variable sharing. But one or more kernels can also run out-of-process, which will be transparent from the point of view of someone using it.
A kernel doesn't have to run in its own process. The default `dotnet-interactive` configuration runs several kernels in one process, enabling scenarios such as language-switching and .NET variable sharing by reference between C#, F#, and PowerShell. But one or more kernels can also run out-of-process, which will be transparent from the point of view of someone using it. The `Kernel` APIs are message-based and provide the same API for all kernels whether they are in-process, out-of-process, or running on remote machines.
Copy link
Contributor

@ocallesp ocallesp Mar 11, 2023

Choose a reason for hiding this comment

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

It seems that language-switching is a feature in Polyglot Notebook, but I don't see a reference to it. I had to google it in order to understand it.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It's described in the marketplace page: https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.dotnet-interactive-vscode. The source for this is duplicated in two files, both updated in this PR:

  • src/polyglot-notebooks-vscode/README.md
  • src/polyglot-notebooks-vscode-insiders/README.md

I wonder if we should make this more prominent and/or add it to the repo's root README.

@ocallesp
Copy link
Contributor

I found it to be really helpful in understanding the project. As someone who is new to this project, I appreciate how clear and concise the information is.

docs/FAQ.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
docs/FAQ.md Outdated Show resolved Hide resolved
jonsequitur and others added 3 commits March 13, 2023 13:19
Co-authored-by: Abhitej John <aajohn@microsoft.com>
Co-authored-by: Shyam N <shyamnamboodiripad@users.noreply.github.com>
Co-authored-by: Shyam N <shyamnamboodiripad@users.noreply.github.com>
@jonsequitur jonsequitur merged commit ee364e9 into dotnet:main Mar 14, 2023
@colombod colombod added the Area-Documentation Improvements or additions to documentation label Mar 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Documentation Improvements or additions to documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants