Live data from Hacker News

Sir, Please Step Away from the ASR-33 (2010)

queue.acm.org

11–20 of 291 posts

Re: Sir, Please Step Away from the ASR-33 (2010)

#11
I agree with the conclusion of the article; we should move past the requirements of a long-gone era of computing, but the suggestions provided don't feel like improvements to me.

> Why keep trying to cram an expressive syntax into the straitjacket of the 95 glyphs of ASCII when Unicode has been the new black for most of the past decade?

Because I don't have 143,859 keys on my keyboard. Having to type λ would involve either changing my keyboard layout or using some key shortcut. In either case I'd miss the benefit of muscle memory to just type `func`.

I don't see ASCII as a hindrance, but as the lowest common denominator for being expressive in any language, computer or human (Romance ones at least).

> Why not make color part of the syntax? Why not tell the compiler about protected code regions by putting them on a framed light gray background? Or provide hints about likely and unlikely code paths with a green or red background tint?

Why should a compiler be concerned about how errors are displayed? You can already do these things with a program that reads the output and renders it as you wish. We could argue that the information should be available in a machine-readable format to avoid parsing text, but I don't see how a deeper integration of color would help.

The things that I would like to see in the next 20 years of programming are:

- Abandoning text files and filesystems as an abstraction. Most programming languages are fine with handling only "modules", so having to manage files and file paths just feels unnecessarily clunky.

Light Table[1] attempted something like this IIRC, where you only dealt with functions or modules directly, and it was a joy to use. Expanding this to a language would simplify things a lot.

- Speaking of which, code versioning systems should abandon that concept as well. It's 2021 and the state of the art is still diffing pieces of text and doing guesswork at best to try and complete an automatic merge.

Our versioning tools should be smarter, programming language aware and should minimize the amount of interaction they require. I can't imagine the amount of person-hours ~~wasted~~invested on trying to understand and make Git work.

- Maybe just a fantasy and slightly off-topic for this discussion, but I'd like to see more programmer-friendly operating systems. With the way Windows and macOS are going, Linux is becoming more like the last bastion for any general programming work. Using these systems often feels like the computer is controlling me rather than the reverse.

[1]: http://lighttable.com/

Re: Sir, Please Step Away from the ASR-33 (2010)

#12

"When I was a child, I used to speak like a child, think like a child, reason like a child; when I became a man, I did away with childish things. [..] Syntax highlighting is juvenile. When I was a child, I was taught arithmetic using colored rods. I grew up and today I use monochromatic numerals." - Rob Pike

A great example of how very smart capable people can express silly ideas wherein they justify personal preference with bad logic.

https://ppig.org/papers/2015-ppig-26th-dimitri/

Code isn't arithmetic nor prose and the majority usage of highlighting is because people intuitively grasp that life is easier with highlighting.

It is perfectly ok to have different preferences but one must be careful not to elevate a preference to a law built upon sand not bedrock.

Re: Sir, Please Step Away from the ASR-33 (2010)

#13
post #7
post #4

If I wanna use something like a ™ I have to google how to enter it, or just google and copy the character. I don't want any extra glyphs in my code until it's just as easy to enter (at close to full speed) as the glyphs I already have access to.

Compose, T, M. https://en.wikipedia.org/wiki/Compose_key

[deleted]

Re: Sir, Please Step Away from the ASR-33 (2010)

#14
post #4

If I wanna use something like a ™ I have to google how to enter it, or just google and copy the character. I don't want any extra glyphs in my code until it's just as easy to enter (at close to full speed) as the glyphs I already have access to.

Last year, when I suddenly had to teach symbol-heavy stuff over the internet, I put together a tool for this because my handwriting is just too bad with a mouse or even a tablet. I wanted to be able to "live" calculate with symbols while I talked over it with my students.

I called this tool √𝚎𝚍, the rich Unicode text editing suite (RUTED, pronounced ˈruːtɪd) and I use it in vim: https://gitlab.com/ruted/ruted-vim.

I first defined so called modes of ASCII sequences representing Unicode symbols, like "forall" for "∀", and "NN" for "ℕ", and ";o" for "∘". Then I created a very small vim plugin to enable modes and change modes. When in a mode, you can enter the ASCII sequences, and they are replaced by their Unicode equivalent.

It is a bit of a simple hack, but it worked great over the past year. Entering symbols has become very easy for me now.

Re: Sir, Please Step Away from the ASR-33 (2010)

#16
The best thing about using only ASCII for the main syntax is that everyone can type it with their keyboard. I think the recent fad of supporting Unicode identifiers is misguided. Of course, Unicode should be permitted in string literals, but not in the code itself.

*Also I don't think Go is better than modern C++, though it might be better than C++99 which was the main standard when the article was written.

Re: Sir, Please Step Away from the ASR-33 (2010)

#17
post #11

I agree with the conclusion of the article; we should move past the requirements of a long-gone era of computing, but the suggestions provided don't feel like improvements to me. > Why keep trying to cram an expressive syntax into the straitjacket of the 95 glyphs of ASCII when Unicode has been the new black for most of the past decade? Because I don't have 143,859 keys on my keyboard. Having to type λ would involve…

I can't agree with the conclusion when he does not even try to guess at the reasons for status quo, only the offhand remark "computer people are conservative".

Perhaps the text with limited alphabet and fixed-width display is actually optimum both for programmers' mental workload and for computer processing? Why the urge to abandon it?

Many many people tried to "move on" but there's always some catch. I like DRAKON graphical programming editor but it makes diffing harder and merging changes from outside impossible.

Re: Sir, Please Step Away from the ASR-33 (2010)

#18
post #4

If I wanna use something like a ™ I have to google how to enter it, or just google and copy the character. I don't want any extra glyphs in my code until it's just as easy to enter (at close to full speed) as the glyphs I already have access to.

In emacs counsel-unicode-char brings up a menu where you type to narrow for example entering trademark gives you both the ® and ™

On my phone's keyboard typing the words registered or trademark bring up those options as completions.

Word and libre office have the menu under insert

I actually like the emacs version the best. One could even rig up a deal with emacs client to effectively use it outside of emacs by popping up a floating window then shoving the result into the clipboard.

Re: Sir, Please Step Away from the ASR-33 (2010)

#19

The best thing about using only ASCII for the main syntax is that everyone can type it with their keyboard. I think the recent fad of supporting Unicode identifiers is misguided. Of course, Unicode should be permitted in string literals, but not in the code itself. *Also I don't think Go is better than modern C++, though it might be better than C++99 which was the main standard when the article was written.

> The best thing about using only ASCII for the main syntax is that everyone can type it with their keyboard.

My keyboard doesn't have a key for NUL, BEL, VT, EOT. What kind of keyboard do you have which has buttons for these?

Re: Sir, Please Step Away from the ASR-33 (2010)

#20

"When I was a child, I used to speak like a child, think like a child, reason like a child; when I became a man, I did away with childish things. [..] Syntax highlighting is juvenile. When I was a child, I was taught arithmetic using colored rods. I grew up and today I use monochromatic numerals." - Rob Pike

A great example of how very smart capable people can express silly ideas wherein they justify personal preference with bad logic. https://ppig.org/papers/2015-ppig-26th-dimitri/ Code isn't arithmetic nor prose and the majority usage of highlighting is because people intuitively grasp that life is easier with highlighting. It is perfectly ok to have different preferences but one must be careful not to elevate a prefer…

I hypothesised that syntax highlighting just had to provide some tangible benefits just because of how it allows the brain to process lots of information with a quick glance. After having witnessed a few geniuses work and swear by no syntax highlighting, I started to doubt my thesis, so thank you for linking the paper.

Maybe some people just perceive the syntax highlighting as cognitive overload although it's meant to achieve the exact opposite.

Post reply on HN