-
Notifications
You must be signed in to change notification settings - Fork 16
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
Upgrade to purity inference #84
Conversation
Down to one failing test... currently being skipped to confirm CI is running to completion. |
3c494bd
to
d82ad30
Compare
@@ -1,13 +0,0 @@ | |||
module [ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why are we removing Sleep
and the related example? Is this temporary for getting everything working? It seems to be in basic-cli
, so maybe it got missed in the great copy of `87?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The way it was implemented it was putting the whole thread to sleep. I think I added it mindlessly porting across from basic-cli... but it's not something I think we want in a multithreaded HTTP web server, at least not like this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
basic webserver spawns a thread per request. So sleep is actually fine (though silly to do).
ci/expect_scripts/red_test_image.png
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This image is tiny at 152 bytes, I agree that including it is better than generating it every time
to_host_method : Method -> _ | ||
to_host_method = \method -> | ||
when method is | ||
OPTIONS -> 5 | ||
GET -> 3 | ||
POST -> 7 | ||
PUT -> 8 | ||
DELETE -> 1 | ||
HEAD -> 4 | ||
TRACE -> 9 | ||
CONNECT -> 0 | ||
PATCH -> 6 | ||
EXTENSION _ -> 2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I did have a proper rust Method
impl, but we were having segafults during the development of this upgrade and suspected the Method to be an issue (possibly alignment or refcounting). Turned out not to be the source of our issues, but I decided it was easier just to leave it like this and not re-generate glue.
The delta is the space difference between a u8
and u64
per request.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Due to padding I think there literally is no difference.
No description provided.