- Amazon.com
- build tools
- C
- C
- Cascading Style Sheets
- Computer programming
- Computing
- Cross-platform software
- cryptography
- encryption
- HTML
- HTML
- HTTP
- hypertext markup language
- Internet work
- Java
- Java
- Java
- JavaScript
- JavaScript
- Linux
- low-level software
- Microsoft
- Object-oriented programming
- object-oriented programming
- operating system
- operating systems
- Programming language
- Programming paradigms
- Python
- Python
- relational database
- Scripting languages
- server-side web programming
- software design
- Software engineering
- software projects
- systems software
- Technology
- UDP
- Unix
- Unix system
- version control systems
- web framework
- web frameworks
- YouTube
- APL
- automated analysis tool
- Black Duck Software
- C
- C++
- Chad Scherrer
- CoffeeScript
- Computer programming
- Computing
- Cross-platform software
- DSL
- Dylan
- Emacs Lisp
- Fortran
- Functional languages
- functional programming
- GitHub
- Groovy
- Harvard
- Haskell
- Haskell
- IBM
- Java
- Java
- JavaScript
- JavaScript
- Ken Iverson
- Lisp
- Lisp programming language
- long metal sticks
- ML
- Objective-C
- Perl
- Perl
- Programming language
- Programming paradigms
- Prolog
- Python
- RedMonk
- Ruby
- Scilab
- Scripting languages
- Software engineering
- Steve
- VB.Net
- VHDL
- Web searches
- web service references
Stack Exchange
This Q&A is part of a weekly series of posts highlighting common questions encountered by technophiles and answered by users at Stack Exchange, a free, community-powered network of 80+ Q&A sites.
It seems lazy evaluation of expressions can cause a programmer to lose control. I am having trouble understanding why this would be acceptable or desired by a programmer.
- alpha-beta search algorithm
- alpha-beta search algorithm
- Ars Technica
- Computer programming
- Computing
- Evaluation strategy
- Functional languages
- Functional programming
- functional programming
- Generator
- Haskell
- Haskell
- information technology
- Java
- Java
- John Hughes
- Lazy evaluation
- Literate programming
- Monad
- predictable software
- Programming paradigms
- Software engineering
- StackExchange
- Technology
- Technology Lab
- Technology Lab
- web apps
- C++
- C++
- Christopher Alexander
- Computer programming
- Computing
- Design
- Design Patterns
- FP
- Functional programming
- functional programming
- Haskell
- idiom solutions
- Java
- Java
- JavaScript
- Jeremy Gibbons
- ML
- Object-oriented programming
- object-oriented programming
- Pattern matching
- Peter Norvig
- primitive type systems
- Programming paradigms
- relational database
- Reusable Object-Oriented Software
- Scala
- Singleton pattern
- Software design patterns
- Software engineering
- software engineering
- Technology
- to specific problem domains and technologies
- type systems
- Arlington
- C++
- Computer programming
- Computing
- Delegation
- Design Patterns
- gui
- Henry Lieberman
- Inheritance
- Java
- JavaScript
- Jim Gay
- Kent Beck
- Object-oriented programming
- object-oriented programming
- Objective-C
- Programming paradigms
- Prototype
- Prototype-based programming
- Quotation mark glyphs
- Ruby
- Sandi Metz
- Saturn Flyer LLC
- Schizophrenia
- Software engineering
- software libraries
- Virginia
- web address
- Arity
- Bernie Mnemonic
- Bertrand Augereau
- C++
- C++
- Caveman Craig 2 Press
- CCP
- Chris Morris
- Christian Nutt
- Cliff Ran
- CRISS-CROSS CONTINENTS
- D
- enough systems
- Eric Caoili
- faster local tools
- formal systems
- Frank Cifaldi
- Functional programming
- functional programming
- Game Developer Magazine
- game retail
- Gina Gross
- Harry Fields
- Haskell
- Imperative programming
- Jennifer Sulik
- Joel Nystrom
- John Carmack
- John Currie
- Kris Graft
- Lambda calculus
- Large scale software development
- Leigh Alexander
- Lisp
- Map
- Matt Hartfield
- Max Payne
- Michael Feathers
- Mike Rose
- Monad
- Nintendo
- North America
- object-oriented programming
- Ogmento Inc
- online games
- php
- php
- Programming paradigms
- Pure function
- Referential transparency
- slower and more expensive global tools
- smartphone
- software development
- Spooky Cool Labs
- Theoretical computer science
- Tom Curtis
- UBM TechWeb Networks