R was written in the early 1990’s as an open source replacement for Splus. Today it is a major tool for statistical analysis. R is both a language and a statistical tool. It is object-oriented.
Rust is quite recent. It is a C alternative which attempts to make memory leak programming errors impossible. It appeals to quiche-eating C programmers who are too lazy to debug their code. There are moves to rewrite Linux in Rust.
I like the name Lazarus, and it looks useful if I wanted to make some program GUI.
I am tempted to give it a try.
I wonder if I could weld Lazarus onto R , the way they do with Julia.?
In my younger days, I taught myself Assembly Language so I could make MD-DOS 3.1 do some things it didn’t do out of the box. I wrote my code in a text editor, and assembled it using debug to produce a .COM executable. I started with a book about Assembly Language. I didn’t buy Microsoft’s assembler, because it was way too expensive at the time, and I couldn’t find anything else/better.
Initially, I tried to learn BASIC, but many of the commands had far too many switches for me to learn, and the tutorials of the time weren’t as good/easy to understand as they are today, so I gave Assembly a try, and I got it right off the bat. I think the reason it worked for me was that there was one command to do one thing, unlike the print command in BASIC, which had over fifty switches to accommodate any output scenario imaginable.
Now, I’m 75, and I’ve studied Kotlin. I got fairly proficient with it a few years ago, but now I’d have to go through my notes to re-learn what I learned when studying the language.
The learning method that works for me is when I decide to learn something new, I start with research on what I want to learn, then I try to get a handle on the topic, a small bit at a time, then build on what I’ve learned going forward. This is the same process I use when I have an issue with anything, and I want to figure out how to fix it. I learn programming languages the same way I learn anything else. I take in information in small, easy to understand bits, then build on what I’ve learned until I become proficient with the topic (in this case, a programming language). As I learn about anything, I evaluate it to determine whether it’s what I want. In the case of programming languages, C, and C++ aren’t my cup of tea. I prefer higher-level, object-oriented languages such as Kotlin/Java, etc. One thing I do when I encounter something I don’t understand is I do an Internet search about it. The feedback I get from these searches usually helps me better understand what I didn’t get from whatever tutorial I was following.
You are more systematic than me. I like to dive in and make a mess, then learn from fixing the mess.
You like assembler, and you like high level languages, but you dont like C.
I like low level languages like C, but I do use R which is one step up . R avoids a lot of programming of loops by using vector processing. That takes some effort to get used to but mskes it ideal for things like matrix arithmetic.
I did not like Java, so I probably would not like Kotlin.
It just goes to show that we each have our own preferences. I’ll admit that after getting a handle on a language, I do most of my learning by writing code, then figuring out how to get the code to do what I want it to do. I also prefer tutorials that give me small bit of theory, then challenge me with some small project to build. That way, I put what I just learned to use. That’s how the Kotlin tutorial I used to learn it worked. I wish all languages did tutorials like that. If they did, I could probably learn nearly any language.
I try to learn the theory of a languages feature, then put it into use. That’s where I do the figure out how to make it do what I thought it was supposed to do part. Sometimes, the theory part doesn’t exactly describe what the language feature actually does, or how to use it, or is a bit unclear. In any case, figuring things out is my favorite part of most anything I do on a computer.
That is where we need talented people to write good teaching books like
“The C Programming Language” by Kernighan and Ritchie.
It is both a manual and an exposition of how to do things.
There is nothing like that for Julia or Rust… all the talented writers have disappeared.
True. What’s needed is a bunch of very knowledgeable programmers for each language who can also write good documentation. That’s an uncommon combination, but it’s what’s needed if you ask me. The question is, how do we get them?
I took Pascal on cards in college. That always seemed like a “weed out” class to me. If you made it to the second semester you could use a terminal instead.
O.K., that’ll work for the community-driven languages, then when it works as I expect that it will, the closed-source, commercial languages will see that they must join in or get left behind. Does that sound about right?
I had a look.
MX package system has Lazarus and FPC.
I was a bit concerned… when you google for Lazarus you get heaps of stuff on malware originating from North Korea.
Can you reassure me that has nothing to do with the Lazarus you use?
I have used fpc before, on its own.
Must be a naming coincidence, but I did not get those malware warnings.
Better search for term "Lazarus IDE’!
Anyway, if it would be malicious thingie, would it be still in your distros repo?
Debian has it too (and a newer version in the backports as well).
There is mailing list about Lazarus/FPC, I’ll write the address when I get to my computer latet - if you whish. I found it useful, when I got stuck sometimes.
Edit:
BTW Lazpaint, Double Commander are created in Lazarus IDE, These are kind of known apps. There may be others I’m not aware of.
I dont care what they do. We just need open source to excel in documentation support. Learning as well as howto…
I agree with you, it could be a winning move for Open Source to win the literature prize.
The problem is finding the creative writing talent.
I agree, but that’s an issue for the languages user community to deal with. If the membership wants the language to excel, they’ll step up as volunteers, or help to find the right talent to get the documentation and how-to articles created. Perhaps the best answer may be to have the writers produce the languages documentation, then take feedback from the user community to improve it, similar to how a Wiki works. As with everything in the open source movement, many hands are better than a few. What do you think?
I came across this Coursera course that was quite helpful in helping me get a better understanding of how to study in general. They talk a lot about taking breaks while studying, taking notes, and what not. It’s motivating me to slow down and take notes, and do more research and not just go through a material for the sake of going through it.
That is great.
Research means let your curiosity run riot… it become fun then
The other thing is ‘focus’ … one thing at a time… @xahodo started out trying to master 6 topics at once. Slow down.
I would really like to see @xahodo master some coding language…he will enjoy the achievement and it can be useful.