Where is text programming going? Even though all I am looking for these days is an environment or a platform in which the programming is in text, at most I’m finding ones where there are bits and pieces you can do in text, and a bunch of mousing around that ties it all together.
The latest is PLCs, programmable logic controllers. The hope was that these would be versatile enough to automate an experiment, but would be stable and reliable. Once upon a time, PCs did this pretty well, but now they’ve become more like a shopping mall, with a huge amount of business oriented traffic going on and no real way to control it.
So, the PLC programming is off to a start. The text programming language is like Pascal, they say. Except, you can’t define variables; that gets done with some other tool that’s like a database with a bunch of dialogs and rows and columns. And, you can’t define functions; you make a separate little project out of each one, and link them all together with a thing that looks like the left half of Windows Explorer. So it’s all in scattered bits here and there, and noplace that feels integrated.
I guess the most textual generally oriented tool I know now is VisualStudio with its languages, like C#. The language actually seemed pretty elegant and powerful. But there’s still a huge amount of fiddling with interfaces and fiddling with forms and fiddling with properties and so forth.
The thing is, I guess, I don’t quite know what to ask for, what it’s called. 20 to 30 years ago, computers were generally for programming, and you’d get a book that explained how the language worked, and you could read the book and write a program and get it working. You could read the program to somebody over the phone or paste it into an email. You could paste it right here -> <-. Now I’d have to try to recite a litany of little dialogs and forms and windows. There was a little yellow triangular thingy, and then a box that asked for this number, which I put in - I think I put it in, anyway - and then everything died. It’s like giving directions with no street names, no odometer, no compass. It’s less and less programming, and more and more fiddling around until nothing noticeable seems wrong.
This is not to say that the old computers were better, or that they should still work that way. It was a pain in the ass that you had to do things with memory in 64K pages, and couldn’t manipulate things that were bigger than that without having a whole different approach. It was a pain in the ass deciding what loops could be counted on never to iterate more than 32767 times. It was a pain in the ass unpacking and packing arrays because memory was so small. It was a pain in the ass that all names had to be 6 characters or less (or 8 or whatever). It was a pain in the ass to deal with the 640K barrier, and debates about extended memory versus expanded memory, and all the excludes in config.sys, and things that would go wrong either with TSRs or because of them. But it seems that they kept adding messy things faster than they removed them. I still occasionally hit 64K page problems, like their trickle-down effect on Excel data set limitations. I found a nice Forth compiler but it still fights with PharLap extenders.
And the ground is always moving, we’re always building on sandbars. I worked a bit last month to turn an algorithm into software - it takes two real number arguments, and returns an array of about 5 to 10 reals that represent as neat numbers, few digits and tending toward 0 or 5 or maybe 2, 4, 6, or 8 in the last digit, that cover slightly more than the range between the two input arguments. If you want to automate making a graph, you need this routine to create the labels. So, anyway, I needed that, and wrote a routine that did it, in something under WinXP. Trouble is, I did this in ROM Basic on a CPM machine over 30 years ago, and several times in between. It won’t stay written. There’s nothing new about this little shack, but the real estate underneath it keeps changing. This shouldn’t have to be. Information machines have been way faster and more accurate than a diligent human for decades, but they don’t even outlast a dog.
Why isn’t there a tidy box available someplace, that has been around a few years and will be around a few more, that has a flat memory space, and a simple filesystem with 40 character names, and some clean vanilla dialects of C or Fortran or Modula-2, and a small enough number of video modes that you can generally just stick with one? I think somebody could build one with 1988 technology (there would no longer be any of those patents in force). They still sell 80386 processors - hell, they still sell Z80’s, lots and lots of them. This thing could cost a few hundred and people would stick them all over to do dedicated jobs.
Ah, well, shit, I think I’m going to go home and pet the cats. That’s a very nice bit of complicated recursive technology that has been stable for centuries.