Announcement: :christmas_tree: I've spun up a new...
# thinking-together
i
Announcement: 🎄 I've spun up a new channel for #C0133ED5811. If that's an area of interest for you then be sure to join. Note that this channel, like our other subject-specific channels (#CLYCGTCPL, #CE1R695T7, #CEZ6QTHL1, maybe others someday — see #CEXED56UR) are intended for discussion by and for people who are sincerely enthusiastic about the subject. These are positive spaces, focused on studying and critiquing the ideas within the field, not questioning the field itself. If you'd like to call into question the merits of an entire field or practice, that belongs in #C5T9GPWFL... ...or perhaps in another community entirely if it's just a rehash of the same old tabs-spaces debate. After all, we all know that tabs are the supe-💨
❤️ 1
c
On the subject of tab/spaces, I heard recently that Screen Readers are easier to use with Tabbed documents vs spaces. It is the first argument I've heard for the merits of one over the other - personally, I'm a spaces man, but if it is genuinely true, then I will have to reconsider.... For this reason, I got around to adding tab support to my text editor.
d
Spaces FTW. And Vim.
We earn more apparently. Studies have shown.
i
The benefit of saying you use tabs is that people look at you funny, which is delightful. Meanwhile, you can actually use spac-💨
😄 2
j
I like to think that your use of 💨 means you just indent with dashes and have customized an entire workflow around this. As somebody who unironically turns on visual whitespace, I could get behind that.
😭 2
e
In Beads i solved this long running debate by preventing the use of spaces in the beginning of a line. You can only use tabs in the beginning, which solves a big problem with Python in terms of interchanging code which was formatted with differing numbers of spaces per tab equivalent. After the first alphabetic character you can use spaces of course. Works great, highly recommended.
👍 1
🤯 1
😮 1
Since i am the only one in this entire community who ever met John Backus (1973), i will leave the ancient field of FP to the fanatics. If they think a 50 year old concept is state of the art, they are drinking the kool-aid. But he couldn't get anyone to switch out of either COBOL or his prior invention FORTRAN, so there are obvious problems with pure FP. I see a lot of languages adopting FP-like features to blunt its penetration. Deduction and Declarative style trumps FP anyway, that's where i am headed.
s
tabs for indentation, spaces for alignment; though I'd like to see elastic tabstops used more
👍 1
i
Also, vertical tabs. Also, diagonal tabs.
🤩 2
d
I vertically-align my code cos I've got a touch of OCD. Plus it's easier to read 😄
w
Tabs inline so that
Copy code
x              = f(whatever)
x_             = g(x)
something_else = q(x, x_)
lines up nicely. 🐺
s
Folks we need a tabs v spaces channel.
💥 1
🎉 3
d
On spaces vs tabs: how about neither? I'd prefer a projectional editor that automatically formats my program to fit the current window width. Word processors can do this, and more: you can even insert diagrams and images into a document. Imagine the possibilities if we could use this 1980's technology for writing code, instead of editing virtual punch-card decks on our 4K retina displays.
☝️ 6
s
Totally on board with projectional editing! Inline diagram and image 'literals' sound pretty good to me.
e
I am planning for the world of proportional fonts. Fixed Width is archaic, however, there is no default OS font that is proportional that is any good with punctuation.
1
👍 2
i
I'd like it to be possible to program in Hest without seeing any text whatsoever. That's one reason why it's a drawing tool.
e
Without text complex expressions will be harder to understand. There are limits to comprehension without text. We learned this in the old days, because we had our trusty IBM flowcharting templates, and their pads of flowcharting paper, and once the program got past a certain point of complexity, the flowchart became fairly useless. They tried making FORTRAN auto-flowcharters, but it became what a tangle of wires. Scratch shows that you can avoid textual forms, but once programs get larger Scratch isn't so great. I do think with zooming and encapsulation of sub-areas a reasonable compromise can be reached. I had this template. So classy, with the sleeve and all, and the legend on the back. There has never been a classier company than IBM to my knowledge. HP was very good, but IBM at its peak is the pinnacle of technological excellence in the smallest details.
s
I think the problem is often trying to extract a graphical model from a textual one. It might be interesting to see what we get if we start with a graphical canvas and visuals and see what kinds of things can be expressed (graphical first). I'm not particularly against text but I'm interested to see where Hest goes. I like hybrid models which is text arranged in various ways outside the 'linear sequence file' limitation. A good example is Subtext 2 - the 'table' layout is much neater and easier to follow than a long series of nested conditionals.
👍 3
d
In Onex I have 2D layout with nested boxes for the outside structure of things, then inside the boxes there is text for labels, values and rewrite rules, which themselves are nested lists that can/will be rendered as nested boxes (that bit I haven't done yet) So you end up with text only being used for single values or identifiers or symbols in the language. Everything else is structured as nested boxes.
It's all saved and transmitted as normal structured text
c
My focus is on building graphical models from textual ones; but I am certainly interested in the reverse process, and thinking about it actively. @Duncan Cragg are you planning on doing a 2 minute week video?
d
Of course, but I'm not quite ready yet, plus I haven't ported my language from Java to C yet! So that may be a while. I can show the Object Network navigation GUI at least
c
OK, I'll look forward to it. My focus is on giving live coders visual feedback/information on the music/graphics that they are generating in code; hopefully to help understand why certain inputs give certain outputs, and enable greater creativity. But a logical next step is to let users tweak the visual representation of their code and have the full feedback loop.
d
I have seen live coding generating music and even though it's an amazing skill I always thought a graphical UI should make more sense!
i
Without text complex expressions will be harder to understand. There are limits to comprehension without text. We learned this in the old days
I think there's a good reason that real engineering disciplines, like mechanical or electrical engineering, use symbol-based schematic diagrams to design and document their systems. In programming, the systems we design are universally small and simple (once you take out the 99.9% accidental complexity), so we should be able to get by with doing all our coding as static 2d colorless drawings on a drafting table. We should then be able to submit those programs to a compiler or archivist labeled, of course, using colored tabs.
☝️ 2
s
It’s just symbols, whether text or schematic diagrams (or mathematical formulas). I’d wager that which kinds of symbols are used within which community has a lot more to do with environmental factors like who gets to tell the stories and build the products that become popular and what sets of tools are available than with any property of the symbols themselves.
g
i’d like to congratulate this community on successfully derailing the tabs vs spaces debate that started fomenting with the (IMO) much more interesting textual vs graphical/projectional debate
i
Yeah but.. coloured tabs vs coloured spaces. Syntax highlighting has had a blind spot for too long. And don't give me that "rainbow parens" nonsense. We all know lisp isn't a real art form.
s
Thinking about it, aren't coloured spaces basically what you get with org-mode outlines? I mean, they aren't literally spaces, but presentation-wise.
🍰 1