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

use arc-like macro names #8

Open
avibryant opened this issue Aug 16, 2010 · 3 comments
Open

use arc-like macro names #8

avibryant opened this issue Aug 16, 2010 · 3 comments

Comments

@avibryant
Copy link

Again a matter of taste, but while I'm spamming your bug tracker: what do you think of the macro names used in Arc, instead of the more traditional lisp ones? Specifically I'm thinking of:

defun => def
lambda => fn
progn => do
setf => = (and then = has to become is)

And for the benefit of JS people, I would also suggest

defvar => var

@jbr
Copy link
Owner

jbr commented Aug 16, 2010

I like this. I'm not sure about fn, but all of the others sound way better than what I have. I'm not at all fixed on sticking to lisp conventions — the goal is to make a language that's more fun to write than javascript and isn't as arcane as lisp tends to be. Sensible, readable, macro names are a good step in that direction.

setf bothers me a lot when I'm using sibilant — I can never remember if I decided to go with setf or setq (like elisp). Set would be nice, but I used that for (set foo bar wibble) ;=> foo[bar] = wibble;. However, I'm not sure I like =. Maybe assign?

@avibryant
Copy link
Author

Assign is too long... maybe use set for variables, and put for arrays?

@evanrmurphy
Copy link

I'm exploring some different naming and variations on the basic operators in this fork. I've only just started, so not much is different yet, but already def has replaced defun and var has replaced defvar.

The global search-and-replace on lambda is more tricky. I've tried it twice now, and each time node complains when I try to recompile sibilant. Haven't gotten to the bottom of that one yet.

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

3 participants