DEV Community

I tried 10 programming languages and I liked it

Eugene Karataev on July 05, 2019

For the last several years I've been using JavaScript in my day-to-day work. But what about other programming languages? Most of them grow and evol...
Collapse
 
johnfound profile image
johnfound

You missed the language of the dragons - assembly language. ;)

Collapse
 
karataev profile image
Eugene Karataev

Hehe, I think that in this case the post'd take a couple of months longer to complete 😂

Collapse
 
johnfound profile image
johnfound

This is really very common fallacy. Actually assembly language programming is much easier for programming than is commonly considered.

I am working on several big projects in asm and it takes only a little bit more time than in conventional languages. But the results are really much better. With less bugs, less memory usage and higher performance.

Thread Thread
 
karataev profile image
Eugene Karataev

Are you serious?
Programs written with Assembler are long as hell. And AFAIK there are goto (jump) instructions used everywhere, which makes a program hard to follow.
I can understand that's it's sometimes necessary to write assembler code to fix performance bottlenecks or with a very limited resources (RAM).
But it's hard for me to believe that nowdays regular projects are written with assembler when there are so many high-level programming languages available with handy abstractions.
Can you please share what projects are you working on?

Thread Thread
 
johnfound profile image
johnfound

Well, the contemporary assembly language is a little bit different. With good IDE and decent libraries, the programming in assembly language is almost as productive as with the high level languages, but still keeping all the advantages of the low level programming.

Yes, it has less abstraction levels, but IMO it is actually an advantage that helps to solve the problems in the most simple way.

Anyway, here are several of my free assembly language projects. Some of them are huge and actually contain several sub-projects:

Fresh IDE - advanced assembly language IDE. (the source ) It contains as a sub-project the library FreshLib that is for writing portable applications. It contains OOP macro library as well, used mainly in the GUI widget toolkit of the library.

BTW, the web site from the above links is served by assembly written web server (not my project), the ultra-fast RWASA and is managed by my CMS, MiniMagAsm written in assembly language.

Another my web project is the web forum engine AsmBB. The source code is here.

You can browse the sources from the links above and see, that they are not so unreadable and hard to understand and maintain as you think.

Thread Thread
 
karataev profile image
Eugene Karataev

Thanks, this is really insightful. My perception of assembler shifted from "used for close-to-hardware tasks only" to "might be useful in different domains, even for the web".
Also thanks for your one hour video of assembly programming. It gives the picture of current development process with asm: IDE, code highlighting, syntax, structure, e.t.c.

Collapse
 
johnfound profile image
johnfound

This post loads slow as hell!

Collapse
 
karataev profile image
Eugene Karataev • Edited

Yep, maybe it was not a good idea to inject repl.it sandboxes inside the post, but provide links for those who interested instead.
I just wanted to make it possible to edit and run the code right in the post, without leaving DEV.
Thanks for your feedback!

Edit: I replaced repl.it sandboxes with code snippets because of loading performance issue.

Collapse
 
klearissa profile image
klearissa

well when a person knows a lot of programming languages. I'm still learning python.

Collapse
 
karataev profile image
Eugene Karataev

I know JavaScript only. Most of other languages in this post are new to me. I googled every syntax construction in every language in order to complete this post 😄

Collapse
 
karataev profile image
Eugene Karataev

Go next time 😉