Comments (9)
FYI, I noticed this in the 'issue_166_string_ops' branch as I was trying out the new string functions.
from mal.
@ktodyruik I'm not seeing that behavior. Are you certain you are on the most recent version of the branch (what git hash are you testing against)? Also, what version of mono do you have?
from mal.
I built it using .NET 4.0 on Windows (not mono), and I checked out the
issue_166_string_ops branch.
Kerry
On Wed, Feb 17, 2016 at 8:20 AM, Joel Martin [email protected]
wrote:
@ktodyruik https://github.com/ktodyruik I'm not seeing that behavior.
Are you certain you are on the most recent version of the branch (what git
hash are you testing against)? Also, what version of mono do you have?—
Reply to this email directly or view it on GitHub
#177 (comment).
from mal.
I just tried it with the main branch. The issue appears to be in the _equal_Q type comparison.
from mal.
@ktodyruik interesting. But all the other tests work for you? For the statement (= kw :abc)
you shouldn't be getting a MalSymbol passed to the _equal_Q
function because the symbol should have been resolved to it's value from the environment (unless you intentional quote the symbol). I don't see that behavior myself with mono on Linux so I don't have a way to reproduce it in order to debug and come up with a fix. If it really is getting passed _equal_Q
as a symbol, then the problem is more likely to be in eval_ast
(where symbols are resolved in the environment) or EVAL
(which sets up the call to eval_ast
).
Also, are you using an unmodified source tree and are those complete (and only) commands that you ran? I only ask because the prompt should be user>
and not >
.
from mal.
@kanaka Thanks. Good suggestions. I have been playing around with the source code. I'll make sure I'm testing on a clean copy and take a closer look.
from mal.
@kanaka I just ran it on a fresh copy and it worked correctly. So I caused the bug somehow. Sorry to trouble you. :)
from mal.
@ktodyruik glad you figured it out.
from mal.
@kanaka I see my mistake now. I tried to create an alias from = to eq?. This was executed prior to the above equals expression.
I mistakenly wrote
(defmacro! eq? =)
instead of
(def! eq? =)
This caused the _equal_Q function to be a macro. Then, EVAL called macroexpand which evaluated the expression to false.
from mal.
Related Issues (20)
- what is the minimum requirement for the base language? HOT 2
- Verilog: is there a good reason mal has not been implemented? HOT 1
- VHDL: defmacro! doesn't modify existing functions HOT 1
- make "test^js^step0" fails -- Fatal error in , line 0 -- Check failed: result.second. HOT 1
- PDFs?
- Somebody should solve Rosetta Code challenges with mal
- Mal in Coq? HOT 2
- Apparently in step 3 'env' is a class or structure type, not an object HOT 2
- Questions on different design from lisp: Mal symbol do not use property lists? HOT 1
- Lots of unanswered merge requests HOT 1
- Why is quasiquote so complicated? HOT 3
- What with `` gensym '' HOT 2
- lexicial versus dynamic HOT 1
- Floats don't work in the python implementation. HOT 2
- Is #mal IRC channel still active? people seems tends to use discord now XD HOT 1
- Should `eval` use the top-level environment? HOT 1
- How is `cond` supposed to work? HOT 2
- Remaining impls to combine eval-ast/macroexpand into eval HOT 10
- common-lisp fails to build HOT 1
- Fix self-hosted test failures HOT 30
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mal.