Giacomo Tesio
@anzu@items.minimals.org

It's not much about thinking that people who tried before were demented, but about knowing, as we both know, that each programming language had certain goals in mind and certain constraints to work within.

Given that programming is usually seen as a profession (and an engineering one), instead of a human right, I think it's reasonable to assume that very few programming languages were designed to pursuit a political goal.

Many educational "toy" languages, for example, are fun to learn and may help some kids to discover a passion for programming, but cannot be used for building serious softwares, such as an operating system, an editor, a browser or whatever.

As a conseguence such kids cannot develop a demand for programs they can fully understand and modify, and they becomes useds as adult.

The best attempts at viable simplicity I know about are Wirth's #Oberon system and language, that basically conflated user and programmer, were a step in the right direction.

In my head I'd like to improve from there with simpler semantics (no heap memory, no record extensibility, total functions, cantor set theory for types...), but when I try to, I end writing example programs full of symbols instead of readable keywords.

I get what you say about the need of rigour yet flexible semantics.
And maybe you are even right.

But if you are not?

What if a powerful language with a readable syntax and simple semantics that every adult could understand could exist...but nobody ever try to create it?

@informatica@feddit.it @programmazione@feddit.it @technology@lemmy.world @programming_languages@programming.dev
Giacomo Tesio

Why people design a new #ProgrammingLanguage?

There are tons of good reasons of course. Some does that for fun or for curiosity, some for political or educational reasons, some to address shortcomings faced with existing one, either in specific use case or in general.

To me, at least at the conscious level, it's completely a political issue.

I see how programming is a new political force (so much that I actively used it to fight #BigTech in Italy) and I see how people who cannot read (aka #debug) or write (aka #programing), are doomed to becomes second class citizens in a #cybernetic society.

I don't want this to happen to my daughters, so I want to teach them how to program and debug.

BUT mainstream programming languages are weird, full of accidental complexity and with over-complicated semantics.

As a nerd who can programs in most of them, I tend to get fun in the abstractions and details of, say, a #Haskell or an homoiconic macro in a #Lisp.

But while they are fun to a person grown (and selected to fit) within such a primitive computing environment, they are inheritely excluding people who cannot spend decades to grasp their subtle intricacies.

And how you can teach such languages to kids?

Sure they can learn and understand any programming language construct way better of an average adult, but at a first glance all they will only see is glibberish!

And while some will be fascinated by such esoteric language that can be used to create games, worlds and agents that serve their will (just like I was when I was a kid), most will find that complicated and thus boring.

On the other hand a language that is explicit and with simple semantics (such as say #Oberon) will seem verbose and boring to a professional programmer.

I love the simple clarity of a #snake implementation like this https://github.com/tmartiro/voc-snake/blob/main/Snake.Mod whose complexity is almost just the complexity of the task at hand.

And while I see little improvements I could add to such language to further simplify it's syntax and semantics, when I try to do so, I end with something that is less readable than the original, despite syntax and semantics being simpler (as in less rules and no exceptions or incoherence).

It was pointed out by @anzu@items.minimals.org: while I want to make the language easy to read and simple to understand, I subconsciously try to address the issues I faced in my ~25 years as a polyglot programmer.
And apparently I can't resist such impulse, like if I cannot escape my experience.

It's sad.

It makes me think of how the phonetic alphabet was invented by people who cannot read or write but were exposed to hierogliphs, and think that creating a democratic programming language is beyond my ability because of how my mind has been blent from the existing one.

@informatica@feddit.it @programmazione@feddit.it
@technology@lemmy.world
@programming_languages@programming.dev
voc-snake/Snake.Mod at main · tmartiro/voc-snake

Snake written in VOC using Raylib. Contribute to tmartiro/voc-snake…

GitHub
Michigander :toad:

Michigan has its own official first day of spring
#michigan #oberon

Giacomo Tesio
@anzu@items.minimals.org

Sì, stavo pensando alla #programmazione e trovo interessante che anche nel linguaggio naturale, una sintassi più semplice aumenti il numero di persone che comprendono un testo.

Detto così è un'ovvietà, ma è stato oggetto di varie nostre chiaccherate.

In astratto sono d'accordo che un linguaggio di programmazione multiparadigma, graduale e consistente, di per sé, svolge meglio una funzione educativa, aprendo la mente.

Ma un linguaggio del genere, di per sé, permetterebbe di scrivere software equivalenti in molti modi molto diversi, alcuni intrinsecamente inaccessibili (o meno accessibili) a chi ne abbia una padronanza di base.
Sarebbe quindi compito della scuola fornire a tutti (ma proprio tutti) una padronanza molto avanzata del linguaggio di programmazione, in modo che anche chi non lo utizza quotidianamente, continui a comprenderlo bene.
Un obiettivo che, nonostante la buona volontà di alcuni insegnanti (e nonostante la #Costituzione) la scuola nel suo complesso non si è mai data né per la Storia, né per la Matematica.

Ci tocca dunque accettare che una padronanza avanzata di astrazioni come High Order Function o Y combinator (che ti ricordo, mi hai spiegato tu 😉), rimarrebbero appannaggio di una élite, così come tutto il software che le utilizzassero in modo estensivo.

Se il tuo obiettivo è massimizzare il numero di persone che può leggere e modificare il maggior numero possibile dei software, allora tali software devono essere scritti in un linguaggio semplice (#Oberon? 🤣) che la maggior parte delle persone può imparare in poco tempo e dominare completamente con gli anni, privo di un livello "avanzato" che avvantaggi chi lo acquisisce, svantaggiando, simmetricamente, chi no.

La sintassi è parte della questione, ma non è solo questione di sintassi ovviamente.
Antranig Vartanian

FreeBSD-Update and ~200 Jails

Initially, when I heard about freebsd-rustdate I was very skeptical. I have a fear of “Written in <new hip language>”. I thought, however, I’ll wait, and when the time comes, I will try and see how it works.

For the last couple of days I’ve been updating hosts and jails for my customers and my company, and one of the best resources I found was the FreeBSD Update page on FreeBSD’s Wiki, specially the “freebsd-update Reverse Proxy Cache” section. It has saved me hours when updating the hosts. For some hosts we even did an NFS mount of /var/db/freebsd-update/files directory.

But when it came to upgrading the jails, I realized that this is going to take a very long time. Each host has at least 15 jails, up to 50. There’s a host which has 100+ jails.

Upgrading all of them was going to take a very, very long time. So I ended up doing some research. Here were my options.

Build FreeBSD once and run make install everywhere else using NFS and DESTDIR (I used to do this years ago)
Migrate to PkgBase (we’ve started doing this, but we’re not done yet, and it will take a while)
Nuke the Jails, start fresh, and just move the data (this could work, and I will do that in the future, but now I need to update ~200 jails in the coming 3 days)
Somehow, make freebsd-update run faster.

As you have guessed, I went for the last option. Uncle Dave reminded me of freebsd-rustdate again, and I decided to give it a try. Even before starting, my good friend Daniel wrote in our group chat:

@dch my guy. You just saved me several hours per year of flipping back and forth between terminals waiting for the next part of a freebsd-update upgrades to finish running on a million systems.

I arrived to my parent’s house, installed freebsd-rustdate on a host, and tested it on a single jail. Here is my initial reaction

holy fuck freebsd-rustdate is fucking fast

Like I said, I hate “rewrite in <new hip language>”, but clearly, this time it’s a winner.

And frankly speaking, my Jail manager, jailer, does have the same problems that freebsd-update has. It’s much, much slower when you have to manage 100+ jails. I will, however, not rewrite it in another language (for now, and if I do, it will be in Oberon). Although I might end up spending some good amount of time optimizing it 🙂

Kudos to Matthew Fuller, amazing work. And I have to mention, when I was thinking about moving to FreeBSD more than a decade ago, his rant BSD for Linux Users was the deciding factor for me, and I’ve been using FreeBSD ever since.

That’s all folks…

Reply via email.

#FreeBSD #Jailer #MatthewFuller #Oberon #Rust

freebsd-rustdate

rustdate.over-yonder.net
RTN

#MPS:
"
Uranus: Magnetosphäre im Ausnahmezustand

Das Uranus-Magnetfeld ist raumgreifender als bisher gedacht, zeigen neu ausgewertete Daten der Sonde Voyager 2. Die Suche nach Monden mit Ozeanen wird dadurch leichter.
"
mps.mpg.de/uranus-magnetosphae

2.12.2024

#Magnetfeld #Oberon #Planetologie #Raumfahrt #Raumsonde #SpaceFlight #Titania #Uranus #Voyager #Voyager2

Uranus: Magnetosphäre im Ausnahmezustand

Bei ihrem Vorbeiflug am Uranus vor 38 Jahren erlebte…

www.mps.mpg.de
Tim Ashley 🏳️‍🌈 💙🤎💜

The great Australian soprano Florence Austral singing Ocean, thou mighty monster from Weber's Oberon, with the Covent Garden Orchestra and John Barbirolli in 1928.

Weber was born #OTD in 1786. And this really was an extraordinary voice.

youtube.com/watch?v=yhBoXtLkqc

@classicalmusic #Weber #Oberon

- YouTube

Enjoy the videos and music you love, upload original…

www.youtube.com
The ol' tealeg 🐡

@amk @mekeor @a it’s got to go some to beat the European Space Agency satellite running code written in a custom Oberon compiler, itself developed in chicken scheme. #esa #oberon #chicken #scheme (reference: bobkonf.de/2024/schirmer-winke )

antrophistoria

📚 El libro, como ya comenté en algún post anterior, es un recorrido por la Historia de los hogares, desde las primeras cuevas hasta las más lujosas villas. Si aún no lo has reservado, todavía estás a tiempo.

🔗 Resérvalo aquí: amzn.to/3Z4JvYF

#️⃣ #libros #lectura #JoséAntonioCabezas #DesdeLasCavernasHastaLasVillas #Oberon #Anaya #LibrosRecomendados #LecturaRecomendada

🎉 ¡Mañana empieza todo!

Matija Nalis

@amszmidt @theruran But I agree that I'm not a big fan of programming language over-verbosity like in #Pascal / #Oberon .... typing BEGIN/END all the time gets very tiring very fast. Even C's {} are annoying due to shift-usage. Python replacing that with indentation is on the right track, but there is still too many of shift-requiring parenthesis, quotes and colons contributing to #RSI health issues. I think I'll choose next language exclusively based on if it can be used without shift keys 😄

Linux User Group Nürnberg ✅

Der #LTN beim Theo am 16. Mai:

In der Summe haben sich 18 Personen eingefunden. Vielen Dank dafür.

Es wurden u.a. nochmal der LPD besprochen, DBVT mit Stick und Raspi

War wieder einmal ein interessanter Abend.

Der nächste virtuelle LTN findet am 23.05. statt.

Und morgen am Samstag unser Linux Presentation Day 2024.1 beim Theo. in der Schnepfenreuther Hauptstrasse 19.

Geöffnet ab 11:00 Uhr. Eintritt frei.

Wir haben wieder ein interessantes Programm vorbereitet.

#linux #lpd #oberon

Linux User Group Nürnberg ✅

Nachlese zum 134. virtuellen #LTN am 25.04.:

Es haben sich in der Summe 13 Gäste eingefunden. Vielen Dank für das Interesse.

Themen waren diesmal u.a. der Live Vortrag zu #Oberon, TV über Internet und SAT-TV, DNS-Server bind etc.

War wieder ein kurzweiliger Abend.

Das nächste reale Treffen mit dem InkScape Aufbaukurs findet am 02.05. ab 18:00 Uhr beim Theo in der Schnepfenreuther Hauptstr. 19 statt.

Einfach vorbeischauen und die lokale #Community kennenlernen.

Wir freuen uns.
#linux #lpd

Linux User Group Nürnberg ✅

Der 134. virtuelle Linux-Treff Nord steht an:

Am Donnerstag, den 25.04. findet wieder unser virtueller #Linux-Treff Nord statt. Beginn ist um 19:00 Uhr.

Themen werden u.a. diesmal sein:
- Live Vorstellung #Oberon mit Stand der Dinge für den
- LPD2024.1,
- Erfahrungen mit Matrix,
- mal wieder Wanderung?
- und was sonst noch so anliegt.

Wer mit dabei sein und z.B. eine Linuxfrage loswerden möchte oder einfach nur so, einfach eine Mail an kontakt[at]lug-noris.de senden.

Wir freuen uns.

#lpd

Linux User Group Nürnberg ✅

Linux Presentation Day 2024.1 der Linux User Group Nürnberg:

Wir haben nun auf einem Rechner mit alter 3-Tasten-Maus ein Oberon-OS nativ installiert und können nun das System so präsentieren, wie es damals einmal definiert wurde. Ein zweiter ist noch in Arbeit und wird auch für Sie am LPD bereitstehen.

Kommen Sie am 18. Mai in die Schnepfenreuther Hauptstr. und erleben Sie nur bei uns ein komplett neues altes Computergefühl.

Was ist Oberon? Infos hier:

lug-noris.de/unsere-aktivitaet

#oberon #lpd

Oberon 2.3.7

Linux, das freie Computerbetriebssystem für Jedermann.…

www.lug-noris.de
Shamar

@fsniper

Uhm.. I thought it was, and in fact forked #Jehanne to further simplify and make it more powerful: jehanne.h--k.it/

But infact I was wrong: Plan9 is still inheritelly elitist. Even its best incarnation, #9front, while a superb enginering achievement, builds on top of a broken history.

People should not need to learn grep, sed or awk to manipulate text files programmatically. Even just their names sounds arcane.

Furthermore the reason why people do not use Plan9 is rooted in the huge military investments that funded (and still funds) the broken alternatives through several companies (microsoft, ibm, sun, google...) and universities that spread the broken tools.

Spreading computing literacy for the masses is never been a goal of such actors.

Today the cultural #hegemony that was built this way, makes it unthinkable to further explore the vast design space that could actually gives us a safer foundation for modern computing.

That is also why "the Plan9 lesson" must ignore the economical and geo-political forces that lead to its (percieved) failure.

And why you didn't mention an European os like #Oberon instead.

Jehanne is moving!

Jehanne - Jehanne is moving!

Jehanne Operating System
Shamar

#snak is really an impressive work, @grunfink.

Looking at the code I wonder where the "backported" xs library comes from: it looks very clean and nice...

Also, I've never seen C headers used for implementations: it's a clever trick that reduce the gap between #C and a more advanced language like #Oberon (:-D) but I wonder why you coded it this way.