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

Integrate with SML/NJ #19

Open
azdavis opened this issue Jan 15, 2023 · 1 comment
Open

Integrate with SML/NJ #19

azdavis opened this issue Jan 15, 2023 · 1 comment
Labels
enhancement New feature or request

Comments

@azdavis
Copy link
Owner

azdavis commented Jan 15, 2023

Problem

No integration with SML/NJ currently. Have to go to the terminal and manually run it every time.

Solution

the baseline would be that i can have a window with the smlnj interactive system, and be able to send either a whole buffer from a millet window, or a selected segment. ideally i could also go back from the interactive window by clicking on error messages.

(from Bob Harper on the Project Savanna Discord)

@azdavis azdavis added the enhancement New feature or request label Jan 15, 2023
@azdavis azdavis changed the title Integrate with SML/Nj Integrate with SML/NJ Jan 15, 2023
@azdavis
Copy link
Owner Author

azdavis commented Mar 20, 2023

This is a bit non trivial especially with larger projects. For instance, if i have a project with a mlb file

a.sml
b.sml
c.sml

and my cursor is in the middle of b.sml, and I request SML/NJ output, we should be clever enough to feed SML/NJ only a.sml and part of b.sml, up to the current cursor.

Feeding the interpreter only part of a file is also a bit tricky, since what if the file starts with e.g. a structure Foo = struct ... that goes until the end of the file? How should invoking SML/NJ when the cursor is between the struct and matching end work?

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

No branches or pull requests

1 participant