Skip to content

Commit 6126ab8

Browse files
Updating README
1 parent 174ae4f commit 6126ab8

File tree

1 file changed

+30
-2
lines changed

1 file changed

+30
-2
lines changed

README.md

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,37 @@
1-
Kotlin Railway Oriented Programming
1+
# Kotlin Railway Oriented Programming
22

33
[![CI](https://github.com/harikrishnan83/RailwayOrientedProgramming/actions/workflows/ci.yml/badge.svg)](https://github.com/harikrishnan83/RailwayOrientedProgramming/actions/workflows/ci.yml)
44

5-
Code related to below blogs
5+
## Code related to below blogs
66

77
https://medium.com/@harikrishnan/railway-oriented-programming-dd74dbf0dfae
88

99
https://medium.com/@h/refactoring-if-else-either-and-flatmap-4f1ca9076664
10+
11+
## Conference Talk
12+
13+
Proposal - [The Functional Fix: Kotlin Error Handling Made Elegant](https://confengine.com/conferences/functional-conf-2025/proposal/21329/the-functional-fix-kotlin-error-handling-made-elegant)
14+
15+
Slides - https://speakerdeck.com/harikrishnan83/the-functional-fix-kotlin-error-handling-made-elegant
16+
17+
## Initial code
18+
19+
We start with this procedural code that is mainly using if-else to handle errors.
20+
21+
[Step 0: Procedural Code](src/main/kotlin/com/ropsample/arrow)
22+
23+
## Refactoring steps
24+
25+
### Solving the problem with Kotlin
26+
27+
[Step 1: Method Extraction](src/main/kotlin/com/ropsample/methodExtraction)
28+
29+
[Step 2: Lining up the functions](src/main/kotlin/com/ropsample/liningupthefunctions)
30+
31+
[Step 3: Railway Oriented Programming](src/main/kotlin/com/ropsample/railwayorientedprogramming)
32+
33+
### Using Arrow
34+
35+
[Step 4: Using Either And FlatMap](src/main/kotlin/com/ropsample/arrow)
36+
37+
[Step 5: Extracting error handling](src/main/kotlin/com/ropsample/arrowandinfix)

0 commit comments

Comments
 (0)