Translate ASCII text to braille
Python - 90 75 + 50 = 125
Use lower case letters.
for l in input():
a=ord(l)-96
if a<0:a=0
print("⠀⠁⠃⠉⠙⠑⠋⠛⠓⠊⠚⠅⠇⠍⠝⠕⠏⠟⠗⠎⠞⠥⠧⠺⠭⠽⠵"[a],end="")
One-liner (thanks to ɐɔıʇǝɥʇuʎs)
for l in input():print("⠀⠁⠃⠉⠙⠑⠋⠛⠓⠊⠚⠅⠇⠍⠝⠕⠏⠟⠗⠎⠞⠥⠧⠺⠭⠽⠵"[max(0,ord(l)-96)],end="")
Python, 162
l=map((" a c,bif/e d:hjg'k m;lsp o n!rtq%12s. w -u x v z y"%'').find,raw_input().lower())
for i in 1,4,16:print' '.join('.o.o ..oo'[(n&i*3)/i::4]for n in l)
Currently supports lowercase letters and some punctuation, but it's still a work in progress.
Example:
$ python braille.py
Hello, world!
o . o . o . o . o . . . . . . o o . o . o . o o . .
o o . o o . o . . o o . . . o o . o o o o . . o o o
. . . . o . o . o . . . . . . o o . o . o . . . o .
BBC Basic 103 ASCII characters or 92 tokens
A$="HXIKJY[ZQShxikjy{zqsl|Wmon"FORK=1TO26A=ASC(MID$(A$,K))VDU23,K+96,A AND9;0,A/2AND9;0,A/4AND9;:NEXT
Possibly not quite what the OP intended, this redefines the font for the lowercase characters. VDU 23,n,a,b,c,d,e,f,g,h
assigns an 8x8 bitmap to character n, consisting of eight bytes. Following a parameter with a semicolon instead of a comma causes it to be treated as a two-byte little-endian number.
The braille patterns for letters a
through z
are stored in A$, according to the following bit pattern. This is extracted by masks with 9=binary1001
and rightshifts (division by 2 and 4 is used as standard BBC basic has no shift operator.)
8 1
16 2
32 4
Ungolfed code
A$="HXIKJY[ZQShxikjy{zqsl|Wmon"
FORK=1TO26
A=ASC(MID$(A$,K))
VDU23,K+96,A AND9;0,A/2AND9;0,A/4AND9;
NEXT
Usage example
This is done in screen mode 6 for clarity (type MODE6 as soon as you open the command line emulator.)
Actually, after running the code, any lowercase letters (including keyboard input) appear in Braille.
Emulator at http://bbcbasic.co.uk/bbcwin/bbcwin.html.
See also this similar answer of mine: https://codegolf.stackexchange.com/a/28869/15599