-
[dsl]
-
[no-code]
-
Wikipedia: List of programming languages by type (Categorical)
-
Evaluating Programming Languages
-
So, if you ever get into an argument about programming languages, what should you say?
- Criteria for Evaluation • Popularity • Understanding Evaluation Tradeoffs
-
-
- Rosetta Code is a programming chrestomathy site. The idea is to present solutions to the same task in as many different languages as possible, to demonstrate how languages are similar and different, and to aid a person with a grounding in one approach to a problem in learning another.
-
- (well referenced)
- we just keep building bigger tools that rely on bigger tools (like building the pyramids)
- We should consider simpler DSL mini languages for sub-problems (Regex, SQL). But how do we link these together?
-
Honeypot YouTube Channel
- YouTube documentaries for languages and frameworks
-
4 Programming Paradigms In 40 Minutes Coding Tech 40min RubyConf 2017 Aja Hammerly
- Object oriented (example in Ruby)
- Functional (example in Racket)
- Logical (example in Prolog)
- Describe what not how
- Variables/Constants, Facts, Rules (specify relationships between facts)
- ancestors example
- programs can run backwards and forwards finding missing value
- Procedural (example in Assembler)
- two register A and D
- no multiplication, devision
- constants go to A
- Jump if eq, lt, gt
-
Seven Languages in Seven Weeks - A Pragmatic Guide to Learning Programming Languages 2010 by Bruce A. Tate
- ISBN 9781934356593
- Ruby, IO, Prolog, Scala, Clojure, Haskell
-
Exercises in Programming Style 2020 Cristina (Crista) Lopes
- ISBN 9780367350208
- Part 1 Historical
- Part 2 Basic Styles
- Part 3 Function Composition
- Part 4 Objects and Object Interaction
- Part 5 Reflection and Metaprogramming
- Part 6 Adversity
- Part 7 Data-Centric
- Part 8 Concurrency
- Part 9 Interactivity
- Part 10 Neural Networks
-
[assembly]
-
[c]
-
[c++]
-
[nim]
-
[rust]
-
[fstar]
-
[golang]
-
[javascript] ECMAScript
-
[logo]
-
[python]
-
[ruby]
-
[qbasic]
-
[shaders]
-
[lisp]
-
[erlang]
-
[elm]
-
#ClojureScript
-
Ember
- Ember Documentary 27min
-
- 6.0 2022
-
- Super interesting! Tim Sweeny! Large distributed, functional
-
Self
- Programming as an Experience: The Inspiration for Self
- Smalltalk extreeem
-
scala
-
[logo]
-
C# #csharp
- C# 10 new feature CallerArgumentExpression, argument check and more
- New feature .. read ..
- C# 10 new feature CallerArgumentExpression, argument check and more
-
pascal
- Castel Game Engine Written in Pascal!? [game-engines]
-
- Hylo (formely Val) is a programming language that leverages mutable value semantics and generic programming for high-level systems programming.
-
- Some crazy person used html to make a language with a js executor
- Could be interesting as a learning exercise as the dom is the abstract syntax tree?
-
Here’s what people in tech had to say about JavaScript when it debuted in 1995
-
The Top Programming Languages 2023: Python and SQL are on top, but old languages shouldn’t be forgotten 29 Aug 2023 Stephen Cass
- Typing is Hard
- Static typing description in a variety of languages
-
The case for a modern language (part 1)
- C is less than perfect
-
as with many things #BSD even when thay do something that is obviously better than Linux it just never really gets adopted there
-
the fact that
libc
looks and feels very much like it was hacked together by a bunch of random dudes over the course of a few decades rather than being designed. Which is, of course, exactly what happened. -
I have some other complaints about C that revolve around the lack of any kind of official error handling strategy, the issue of null in general, etc
-
but what it really comes down to is that if we keep the language we should at the very least modernize
libc
and standardize the other tooling around the language somewhat.
-
C
-
Rust
-
Nim
-
Zig
- Codewars - Browser based challenges
- freecodecamp
- JavaScript challenges in browser
- (other langauges with multiple choice and videos)
- Khan Academy
- Whole computing course
- JS in browser
-
- Common Lisp and Smalltalk are repl languages
- Other languages have something similar
- repl: read-eval-print loop
- Common Lisp and Smalltalk are repl languages
Live coding in browser (?)
- caffeine.js.org
-
Caffeine is a livecoding environment for web browsers, Node.js, and WebAssembly. After adding it to a webpage, you can use it to make live persistent changes to that page and other pages running Caffeine, without reloading.
-
- A Brief Introduction to Esoteric Languages
- Brainfuck (turing complete - obtuse)
- Piet (executable image)
- orca
- designed to create procedural sequencers in which each letter of the alphabet is an operation, where lowercase letters operate on bang, uppercase letters operate each frame.
- The application is not a synthesiser, but a flexible livecoding environment capable of sending MIDI, OSC & UDP to your audio interface, like Ableton, Renoise, VCV Rack or SuperCollider.
- J
- Loopless code
- Ballerina: a Data-Oriented Programming Language
Python has "abstract" number system
Java, Golang, C are all based on x86 Overflow Modulo operator does not support negative
Javascript (which should be abstract, but was heavily designed in an era of systems performance requirements) uses x86 modulo operator (which does not work with negative numbers)
- Modern Python performance considerations [performance-profileing] [dynamic-programming] [python]
- Why is python slow?
- [optimisations] look at fizzbuzz drag racing