Addining some initial docs.
This commit is contained in:
parent
3c735d18bd
commit
4629501628
@ -38,5 +38,5 @@ Contents:
|
|||||||
|
|
||||||
quickstart
|
quickstart
|
||||||
hacking
|
hacking
|
||||||
language/tutorial
|
tutorial
|
||||||
.. library/index
|
language/index
|
||||||
|
47
docs/language/api.rst
Normal file
47
docs/language/api.rst
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
=================
|
||||||
|
Hy (the language)
|
||||||
|
=================
|
||||||
|
|
||||||
|
|
||||||
|
.. warning::
|
||||||
|
This is incomplete; please consider contributing to the documentation
|
||||||
|
effort.
|
||||||
|
|
||||||
|
|
||||||
|
Theory of Hy
|
||||||
|
============
|
||||||
|
|
||||||
|
Hy maintains, over everything else, 100% compatibility in both directions
|
||||||
|
with Python it's self. All Hy code follows a few simple rules. Memorize
|
||||||
|
this, it's going to come in handy.
|
||||||
|
|
||||||
|
These rules help make sure code is idiomatic and interface-able in both
|
||||||
|
languages.
|
||||||
|
|
||||||
|
|
||||||
|
* Symbols in earmufs will be translated to the uppercased version of that
|
||||||
|
string. For example, `*foo*` will become `FOO`.
|
||||||
|
|
||||||
|
* UTF-8 entities will be encoded using
|
||||||
|
`punycode <http://en.wikipedia.org/wiki/Punycode>`_ and prefixed with
|
||||||
|
`__hy_`. For instance, `⚘` will become `__hy_w7h`, and `♥` will become
|
||||||
|
`__hy_g6h`.
|
||||||
|
|
||||||
|
* Symbols that contain dashes will have them replaced with underscores. For
|
||||||
|
example, `render-template` will become `render_template`.
|
||||||
|
|
||||||
|
|
||||||
|
Builtins
|
||||||
|
========
|
||||||
|
|
||||||
|
Hy features a number special forms that are used to help generate
|
||||||
|
correct Python AST. The following are "special" forms, which may have
|
||||||
|
behavior that's slightly unexpected in some situations.
|
||||||
|
|
||||||
|
do / progn
|
||||||
|
----------
|
||||||
|
|
||||||
|
the `do` or `progn` forms can be used in full code branches. What that means
|
||||||
|
is basically `(do)` and `(progn)` can only be used where a Python expression
|
||||||
|
can be used. These forms don't actually allow you to break Pythonic internals
|
||||||
|
such as `lambda` or `list-comp`, where you can only have one expression.
|
11
docs/language/index.rst
Normal file
11
docs/language/index.rst
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
|
||||||
|
Documentation Index
|
||||||
|
===================
|
||||||
|
|
||||||
|
Contents:
|
||||||
|
|
||||||
|
.. toctree::
|
||||||
|
:maxdepth: 3
|
||||||
|
|
||||||
|
api
|
||||||
|
internals
|
27
docs/language/internals.rst
Normal file
27
docs/language/internals.rst
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
=========================
|
||||||
|
Internal Hy Documentation
|
||||||
|
=========================
|
||||||
|
|
||||||
|
.. info::
|
||||||
|
These bits are for folks who hack on Hy it's self, mostly!
|
||||||
|
|
||||||
|
|
||||||
|
Hy Models
|
||||||
|
=========
|
||||||
|
|
||||||
|
.. TODO::
|
||||||
|
Write this.
|
||||||
|
|
||||||
|
|
||||||
|
Hy Macros
|
||||||
|
=========
|
||||||
|
|
||||||
|
.. TODO::
|
||||||
|
Write this.
|
||||||
|
|
||||||
|
|
||||||
|
Hy Compiler Builtins
|
||||||
|
====================
|
||||||
|
|
||||||
|
.. TODO::
|
||||||
|
Write this.
|
Loading…
x
Reference in New Issue
Block a user