Skip to content

Instantly share code, notes, and snippets.

@FHell
FHell / Thoughts-on-Protocols.md
Last active September 4, 2023 10:32
Thoughts on Protocols in Julia

Disclaimer: I am a physicist, not a computer scientist. I have no experience with creating programming languages. I am leading a research group that is all in on Julia. I have been following developments in many computer languages for many years, and evaluated many options reasonably deeply before deciding to move us to Julia. This are my thoughts on some of the most important pain points right now from the perspective of a user of the language, advanced libraries and occasional contributor and writer of libraries.

The problem statement

Currently Julia lacks a good way to express how things should behave. In many languages types are used to express this information. In Julia, in order to make maximum use of the languages dynamicism, we are encouraging to write code as generically as possible, and defer specifying types to the users of libraries as much as possible. This allows the injection of unanticipated behaviours deep inside our code.

 # Do
function norm(x, y)
  (x - y) ^ 2
@FHell
FHell / data.json
Last active June 20, 2017 10:31
Scratchpad for networks
{
"nodes": [
{
"id": 1,
"name": "A"
},
{
"id": 2,
"name": "B"
},