Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Many of us coders, programmers and developers struggle with repetitive stress injuries, carpal tunnel, etc.

I've been curious about introducing voice control into my workflow in order to save myself some stress.

This has led me to my current question: Would it be possible or practical to implement a programming language (or superset of an existing language) which was primarily phonetic, and hence well suited to programming by voice?

share|improve this question

closed as not constructive by gnat, GlenH7, 9000, Robert Harvey, Yusubov May 30 '13 at 18:00

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

3  
Why was this downvoted? It seems an interesting question. –  m3th0dman May 30 '13 at 12:59
1  
possible duplicate of Is programming language that is non-visual … possible? –  Andres F. May 30 '13 at 13:00
4  
Well, the most difficult part would be punctuation, and Victor Borge solved that. –  Karl Bielefeldt May 30 '13 at 13:07
1  
related: Programming with voice recogition software –  mouviciel May 30 '13 at 13:20
1  
@thorstenmüller surely the whole point of a phonetic programming language is you wouldn't pick syntax that was hard to pronounce in the first place. –  jk. May 30 '13 at 13:50
show 3 more comments

4 Answers

A simple solution to solve puntuation and complex structure issues would be to phonetize a stack-based language such as Postscript.

The vocal editor could implement multiple modes, like vi: insert mode for saying the program and command mode for navigating and functions such as copy-paste, text search...

share|improve this answer
2  
I was just about to add something about Forth to my answer, so have a +1 instead. –  jk. May 30 '13 at 14:17
add comment

A phonetic programming language is certainly possible, SKI combinators give you a Turing complete language, and I don't think there can be any doubt that 'S', 'K' and 'I' are phonetic. With a restricted language like this there is even room to replace open and close brackets with something phonetic, maybe 'C' and 'D'. Of course actually using Turing tar pit languages is not something most people want to do.

The more interesting point is, is it practical to develop this way, with a 'real' phonetic language, as far as I know this is somewhat unknown.

share|improve this answer
add comment

I don't think there is a strong need for a programming language specialized for this.

However there is a need for alternative input methods for current programming languages.

Here's a presentation by Tavis Rudd about writing code using voice recognition. http://www.youtube.com/watch?v=8SkdfdXWYaI

He wrote python which might be easier to write this way than c for instance, so your mileage may vary depending on your preferred programming language.

share|improve this answer
add comment

Would it be possible or practical to implement a programming language (..) which was primarily phonetic

Possible: probably.

Practical: probably not, your vocal chords would suffer even faster under the stress then you would get carpal tunnel.

share|improve this answer
2  
Do you have any evidence to back that up, or is it purely speculation? –  Matt Fenwick May 30 '13 at 15:21
1  
@MattFenwick I typed 14 hours a day, my mother talks 8 hours a day. My fingers ache every few months, nothing that stops me. Her voice hurts after longer than usual days, and is "lost" every few weeks. –  Ramon Snir May 30 '13 at 18:24
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.