Type systems

Strong and weak typing

In computer programming, one of the many ways that programming languages are colloquially classified is whether the language's type system makes it strongly typed or weakly typed (loosely typed). However, there is no precise technical definition of what the terms mean and different authors disagree about the implied meaning of the terms and the relative rankings of the "strength" of the type systems of mainstream programming languages. For this reason, writers who wish to write unambiguously about type systems often eschew the terms "strong typing" and "weak typing" in favor of specific expressions such as "type safety". Generally, a strongly typed language has stricter typing rules at compile time, which implies that errors and exceptions are more likely to happen during compilation. Most of these rules affect variable assignment, function return values, procedure arguments and function calling. Dynamically typed languages (where type checking happens at run time) can also be strongly typed. Note that in dynamically typed languages, values, rather than variables, have types. A weakly typed language has looser typing rules and may produce unpredictable or even erroneous results or may perform implicit type conversion at runtime. Advocates of dynamically typed (generally "weakly typed") languages find such concerns to be overblown and believe that static typing actually introduces an exponentially larger set of problems and inefficiencies. A different but related concept is latent typing. (Wikipedia).

Video thumbnail

RubyConf 2015 - Softly, softly typing by John Cinnamond

Softly, softly typing by John Cinnamond The ruby community is large and varied but, for the most part, we haven't rushed to engage with type theory. Static typing - whatever that is - is for the slow moving world of Java developers. Type theory is for Haskell weirdos. All that could be a

From playlist RubyConf 2015

Video thumbnail

RubyConf 2014 - Strong Duck Type Driven Development

By, John Cinnamond As a language, Ruby plays fast and loose with the type system. Developers rely on duck typing to check that the things they want to do with an object are permissible. Whilst this freedom makes writing code frictionless and often a whole lot of fun, it doesn't always sca

From playlist RubyConf 2014

Video thumbnail

Programming Languages - (part 6 of 7)

How source code becomes a running program, how languages are categorized, and a survey of important languages. Part of a larger series teaching programming. Visit http://codeschool.org

From playlist Programming Languages

Video thumbnail

Value Your Types!

You’re probably familiar with types in programming languages, such as “integer” or “list of integers.” But what if your type system were powerful enough to express types like “non-negative integer” or “list of strings where each string is at least eight characters long”? Welcome to the wor

From playlist Software Development

Video thumbnail

IDE vs Text Editor

What’s better, a simple text editor or a sophisticated IDE? What is an IDE, what is the best text editor for programming? We all have a strong attachment to the tools that we use to create great software, and so strong opinions. But what are the advantages and disadvantages of each approac

From playlist Software Engineering

Video thumbnail

Why Algebraic Data Types Are Important

Strong static typing detects a lot of bugs at compile time, so why would anyone prefer to program in JavaScript or Python? The main reason is that type systems can be extremely complex, often with byzantine typing rules (C++ comes to mind). This makes generic programming a truly dark art.

From playlist Functional Programming

Video thumbnail

HTML

From playlist CS50 Shorts 2013

Video thumbnail

Open Source vs. Closed Source Software

In this video, you’ll learn more about the differences between open-source software and closed-source software. Visit https://edu.gcfglobal.org/en/basic-computer-skills/ for more technology, software, and computer tips. We hope you enjoy!

From playlist Technology Trends

Video thumbnail

Get More Out of Google Search

In this video, you’ll learn some tips and tricks for getting the most out of using Google to search for stuff online. Visit https://edu.gcfglobal.org/en/searchbetter/google-search-tips/1/ to learn even more. We hope you enjoy!

From playlist Search Better

Video thumbnail

23. Acid-Base Titrations Part I

MIT 5.111 Principles of Chemical Science, Fall 2014 View the complete course: https://ocw.mit.edu/5-111F14 Instructor: Catherine Drennan A common chemistry laboratory experiment involves titrating a strong base into a weak acid, drop by drop, until a color change of an indicator dye tells

From playlist MIT 5.111 Principles of Chemical Science, Fall 2014

Video thumbnail

24. Balancing oxidation/reduction equations

MIT 5.111 Principles of Chemical Science, Fall 2008 View the complete course: http://ocw.mit.edu/5-111F08 Instructor: Catherine Drennan, Elizabeth Vogel Taylor License: Creative Commons BY-NC-SA More information at http://ocw.mit.edu/terms More courses at http://ocw.mit.edu

From playlist MIT 5.111 Principles of Chemical Science, Fall 2008

Video thumbnail

Lec 22 | MIT 5.111 Principles of Chemical Science, Fall 2005

Acid-Base Equilibrium (cont.) (Prof. Catherine Drennan) View the complete course: http://ocw.mit.edu/5-111F05 License: Creative Commons BY-NC-SA More information at http://ocw.mit.edu/terms More courses at http://ocw.mit.edu

From playlist MIT 5.111 Principles of Chemical Science, Fall 2005

Video thumbnail

Lec 24 | MIT 5.111 Principles of Chemical Science, Fall 2005

Acid Base Titrations and Oxidation/Reduction (Prof. Catherine Drennan) View the complete course: http://ocw.mit.edu/5-111F05 License: Creative Commons BY-NC-SA More information at http://ocw.mit.edu/terms More courses at http://ocw.mit.edu

From playlist MIT 5.111 Principles of Chemical Science, Fall 2005

Video thumbnail

Unified Charge Vectors (UCV Theory) by Noam Why. Grand unification of electroweak and strong forces.

A new breakthrough in theoretical physics! UCV theory is a grand unification of electroweak and strong forces based on a new idea called Unified Charge Vectors. The theory was developed by Noam Why and was first published in January 2021. Original paper: https://independent.academia.edu/W

From playlist Summer of Math Exposition Youtube Videos

Video thumbnail

International Relations 101 (#50): Costly Signaling

http://gametheory101.com/courses/international-relations-101/ Due to incentives to misrepresent, it is difficult to differentiate the strong versus the weak in international relations. Costly signals help out here, as types that do not care much about the issues are unwilling to pay such

From playlist William Spaniel: International Relations 101

Video thumbnail

Smart pointers - The Rust Book (part 57) chapter 14

I'm streaming every weekday morning on Twitch at https://www.twitch.tv/brookzerker. Please feel free to stop by and say hi! Links Rust book: https://doc.rust-lang.org/book/second-edition/ My code: https://github.com/BrooksPatton/learning-rust The Learning Wiki: https://github.com/BrooksP

From playlist Rust Book

Video thumbnail

22. Chemical and biological buffers

MIT 5.111 Principles of Chemical Science, Fall 2008 View the complete course: http://ocw.mit.edu/5-111F08 Instructor: Catherine Drennan, Elizabeth Vogel Taylor License: Creative Commons BY-NC-SA More information at http://ocw.mit.edu/terms More courses at http://ocw.mit.edu

From playlist MIT 5.111 Principles of Chemical Science, Fall 2008

Video thumbnail

Lec 23 | MIT 5.111 Principles of Chemical Science, Fall 2005

Acid-Base Equilibrium: Titrations (Prof. Catherine Drennan) View the complete course: http://ocw.mit.edu/5-111F05 License: Creative Commons BY-NC-SA More information at http://ocw.mit.edu/terms More courses at http://ocw.mit.edu

From playlist MIT 5.111 Principles of Chemical Science, Fall 2005

Video thumbnail

Hard Skills vs Soft Skills

In this video, you’ll learn more about the difference between hard and soft skills. Visit https://www.gcflearnfree.org/subjects/work/ for our text-based Work & Career tutorials. This video includes information on: • Hard skills, which include physical skills that are important to your job

From playlist Critical Skills For Today

Video thumbnail

ABR#23 Analysing a Common Household Substance

HSC Chemistry Acid/Base Reactions Analysing a Common Household Substance

From playlist Y12 Chem Mod 6 Acid/Base

Related pages

Data type | Optimizing compiler | Type conversion | Java virtual machine | Type inference | Type system | Clojure | Duck typing | Type safety | Pointer (computer programming) | Union type | Aliasing (computing) | Forth (programming language) | Latent typing