
AstonJ
What needs fixing in the digital sphere?
What do you think needs fixing in the digital / computer science sphere?
Most Liked

Korbin73
Software languages as a whole. Being a developer this may sound strange to say because I obviously love building software, but. I have been doing this for 20 years and while I would like to say a lot has changed it really doesn’t seem like it. Just looking at the history of languages, the timeline of events feels as though we have made very little progress. The summary of the timeline seems as though it goes like this:
- Lisp was created: What a HUGE breakthrough. It was a language with garbage collector, based on lambda calculus which basically meant that it had a 50 year history before it’s invention. And what’s the sad part… well lisp was and still is the only language that really follows the “code is data” tenet which pretty much makes it more like building material where you can change the language to meet your needs. This is lost in most languages, and certainly any language created by a vendor makes extension insanely hard.
- Smalltalk: Another big breakthrough for it’s time. OO was truly manifested as Alan Kay’s vision. And it was a completly interactive environment.
- C++: It was C with classes bases on the misunderstanding of what OO means when Alan Kay coined the term LOL. Now, pretty much every OO curly brace language has a strong influence from a language that uses a construct that was misunderstood.
- Javacript, C#, Java and pretty much every popular language used today: Brandon Eich was supposed to build javascript based on scheme until it was hijacked and made into what it is today. C#, Java, and many other curly braced language OO language language was pretty much recommended not to use inheritance LOL. The biggest reason to use the language, is now not the preferred way to program. So we are right back to the original paradigm of lisp (functional) in the 1960s of functions separate from data with modules.
Ok, I got a bit too long-winded. But, over the last 60 years we have seen very little progress in languages. One would even argue that we spent the last 3 decades validating that the misunderstood OO paradigm didn’t really meet our needs. What I want:
- Declarative languages - I shouldn’t have to tell the computer how to do it, just what to do
- Interactivity - I write something and can get immediate feed data to it like SmallTalk could (or the modern day repl) or instantly see the UI update as a I build it.
- Extensibility - I waited 15 years for certain features to be added to C#, and finally just moved to a different language because the language doesn’t provide an accessible way to extend it.
While there are languages that fit some or most of this criteria, the ones that do aren’t mainstream.

Korbin73
Hah, unison is the perfect example of hitting all those points that I touched on that I want (declarative, interactive, extensibiltiy, etc). However, widespread adoption for a language that started as a research language has only happen once, Python. But hopefully, the expectations that I want in mainstream languages will be met before I retire in 20 years
Popular General Dev topics










Other popular topics









Latest in Dev Chat
Latest (all)
Categories:
Sub Categories:
- All
- In The News (10779)
- Dev Chat
- Questions (29)
- Resources (118)
- Blogs/Talks (26)
- Jobs (3)
- Events (14)
- Code Editors (58)
- Hardware (57)
- Reviews (3)
- Sales (15)
- Design & UX (4)
- Marketing & SEO (1)
- Industry & Culture (15)
- Ethics & Privacy (19)
- Business (4)
- Learning Methods (4)
- Content Creators (7)
- DevOps & Hosting (9)
Popular Portals
- /elixir
- /rust
- /wasm
- /ruby
- /erlang
- /phoenix
- /keyboards
- /rails
- /js
- /python
- /security
- /go
- /swift
- /vim
- /clojure
- /java
- /haskell
- /emacs
- /svelte
- /onivim
- /typescript
- /crystal
- /c-plus-plus
- /tailwind
- /kotlin
- /gleam
- /react
- /flutter
- /elm
- /ocaml
- /vscode
- /opensuse
- /ash
- /centos
- /php
- /deepseek
- /scala
- /zig
- /html
- /debian
- /nixos
- /lisp
- /agda
- /textmate
- /sublime-text
- /react-native
- /kubuntu
- /arch-linux
- /ubuntu
- /revery
- /manjaro
- /django
- /spring
- /diversity
- /nodejs
- /lua
- /c
- /slackware
- /julia
- /neovim