Coroutines and Effects

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • capslock

  • Wow I’ve been thinking of something exactly like this! Sort of a super charged, statically typed version of Go’s context.Context. It would allow you to describe the capabilities (or effects) of every function, including IO, memory allocation, cancellation, deadlines, concurrency, and whatever application-specific stuff you need on there (like logging).

    Then you could implement something like Google [0] just by looking at type signatures.

    0. https://github.com/google/capslock

  • kyo

    Toolkit for Scala Development

  • Indeed - I do not think it is a coincidence that a lot of production experiments in effect systems are happening in Scala right now - the language is very flexible to conduct them. https://github.com/getkyo/kyo in particular looks interesting as it explores a different space where the monadic nature is less exposed to the end user.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • 30-seconds-of-interviews

    Discontinued A curated collection of common interview questions to help you prepare for your next interview. (by Chalarangelo)

  • https://github.com/Chalarangelo/30-seconds-of-interviews/blo...

    Exception handling, for example, uses dynamic scoping since you don't know what will be handling your exception when you write code which throws it.

    Another way of thinking about it is, with dynamic scoping the value of the dynamic variable must always be on the stack and the closest one is the value that will be used. This is a really good behaviour for global variables since a common source of bugs is some global variables (and I'm considering class members "global" for this) getting changed unexpectedly. If the variable is lexical then it can be very hard to figure out what changed the value (especially when threads are involved) but if the variable is dynamic it's easy: the culprit is on the stack.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Tyrian – The Elm Architecture for Scala.js

    1 project | news.ycombinator.com | 29 Feb 2024
  • Ask HN: Those making $500/month on side projects in 2024 – Show and tell

    11 projects | news.ycombinator.com | 23 Jan 2024
  • The golden age of Kotlin and its uncertain future

    4 projects | news.ycombinator.com | 11 Jan 2024
  • Why would users avoid a library that makes heavy use of macros in Scala 3?

    1 project | /r/scala | 5 Dec 2023
  • Is there any book or course about Scala front-end development?

    1 project | /r/scala | 10 Oct 2023