Talk:Closure (computer science)

From Citizendium
Jump to navigation Jump to search
This article is a stub and thus not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
To learn how to update the categories for this article, see here. To update categories, edit the metadata template.
 Definition A feature in some computer programming languages that allows a procedure to bind to its environment, so that it may be called (and its internal variables utilized) from anywhere within the process, instead of using C-like scope rules to limit its availability. [d] [e]
Checklist and Archives
 Workgroup category Computers [Categories OK]
 Talk Archive none  English language variant American English

Title

Should the title not be Closure (computer science) (ie brackets) or possibly Closure (computer programming)? Richard Pinch 22:04, 6 January 2009 (UTC)

Done. I think we should probably move all the programming languages to brackets - ie. "Java (programming language)" instead of "Java programming language". When I talk to my programmer friends, I don't say "I was hacking away in Python programming language", I say "I was hacking away in Python". Bracket omission is a big problem in the CZ:Computers Workgroup and I think we need to remedy it. --Tom Morris 22:16, 6 January 2009 (UTC)
Gosh that was quick! Thanks, Richard Pinch 22:22, 6 January 2009 (UTC)
Actually, I think that we only need the brackets when there is disambiguation. I can't think of any reason why someone would need to distinguish between "Objective C (programming language" and any other kind of thing named "Objective C". The same is true for plenty of programming languages - JavaScript, FORTRAN, COBOL, Ada, PHP, ASP.NET, C++, C#, BCPL, LISP, Smalltalk, Clojure - well, the list goes on. There will be some programming languages that need disambiguation - Python, Java, Ruby - but I don't see any reason why we need to title a page "JavaScript programming language" rather than just "JavaScript". We don't have "Thomas Jefferson founding father" or "Spain country". I'll put this on CZ:Computers Workgroup's talk page and in the forum. The "programming language" thing is a hang-over from Wikipedia - and I don't know why they did it there either. Perhaps the only reason I can think of is that one might want to distinguish, say, "Ruby (language)" from "Ruby (interpreter)" - but there are plenty of people who use languages like Ruby, Python and Java and don't need to affix "programming language" on the end of the word to make themselves clear when they are talking about the language vs. the interpreter/compiler, platform etc. You'd just have a page called something like Java Virtual Machine or Java compilers or whatever. --Tom Morris 22:30, 6 January 2009 (UTC)

Reminder to whomever works on this next

It's worth quoting, somewhere in the article, what the iconic book Design Patterns said about complex features (such as closures) in programming languages, a warning of sorts. Also, some code examples would be helpful, especially in Javascript since lots of people don't realize it has them.Pat Palmer (talk) 23:16, 11 August 2020 (UTC)