Course
Updated: 18 Dec 2025
Before Programming
The Programming Model:
- Recipe → Execution → Produce → Use
- विधि → क्रियान्वयन → उत्पाद → प्रयोग
- A Recipe's Execution on a Platform by an Executor consumes Resources to produce Output for further Use.
- विधि के क्रियान्वयन से उत्पाद बनते हैं प्रयोग के लिए।
The Learning Mindset:
- Utility Driven & Application Oriented. To prioritize better.
- → Scheme → Encode → Execute → Produce → Use → Improve →
Scala Programming
Simplest Application / Utility?
- Analogy: Programming Language ↔ Calculator.
Exploring Scastie - The Online Scala Code Editor.
- Literal Calculation.
- Numeric Types.
- Names. Vs. Strings. Given an unquoted string, compiler will treat it as a name first.
- Evaluation.
- Basic Substitution Model.
Simple App: A Greeter
- Constraints of Platform Syntax.
- Methods Given From The Standard Library.
- Method Invocation / Call & Parameterization.
- Standard Out. Shell.
- The Unit Type. The Unit Value. Uses of Unit.
The Library Method: print(…)
- Method Return. Return Type. Return Value.
- getSomething vs doSomething
- Method With Unit Return Type.
- Method Side Effects vs Method Return Value.
- Method Fail
- Method Execution Time
- Method Timeout
Greeter App Continued
- The def keyword for custom definitions. Type Inference Demo.
- Custom greeting. Not just values. But custom methods, composed of sequence of more custom sub-instructions.
- Parametric Definitions. Formal Parameters. Actual Arguments.
- Method Overloading.
- Imperative vs Functional approaches to custom greeters.
- Effect based vs value based implementations. Return Type - Unit vs some Consumable. Information Contents.
- DRY Principle: putting reusable values under a name.
Method Signatures
- demo add method. literal addition. delegated addition. overloading.
Method Failure Scenarios
- Let it go
- Recover from failure - consider failure cause, perform remedy.
Type System
- Type Example - Edible.
- Instances. Values. Literals. Consumable.
- Abstract. Concrete.
- Inbuilt types and their literals.
Misc
parameter list optional.
drafts
PreRequisites, givens and needed.
Parameterizing greetings.
Standard out. Console. Communication channel for a program.
Line of Instructions. As text. Sequential execution. One after the other.
Worker. Multiple Workers. Same Recipe. Instruction card analogy.
Introduction to Scala Worksheet. Introducing types.
Account Management
- Phone number for account recovery.