GithubHelp home page GithubHelp logo

notation's People

Contributors

panicz avatar radarhere avatar yallop avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

notation's Issues

Tidal, a language for pattern in music

A domain specific language for pattern: https://tidalcycles.org/

Used by live coders for drum sequences. It's easy to get started with a simple sequence and then bulid it out into something very elaborate.

Original PhD thesis describes Tidal's vision for programming languages that enable creativity by supporting exploration of the possibility space of a medium like music: https://slab.org/thesis/

[this is all via Avneesh]

A few possible additions?

https://www.ted.com/talks/robert_lang_folds_way_new_origami?language=en

Robert Lang talks about the math of origami, but also specifically about how the ability to write down origami instructions greatly accelerated the development of the hobby because easy sharing and tweaking of ideas was made possible

https://www.youtube.com/watch?v=sULa9Lc4pck

3Blue1Brown's youtube video on the "Triangle of Power" and how it is much better at showing the symmetrical and asymmetrical relationships between powers, roots and logarithms.

to add some quotes from Jacques Derrida ?

I like this repo very much :)
Derrida also has some intriguing thoughts about language.
If you read Derrida and you find some of his thoughts enlightening,
then add some quotes from Derrida will be helpful to balance Ted Chiang's highly offensive view toward Chinese.

Typo

Everybody is familiar with one special case of an Iverson-like convention, the “Kronecker delta” symbol δik = 1 , i = k; 0 , i 6= k. (1.16)

You certainly mean "i δ =k"

Feynman diagrams

Thanks for this amazing repository! One interesting case might be Feynman diagrams like this:

image

They've had a huge impact on how physicists think about quantum field theory. For example, see this quote from Frank Wilczek:

...Feynman diagrams remain a treasured asset in physics, because they often provide good approximations to reality.... The calculations that eventually got me a Nobel Prize in 2004 would have been literally unthinkable without Feynman diagrams, as would my calculations that established a route to production and observation of the Higgs particle.

More Mathematics SE suggestions

You've already mentioned the triangle of power MSE post, thats a good one. I recently found this which uses over and under bars for $exp$ and $ln$ and juxtaposition for multiplication and writes addition in terms of these. This isn't practical: addition is common enough to need its own symbol, however it is fun and thought provoking. The blog post mentioned in the comments is an ok read as well.

Theres also this which mentions the "correct" way to write the 2nd derivative in Leibniz notation.

Diagrammatology

Nice collection!

Maybe the area of diagrammatic thinking is also interesting to you:

Krämer is interesting here, because she thinks of notation more as a tool than a way of representation. A lot of this build on C.S. Peirce's work: https://en.wikipedia.org/wiki/Existential_graph

LoF and Charles Sanders Peirce monograph

i'd like to contribute with two sugestions you might find interesting:

on a computational linguistic level, i'd like to point out also panini's monumental Ashtadhyayi, a generative grammar for sanskript allowing it to produce any valid statement in sanskrit with a strictly concise set of rules. it is compared to modern notations like BNF and considered to be an ancient turing machine and computing language as this set of rules are said to be turing complete. panini might properly be called with justice the euclid of linguistics

Dance and Movement Notations

In "Envisioning Information" by Edward Tufte there is a chapter where several dance notations are shown and analyzed (pages 114-119). In that section, there is one very interesting quote on the limitations of these notations, from Lincoln Kirstein, of the New York City Ballet, (from his book "Ballet Alphabet"):

A desire to avoid oblivion is the natural possession of any artist. It is intensified in the dancer, who is far more under the threat of time than others. The invention of systems to preserve dance-steps have, since the early eighteenth century, shared a startling similarity. All these books contain interesting prefatory remarks on the structure of dancing. The graphs presented vary in fullness from the mere bird’s-eye scratch-track of Feuillet, to the more musical and inclusive stenochoreography of Saint-Léon and Stepanov, but all are logically conceived and invitingly rendered, each equipped with provocative diagrams calculated to fascinate the speculative processes of a chess champion. And from a practical point of view, for work in determining the essential nature of old dances with any objective authority, they are all equally worthless. The systems, each of which may hold some slight improvement over its predecessor, are so difficult to decipher, even to initial mastery of their alphabet, that when students approach the problem of putting the letters together, or finally fitting the phrases to music, they feel triumphant if they can decipher even a single short solo enchaînement. An analysis of style is not attempted, and the problem of combining solo variations with a corps de ballet to provide a chart of an entire ballet movement reduces the complexity of the problem to the apoplectic.

This paper has a review of some of the dance notations mentioned in the book and others, and some interesting quotes as well: http://ewic.bcs.org/upload/pdf/ewic_eva15_mpa2_paper2.pdf

Programming

Computer programming languages are notations that codify (pseudo) English into machine instructions.

"...programming is an attempt to compensate for the strictly limited size of our skulls. The people who are best at programming are the people who realize how small their brains are. They are humble."
--Steve McConnell, Code Complete

Ada

Ada was originally designed for the United States Department of Defense (DoD) from 1977 to 1983 to supersede over 450 programming languages used by the DoD at that time. Ada was named after Ada Lovelace (1815–1852), who has been credited with being the first computer programmer.

ASM, or Assembly language

An assembly language, often abbreviated asm, is any low-level programming language, in which there is a very strong (but often not one-to-one) correspondence between the assembly program statements and the architecture's machine code instructions. Each assembly language is specific to a particular computer architecture.

A program written in assembly language consists of a series of mnemonic processor instructions and meta-statements (known variously as directives, pseudo-instructions and pseudo-ops), comments and data. Assembly language instructions usually consist of an opcode mnemonic followed by a list of data, arguments or parameters.[7] These are translated by an assembler into machine language instructions that can be loaded into memory and executed.

For example, the instruction below tells an x86/IA-32 processor to move an immediate 8-bit value into a register. The binary code for this instruction is 10110 followed by a 3-bit identifier for which register to use. The identifier for the AL register is 000, so the following machine code loads the AL register with the data 01100001.

10110000 01100001

This binary computer code can be made more human-readable by expressing it in hexadecimal as follows.

B0 61

Here, B0 means 'Move a copy of the following value into AL', and 61 is a hexadecimal representation of the value 01100001, which is 97 in decimal. Assembly language for the 8086 family provides the mnemonic MOV (an abbreviation of move) for instructions such as this, so the machine code above can be written as follows in assembly language, complete with an explanatory comment if required, after the semicolon. This is much easier to read and to remember.

MOV AL, 61h       ; Load AL with 97 decimal (61 hex)

BASIC

http://time.com/69316/basic/

In June 1964 [BASIC] became generally available to Dartmouth students, initially on 11 Teletype machines. The first version of BASIC had 14 commands, all with straightforward names and syntax that made sense:

  • PRINT output text and numbers to the Teletype (and, later on, displayed it on the screens of time-sharing terminals and PCs);
  • LET told the computer to perform calculations and assign the result to a variable, in statements such as LET C = (A*2.5)+B;
  • IF and THEN let the program determine if a statement was true, vital for anything involving decision-making;
  • FOR and NEXT let a program run in loops;
  • GOTO let a program branch to another numbered line within itself;
  • END, which was required in Dartmouth BASIC, told the computer that it had reached the program’s conclusion.

C

C (/siː/, as in the letter c) is a general-purpose, imperative computer programming language, supporting structured programming, lexical variable scope and recursion, while a static type system prevents many unintended operations. By design, C provides constructs that map efficiently to typical machine instructions, and therefore it has found lasting use in applications that had formerly been coded in assembly language, including operating systems, as well as various application software for computers ranging from supercomputers to embedded systems.

Many later languages have borrowed directly or indirectly from C, including C++, C#, Unix's C shell, D, Go, Java, JavaScript, Limbo, LPC, Objective-C, Perl, PHP, Python, Rust, Swift, and Verilog (hardware description language)[5]. These languages have drawn many of their control structures and other basic features from C. Most of them (with Python being the most dramatic exception) are also very syntactically similar to C in general, and they tend to combine the recognizable expression and statement syntax of C with underlying type systems, data models, and semantics that can be radically different. Source: Wikipedia

In 1978, Brian Kernighan and Dennis Ritchie published the first edition of The C Programming Language, hailed in Byte magazine as "the definitive work on the C language. Don't read any further until you have this book!"

Critiques

Edsger Dijkstra (1930-2002), complained: “It is practically impossible to teach good programming to students that have had a prior exposure to BASIC, ... As potential programmers they are mentally mutilated beyond hope of regeneration.” Dijkstra wrote a famous paper decrying the GOTO command: “Go To Statement Considered Harmful.”

Dijkstra also directed his ire at FORTRAN (an “infantile disorder”), PL/1 (“fatal disease”) and COBOL (“criminal offense”)

In terms of efficient notation, Donnie Berkholz's paper: Programming Languages Ranked by Expressiveness lists 11 top tier languages in order of expressiveness (Perl, Python, Objective-C, Shell script, Ruby, PHP, Java, C++, C#, C, Javascript), none of which are as expressive as some second tier languages (CoffeeScript, Clojure, Haskell)

A classic essay on programming as an engineering discipline:
http://www.cs.nott.ac.uk/~pszcah/G51ISS/Documents/NoSilverBullet.html

On learning: Teach Yourself Programming in Ten Years

Frege

Check out the Wikipedia page on freges Begriffsschrift and birdtracks.eu chapter 3

Music References

Elain Gould's Behind Bars (http://www.behindbarsnotation.co.uk/) is an incredible reference for music notation and typesetting. I couldn't find a great quote, but this is from the introduction:

The mainstay of Behind Bars is to examine the complex set of rules based on unique or shared conditions. Effective communication results from establishing a convention and adopting a consistent approach. Where appropriate I have presented the rationale for certain conventions and rules, to make such conventions more memorable. Where new technical or compositional demands require new notation, I have proposed conventions that are simple, clear and, where possible, in keeping with traditional practice. Where conventions are not established, I have made my own recommendations. Not everyone will be in agreement with my conclusions, but they are based on my many years of working with composers and performers. My aim is to raise awareness of the many subtle and complex issues to be considered, and provide the tools to address them.

Gardner Read's Music Notation (http://www.composergardnerread.org/books/) is older (1979), but it feels less technical and more opinionated. It includes a brief introduction to the history and development of musical notation.

A musical score, then, is rather like an instruction manual—comparable perhaps to the playwright's script awaiting its actors or to an architect's blueprint awaiting a builder. A score can truly come to life only through the performer; its message can be translated only when symbols on the printed page are adequate for intelligent transformation into living musical reality.

Music notation is the visual manifestation of the interrelated properties of music sound—pitch, intensity, time, timbre, and pace. Symbols indicating the choice of tones, their duration, and their manner of performance form the written language we call music notation.

Most other information gets much more specific about details related to music notation. These (or parts) might be a start. Did you have anything specific you were look for in music notation quotes?

Illegal instruction: 4 when trying to install TidalCycles

I'm having difficult installing tidal cycles from my terminal command

Have even followed the path through HomeBrew, which installs everything but Tidal

Following the instructions, i keep getting the 'Illegal instruction: 4' message in my terminal window

I'm running on os x 10.9.5 could this be a problem?

Can anyone help?

Pandoc math

If you put some of the math equations between dollar signs, pandoc can convert them to mathml in HTML and regular latex in pdf. This would make reading some of the quotes nicer, though it would have no effect on the github rendered markdown.

from Fauconnier and Turner's "The Way We Think"

Here's a fragment from the book "The Way We Think" you may like (unfortunately, it isn't freely available AFAIK)

The development of formal systems to leverage human invention
and insight has been a painful, centuries-long process. [...]
In the twelfth century, the Hindu mathematician Bhaskara said,
``The root of the root of the quotient of the greater irrational
divided by the lesser one being increased by one; the sum being
squared and multiplied by the smaller irrational quantity is the
sum of the two surd roots.'' This we would now express in the form
of an equation, using the much more systematically manageable set
of formal symbols shown below. This equation by itself looks no
less opaque than Bhaskara's description, but the notation immediately
connects it to a large system of such equations in ways that
make it easy to manipulate.
\begin{equation*}
\sqrt{(\sqrt{\frac{n}{k}}+1)^{2}k}=\sqrt{k}+\sqrt{n}
\end{equation*}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.