Skip to main content

Interview questions · Book 14

Programming Languages interview questions

130 questions from 33 pages, each with a short answer. Say your answer first, then open the question to check it.

p. 1 · 4 questions

Assembly Language

Full page
  1. 1

    What is assembly language?

    Assembly language is a low-level language whose instructions map almost one-to-one onto a processor's machine code, written as short mnemonics like mov and add.

  2. 2

    Is assembly language still used?

    Yes, but mostly in small, specialized pieces of code. Bootloaders, operating system kernels, embedded firmware, cryptography and media libraries still contain hand-written assembly where precise control or maximum speed matters.

  3. 3

    What is the difference between assembly language and machine code?

    Machine code is the binary instructions a processor executes. Assembly language is a readable text version of those instructions, which an assembler translates into machine code.

  4. 4

    Is assembly faster than C?

    Hand-written assembly can be faster for small, carefully tuned routines, but modern optimizing compilers usually generate code as good as or better than most people write by hand. Assembly is also tied to one CPU architecture, while C can be recompiled for many.

p. 2 · 4 questions

Bash

Full page
  1. 1

    What is Bash?

    Bash is a Unix shell and scripting language, the default on most Linux systems, used both to type commands interactively and to automate tasks with scripts.

  2. 2

    What is the difference between Bash and a shell?

    A shell is any program that reads commands and runs them. Bash is one specific shell; others include sh, zsh, fish and PowerShell.

  3. 3

    Is Bash a programming language?

    Yes. It has variables, conditions, loops and functions, so it is a full scripting language, though it is designed for running and combining commands rather than for large applications.

  4. 4

    Can I use Bash on Windows?

    Yes, through the Windows Subsystem for Linux (WSL), which runs a real Linux environment, or through Git Bash, which comes with Git for Windows.

p. 3 · 4 questions

C

Full page
  1. 1

    What is the C programming language?

    C is a compiled, low-level programming language that gives direct control over memory and is used to build operating systems, drivers, and embedded software.

  2. 2

    Is C still used today?

    Yes. C is still a core language for operating systems, embedded devices, and performance-critical libraries, and many higher-level languages rely on components written in C.

  3. 3

    What is the difference between C and C++?

    C++ grew out of C and adds features such as classes, templates, exceptions, and a large standard library. C is smaller and simpler, and is often chosen where minimal runtime overhead and easy portability matter most.

  4. 4

    Why is C considered unsafe?

    C does not check array bounds or track memory for you, so bugs like reading past the end of a buffer or using memory after freeing it can crash a program or create security holes. Careful coding, sanitizer tools, and code review help reduce these risks.

p. 4 · 4 questions

C#

Full page
  1. 1

    What is C#?

    C# is a statically typed, object-oriented language that runs on the .NET runtime with garbage collection and is used for web backends, desktop apps, and games.

  2. 2

    Is C# only for Windows?

    No. Modern .NET is open source and cross-platform, so C# programs can run on Windows, macOS, and Linux, including in containers and cloud environments.

  3. 3

    What is the difference between C# and Java?

    They are similar in design: both are statically typed, object-oriented, garbage-collected languages that run on a managed runtime. They differ in their ecosystems and in details such as C#'s custom value types (struct), properties, and LINQ.

  4. 4

    Is C# related to C++?

    Only loosely. C# borrows C-style syntax, such as curly braces and semicolons, but it is a separate language with automatic memory management and a managed runtime.

p. 5 · 4 questions

C++

Full page
  1. 1

    What is C++?

    C++ is a compiled, statically typed language that extends C with classes and templates while keeping low-level control over memory and performance.

  2. 2

    Is C++ harder to learn than other languages?

    C++ is generally considered one of the more complex languages because it is large and gives you direct control over memory. Many learners start with a smaller subset of modern C++, using standard containers and smart pointers, and grow from there.

  3. 3

    What is the difference between C++ and C#?

    They are separate languages. C++ compiles to native code and manages memory without a garbage collector, while C# runs on the .NET runtime with automatic garbage collection.

  4. 4

    What does RAII mean in C++?

    RAII (Resource Acquisition Is Initialization) means tying a resource, such as memory, a file, or a lock, to an object's lifetime. The resource is released automatically in the object's destructor when the object goes out of scope.

p. 6 · 4 questions

Clojure

Full page
  1. 1

    What is Clojure?

    Clojure is a modern, dynamic dialect of Lisp that runs on the JVM, emphasizing immutable data, functional programming and interactive, REPL-driven development.

  2. 2

    Why does Clojure have so many parentheses?

    Clojure, like all Lisps, writes code as nested lists with the function name first inside each pair of parentheses. The uniform structure keeps the syntax very small and lets macros treat code as data, and editors balance the parentheses automatically.

  3. 3

    Is Clojure a functional language?

    Yes. Clojure encourages pure functions and immutable data and treats functions as values, but it is pragmatic: it allows side effects and offers managed ways to change state, such as atoms.

  4. 4

    What is the difference between Clojure and ClojureScript?

    They are the same language targeting different platforms. Clojure runs on the JVM and uses Java libraries, while ClojureScript compiles to JavaScript and runs in browsers or Node.js.

p. 7 · 4 questions

COBOL

Full page
  1. 1

    What is COBOL?

    COBOL (Common Business-Oriented Language) is a language from 1959 for business data processing that still runs critical banking and government systems.

  2. 2

    Is COBOL still used?

    Yes. Banks, insurers, airlines and governments still run core systems written in COBOL, mostly on mainframes, and those systems process a large share of everyday financial transactions.

  3. 3

    Is it worth learning COBOL?

    It can be a niche but valuable skill, since experienced COBOL developers are in short supply. It makes most sense for people interested in mainframes, banking or modernization projects.

  4. 4

    Why hasn't COBOL been replaced?

    The programs are large, reliable and full of business rules built up over decades. Rewriting them is expensive and risky, so organizations usually maintain them or modernize them step by step.

p. 8 · 4 questions

Dart

Full page
  1. 1

    What is Dart?

    Dart is a statically typed, garbage-collected language from Google that compiles to native code and JavaScript, best known as the language of Flutter apps.

  2. 2

    Is Dart only used for Flutter?

    Flutter is by far its biggest use, but Dart also runs command-line tools, server applications and web apps compiled to JavaScript or WebAssembly.

  3. 3

    Is Dart similar to JavaScript?

    The syntax looks familiar to JavaScript developers, but Dart is statically typed with sound null safety and has its own runtime and standard library. It can compile to JavaScript, but it is a separate language.

  4. 4

    Is Dart compiled or interpreted?

    Dart is compiled in both stages. It uses a just-in-time compiler during development to support hot reload, and ahead-of-time compilation to native machine code or JavaScript for production builds.

More

Settings