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

Fragment syntax #248

Merged
merged 3 commits into from
Dec 26, 2023
Merged

Fragment syntax #248

merged 3 commits into from
Dec 26, 2023

Conversation

gilch
Copy link
Owner

@gilch gilch commented Dec 25, 2023

Resolves #209.

Adds the ||-delimited "fragment" tokens. | is no longer allowed unescaped in symbols, sorry, but Common Lisp has the same problem, and it is a design goal of Hissp to be mostly compatible with Lisp editors.

They currently don't allow newlines, which reduces (but does not eliminate) the problem with Parinfer. An internal ; character is still a serious problem. oakmac/parinfer#16 You should be able to inject a string instead as a workaround. Brackets might also be an issue but should be fine as long as they're paired. I think.

Eliminates the #""/"" distinction. "" are no longer raw. Use quoted fragments or comment strings instead.

I think this will make Lissp easier to understand overall, because it's closer to how the underlying Hissp works. But I still need to rewrite a lot of docs.

Common Lisp–style escapes.
with doubled (Smalltalk-style) escapes and no newlines.
|| tokens are now called "fragments".
Primer considers strings, symbols/control words to be special cases of fragments with shorthand.
@gilch
Copy link
Owner Author

gilch commented Dec 26, 2023

Docs are not as consistent as I would like, but at least the Primer explains it. I need to sync this up. I'll probably rewrite the docs in one shot once I'm done with the planned changes.

@gilch gilch marked this pull request as ready for review December 26, 2023 00:33
@gilch gilch merged commit 9f40b23 into master Dec 26, 2023
1 of 3 checks passed
@gilch gilch deleted the raw-symbols branch December 26, 2023 00:33
@gilch gilch mentioned this pull request Dec 29, 2023
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.

Consider inject literals in Lissp (raw symbols)
1 participant