Questions on old programming languages

38 respostas [Última entrada]
deavmi
Desconectado
Joined: 02/19/2015

I was wondering about learning a very old language. Something besides C. I was thinking of Lisp. Is that agiod choice. I also saw Pascal and seemed to like it a lot, well not a lot, just the way that methods/functions ate enclosed.

wpurcell
Desconectado
Joined: 11/07/2009

RMS's preferred language, lisp.
"The most powerful programming language is Lisp. If you don't know Lisp (or its variant, Scheme), you don't know what it means for a programming language to be powerful and elegant. Once you learn Lisp, you will understand what is lacking in most other languages."
https://stallman.org/stallman-computing.html

deavmi
Desconectado
Joined: 02/19/2015

RMS was the reason why Lisp was onnky list.

tomlukeywood
Desconectado
Joined: 12/05/2014

if you like old languages FORTRAN is a good one
its from the 1950's and the code is fairly easy to read and its similar to BASIC

heres some resources:
to install a fortran compiler use
sudo apt-get install gfortran

and to use the compiler

gfortran program.f08

also some tutoirals

general fortran:
https://www.youtube.com/playlist?list=PLMYDnuotCSMXV0Yk6nJBQF4sqzI8GjfBj

how to mix fortran with c:
calling c from fortran:
http://92.19.232.58:82/videos/fortran_tutorials/html/ftrn_tut_11.html
calling fortran from c:
http://92.19.232.58:82/videos/fortran_tutorials/html/ftrn_tut_12.html

onpon4
Desconectado
Joined: 05/30/2012

Any particular reason you want the language to be old? There's nothing wrong with using an old language (as long as there's a libre compiler or interpreter available for you to use), but I'm curious as to why.

deavmi
Desconectado
Joined: 02/19/2015

I just thought it would be fun. And many of them looked easy to learn. I mean BASIC is still very cool.

Magic Banana

I am a member!

I am a translator!

Desconectado
Joined: 07/24/2010

Lisp is very different from the other languages mentioned in this thread (C, Pascal, Fortran, etc.): it is a functional language, not an imperative language. If you do not know the functional paradigm, then Lisp will be harder to enter but it will be far more instructive too: you will learn a significantly different way to program.

deavmi
Desconectado
Joined: 02/19/2015

I have been looking at FORTRAN and I am starting to like it a lot. I might in the future also learn BASIC as it is just simply awesome.

deavmi
Desconectado
Joined: 02/19/2015

I have been looking at FORTRAN and I am starting to like it a lot. I might in the future also learn BASIC as it is just simply awesome.

deavmi
Desconectado
Joined: 02/19/2015

I just thought it would be fun. And many of them looked easy to learn. I mean BASIC is still very cool.

deavmi
Desconectado
Joined: 02/19/2015

If I may ask what programming languages (if any of you guys are programmers) do you guys like and ones that young know. Also reasons of why and what your preferences on a language are, if I may so humbly ask :D.

Magic Banana

I am a member!

I am a translator!

Desconectado
Joined: 07/24/2010

For efficiency, with an object-oriented paradigm (and even some functional bits): C++14. On the negative side, the language is not safe (you cannot have both efficiency and safety) and is complicated, hard to master. The standard template library does not contain much but many excellent libraries exist (search the boost library first).

When efficiency matters less than productivity: Python 3. It is, nowadays, one of the most popular language (what means many libraries are available). It is object-oriented and safe. Ruby is similar, has its fans, but is less popular, hence less libraries.

To process text inputs: AWK. You can do so many things by writing, in a matter of seconds/minutes, a few lines of AWK.

I would argue that those three languages cover all needs (notice that C++ is a superset of C). Some would argue that, between C++ and Python, there is room for a language like Java. I personally do not think so: either choose efficiency (C++) or productivity (Python).

Then, there are the less popular programming paradigms. In particular the functional paradigm (Lisp, Haskell, etc.) and the logic paradigm (Prolog and some other unpopular languages). I think it is very instructive to at least discover those other ways to think problem resolution. When it comes to logic programming, you can forget everything you know about programming with another paradigm!

deavmi
Desconectado
Joined: 02/19/2015

I do do Python. I love it. Beautiful language allows you to code really quickly.

deavmi
Desconectado
Joined: 02/19/2015

I do do Python. I love it. Beautiful language allows you to code really quickly.

t3g
t3g
Desconectado
Joined: 05/15/2011

Python is great for web applications as well when you pair it with PyPy and Falcon framework.

tomlukeywood
Desconectado
Joined: 12/05/2014

i use c for most things as because it lets you do just about everything
and theres loads of documentation and libs for it
sometimes i mix FORTRAN with c if i think there’s something that could be done easier in FORTRAN

i know a bit of assembler enough to make a x86 bootloader
and i am currently learning gbz80 asm
so i can make gameboy applications using assembler

deavmi
Desconectado
Joined: 02/19/2015

Woah awesome bro. gameboy for the win. But bigger. Kudos too youbfor being able to code in Assembly.

tomlukeywood
Desconectado
Joined: 12/05/2014

if you want to program for the gameboy
see these resources:
http://gbdev.gg8.se/
http://www.devrs.com/gb/links.php
http://gameboy.mongenel.com/asmschool.html

a gameboy assembler:
https://github.com/bentley/rgbds

a post explaining how to compile c code using sdcc for the gameboy:
http://sourceforge.net/p/sdcc/discussion/1864/thread/e04ebcc5/
please note that you will need to write a standern libary
as the only one i found dosent look like it has a license (correct me if i am wrong) and so is non-free
i email the creator about the licenses and they haven’t got back to me

just be sure to avoid the non-free stuff

also heres a libre gameboy program in asm you can learn from:
https://github.com/AntonioND/back-to-color

and if you want to run your programs on a real gameboy get one of theses:
http://www.retrotowers.co.uk/gb-gameboy-usb-smart-card-64m

and then use the libre program ems flasher(https://github.com/mikeryan/ems-flasher)
to flash your roms onto the cart

just be sure to read this line in the readme:
BEWARE: if you give the EMS flasher a huge file for writing, it will continue writing past the end of the cart and do unknown amounts of damage. Please don't do this!

deavmi
Desconectado
Joined: 02/19/2015

Woah awesome bro. gameboy for the win. But bigger. Kudos too youbfor being able to code in Assembly.

tomlukeywood
Desconectado
Joined: 12/05/2014

out of interest why do you make all your posts 2 times?

deavmi
Desconectado
Joined: 02/19/2015

Sorry. I got confused with my browser.

deavmi
Desconectado
Joined: 02/19/2015

What computer do you use (out of interest of your profile picture). Is that a ThinkPad?

tomlukeywood
Desconectado
Joined: 12/05/2014

i use many a computer

my thinkpad x200 computer(best thing ever!):
http://92.19.232.58:82/files/images/computers/IMAG0098.JPG
my mobile computer:
http://92.19.232.58:82/files/images/computers/IMAG0097.JPG
my beast of a computer:
http://92.19.232.58:82/files/images/computers/IMAG0096.JPG

i also have many many other computers that can be found here:
http://92.19.232.58:82/files/images/computers/

deavmi
Desconectado
Joined: 02/19/2015

What computer do you use (out of interest of your profile picture). Is that a ThinkPad?

Oh sorry for this duplicate reply.

tomlukeywood
Desconectado
Joined: 12/05/2014

?? now i rely confused

so why you make duplicate reply?

and the profile pic is not a thinkpad but i do regularly use one

deavmi
Desconectado
Joined: 02/19/2015

Sorry about that. Never mind it.

onpon4
Desconectado
Joined: 05/30/2012

Python is easily my favorite language. I do just about everything in Python. I've even done things I could do in bash in Python (like iterating over dozens of files and renaming them a certain way), though that's largely because I haven't bothered to learn much of bash.

Out of C and C++, I'm personally more fond of C, though I understand I'm in a minority. I think there are too many ways to do a lot of things in C++, mostly as a result of inheriting stuff from C while also inventing totally new methods to do stuff (e.g. malloc/free vs new/delete).

Magic Banana

I am a member!

I am a translator!

Desconectado
Joined: 07/24/2010

C++ is indeed a meta-language, i.e., many different styles are possible: some write C code with the STL, some write truly oriented object code with polymorphism and so on, some write STL-like code with iterators everywhere and function objects, some write generic code (the templates), etc. Many C++ programmers ignore parts of the language (say, no template, no function objects, no multiple inheritance, no malloc/free) to get a code that is, arguably, easier to understand. Bjarne Stroustrup (the creator of C++) argue in the opposite way: that combining the different paradigms leads to a more concise and powerful code.

Talking about languages with many different styles, I forgot about Perl that would be between Python and AWK. It is however much slower than both of them, the grammar of the language is (even theoretically) more complicated than that of any popular language and the so many ways to write one thing in Perl really is problematic, I believe. The authors of the language would obviously disagree: they see that as letting the programmer express her creativity.

I did not talk about Shell scripting but I do that a lot when the problem to solve is small, involves files, or text inputs (but without the need for AWK's power), etc. However the Shell by itself is ugly, slow and an horror to debug. That is why I now see Shell scripts of hundreds of lines as an abomination. For really small problems, Shell scripting is fun. It is like a puzzle: how to chain with pipes extremely efficient but specific commands (for text processing: head, tail, cat, tr, wc, cut, paste, comm, join, sort, uniq, grep, etc.) to get the correct output?

deavmi
Desconectado
Joined: 02/19/2015

Yeah. Using Python even to quickly do things like clear up directories and such is a hthing I think I have done before.

Using it as an administration tool basically. :D

Of course I do use it fro programming though.

alimiracle
Desconectado
Joined: 01/18/2014

I use mor from 20 languages hahaha
but c its First language in my heart
Because it gives me the freedom to control everything

Then come python
It is a magical language

deavmi
Desconectado
Joined: 02/19/2015

Both are magical.

alimiracle
Desconectado
Joined: 01/18/2014

yes Both are magical.

deavmi
Desconectado
Joined: 02/19/2015

BASIC is magical. I think there is a strong place fit it in my heart.

Ah. Opinions, are they not just awesome. ;D

deavmi
Desconectado
Joined: 02/19/2015

In love my spirit of "I wanna' learn em' all." (programming languages)

deavmi
Desconectado
Joined: 02/19/2015

FreeBASIC is awesome. Bringing back the feeling of Visual Basic. Any other old languages?

tomlukeywood
Desconectado
Joined: 12/05/2014

COBOL is a old one:
http://www.mainframegurukul.com/tutorials/programming/cobol/cobol-tutorial.html

also this one was ment to be the first programming language:
https://en.wikipedia.org/wiki/Plankalk%C3%BCl

deavmi
Desconectado
Joined: 02/19/2015

I must say something about Lisp. The idea of operators being functions is truly awesome.

deavmi
Desconectado
Joined: 02/19/2015

Will check it out. :D thanks.

deavmi
Desconectado
Joined: 02/19/2015

Oh yes. Nimrod or Nim is an awesome language.