This is the
talk page for discussing improvements to the
Common Lisp article. This is not a forum for general discussion of the article's subject. |
Article policies
|
Find sources: Google ( books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
This article is rated B-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | |||||||||||||||||||||||||||||||
|
I am no lisp expert but I seem to remember there are lisps that compile programs to fortran - so a fortran compiler can translate them into assembler. The article seems only to mention C as an intermediate language. -- Peterpall ( talk) 19:14, 22 July 2014 (UTC)
1) This section indicates that there are dynamic, global and lexical "environements". The difference between what is meant by "scope" and "environment" should be explained.
2) The description of the Global "environment" does not explain what a global environment is.
3) The statement that function bindings cannot be dynamically scoped using FLET is too much detail for this section, which I believe should be higher-level.
I think that the 'See Also' link to Kyoto Common Lisp is irrelevant and should be flushed. KCL is now only of historical interest since it does not conform to the ANSI standard. Its successors, among them GNU Common Lisp (GCL) are out there, but frankly I don't think that there should even be entries for them, or even perhaps for WCL which is also listed. If nobody complains in a few days then I'll remove those links. -- James (Fri Mar 26 08:48:54 UTC 2004)
It is not true that Scheme introduced static scoping, and it is very unlikely to be true that ZetaLisp was dynamically scoped. Before Scheme, you had two behaviors; an implementation's interpreter usually used dynamically scoped variables, while its compiler used statically scoped variables. This is the case in Lisp 1.5 (I have the manual which documents that), MACLisp, and very probably ZetaLisp (though I haven't tried in this last one). Since ZetaLisp was basically MACLisp with some additions, and both have greatly contributed to the design of Common Lisp, the statement "Most of the Lisp systems whose designs contributed to Common Lisp [...] used only dynamically-scoped variables" is incorrect. I have therefore corrected the article. -- Sam 01:48, 17 Feb 2005 (UTC)
EVAL
or collide with SPECIAL
variables. Lexicality, such as it was in MACLISP, was quite impoverished. It did not extend to the offering of closures. Joel Moses, if I recall correctly, wrote a paper about this issue--something like The Function of FUNCTION
in Lisp or some such. And MACLISP had a *FUNCTION
operator that tried to be a feeble workaround to a subset of the problems caused by the lack of lexical closures. Zetalisp had a LET-CLOSED
operator that did something even weirder. People knew there was a problem but they hadn't articulated what needed to be fixed, I think. Scheme helped the Lisp community sort that out, drawing on ideas from ALGOL and the Lambda Calculus. And CL re-integrated the Scheme ideas into the MACLISP family. --
Netsettler 07:53, 14 November 2007 (UTC)Common Lisp automatically coerces numeric values among these types as appropriate.
What does that mean? -- maru 21:34, 12 May 2005 (UTC)
The article contains a paragraph which tells us how to use a macro but it does not tell how to create a function.
Shouldn't CLOS be mentioned somewhere on here, if only to demonstrate that Common Lisp is a multi-paradigm functional language. However, I'm not an experienced enough Lisper to make such an edit properly.
For anyone interested there is a Common Lisp Wikibook. So far I'm the only one who's editing it. I'd like some more collaboration... Grue 13:56, 10 January 2006 (UTC)
I fixed some minor factual errors. Or, not so minor from an implementor's point of view, e.g., mine.
Neither DO
nor DEFUN
are special operators, and conditions aren't necessarily special types. Conditions could be special types, but implementors can use defstruct or defclass much more easily.
Klodolph 07:33, 17 January 2006 (UTC)
I removed the following text from the "Scalar types" section because it's confused, conflating symbols as data (which are not variables) and symbols in code (which are):
Also, I don't like this "Class instances are similar to structures, but created by the object system, CLOS." Structs are as much a part of CLOS as anything else; they're just a different metaclass (structure-class rather than standard-class per default)
Tacitus Prime 11:44, 2 November 2006 (UTC)
Someone please rephrase this: "Anonymous functions are defined using the lambda special operator." Lambda is not a special operator. Tacitus Prime 11:49, 2 November 2006 (UTC)
This article says "imperative, functional and object-oriented", but only the latter 2 are given at Multi-paradigm_programming_language. I'm too lisp-newbie to fix it. Hope this helps, "alyosha" (talk) 18:06, 23 June 2007 (UTC)
It seems to me that Lisp's availability of property lists permits it to also be listed as supporting the declarative programming style. Many important programs are data driven. Moreover, it is possible to use Lisp syntax simply for data file storage by non-Lisp applications; certainly that qualifies as much as HTML (the example given for declarative language style). -- Netsettler ( talk) 21:24, 14 June 2009 (UTC)
Ah, the fuzziness of paradigms. I think a lot of the people who work or do research with "functional" languages have something stricter in mind than Common Lisp. Difficult to make that point when you only have "yes" or "no" as an answer to "is it functional?" 78.86.93.35 ( talk) 01:46, 16 July 2009 (UTC)
; construction - variables existing only in 'let' block, so you can easily give any new ; values to any existing variables without changing them. Old values are restored after ; the end of the block. (let ((a 6) (b 4))
The comment is not a good explanation. It's not that the old values are "restored", and this might be confusing to someone coming from another language. Rather, the scope of a and b is limited to this block and those bindings are not seen outside it. —The preceding unsigned comment was added by Subsolar ( talk • contribs).
There is none. When was ANSI Common LISP first established as a standard? What revisions has it gone through? Why do we need a standard for LISP? I think answers to these questions belong in the article. Bunnymittens 15:27, 16 November 2007 (UTC)
The add example is a terrible example, since string concatenation doesn't have the same algebraic properties as numeric addition. People should not be defining methods that do utterly different things. Unlike the "overloaded funtions" found in other languages, generic functions are intended for use for use where the different implementations follow the same abstract description, and this example blurs that. Couldn't we please think up an example that does something properly generic, such as a user-defined walk generic function that works like CL's mapc but works not just on lists and vectors but also arrays of any arity, and maybe even hash tables, packages, etc? If one was going to keep the add concept, it should be used to show a user-defined numeric datatype, such as, perhaps, a polar complex form, an irrational number, a symbolic name, a repeated decimal, etc. -- Netsettler ( talk) 02:51, 28 January 2008 (UTC)
I've rewritten the Scheme article mainly from the point of view of the contrast between Scheme and Common Lisp. I'd be grateful for any help from someone with extensive working experience of programming or writing about Common Lisp, in proofing it and correcting any errors. -- TS 20:28, 19 October 2009 (UTC)
There was a recent edit removing a large block of discussion text, saying it removed 2+ year stale discussion. At a quick glance one or more of my own comments from last year were archived with that, so I'm not sure how careful that removal was. But either way, I felt the removal was not helpful. Can someone cross-reference the authority by which such archiving was done and tell me if there is an appeal procedure for bringing it back? I'd personally rather we have a rich tree of discussion of known issues on this page than have that discussion restarted and almost surely doomed to repeat itself. I see no reason to believe that those issues went away simply by removing the text. It seems to me more likely that if there are unresolved issues, it's because of either the complexity of Wikipedia policies for editing or the lack of understanding by individuals, causing a cautiousness or an impasse that keeps the items from being promptly addressed. --Kent Pitman, Project Editor for and technical contributor to the 1994 ANSI Common Lisp standard ( Netsettler ( talk) 16:37, 16 September 2010 (UTC))
I have seen the following text in the article and have been wondering what it really meant:
Function bindings cannot be dynamically scoped (but, in recognition of the usefulness of dynamically scoped function bindings, a portable library exists now which provides them).
Considering that functions are first class objects in Common Lisp, they can easily be assigned to dynamically scoped variables, rebound dynamically using LET and called using FUNCALL or APPLY. Also, it claims that a portable Common Lisp library provides the functionality, which also implies that the language somehow allows it.
I would propose the following sentence instead, if others agree:
Function bindings cannot be dynamically scoped using FLET
(which only provides lexically scoped function bindings), but function objects (a first-level object in Common Lisp) can be assigned to dynamically scoped variables, bound using LET
in dynamic scope, then called using FUNCALL
or APPLY
.
66.11.179.30 (
talk) 12:58, 7 January 2011 (UTC)
Personally, I would prefer the proposed rewording. This is an entry about Common Lisp as a language, not about its various libraries. It already suffers under the weight of confusing CLTL, CLTL2, and ANSI CL without also confusing the language and additional libraries. The rewording discusses linguistic capability in a way that seems adequate. I would suggest you just "be bold" (as the wiki guidelines suggest) and make the proposed change. See if anyone raises objections. I doubt they will.--Kent Pitman ( Netsettler ( talk) 18:50, 7 January 2011 (UTC))
Looks like the banner was added as part of an automated tool. When I checked the user page for the editor who added it, I found an older unanswered comment asking why it was added. I'm leaving the inline citations tag as it looks like there are basically none. Cmccormick8 ( talk) 12:42, 24 November 2011 (UTC)
An anonymous editor (78.0.193.224, 93.136.81.79, 93.136.64.173, 93.139.90.188 - all from Croatia, see Whois) claims that Newlisp is influenced by Common Lisp. As evidence he presented a link to a forum post http://newlispfanclub.alh.net/forum/viewtopic.php?p=8360#p8360 (a 'newLISP Fan Club').
The forum post is neither a credible source nor does it give any detail.
Compare that to Common Lisp itself, which has listed and described its influences in Common Lisp the Language by Guy Steele (1984) in Chapter 1: 'COMMON LISP is a new dialect of LISP, a successor to Maclisp, influenced strongly by ZetaLisp and also to some extent by Scheme and Interlisp.'. The book also decribes for many Lisp functionality its compatibility to earlier dialects. It is further described in the ANSI Common Lisp standard. See chapter 1.1: 'The primary influences on Common Lisp were Lisp Machine Lisp, MacLisp, NIL, S-1 Lisp, Spice Lisp and Scheme.' Additionally a mail archive describes the discussions of the designers of Common Lisp in detail.
There are no such sources for Newlisp which describe its influences. The Newlisp website ( http://www.newlisp.org/index.cgi?FAQ) states: 'Books about Common LISP or Scheme, two different, older standards of LISP, teach you concepts, you don't need to know for learning newLISP. Many times newLISP expresses things differently from traditional LISPs, and in ways more applicable to today's programming tasks and on a higher level closer to the problem at hand.' The newLISP manual does not even mention Common Lisp: http://www.newlisp.org/downloads/newlisp_manual.html
Lutz Mueller, the designer of newLISP in an interview ( http://www.softwarebyrob.com/2007/04/19/interview-with-lutz-mueller-creator-of-newlisp/) : 'Traditional books on Common LISP or Scheme are not recommended for learning newLISP, because they emphasize a style of programming not suited for newLISP.'. He explicitly discourages newLISP users to use Common Lisp or Scheme books, because they are useless for newLISP.
Thus we can conclude that newLISP is not related to Common Lisp. -- Joswig ( talk) 20:38, 30 March 2013 (UTC)
The forum posts are credible sources when they talk about themselves. See WP:SELFSOURCE. You, Joswig, particularly, proved that you understand that when you submitted entry (10:19, 9 February 2013) that Common Lisp influenced R, supported only by forum article. The source claims:
"newLISP most of the time has chosen existent wordings of functions from either Common Lisp or Scheme or earlier incarnations of LISP. This makes it easier for switchers and builds on an existing culture. "
So we have credible source that claims Newlisp was influenced by CL. That's all what is needed on this place.
In the rest of your post, you try to show that you do not agree with that claim. You have the right on your opinion, but you cannot push it in wikipedia article - we can only list credible sources. In case you find the source that claims that Newlisp wasn't influenced by CL - we can note that there are conflicting opinions, present both sides - and leave the conclusion to the readers.
78.0.193.224 ( talk) 21:43, 30 March 2013 (UTC)
'newLISP most of the time has chosen existent wordings of functions from either Common Lisp or Scheme or earlier incarnations of LISP. This makes it easier for switchers and builds on an existing culture.'
This is in direct contradiction to the quotes I gave you, from the same author. Plus it is totally unspecific. Thus it is useless.
Note also that the linked discussion was specific about an influence of Scheme, not Common Lisp. Again, useless.
Even a casual look at the newLISP manual shows that the number of symbols having the same name as in Common Lisp is minor and most of the time they have a different arglist and/ or are doing something different. Core concepts are different and not taken from Common Lisp.
Arithmetic operators are from earlier LISP, comparison are from earlier LISP, logic operators are from earlier LISP, APPEND is from earlier LISP, APPLY is from earlier LISP, ASSOC is from earlier LISP, CASE is different, CATCH is from earlier LISP, CHAR is different, CLOSE is from earlier LISP, COND is from earlier LISP, CONS is from earlier LISP, COUNT does something different, DELETE does something different, ...
There are influences from Scheme and 'earlier incarnations of LISP' - but none from Common Lisp.
Given the contradicting claims made by Lutz Mueller plus the evidence of actually looking at the manual, the unspecific remark made by him shows how unreliable that forum post is as a credible source.
For R I can provide a lot of other sources discussing where it is based on Common Lisp. Plus the post I cited gave a very specific example: the Condition System of Common Lisp was influencing R and the author even gave a reference to the original designer of that Common Lisp facility. A talk discussing CL inspired facilities in R is http://zslug.files.wordpress.com/2011/04/zslug-slides-rhodes-r.pdf
Show us a source which describes which parts of newLISP are actually influenced by Common Lisp and/or discusses the Common Lisp influence in detail.
Joswig ( talk) 23:18, 30 March 2013 (UTC)
'newLISP most of the time has chosen existent wordings of functions from either Common Lisp or Scheme or earlier incarnations of LISP. This makes it easier for switchers and builds on an existing culture.'
Joswig, claims that "many times newLISP expresses things differently" and that Common Lisp and Scheme books "emphasize a style of programming not suited for newLISP" do not imply that there was no influence. Only that there are important differences. There is no contradiction between "influenced" and "(very) different." It is easy to find examples that prove that it is not contradiction. So, no, Lutz Mueller is not in contradiction with himself.
Your attempts to prove that there is no influence from Common Lisp miss the point on many ways. Only one is important: it is your original research. If you publish your original research, then we might cite it as conflicting opinion and leave to readers to conclude who was right, Mueller or Joswig. Until then, your original research doesn't exist for our purpose. We cannot discuss merit of the things here - we can only cite existing sources.
And we have credible source. Self-published sources are credible if they talk about themselves. WP:SELFSOURCE. Again, you proved that you understand that when you submitted entry for R supported by self-published source (10:19, 9 February 2013).
93.136.13.111 ( talk) 01:00, 31 March 2013 (UTC)
---
'... do not imply that there was no influence.'
Show us a source which describes which parts of newLISP are actually influenced by Common Lisp and/or discusses the Common Lisp influence in detail.
Where is the influence described? Source?
'Self-published sources are credible if they talk about themselves'
Mueller is advertizing his own creation and contradicting himself. That's not a credible source.
'Only one is important: it is your original research'
You edited the Common Lisp article to add newLISP as an influenced language. You need to provide a credible source. All you came up was a remark of Lutz Mueller on the newLISP fan club website. What parts of newLISP were influenced by Common Lisp?
Joswig ( talk) 01:15, 31 March 2013 (UTC)
You assume that description "in more details" is needed. But it is not. This statement
'newLISP most of the time has chosen existent wordings of functions from either Common Lisp or Scheme or earlier incarnations of LISP. This makes it easier for switchers and builds on an existing culture.'
is claim that Newlisp is influenced by Common Lisp. That is all what is needed. It is credible source, because WP:SELFSOURCE is credible when people talk about themselves. Yworo and I already discussed the issue month ago and reached consensus. Furthermore, you have already proven you accept that when you submitted entry for R supported by self-published source (10:19, 9 February 2013). So, even with lot of effort, I cannot see you right here. If you find conflicting opinion, we'll present both.
93.136.13.111 ( talk) 02:30, 31 March 2013 (UTC)
Again, you fail to provide any credible source. Wikipedia is not an advertising platform. Link to credible and detailed sources.
Again, for R there is description what parts are influenced by Common Lisp. Mentioned in that post was specifically the condition system. For newLISP all that exists are contradicting and unspecific statements of the author himself. Common Lisp is not even mentioned in the newLISP manual once. There are no articles describing the evolution of newLISP and the influence of Common Lisp on newLISP. There are no articles listing the functionality taken from Common Lisp. Nothing. There is nothing.
I also propose that you improve the newLISP article on Wikipedia instead. There are indications that it needs work.
Joswig ( talk) 02:43, 31 March 2013 (UTC)
The source is this one:
http://newlispfanclub.alh.net/forum/viewtopic.php?p=8360#p8360
That source is already discussed and consensus was reached by Yworo's last edit of 4. March. 18:37 which I accepted. You're one who attempt to change that consensus. That's why you started this Talk, and according to wikipedia rules, we should discuss that until we reach new consensus. Until we reach it, previous consensus stay.
The source is credible - because of WP:SELFSOURCE rule, which is generally accepted, including previous consensus, and because you applied same rule. (10:19, 9 February 2013).
Then, it appears you assume that source should be more detailed. I don't see the reason for that. 'newLISP most of the time has chosen existent wordings of functions from either Common Lisp or Scheme or earlier incarnations of LISP' clearly claims that Newlisp is influenced by CL and that is all what is needed.
I'm not happy with that edit war, however, until we reach new consensus, previous consensus should stay, so, please, don't revert it any more.
93.136.13.111 ( talk) 04:07, 31 March 2013 (UTC)
A suggestion if I may, if there is debate to weather or not the source is reliable why not take it over to the folks at The Reliable Source Noticeboard or start a RFC on the subject - Cameron11598 (Converse) 04:16, 31 March 2013 (UTC)
Thank you for stepping in. 93.136.13.111 ( talk) 04:29, 31 March 2013 (UTC)
WP:SELFSOURCE does not apply here, because it is the only source and totally unspecific. See the rules. As mentioned, for R there are multiple independent sources describing various influences. This is not disputed. For newLISP there is no such thing. See clause 5.
We can also see that you randomly picked Common Lisp. Lutz Mueller mentioned also Scheme, C and Pascal. Yet you have not added newLISP there under influenced languages.
80.171.227.139 ( talk) 08:58, 31 March 2013 (UTC)
I've added a 'Libraries' section. One of the main discussions about Common Lisp vs. other programming languages was the topic of libraries and library manager. A few years ago Zach Bean introduced Quicklisp, which gives central access to many libraries. Other languages have library managers to and describe it on Wikipedia. for example Ruby:
/info/en/?search=Ruby_(programming_language)#Repositories_and_libraries
I've also added a link to an external source where a Common Lisp user provided reference material.
User:Macrakis claims that this is not notable. Opinions?
Joswig ( talk) 15:35, 15 June 2014 (UTC)
I don't think we should be mentioning Quicklisp here as it is not an official library manager, closed source not open and maintained solely by one person. It is very popular but creating a section for Library managers elevates Quicklisp above to something that is closer to an officially sanctioned resource, when it is just a recommended resource. if it was a more open project, I would consider including it here, but I think rather we should expand this section to include ASDF and other tools, and perhaps then mention Quicklisp. — Preceding unsigned comment added by 5.31.23.168 ( talk) 17:14, 23 October 2020 (UTC)
Hello fellow Wikipedians,
I have just modified 3 external links on Common Lisp. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
When you have finished reviewing my changes, you may follow the instructions on the template below to fix any issues with the URLs.
This message was posted before February 2018.
After February 2018, "External links modified" talk page sections are no longer generated or monitored by InternetArchiveBot. No special action is required regarding these talk page notices, other than
regular verification using the archive tool instructions below. Editors
have permission to delete these "External links modified" talk page sections if they want to de-clutter talk pages, but see the
RfC before doing mass systematic removals. This message is updated dynamically through the template {{
source check}}
(last update: 18 January 2022).
Cheers.— InternetArchiveBot ( Report bug) 10:26, 11 August 2017 (UTC)
Corman Common Lisp is not free! 31.48.245.90 ( talk) 11:31, 4 November 2017 (UTC)
Corman Common Lisp has been published on the MIT License: https://github.com/sharplispers/cormanlisp Joswig ( talk) 23:33, 12 February 2018 (UTC)
Might want to add SISCOG as another company using CL to schedule trains and their staff for the London Underground and several other major train systems across Europe. Won several AAAI awards - see Wikipedia article for those. On CL, see:
{{
cite web}}
: Unknown parameter |deadurl=
ignored (|url-status=
suggested) (
help)-- Paulscrawl ( talk) 04:52, 27 September 2018 (UTC)
I know that the original author probably added them as a service for readers, but in my opinion, large parts of the article should be moved to Wikibooks ( WP:NOTMANUAL), including most Code examples and a few too-detailed explanations of the condition system, macros and the CLOS.
Opinions?
This is the
talk page for discussing improvements to the
Common Lisp article. This is not a forum for general discussion of the article's subject. |
Article policies
|
Find sources: Google ( books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
This article is rated B-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | |||||||||||||||||||||||||||||||
|
I am no lisp expert but I seem to remember there are lisps that compile programs to fortran - so a fortran compiler can translate them into assembler. The article seems only to mention C as an intermediate language. -- Peterpall ( talk) 19:14, 22 July 2014 (UTC)
1) This section indicates that there are dynamic, global and lexical "environements". The difference between what is meant by "scope" and "environment" should be explained.
2) The description of the Global "environment" does not explain what a global environment is.
3) The statement that function bindings cannot be dynamically scoped using FLET is too much detail for this section, which I believe should be higher-level.
I think that the 'See Also' link to Kyoto Common Lisp is irrelevant and should be flushed. KCL is now only of historical interest since it does not conform to the ANSI standard. Its successors, among them GNU Common Lisp (GCL) are out there, but frankly I don't think that there should even be entries for them, or even perhaps for WCL which is also listed. If nobody complains in a few days then I'll remove those links. -- James (Fri Mar 26 08:48:54 UTC 2004)
It is not true that Scheme introduced static scoping, and it is very unlikely to be true that ZetaLisp was dynamically scoped. Before Scheme, you had two behaviors; an implementation's interpreter usually used dynamically scoped variables, while its compiler used statically scoped variables. This is the case in Lisp 1.5 (I have the manual which documents that), MACLisp, and very probably ZetaLisp (though I haven't tried in this last one). Since ZetaLisp was basically MACLisp with some additions, and both have greatly contributed to the design of Common Lisp, the statement "Most of the Lisp systems whose designs contributed to Common Lisp [...] used only dynamically-scoped variables" is incorrect. I have therefore corrected the article. -- Sam 01:48, 17 Feb 2005 (UTC)
EVAL
or collide with SPECIAL
variables. Lexicality, such as it was in MACLISP, was quite impoverished. It did not extend to the offering of closures. Joel Moses, if I recall correctly, wrote a paper about this issue--something like The Function of FUNCTION
in Lisp or some such. And MACLISP had a *FUNCTION
operator that tried to be a feeble workaround to a subset of the problems caused by the lack of lexical closures. Zetalisp had a LET-CLOSED
operator that did something even weirder. People knew there was a problem but they hadn't articulated what needed to be fixed, I think. Scheme helped the Lisp community sort that out, drawing on ideas from ALGOL and the Lambda Calculus. And CL re-integrated the Scheme ideas into the MACLISP family. --
Netsettler 07:53, 14 November 2007 (UTC)Common Lisp automatically coerces numeric values among these types as appropriate.
What does that mean? -- maru 21:34, 12 May 2005 (UTC)
The article contains a paragraph which tells us how to use a macro but it does not tell how to create a function.
Shouldn't CLOS be mentioned somewhere on here, if only to demonstrate that Common Lisp is a multi-paradigm functional language. However, I'm not an experienced enough Lisper to make such an edit properly.
For anyone interested there is a Common Lisp Wikibook. So far I'm the only one who's editing it. I'd like some more collaboration... Grue 13:56, 10 January 2006 (UTC)
I fixed some minor factual errors. Or, not so minor from an implementor's point of view, e.g., mine.
Neither DO
nor DEFUN
are special operators, and conditions aren't necessarily special types. Conditions could be special types, but implementors can use defstruct or defclass much more easily.
Klodolph 07:33, 17 January 2006 (UTC)
I removed the following text from the "Scalar types" section because it's confused, conflating symbols as data (which are not variables) and symbols in code (which are):
Also, I don't like this "Class instances are similar to structures, but created by the object system, CLOS." Structs are as much a part of CLOS as anything else; they're just a different metaclass (structure-class rather than standard-class per default)
Tacitus Prime 11:44, 2 November 2006 (UTC)
Someone please rephrase this: "Anonymous functions are defined using the lambda special operator." Lambda is not a special operator. Tacitus Prime 11:49, 2 November 2006 (UTC)
This article says "imperative, functional and object-oriented", but only the latter 2 are given at Multi-paradigm_programming_language. I'm too lisp-newbie to fix it. Hope this helps, "alyosha" (talk) 18:06, 23 June 2007 (UTC)
It seems to me that Lisp's availability of property lists permits it to also be listed as supporting the declarative programming style. Many important programs are data driven. Moreover, it is possible to use Lisp syntax simply for data file storage by non-Lisp applications; certainly that qualifies as much as HTML (the example given for declarative language style). -- Netsettler ( talk) 21:24, 14 June 2009 (UTC)
Ah, the fuzziness of paradigms. I think a lot of the people who work or do research with "functional" languages have something stricter in mind than Common Lisp. Difficult to make that point when you only have "yes" or "no" as an answer to "is it functional?" 78.86.93.35 ( talk) 01:46, 16 July 2009 (UTC)
; construction - variables existing only in 'let' block, so you can easily give any new ; values to any existing variables without changing them. Old values are restored after ; the end of the block. (let ((a 6) (b 4))
The comment is not a good explanation. It's not that the old values are "restored", and this might be confusing to someone coming from another language. Rather, the scope of a and b is limited to this block and those bindings are not seen outside it. —The preceding unsigned comment was added by Subsolar ( talk • contribs).
There is none. When was ANSI Common LISP first established as a standard? What revisions has it gone through? Why do we need a standard for LISP? I think answers to these questions belong in the article. Bunnymittens 15:27, 16 November 2007 (UTC)
The add example is a terrible example, since string concatenation doesn't have the same algebraic properties as numeric addition. People should not be defining methods that do utterly different things. Unlike the "overloaded funtions" found in other languages, generic functions are intended for use for use where the different implementations follow the same abstract description, and this example blurs that. Couldn't we please think up an example that does something properly generic, such as a user-defined walk generic function that works like CL's mapc but works not just on lists and vectors but also arrays of any arity, and maybe even hash tables, packages, etc? If one was going to keep the add concept, it should be used to show a user-defined numeric datatype, such as, perhaps, a polar complex form, an irrational number, a symbolic name, a repeated decimal, etc. -- Netsettler ( talk) 02:51, 28 January 2008 (UTC)
I've rewritten the Scheme article mainly from the point of view of the contrast between Scheme and Common Lisp. I'd be grateful for any help from someone with extensive working experience of programming or writing about Common Lisp, in proofing it and correcting any errors. -- TS 20:28, 19 October 2009 (UTC)
There was a recent edit removing a large block of discussion text, saying it removed 2+ year stale discussion. At a quick glance one or more of my own comments from last year were archived with that, so I'm not sure how careful that removal was. But either way, I felt the removal was not helpful. Can someone cross-reference the authority by which such archiving was done and tell me if there is an appeal procedure for bringing it back? I'd personally rather we have a rich tree of discussion of known issues on this page than have that discussion restarted and almost surely doomed to repeat itself. I see no reason to believe that those issues went away simply by removing the text. It seems to me more likely that if there are unresolved issues, it's because of either the complexity of Wikipedia policies for editing or the lack of understanding by individuals, causing a cautiousness or an impasse that keeps the items from being promptly addressed. --Kent Pitman, Project Editor for and technical contributor to the 1994 ANSI Common Lisp standard ( Netsettler ( talk) 16:37, 16 September 2010 (UTC))
I have seen the following text in the article and have been wondering what it really meant:
Function bindings cannot be dynamically scoped (but, in recognition of the usefulness of dynamically scoped function bindings, a portable library exists now which provides them).
Considering that functions are first class objects in Common Lisp, they can easily be assigned to dynamically scoped variables, rebound dynamically using LET and called using FUNCALL or APPLY. Also, it claims that a portable Common Lisp library provides the functionality, which also implies that the language somehow allows it.
I would propose the following sentence instead, if others agree:
Function bindings cannot be dynamically scoped using FLET
(which only provides lexically scoped function bindings), but function objects (a first-level object in Common Lisp) can be assigned to dynamically scoped variables, bound using LET
in dynamic scope, then called using FUNCALL
or APPLY
.
66.11.179.30 (
talk) 12:58, 7 January 2011 (UTC)
Personally, I would prefer the proposed rewording. This is an entry about Common Lisp as a language, not about its various libraries. It already suffers under the weight of confusing CLTL, CLTL2, and ANSI CL without also confusing the language and additional libraries. The rewording discusses linguistic capability in a way that seems adequate. I would suggest you just "be bold" (as the wiki guidelines suggest) and make the proposed change. See if anyone raises objections. I doubt they will.--Kent Pitman ( Netsettler ( talk) 18:50, 7 January 2011 (UTC))
Looks like the banner was added as part of an automated tool. When I checked the user page for the editor who added it, I found an older unanswered comment asking why it was added. I'm leaving the inline citations tag as it looks like there are basically none. Cmccormick8 ( talk) 12:42, 24 November 2011 (UTC)
An anonymous editor (78.0.193.224, 93.136.81.79, 93.136.64.173, 93.139.90.188 - all from Croatia, see Whois) claims that Newlisp is influenced by Common Lisp. As evidence he presented a link to a forum post http://newlispfanclub.alh.net/forum/viewtopic.php?p=8360#p8360 (a 'newLISP Fan Club').
The forum post is neither a credible source nor does it give any detail.
Compare that to Common Lisp itself, which has listed and described its influences in Common Lisp the Language by Guy Steele (1984) in Chapter 1: 'COMMON LISP is a new dialect of LISP, a successor to Maclisp, influenced strongly by ZetaLisp and also to some extent by Scheme and Interlisp.'. The book also decribes for many Lisp functionality its compatibility to earlier dialects. It is further described in the ANSI Common Lisp standard. See chapter 1.1: 'The primary influences on Common Lisp were Lisp Machine Lisp, MacLisp, NIL, S-1 Lisp, Spice Lisp and Scheme.' Additionally a mail archive describes the discussions of the designers of Common Lisp in detail.
There are no such sources for Newlisp which describe its influences. The Newlisp website ( http://www.newlisp.org/index.cgi?FAQ) states: 'Books about Common LISP or Scheme, two different, older standards of LISP, teach you concepts, you don't need to know for learning newLISP. Many times newLISP expresses things differently from traditional LISPs, and in ways more applicable to today's programming tasks and on a higher level closer to the problem at hand.' The newLISP manual does not even mention Common Lisp: http://www.newlisp.org/downloads/newlisp_manual.html
Lutz Mueller, the designer of newLISP in an interview ( http://www.softwarebyrob.com/2007/04/19/interview-with-lutz-mueller-creator-of-newlisp/) : 'Traditional books on Common LISP or Scheme are not recommended for learning newLISP, because they emphasize a style of programming not suited for newLISP.'. He explicitly discourages newLISP users to use Common Lisp or Scheme books, because they are useless for newLISP.
Thus we can conclude that newLISP is not related to Common Lisp. -- Joswig ( talk) 20:38, 30 March 2013 (UTC)
The forum posts are credible sources when they talk about themselves. See WP:SELFSOURCE. You, Joswig, particularly, proved that you understand that when you submitted entry (10:19, 9 February 2013) that Common Lisp influenced R, supported only by forum article. The source claims:
"newLISP most of the time has chosen existent wordings of functions from either Common Lisp or Scheme or earlier incarnations of LISP. This makes it easier for switchers and builds on an existing culture. "
So we have credible source that claims Newlisp was influenced by CL. That's all what is needed on this place.
In the rest of your post, you try to show that you do not agree with that claim. You have the right on your opinion, but you cannot push it in wikipedia article - we can only list credible sources. In case you find the source that claims that Newlisp wasn't influenced by CL - we can note that there are conflicting opinions, present both sides - and leave the conclusion to the readers.
78.0.193.224 ( talk) 21:43, 30 March 2013 (UTC)
'newLISP most of the time has chosen existent wordings of functions from either Common Lisp or Scheme or earlier incarnations of LISP. This makes it easier for switchers and builds on an existing culture.'
This is in direct contradiction to the quotes I gave you, from the same author. Plus it is totally unspecific. Thus it is useless.
Note also that the linked discussion was specific about an influence of Scheme, not Common Lisp. Again, useless.
Even a casual look at the newLISP manual shows that the number of symbols having the same name as in Common Lisp is minor and most of the time they have a different arglist and/ or are doing something different. Core concepts are different and not taken from Common Lisp.
Arithmetic operators are from earlier LISP, comparison are from earlier LISP, logic operators are from earlier LISP, APPEND is from earlier LISP, APPLY is from earlier LISP, ASSOC is from earlier LISP, CASE is different, CATCH is from earlier LISP, CHAR is different, CLOSE is from earlier LISP, COND is from earlier LISP, CONS is from earlier LISP, COUNT does something different, DELETE does something different, ...
There are influences from Scheme and 'earlier incarnations of LISP' - but none from Common Lisp.
Given the contradicting claims made by Lutz Mueller plus the evidence of actually looking at the manual, the unspecific remark made by him shows how unreliable that forum post is as a credible source.
For R I can provide a lot of other sources discussing where it is based on Common Lisp. Plus the post I cited gave a very specific example: the Condition System of Common Lisp was influencing R and the author even gave a reference to the original designer of that Common Lisp facility. A talk discussing CL inspired facilities in R is http://zslug.files.wordpress.com/2011/04/zslug-slides-rhodes-r.pdf
Show us a source which describes which parts of newLISP are actually influenced by Common Lisp and/or discusses the Common Lisp influence in detail.
Joswig ( talk) 23:18, 30 March 2013 (UTC)
'newLISP most of the time has chosen existent wordings of functions from either Common Lisp or Scheme or earlier incarnations of LISP. This makes it easier for switchers and builds on an existing culture.'
Joswig, claims that "many times newLISP expresses things differently" and that Common Lisp and Scheme books "emphasize a style of programming not suited for newLISP" do not imply that there was no influence. Only that there are important differences. There is no contradiction between "influenced" and "(very) different." It is easy to find examples that prove that it is not contradiction. So, no, Lutz Mueller is not in contradiction with himself.
Your attempts to prove that there is no influence from Common Lisp miss the point on many ways. Only one is important: it is your original research. If you publish your original research, then we might cite it as conflicting opinion and leave to readers to conclude who was right, Mueller or Joswig. Until then, your original research doesn't exist for our purpose. We cannot discuss merit of the things here - we can only cite existing sources.
And we have credible source. Self-published sources are credible if they talk about themselves. WP:SELFSOURCE. Again, you proved that you understand that when you submitted entry for R supported by self-published source (10:19, 9 February 2013).
93.136.13.111 ( talk) 01:00, 31 March 2013 (UTC)
---
'... do not imply that there was no influence.'
Show us a source which describes which parts of newLISP are actually influenced by Common Lisp and/or discusses the Common Lisp influence in detail.
Where is the influence described? Source?
'Self-published sources are credible if they talk about themselves'
Mueller is advertizing his own creation and contradicting himself. That's not a credible source.
'Only one is important: it is your original research'
You edited the Common Lisp article to add newLISP as an influenced language. You need to provide a credible source. All you came up was a remark of Lutz Mueller on the newLISP fan club website. What parts of newLISP were influenced by Common Lisp?
Joswig ( talk) 01:15, 31 March 2013 (UTC)
You assume that description "in more details" is needed. But it is not. This statement
'newLISP most of the time has chosen existent wordings of functions from either Common Lisp or Scheme or earlier incarnations of LISP. This makes it easier for switchers and builds on an existing culture.'
is claim that Newlisp is influenced by Common Lisp. That is all what is needed. It is credible source, because WP:SELFSOURCE is credible when people talk about themselves. Yworo and I already discussed the issue month ago and reached consensus. Furthermore, you have already proven you accept that when you submitted entry for R supported by self-published source (10:19, 9 February 2013). So, even with lot of effort, I cannot see you right here. If you find conflicting opinion, we'll present both.
93.136.13.111 ( talk) 02:30, 31 March 2013 (UTC)
Again, you fail to provide any credible source. Wikipedia is not an advertising platform. Link to credible and detailed sources.
Again, for R there is description what parts are influenced by Common Lisp. Mentioned in that post was specifically the condition system. For newLISP all that exists are contradicting and unspecific statements of the author himself. Common Lisp is not even mentioned in the newLISP manual once. There are no articles describing the evolution of newLISP and the influence of Common Lisp on newLISP. There are no articles listing the functionality taken from Common Lisp. Nothing. There is nothing.
I also propose that you improve the newLISP article on Wikipedia instead. There are indications that it needs work.
Joswig ( talk) 02:43, 31 March 2013 (UTC)
The source is this one:
http://newlispfanclub.alh.net/forum/viewtopic.php?p=8360#p8360
That source is already discussed and consensus was reached by Yworo's last edit of 4. March. 18:37 which I accepted. You're one who attempt to change that consensus. That's why you started this Talk, and according to wikipedia rules, we should discuss that until we reach new consensus. Until we reach it, previous consensus stay.
The source is credible - because of WP:SELFSOURCE rule, which is generally accepted, including previous consensus, and because you applied same rule. (10:19, 9 February 2013).
Then, it appears you assume that source should be more detailed. I don't see the reason for that. 'newLISP most of the time has chosen existent wordings of functions from either Common Lisp or Scheme or earlier incarnations of LISP' clearly claims that Newlisp is influenced by CL and that is all what is needed.
I'm not happy with that edit war, however, until we reach new consensus, previous consensus should stay, so, please, don't revert it any more.
93.136.13.111 ( talk) 04:07, 31 March 2013 (UTC)
A suggestion if I may, if there is debate to weather or not the source is reliable why not take it over to the folks at The Reliable Source Noticeboard or start a RFC on the subject - Cameron11598 (Converse) 04:16, 31 March 2013 (UTC)
Thank you for stepping in. 93.136.13.111 ( talk) 04:29, 31 March 2013 (UTC)
WP:SELFSOURCE does not apply here, because it is the only source and totally unspecific. See the rules. As mentioned, for R there are multiple independent sources describing various influences. This is not disputed. For newLISP there is no such thing. See clause 5.
We can also see that you randomly picked Common Lisp. Lutz Mueller mentioned also Scheme, C and Pascal. Yet you have not added newLISP there under influenced languages.
80.171.227.139 ( talk) 08:58, 31 March 2013 (UTC)
I've added a 'Libraries' section. One of the main discussions about Common Lisp vs. other programming languages was the topic of libraries and library manager. A few years ago Zach Bean introduced Quicklisp, which gives central access to many libraries. Other languages have library managers to and describe it on Wikipedia. for example Ruby:
/info/en/?search=Ruby_(programming_language)#Repositories_and_libraries
I've also added a link to an external source where a Common Lisp user provided reference material.
User:Macrakis claims that this is not notable. Opinions?
Joswig ( talk) 15:35, 15 June 2014 (UTC)
I don't think we should be mentioning Quicklisp here as it is not an official library manager, closed source not open and maintained solely by one person. It is very popular but creating a section for Library managers elevates Quicklisp above to something that is closer to an officially sanctioned resource, when it is just a recommended resource. if it was a more open project, I would consider including it here, but I think rather we should expand this section to include ASDF and other tools, and perhaps then mention Quicklisp. — Preceding unsigned comment added by 5.31.23.168 ( talk) 17:14, 23 October 2020 (UTC)
Hello fellow Wikipedians,
I have just modified 3 external links on Common Lisp. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
When you have finished reviewing my changes, you may follow the instructions on the template below to fix any issues with the URLs.
This message was posted before February 2018.
After February 2018, "External links modified" talk page sections are no longer generated or monitored by InternetArchiveBot. No special action is required regarding these talk page notices, other than
regular verification using the archive tool instructions below. Editors
have permission to delete these "External links modified" talk page sections if they want to de-clutter talk pages, but see the
RfC before doing mass systematic removals. This message is updated dynamically through the template {{
source check}}
(last update: 18 January 2022).
Cheers.— InternetArchiveBot ( Report bug) 10:26, 11 August 2017 (UTC)
Corman Common Lisp is not free! 31.48.245.90 ( talk) 11:31, 4 November 2017 (UTC)
Corman Common Lisp has been published on the MIT License: https://github.com/sharplispers/cormanlisp Joswig ( talk) 23:33, 12 February 2018 (UTC)
Might want to add SISCOG as another company using CL to schedule trains and their staff for the London Underground and several other major train systems across Europe. Won several AAAI awards - see Wikipedia article for those. On CL, see:
{{
cite web}}
: Unknown parameter |deadurl=
ignored (|url-status=
suggested) (
help)-- Paulscrawl ( talk) 04:52, 27 September 2018 (UTC)
I know that the original author probably added them as a service for readers, but in my opinion, large parts of the article should be moved to Wikibooks ( WP:NOTMANUAL), including most Code examples and a few too-detailed explanations of the condition system, macros and the CLOS.
Opinions?