I think I read somewhere that you could bind multiple definitions to a single name in scheme. I know I might be using the terminology incorrectly. By this I mean it is possible to do the following (which would be really handy to defining an operator)?
I believe I read something like this (I know this is not real syntax)
(let ()
define operator "+"
define operator "-"
define operator "*"
define operator "/"))
I want to test another variable against every operator.
I’m not really sure what you’re asking. Do you want a single procedure that can handle different types of arguments?
Are you interested in message passing?
Also the proper syntax for a
letbinding:It will be very hard to help more than this without you clarifying what it is you are trying to do.
EDIT: After your comment, I have a little bit better of an idea for what you’re looking for. There is not way to bind multiple values to the same name in the way that you mean. You are looking for a predicate that will tell you whether the thing you are looking at is one of your operators. From your comment it looked like you will be taking in a string, so that’s what this is based on:
If you are taking in a single string then you will need to split it into smaller parts. Racket has a built in procedure
regexp-splitthat will do this for you.