define-macro: check that ... only follow wildcards #10

Merged
bennn merged 1 commits from defmac-ellipses into master 7 years ago
bennn commented 7 years ago (Migrated from github.com)

One fix for #9

One fix for #9
mbutterick commented 7 years ago (Migrated from github.com)

LGTM 🤘

LGTM :metal:
bennn (Migrated from github.com) reviewed 7 years ago
@ -19,2 +34,4 @@
#true))
(module+ test
(require rackunit)
bennn (Migrated from github.com) commented 7 years ago

Oops, this comment shoudn't be here

Oops, this comment shoudn't be here
mbutterick (Migrated from github.com) reviewed 7 years ago
@ -19,2 +34,4 @@
#true))
(module+ test
(require rackunit)
mbutterick (Migrated from github.com) commented 7 years ago

BTW, what is the reason to use box and set!-box to mutate prev-datum rather than just mutating the variable itself?

BTW, what is the reason to use `box` and `set!-box` to mutate `prev-datum` rather than just mutating the variable itself?
bennn (Migrated from github.com) reviewed 7 years ago
@ -19,2 +34,4 @@
#true))
(module+ test
(require rackunit)
bennn (Migrated from github.com) commented 7 years ago

I'm prejudiced against set!. I like box to communicate my intentions.

But this is your code so you should do what you want.

I'm prejudiced against `set!`. I like `box` to communicate my intentions. But this is your code so you should do what you want.
mbutterick (Migrated from github.com) reviewed 7 years ago
@ -19,2 +34,4 @@
#true))
(module+ test
(require rackunit)
mbutterick (Migrated from github.com) commented 7 years ago

Oh no, I can’t mess with perfection.

I was just trying to understand what box is for. IIUC it’s a way of saving the costs of allocation & GC across function calls by passing what’s essentially a reference to a value rather than the value itself. But, if that’s so, then I don’t understand the benefit of putting a Boolean or symbol in a box, since they’re so tiny to begin with.

Oh no, I can’t mess with perfection. I was just trying to understand what `box` is for. IIUC it’s a way of saving the costs of allocation & GC across function calls by passing what’s essentially a reference to a value rather than the value itself. But, if that’s so, then I don’t understand the benefit of putting a Boolean or symbol in a box, since they’re so tiny to begin with.
bennn (Migrated from github.com) reviewed 7 years ago
@ -19,2 +34,4 @@
#true))
(module+ test
(require rackunit)
bennn (Migrated from github.com) commented 7 years ago

I think the compiler puts set!'d variables into a box (or the moral equivalent of a box). If that's true, then I don't think there's performance savings either way.

(This is based on what I remember from talking to Leif)

To me, a box is for saying "this variable is going to be mutated".

I think the compiler puts `set!`'d variables into a box (or the moral equivalent of a box). If that's true, then I don't think there's performance savings either way. (This is based on what I remember from talking to Leif) To me, a box is for saying "this variable is going to be mutated".
The pull request has been merged as 8000d41389.
You can also view command line instructions.

Step 1:

From your project repository, check out a new branch and test the changes.
git checkout -b defmac-ellipses master
git pull origin defmac-ellipses

Step 2:

Merge the changes and update on Gitea.
git checkout master
git merge --no-ff defmac-ellipses
git push origin master
Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: mbutterick/beautiful-racket#10
Loading…
There is no content yet.