General Programming |
Author |
Message |
Ike Kapetan
Joined: 17 Jun 2006 Posts: 3136 Location: Europe
|
Posted: Mon Jun 26, 2006 2:25 pm Post subject: Functional Programming |
|
|
"Independently of Alonzo Church, Alan Turing was performing similar
work. He developed a different formalism (now referred to as the Turing
machine), and used it to independently come to similar conclusions as
Alonzo. Later it was shown that Turing machines and lambda calculus
were equivalent in power."
"Functional programming is a practical implementation of Alonzo
Church's ideas. Not all lambda calculus ideas transform to practice
because lambda calculus was not designed to work under physical
limitations. Therefore, like object oriented programming, functional
programming is a set of ideas, not a set of strict guidelines. There are
many functional programming languages, and most of them do many
things very differently."
Beautifully written and quite informative article: Functional Programming For The Rest of Us |
|
Back to top |
|
|
Bjanko Novac
Joined: 22 Jun 2006 Posts: 9
|
Posted: Sun Jul 16, 2006 8:29 pm Post subject: |
|
|
why don't we see OOP vs functional language wars?
"Not trying to start a fight but I am really curious why I have never seen
them argue. Is there a secret truce to ignore each other? Or maybe I am
missing something." |
|
Back to top |
|
|
delovski
Joined: 14 Jun 2006 Posts: 3524 Location: Zagreb
|
Posted: Fri Aug 04, 2006 8:28 am Post subject: |
|
|
Wikipedia: Functional programming
"Important influences on functional programming have been the lambda
calculus, the APL programming language, the Lisp programming language,
and more recently the Haskell programming language"
At JoS: LISP sucks
"As a rule of thumb, the most hand-optimized Lisp programs
will be longer than their C/C++ equivalents, and will run
2-20 times slower using the best compilers.
This alone is half the truth. To get such performance out
of Lisp, one has to add type declarations and shed all
safety checks, which is analogous to casting /everything/
to (void*) in C. This is needed to turn off type tag checks
at run time." |
|
Back to top |
|
|
M Guest
|
Posted: Thu Aug 17, 2006 8:13 pm Post subject: |
|
|
Why Erlang Is a Great Language for Concurrent Programming
"Most programming languages implement concurrency poorly, if at all.
The most common approach, which involves multiple OS threads or
processes sharing common data structures that are guarded by locks or
semaphores, has proven itself to be too complex for most programmers to
"get right." Problems such as deadlocks, unguarded access, and coarse
locking tend to creep up even in code created by skilled programmers." |
|
Back to top |
|
|
XNote Kapetan
Joined: 16 Jun 2006 Posts: 532
|
Posted: Tue Sep 05, 2006 11:45 pm Post subject: |
|
|
Erlang - the best or worst of two worlds?
"The promise of Erlang is to be the best of both worlds. The Erlang
developer should then be the prime example of The Pragmatic Academic.
I do not agree. I argue that Erlang is extremely clumpsy for problems
involving a host of distinct notions, i.e., needing many different types,
often intricately dependent on each other, ontologically or not." |
|
Back to top |
|
|
Birdy num num Guest
|
Posted: Sun Sep 24, 2006 9:05 pm Post subject: |
|
|
C++ Futures: Lambda Functions
"The use of “lambda” originates from functional programming and lambda
calculus, where a lambda abstraction defines an unnamed function. Lambda
functions or Lambdas in C++ are one of the more interesting things to look
forward to in the next C++ standard; giving us the ability to treat functions
as first class objects at last; composing them inline and treating them as
class objects." |
|
Back to top |
|
|
Goiorgio Guest
|
Posted: Fri Oct 06, 2006 11:02 am Post subject: |
|
|
Raganwald: Why are local variables bad?
"Mutable local variables mean that within a method execution you have
changes of state. That makes it very difficult to change anything without
breaking things." |
|
Back to top |
|
|
Igor Guest
|
Posted: Tue Oct 10, 2006 5:52 pm Post subject: |
|
|
Applications of Recursively Defined Data Structures
"A circular program contains a data structure whose definition is self-
referential or recursive. The use of such a definition allows efficient
functional programs to be written and can avoid repeated evaluations and
the creation of intermediate data structures that would have to be
garbage collected. This paper uses circular programs in various ways, to
implement memo-structures and explicit search-trees to hold solutions to
constraint-satisfaction problems." |
|
Back to top |
|
|
delovski
Joined: 14 Jun 2006 Posts: 3524 Location: Zagreb
|
Posted: Thu Mar 01, 2007 2:04 am Post subject: |
|
|
(Carbon Programming in Lisp)
"I've been working on a CLOS framework to help me write Lisp code for OS X
using OpenMCL. Instead of using Cocoa as most people, I've favored the
Carbon APIs." |
|
Back to top |
|
|
|