abucci, to ProgrammingLanguages
@abucci@buc.ci avatar

A weird thing about being 50 is that there are programming languages that I've used regularly for longer than some of the software developers I work with have been alive. I first wrote BASIC code in the 1980s. The first time I wrote an expression evaluator--a fairly standard programming puzzle or homework--was in 1990. I wrote it in Pascal for an undergraduate homework assignment. I first wrote perl in the early 1990s, when it was still perl 4.036 (5.38.2 now). I first wrote java in 1995-ish, when it was still java 1.0 (1.21 now). I first wrote scala, which I still use for most things today, in 2013-ish, when it was still scala 2.8 (3.4.0 now). At various times I've been "fluent" in 8086 assembly, BASIC, C, Pascal, perl, python, java, scala; and passable in LISP/Scheme, Prolog, old school Mathematica, (early days) Objective C, matlab/octave, and R. I've written a few lines of Fortran and more than a few lines of COBOL that I ran in a production system once. I could probably write a bit of Haskell if pressed but for some reason I really dislike its syntax so I've never been enthusiastic about learning it well. I've experimented with Clean, Flix, Curry, Unison, Factor, and Joy and learned bits and pieces of each of those. I'm trying to decide whether I should try learning Idris, Agda, and/or Lean. I'm pretty sure I'm forgetting a few languages. Bit of 6502 assembly long ago. Bit of Unix/Linux shell scripting languages (old enough to have lived and breathed tcsh before switching to bash; I use fish now mostly).

When I say passable: in graduate school I wrote a Prolog interpreter in java (including parsing source code or REPL input), within which I could run the classic examples like append or (very simple) symbolic differentiation/integration. As an undergraduate I wrote a Mathematica program to solve the word recognition problem for context-free formal languages. But I'd need some study time to be able to write these languages again.

I don't know what the hell prompted me to reminisce about programming languages. I hope it doesn't come off as a humblebrag but rather like old guy spinning yarns. I think I've been through so many because I'm never quite happy with any one of them and because I've had a varied career that started when I was pretty young.

I guess I'm also half hoping to find people on here who have similar interests so I'm going to riddle this post with hashtags:

#C #R

abucci,
@abucci@buc.ci avatar

@BoydStephenSmithJr How do you find using Haskell in a work setting? I always feel like I'm under time pressure and don't have as much as I would like to think through a design. I'm never satisfied with my Scala code for that reason and I feel like it'd feel even worse with Haskell since it's so much more concise.

Am not familiar with GMDTT, will have to check that out! So many things to learn 🤯

BoydStephenSmithJr,
@BoydStephenSmithJr@hachyderm.io avatar

@abucci This is my second Haskell job and I'm sure things will depend on the organization around you, but I just do the first thing that I can think of that "will work", make it as simple / concrete / specialized as possible until I have something that compiles without warnings, and only then do I let myself generalize / abstract things. Try to stick documentation on all new top-level bindings while my motivation is fresh, and allow myself to rewrite later.

YMMV, HTH

pglpm, to emacs
@pglpm@emacs.ch avatar

Does anyone know how to use an octave inferior mode in Emacs with the flatpak version of Octave? Web searches give no hints... Cheers!

itnewsbot, to random
@itnewsbot@schleuss.online avatar

Lorenz Attractor Analog Computer with Octave Simulation - [Janis Alnis] wanted to build an analog computer circuit and bought some multiplie... - https://hackaday.com/2024/01/28/lorenz-attractor-analog-computer-with-octave-simulation/ #lorenzattractor #classichacks #octave #op-amp #parts

JordiGH, to godot
@JordiGH@mathstodon.xyz avatar

I do not envy the #Godot devs right now.

I used to be heavily invested in GNU #Octave, a free #Matlab replacement. That was a bit of a more ambitious goal, because Godot isn't trying to be exactly like Unity, but Octave is trying to be exactly like Matlab. The overall problem, however, is similar.

It's a difficult, mostly thankless task. Users don't care what it takes to make it look exactly like what it's supposed to be replacing. Photoshop users going to the GNU IMP, Matlab users going to Octave, Maya users going to Blender, Chrome users going to Firefox... they all want the same thing: basically the same software, but without the fees, restrictions, or anti-user misfeatures. It is extremely draining to continuously disappoint people who aren't getting exactly the same software but without paying for it.

A few users will offer donations, but never enough to rival the budget of the software they're fleeing from. Nowadays there's better infrastructure to collect from these benevolent donors and get a steady income than when I was working on Octave. This offers some hope.

All this to say: if you're migrating to better, less enshittified software, donate if you can. If you cannot, then at least try to be kind and considerate of the smaller, more grassroots organisation and individuals that are trying to give you a comparable experience with no strings attached. :)

davidmarsh,
@davidmarsh@mastodon.au avatar

@JordiGH a global “take me to the donation pages for software I use” would be super handy. Not sure if anything like that exists

JordiGH,
@JordiGH@mathstodon.xyz avatar

@davidmarsh There have been attempts like Bounty Source, Freedom Sponsors, or Liberapay but I don't think any of them ever really took off.

I think Github itself sort of has some infrastructure for recurring donations.

Of course, an important thing is that orgs have to opt in to this, because as the root of all evil, just introducing money into an org that isn't ready to handle it can cause problems and disputes.

lmedinar, to random

Just trying the symbolic package in GNU / #octave

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • thenastyranch
  • rosin
  • GTA5RPClips
  • osvaldo12
  • love
  • Youngstown
  • slotface
  • khanakhh
  • everett
  • kavyap
  • mdbf
  • DreamBathrooms
  • ngwrru68w68
  • provamag3
  • magazineikmin
  • InstantRegret
  • normalnudes
  • tacticalgear
  • cubers
  • ethstaker
  • modclub
  • cisconetworking
  • Durango
  • anitta
  • Leos
  • tester
  • JUstTest
  • All magazines