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

Type inference #357

Open
ShalokShalom opened this issue Sep 13, 2023 · 0 comments
Open

Type inference #357

ShalokShalom opened this issue Sep 13, 2023 · 0 comments

Comments

@ShalokShalom
Copy link

From: The State of Rhombus

Racket’s runtime contracts and Typed Racket’s static types are at two extreme ends of the dynamic-static correctness spectrum. Can Rhombus occupy a more user-friendly middle ground?

I have an idea about that. Not only SML based languages, but also dynamically typed languages like Julia, can have full, global type inference.

I see the benefit in the almost completely solved question, how the heck type annotations are fitting into our current syntax. 😄

Julia does this, by keeping the types actually in runtime, and does neat tricks with it, in conjunction with multiple dispatch.

As many of you know, is Julia very heavily inspired by Lisp, and has its current parser even implemented in a custom Scheme.

I assume, due to the way this is implemented, that this exceeds the scope of this project.
But I also assume, that it would provide a neat way, to what otherwise seems to lead nearly unavoidably to chaos.

In case somebody is interested about a list of languages who have full type inference, be my guest.

Julia serves as a perfect example, due to its familiarity and implementation of a dynamic type system.

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

1 participant