programming languages and more programming languages

programming languages and more programming languages

What are they?

Last week we left off on what are programming languages, this week we will look deeper into what they are, how they are used and the various types. One thing I always liked about programming languages is how the name gave you an idea of what it is you were diving into but I think that’s where the enthusiasm stopped. No just kidding every concept in programming has always had my curiosity even when I thought the words were too hard to pronounce, so without wasting any time lets begin!

Programming languages are a formal system of communication packaged as a set of instructions used to communicate to a computer. They are described in terms of their syntax (form) and semantics (meaning), the languages usually provide features such as a type system, variables and mechanisms for error handling. The running of a programming language in the form of a compiler or interpreter allows programs to be executed, either directly or by producing an executable.

Thousands of programming languages are often classified as imperative, functional, logic, object-oriented, scripting, declarative, mark-up, domain-specific, compiled, interpreted, high level, low-level and Concurrency-Oriented

Types of Programming Languages

Imperative Languages -These languages focus on describing how a program operates by specifying a sequence of commands to be executed examples include C, C++, and Java.

Declarative Programming Languages: Declarative languages focus on describing the desired result rather than the steps/instructions to achieve it. SQL for databases is one such example

Functional Languages - Follow the programming model where programs are constructed by applying and composing functions, examples are Haskell, Lisp and Erlangen

Logic Languages- Follows a programming, database and knowledge representation model where logical reasoning for computation is used based on formal logic

Object-oriented Languages - Follow a model based on the concept of objects, where objects encloses data and behavior. Java, C++, C# for in this category

Scripting Languages - Are languages that are interpreted rather than compiled and are often used for automation tasks, web development, and rapid prototyping, examples are JavaScript, Python and Ruby.

**Markup Languages :**Markup languages are used to interpret text with instructions for display or processing. HTML (Hypertext Markup Language) and XML (eXtensible Markup Language are examples.

Domain-Specific Languages (DSLs)- DSLs are designed for specific fields or tasks, tailored to address particular problems within those fields CSS(for styling web pages) is an example

Compiled Languages - Compiled languages are translated directly into machine code before execution. Examples include C, C++, and Rust.

Interpreted Languages - Interpreted languages are executed line by line without a separate compilation step with languages such as Python, JavaScript being examples

High-Level Languages -High-level languages provide abstractions that hide the low-level details of the computer hardware, Python, Java. Ruby are examples

Low-Level Languages - Low-level languages provide direct control over hardware resources and are often closely related to machine code. Assembly language, Machine code being examples.

Concurrency-Oriented Languages - Concurrency-oriented languages focus on concurrent programming, making it easier to write concurrent and parallel program such as Go and Erlangen.

These languages are essential tools for software development, allowing programmers to write code that can be executed by computers to perform various tasks. As you can see there are a lot of programming languages out there, which one you choose depends on many different factors like what you want to build, which one is more popular and so on. But in order to do that you need to further dissect each one to understand them better. I have just given you a foundational knowledge of them as dissecting each one also has to do with which path you choose. So enjoy the learning journey and Happy coding.

techsis