I can build strawmen too: - SmugCeeWeenie: I am so fast, look (oops, core dumped) - SmugGoWeenie: abstractions are so nasty we should get rid of functions, so that everyhting is laid out clearly. Hopefully, I have…
A functional approach: (defun mirror (tree) (when tree (tree (tree-data tree) (mirror (tree-right tree)) (mirror (tree-left tree))))) For completness, here are the definitions: (defpackage :trees (:use :cl) (:shadow…
I am not sure, but it seems that this may be implementation-dependent.
Macros are not needed. You only need the UNWIND-PROTECT special operator, which is the generic feature you are looking for.
Macros do not necessarly transform code at compile-time. A late-binding interpretation is possible. See for example http://programmers.stackexchange.com/a/274200/33157.
See also the Ada Gems serie of articles: http://www.adacore.com/adaanswers/gems/
When you try to apply all functions, the space becomes limited and you cannot see the resulting piece, especially when it gets tall.
> After doing a function rather than instantly showing the next cube put a .5 second opacity transition Please, no animation. Instantaneous feedback is perfect as it is. My 2cts.
I am surely missing something, why would you want to delay in the function?
Yes, the use of macros is not always justified in the examples, because Python is quite expressive already. However, the ability to have macros is orthogonal with the feature set of the language. What is interesting is…
Did you not read my reply, really? I already mentionned that with a Lisp like data-format, shared sub-expressions could be denoted using CL's reader variables: (document #1=(author (id "Bob") ... ) #2=(author (id…
> It's a tradeoff, of course. > Reasonable people can disagree about whether the tradeoff is worth it. > But that's my point: reasonable people can disagree. Sure, we disagree. I understand that you think there is a…
> Not only is he wrong, he's clearly wrong. You keep repeating that, but the more you discuss it, the less "clear" it is. > I don't understand your question. You acknowleded that we need to have a specification in order…
Just as code is data and data is code, meta-data is another form of data. Erik' quotes are all taken from https://groups.google.com/d/msg/comp.lang.lisp/8eUxiibm_zA/C...: > [...] is INTENDED to be a MODIFIER for FOO and…
Did you just summarize thousands of sentences in a single one? Neither <input type=button/> nor <input><type>button</type></input> does mean anything without a spec of your language, and trying to infer that…
Erik Naggum even answererd the question about ambiguity himself in the same thread: https://groups.google.com/d/msg/comp.lang.lisp/8eUxiibm_zA/i...
Slow clap
Common Lisp (ql:quickload :drakma) (ql:quickload :cl-json) (ql:quickload :local-time) (defparameter *data* (cl-json:decode-json-from-string (drakma:http-request…
Note that the given example has only one place where all combinations are defined. Not sure if this could be done in C++.
I don't see any kind of error handling, but if I understand correctly, in some cases in Go it is not necessary to check for errors directly (an errorneous output stream would do-nothing on write, for example). Do you…
Regarding 1., I don't think it follows that the pattern-macro will end up in one giant namespace. I'd love to understand why you think so. And for 2, even though what you say seems desirable on the surface, you still…
Macros will expand into lisp forms, not only expressions. Whether a form is an expression, a declaration or a pattern depends on the surrounding context. I would say that declarations, ... are not syntax but semantic…
Slap. Stop whining.
> Wait a second--is this really using exceptions for control flow? No. If it used exceptions for control-flow, the defined function would actually throw an exception. Here, we catch "Exceptional Problems" and ignore…
Common Lisp: maybe an Animagus, like Sirius Black. Or maybe Alastor Maugrey (Mad Eye), who is quite powerful but is not necessarly attractive.
I can build strawmen too: - SmugCeeWeenie: I am so fast, look (oops, core dumped) - SmugGoWeenie: abstractions are so nasty we should get rid of functions, so that everyhting is laid out clearly. Hopefully, I have…
A functional approach: (defun mirror (tree) (when tree (tree (tree-data tree) (mirror (tree-right tree)) (mirror (tree-left tree))))) For completness, here are the definitions: (defpackage :trees (:use :cl) (:shadow…
I am not sure, but it seems that this may be implementation-dependent.
Macros are not needed. You only need the UNWIND-PROTECT special operator, which is the generic feature you are looking for.
Macros do not necessarly transform code at compile-time. A late-binding interpretation is possible. See for example http://programmers.stackexchange.com/a/274200/33157.
See also the Ada Gems serie of articles: http://www.adacore.com/adaanswers/gems/
When you try to apply all functions, the space becomes limited and you cannot see the resulting piece, especially when it gets tall.
> After doing a function rather than instantly showing the next cube put a .5 second opacity transition Please, no animation. Instantaneous feedback is perfect as it is. My 2cts.
I am surely missing something, why would you want to delay in the function?
Yes, the use of macros is not always justified in the examples, because Python is quite expressive already. However, the ability to have macros is orthogonal with the feature set of the language. What is interesting is…
Did you not read my reply, really? I already mentionned that with a Lisp like data-format, shared sub-expressions could be denoted using CL's reader variables: (document #1=(author (id "Bob") ... ) #2=(author (id…
> It's a tradeoff, of course. > Reasonable people can disagree about whether the tradeoff is worth it. > But that's my point: reasonable people can disagree. Sure, we disagree. I understand that you think there is a…
> Not only is he wrong, he's clearly wrong. You keep repeating that, but the more you discuss it, the less "clear" it is. > I don't understand your question. You acknowleded that we need to have a specification in order…
Just as code is data and data is code, meta-data is another form of data. Erik' quotes are all taken from https://groups.google.com/d/msg/comp.lang.lisp/8eUxiibm_zA/C...: > [...] is INTENDED to be a MODIFIER for FOO and…
Did you just summarize thousands of sentences in a single one? Neither <input type=button/> nor <input><type>button</type></input> does mean anything without a spec of your language, and trying to infer that…
Erik Naggum even answererd the question about ambiguity himself in the same thread: https://groups.google.com/d/msg/comp.lang.lisp/8eUxiibm_zA/i...
Slow clap
Common Lisp (ql:quickload :drakma) (ql:quickload :cl-json) (ql:quickload :local-time) (defparameter *data* (cl-json:decode-json-from-string (drakma:http-request…
Note that the given example has only one place where all combinations are defined. Not sure if this could be done in C++.
I don't see any kind of error handling, but if I understand correctly, in some cases in Go it is not necessary to check for errors directly (an errorneous output stream would do-nothing on write, for example). Do you…
Regarding 1., I don't think it follows that the pattern-macro will end up in one giant namespace. I'd love to understand why you think so. And for 2, even though what you say seems desirable on the surface, you still…
Macros will expand into lisp forms, not only expressions. Whether a form is an expression, a declaration or a pattern depends on the surrounding context. I would say that declarations, ... are not syntax but semantic…
Slap. Stop whining.
> Wait a second--is this really using exceptions for control flow? No. If it used exceptions for control-flow, the defined function would actually throw an exception. Here, we catch "Exceptional Problems" and ignore…
Common Lisp: maybe an Animagus, like Sirius Black. Or maybe Alastor Maugrey (Mad Eye), who is quite powerful but is not necessarly attractive.