Permalink
Browse files

Add note that native code is not actually a public API

It is not documented because it is not a public API.

I am in a weird position because people think "Why are there no docs for this?" and I think "How do you document an implementation detail that is not intended for public use?"

Anyway, I hope adding this note will help people evaluate the time they want to spend on this path.
  • Loading branch information...
evancz committed Feb 6, 2018
1 parent 9f95571 commit 6e1cbff8b354b1cea8e84e39546c4acd896b9c93
Showing with 16 additions and 0 deletions.
  1. +16 −0 README.md
View
@@ -1,5 +1,21 @@
# Elm native module
**This is highly discouraged, and will not be possible in future versions of Elm.**
The core Elm libraries need access to JavaScript to expose HTTP in Elm (for example) but this is not a public API. It is not intended for public use. It can change dramatically from release to release. It is not permitted in published packages. And again, in future versions, it will not be accessible.
In summary, it is better to figure out how to structure code such that ports will be a good option. If you cannot achieve what you want after asking around on Slack, the best path may be to circle back around to Elm later when more of the Web Platform is covered to your liking.
<br>
<br>
<br>
<br>
## What?
This is an example of how to do elm native modules for elm 0.18. It

0 comments on commit 6e1cbff

Please sign in to comment.