-
Today's pathological language is my personal all-time favorite pathological monstrosity. It's an incredibly combination of perfect simplicity and complete incomprehensibility. It's based on a piece of work called Fractran by John Conway of game theory fame. It's a really fascinating bugger; absolutely insanely difficult to program in, but based on one of the most bizarrely elegant concepts of computation that I've ever seen. It's amazing that this is Turing complete. It's not a real programming language in the sense of being able to write practical programs; it's more of a simple theoretical computational model which has been implemented as a language.
-
Fascinating and elegant shapes may be folded from a single planar sheet of material without stretching, tearing or cutting, if one incorporates curved folds into the design. We present an optimizationbased computational framework for design and digital reconstruction of surfaces which can be produced by curved folding. Our work not only contributes to applications in architecture and industrial design, but it also provides a new way to study the complex and largely unexplored phenomena arising in curved folding.
links for 2009-11-20
Posted in delicious on November 21, 2009 by blarneyfellowlinks for 2009-11-19
Posted in delicious on November 20, 2009 by blarneyfellowlinks for 2009-11-18
Posted in delicious on November 19, 2009 by blarneyfellow-
Most requests to the RESTful API are done in the context of a session. Each session is associated with an Erlang process and the application keeps a mapping between the session ID and the process for the session in the Mnesia database (it is rather cool to store things like process IDs in a database!). So when the application receives a request, it extracts the session ID from the request URI, finds the corresponding process in the database, and simply forwards the request to that process.
-
Unix Options attempts to support reading in options in the most idiomatic fashion possible. It supports parsing options both in short option style (single dash: '-a') long option style (double dash: '–alpha'). It recognizes grouped short options ('-abc') and recognizes file and argument parameters to options. Both '–option=parameter' and '–option parameter' syntax is recognized and '–' ends the parser and treats all remaining tokens as free tokens, as is usually expected at a Unix CLI.
links for 2009-11-17
Posted in delicious on November 18, 2009 by blarneyfellowlinks for 2009-11-16
Posted in delicious on November 17, 2009 by blarneyfellow-
There are both benefits and drawbacks to creativity. In a social group it is not necessary for all members to be creative to benefit from creativity; some merely imitate or enjoy the fruits of others' creative efforts. What proportion should be creative?
links for 2009-11-14
Posted in delicious on November 15, 2009 by blarneyfellow-
We introduce an experimental paradigm for studying the cumulative cultural evolution of language. In doing so we provide the first experimental validation for the idea that cultural transmission can lead to the appearance of design without a designer. Our experiments involve the iterated learning of artificial languages by human participants. We show that languages transmitted culturally evolve in such a way as to maximize their own transmissibility: over time, the languages in our experiments become easier to learn and increasingly structured. Furthermore, this structure emerges purely as a consequence of the transmission of language over generations, without any intentional design on the part of individual language learners. Previous computational and mathematical models suggest that iterated learning provides an explanation for the structure of human language and link particular aspects of linguistic structure with particular constraints acting on language during its transmission.
-
The DIY LIL CNC project is a set of plans for an inexpensive, fully functional 3-axis CNC mill that can be built by an individual with basic shop skills and tool access.
links for 2009-11-13
Posted in delicious on November 14, 2009 by blarneyfellow-
Simple reasoning techniques for complex phenomena: divide and conquer, dimensional analysis, extreme cases, continuity, scaling, successive approximation, balancing, cheap calculus, and symmetry. Applications from physical and biological sciences, mathematics, and engineering. Examples include bird and machine flight, neuron biophysics, weather, prime numbers, and animal locomotion. Emphasis on low-cost experiments to test ideas and on fostering curiosity about phenomena in the world.
-
What qualifies a neural representation for a role in subjective experience? Previous evidence
suggests that the duration and intensity of the neural response to a sensory stimulus are factors.
We introduce another attribute – the reproducibility of a pattern of neural activity across different
episodes – that predicts specific and measurable differences between conscious and non-
conscious neural representations indepedently of duration and intensity. We found that conscious
neural activation patterns are relatively reproducible when compared to non-conscious neural
activation patterns corresponding to the same perceptual content. This is not adequately
explained by a difference in signal-to-noise ratio. -
We describe the “the local to global principle.” It is a principle used to break algorithmic problem solving into two distinct phases (local criticism followed by global solution) and is an aid both in the design and in the application of algorithms.
-
The perfect Twitter would show you only the stuff you care about—relevant, timely, local, funny, whatever you're most interested in—even if you don't follow the person who wrote it.
links for 2009-11-11
Posted in delicious on November 12, 2009 by blarneyfellowlinks for 2009-11-10
Posted in delicious on November 11, 2009 by blarneyfellow-
Morton codes (or Z-order curves) are a way to hash coordinates in 1 dimension. This is useful for problems such as “which stores are 10 miles away from me?” without searching through all the stores in existence.
-
We present 2-3 finger trees, a functional representation of persistent sequences supporting access to the ends in amortized constant time, and concatenation and splitting in time logarithmic in the size of the smaller piece. Representations achieving these bounds have appeared previously, but 2-3 finger trees are much simpler, as are the operations on them. Further, by defining the split operation in a general form, we obtain a general purpose data structure that can serve as a sequence, priority queue, search tree, priority search queue and more.
