- Eva Icons: MIT
- Clarity Icons (MIT License)
- Feather Icons (MIT License)
- BallIcons (Commercial, not FOSS)
- Glyphish
- IconBros: Nice icons for commercial use
- DevIcons: Icons for programming languages and tools (Java, Atom etc)
- FontAwesome: SVGs and iconfont
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"lib/**/views/*_view.ex": { | |
"type": "view", | |
"alternate": "test/{dirname}/views/{basename}_view_test.exs", | |
"template": [ | |
"defmodule {dirname|camelcase|capitalize}.{basename|camelcase|capitalize}View do", | |
" use {dirname|camelcase|capitalize}, :view", | |
"end" | |
] | |
}, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Security audit | |
on: | |
schedule: | |
- cron: '0 0 * * *' | |
push: | |
paths: | |
- '**/Cargo.toml' | |
- '**/Cargo.lock' | |
jobs: | |
security_audit: |
See also List of materials about Software Design in Haskell
Junior | Middle | Senior | Architect | |
---|---|---|---|---|
Haskell level | Basic Haskell | Intermediate Haskell | Advanced Haskell | Language-agnostic |
Haskell knowledge scope | Learn you a Haskell | Get programming with Haskell | Haskell in Depth | Knows several languages from different categories |
Get programming with Haskell | Haskell in Depth | Functional Design and Architecture | ||
Soar with Haskell | [Soar |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Classes | |
* Keith Devlin - Introduction to Mathematical Thinking - https://www.coursera.org/learn/mathematical-thinking | |
* Michael Genesereth - Introduction to Logic - https://www.coursera.org/learn/logic-introduction | |
* Robert Harper - Homotopy Type Theory - http://www.cs.cmu.edu/~rwh/courses/hott/ | |
Books and Articles | |
* Benjamin C. Pierce - Types and Programming Languages - https://www.cis.upenn.edu/~bcpierce/tapl/ | |
* x775 - Introduction to Datalog - https://x775.net/2019/03/18/Introduction-to-Datalog.html | |
* Bartosz Milewski - Category Theory For Programmers - https://bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/ | |
* Benjamin C. Pierce et al. - Software Foundations - https://softwarefoundations.cis.upenn.edu/ |
-
Every atomic object has a timeline (TL) of writes:
- A write is either a store or a read-modify-write (RMW): it read latest write & pushed new one.
- A write is either tagged Relaxed, Release, or SeqCst.
- A read observes some write on the timeline:
- On the same thread, future reads can't go backwards on the timeline.
- A read is either tagged Relaxed, Acquire, or SeqCst.
- RMWs can also be tagged Acquire (or AcqRel). If so, the Acquire refers to the "read" portion of "RMW".
-
Each thread has its own view of the world:
- Shared write timelines but each thread could be reading at different points.
OlderNewer