User:Edmund
Dr Edmund Griffiths
In my day job(s), a translator from Russian to English specializing in arts and technology-related material; also a philosopher / descriptive logician. My first book, Towards a Science of Belief Systems, was published by Palgrave Macmillan in 2014. My second is scheduled to appear in late 2016.
Hobbyist programmer. I find programming to be a profoundly educational activity, and I think it's a shame more non-professionals don't do it—especially given how much many of us rely on computers. To encourage more people to learn, I've written a very short tutorial called Programming Degree Zero, to be used with a minimal computer that can be programmed in binary machine code from a simulated front panel in a browser window. If you're interested, check out the tutorial at http://www.edmundgriffiths.com/degreezero.html and the minimal computer at http://www.edmundgriffiths.com/czero.html. The implementation of the iterated prisoner's dilemma with AI opponent in 32 bytes of code and data is probably the one program I've ever written that I'm genuinely proud of.
The programming languages I like the best tend to be ones that embody a clear model of computation and a clear aesthetic vision. (In Larry Wall's terms I am a doctrinaire 'modernist'.) I enjoy the verbosity of COBOL, and the terseness of APL. In fact, I think I've liked every language I've ever seen that didn't obey normal operator precedence—because that's always a sign that a language is built according to some coherent principle. I also approve strongly of languages created for educational purposes and for non-specialists, such as BASIC and Logo.
My Favorite Languages | |
Language | Proficiency |
360 Assembly | beginner |
6502 Assembly | intermediate |
APL | intermediate |
BASIC | quite proficient |
BBC BASIC | proficient |
C | reading knowledge |
COBOL | quite proficient |
EDSAC order code | beginner |
Forth | ok |
Fortran | a bit rusty |
Haskell | intermediate |
Icon | very rusty |
J | rudimentary |
JavaScript | intermediate |
LC3 Assembly | intermediate |
Logo | rudimentary |
Lua | intermediate |
Pascal | rudimentary |
Processing | rudimentary |
Prolog | rudimentary |
Scheme | intermediate |
Smalltalk | rudimentary |
SNOBOL4 | rudimentary |
SQL | beginner |
x86 Assembly | lower intermediate |
XLISP | quite proficient |
- 360 Assembly User
- 6502 Assembly User
- APL User
- BASIC User
- BBC BASIC User
- C User
- COBOL User
- EDSAC order code User
- Forth User
- Fortran User
- Haskell User
- Icon User
- J User
- JavaScript User
- LC3 Assembly User
- Logo User
- Lua User
- Pascal User
- Processing User
- Prolog User
- Scheme User
- Smalltalk User
- SNOBOL4 User
- SQL User
- X86 Assembly User
- XLISP User