This article is within the scope of WikiProject Computer science, a collaborative effort to improve the coverage of Computer science related articles on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.Computer scienceWikipedia:WikiProject Computer scienceTemplate:WikiProject Computer scienceComputer science
Latest comment: 17 years ago5 comments3 people in discussion
What would be an example of a function-level definition which is not the lifted image of a value-level one?
I am not sure there is a reasonable answer to that question. It is more of a notational and usage question. Composition can only be defined (other than as a primitive) as (f . g)(x) = f(g(x)). The notations are equivalent semantically, but computationally and for optimisation and implementation they may be different - function-level programming will clearly have composition as a primitive. Justinc23:16, 4 August 2005 (UTC)Reply
In general, program A and program B are significantly different when they reflect a different architecture. This tends to be relevant only for complex programs with significant structure, which have been derived independently in different contexts. This is where you would tend to see function-level programs which are not simple translations of value-level programs. Of course, once a design is implemented it will be possible to apply that design in other contexts -- the real issue here is the original time and effort needed to find and implement the design. That said, it's difficult to separate architectural influences from the language and architectural influences specific to function-level programming. This is especially true given that there are so few function-level programming languages. With those qualifiers, the J program to compute arithmetic mean (+/%#) illustrates in a small way how a function-level definition can be different from a typical value-level definition. Here, the absence of explicit variables quickly leads to a definition which works on arbitrarily sized and dimensioned data, with the language, rather than the programmer, defining the function domain. RaulMiller06:04, 22 March 2006 (UTC)Reply
Did the author really mean bottom-up semantics or did they mean to say bottom-preserving semantics?
It should be mentioned that in the end (the compiled program or similar) its all value level. whether you store data, function pointers etc. pp. so the distinction isnt between the way the programs execute but in how the humans perceive them
There's no reason to mention this. The language is function-level "in the end". Talking about the resulting binary isn't relevant. John Nowak (talk) 02:14, 20 April 2009 (UTC)Reply
Misworded sentence
Latest comment: 16 years ago1 comment1 person in discussion
"Yet another is the existence of function level definitions that are not the lifted (that is, lifted from a lower value-level to a higher function-level) image of any existing value-level one: these (often terse) function-level definitions represent a more powerful style of programming not available at the value-level and, arguably, are often easier to understand and reason about."
Latest comment: 6 years ago2 comments2 people in discussion
The paper by John Backus makes no mention of Function-level programming. He simply says Functional programming. Moreover, this wiki page uses the acronym FP, which usually refers to Functional programming. I'm not sure if Function-level programming is any different from Functional programming. If there's a difference, it's not clearly explained in the wiki page. — Preceding unsigned comment added by 182.74.201.106 (talk) 04:06, 9 April 2017 (UTC)Reply
First, the page doesn't use the acronym "FP" for "functional programming" anywhere. It refers to Backus's specific language named "FP" repeatedly, but that's a different thing. The first use of "FP" is linked, and explained, and I can't find anywhere in the article where it's ambiguous what's being referred to.
Second, Backus does simply say "functional programming", but he sets it up as a contrast with the "applicative programming" of languages like Lisp, ML, etc., and of the Lambda calculus. So, obviously, when he says "functional programming", he's not using the term the same way you are. Because most people use the term the way you do, rather than the way Backus does, he had to come up with a new term—which is why the successor to FP (short for "Function Programming") was called FL (short for "Function Level").
Finally, most of the text on the page is devoted to a section called "Contrast to functional programming", and most of the remainder is devoted to describing the purported algebraic advantages of function-level vs. value-level/applicative programming in modeling syntax. So if you can't tell if there's a difference, you must not have read beyond the first sentence or so. --192.188.255.89 (talk) 01:25, 23 August 2019 (UTC)Reply
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.