question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Given the current (mature) state of the library, it’s time to think about the namespaces.

We have currently:

  • FSharpPlus which auto-opens Operators

    • Data: contains all F#+ types, including Monoids, Monads, Collections.

    • Operators contains mostly generic functions and operators that are being added on top of standard F# operators functions, without redefinitions. It also contains some modules:

      • Arrows: defines additional arrow related operators by shadowing bit operators.
      • Applicative Math: although it’s in a separated module, these operators don’t conflict with anything
      • Generic Math: redefines some very basic math operators, by opening this module you enter in a Generic math mode, it’s easier to write generic math functions but some interactions with .net functions with funny semantics for math operators and also units of measures become restricted.
    • Lens: contains not just Lens, it also comes with Prism, Traversals, Iso. I think Optics is being used to encompass all these abstractions. An issue here is that set is a redefinition of an F# keyword. I was thinking renaming it, maybe to burn which is the way you cloud write something through a lens in the physical world.

    • Compatibility: At the moment it contains only Haskell, but more modules could be added later for toehr languages (purescript for example). This seems to make sense to me.

  • FsControl contains all (typeclassy) Abstractions, we inherited this namespace from FsControl but we can rename it to either FSharpPlus.Control or FSharpPlus.Invokables, any other suggestion?

Any thoughts?

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Comments:9 (9 by maintainers)

github_iconTop GitHub Comments

1reaction
wallymathieucommented, Jan 15, 2018

I like FSharpPlus.Control. It’s short and used in Haskell as well.

0reactions
gustycommented, Jan 25, 2018

This was the last remain (together with the samples folder I removed two days ago) of FsControl.

I feel a bit sad.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Namespace - Wikipedia
In computing, a namespace is a set of signs (names) that are used to identify and refer to objects of various kinds. A...
Read more >
Namespaces
In Kubernetes, namespaces provides a mechanism for isolating groups of resources within a single cluster. Names of resources need to be unique ...
Read more >
Namespaces
Namespaces provide a method for preventing name conflicts in large projects. Symbols declared inside a namespace block are placed in a named ...
Read more >
Namespace in C++ | Set 1 (Introduction)
A namespace is a declarative region that provides a scope to the identifiers (names of functions, variables or other user-defined data types) ...
Read more >
Documentation - Namespaces
This post outlines the various ways to organize your code using namespaces (previously “internal modules”) in TypeScript. As we alluded in our note...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found