<commit_before>DSLs in Action in F#
===
### Translation of Code and Examples from <NAME>'s "[DSLs in Action](http://www.manning.com/ghosh/)" ###

---

### Purpose ###
This is an *unfaithful* translation of the book's examples to F#. 
Although I tried to make it as close to the original programs as possible, certain examples cannot be expressed in F#, and a few features are not idiomatic to do in F#.
For these reasons, a number of examples have been changed to be F#-friendly and some others are omited (e.g. all examples in Chapter 5).

---

### Setup / Installation ###

---

### Misc ###

For detailed notes about F#-specific features for DSL development, please refer to [A cheatsheet for F#'s DSL-friendly features](https://github.com/dungpa/dsls-in-action-fsharp/blob/master/DSLCheatsheet.md).

---
### TODO ###

1. Add listing reference to each example.
2. Revisit old examples to add new functionalities (e.g. after learning F# metaprogramming).<commit_msg>Update Readme's purpose<commit_after>DSLs in Action in F#
===
### Translation of Code and Examples from <NAME>'s "[DSLs in Action](http://www.manning.com/ghosh/)" ###

---

### Purpose ###
This is an *unfaithful* translation of the book's examples to F#. 
Indeed translating examples from 5 different languages to another language is impossible.
Therefore, I tried to create roughly similar examples in F# and used original code as the source of ideas and inspiration.
Certain examples which cannot be expressed in F# have been omitted or updated to be F#-friendly.

---

### Setup / Installation ###

---

### Misc ###

For detailed notes about F#-specific features for DSL development, please refer to [A cheatsheet for F#'s DSL-friendly features](https://github.com/dungpa/dsls-in-action-fsharp/blob/master/DSLCheatsheet.md).

---
### TODO ###

1. Add listing reference to each example.
2. Revisit old examples to add new functionalities (e.g. after learning F# metaprogramming).
{'fraction_non_alphanumeric': 0.11794871794871795, 'fraction_numerical': 0.003076923076923077, 'mean_word_length': 4.041343669250646, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 2, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5669215', 'n_tokens_mistral': 586, 'n_tokens_neox': 562, 'n_words': 246}