Commit Graph

1298 Commits

Author SHA1 Message Date
Brian McKenna
0177541d9b Add items, values and keys methods to HyDict
Useful for macros, for example:

    (defmacro defn-checked [n x b]
      `(defn ~n [(unquote-splice (.keys x))]
        (print "Expecting:" (unquote-splice (.values x))) ~b))

    (defn-checked hello {name str age int}
      (print "Hello" name "you are" age))

    (hello "Godzilla" 60)

    ;; Expecting: <type 'str'> <type 'int'>
    ;; Hello Godzilla you are 60
2014-01-25 15:55:38 -07:00
Morten Linderud
429cba39b9 Merge pull request #474 from berkerpeksag/hyc-doc
Document hyc command line options.
2014-01-25 12:19:51 -08:00
Berker Peksag
65f8bd2b91 Document hyc command line options. 2014-01-25 21:43:08 +02:00
Berker Peksag
d842426308 Reorganize documentation. 2014-01-25 21:01:16 +02:00
Nicolas Dandrimont
52144820ca Add a cons object and related mechanisms
Closes: #183
2014-01-23 23:08:52 +01:00
Nicolas Dandrimont
bb2b868aaf Make empty macroexpansions do the right thing 2014-01-23 23:07:31 +01:00
Nicolas Dandrimont
54757b8316 Slicing a HyList makes the same kind of object again 2014-01-23 23:07:31 +01:00
Nicolas Dandrimont
fad67bd8f5 Merge branch 'master' into pr/468 2014-01-23 22:14:23 +01:00
Nicolas Dandrimont
b99af411c8 Merge branch 'master' into pr/461
Conflicts:
	tests/native_tests/native_macros.hy
2014-01-23 21:57:17 +01:00
Nicolas Dandrimont
7b8f6fa9e4 Merge branch 'master' into pr/456 2014-01-23 21:43:09 +01:00
Abhishek L
10f1f24a18 Adding a simple `identity' function
* hy/core/language.hy: Adding a simple `identity` function that returns
  the argument supplied to it

* docs/language/core.rst: Updated docs with identity function
2014-01-22 00:56:28 +05:30
Abhishek L
e71631f48f Wrong email id, I messed up that commit 2014-01-20 22:46:17 +05:30
Abhishek L
4d95cc48a5 Add @jackhooper to authors 2014-01-20 21:17:22 +05:30
Abhishek L
fdd2ed39f0 Merge master onto pr/460 2014-01-20 21:15:43 +05:30
Morten Linderud
3ca89b1caa Merge pull request #462 from jackhooper/master
Corrected --spy cmdoption (I think)
2014-01-19 19:36:50 -08:00
Jack Hooper
ca40113e37 Corrected --spy cmdoption (I think)
For the --spy commmand line option, it currently says '''Print equivalent Hy code...'''. Now, I haven't actually gotten around to installing Hy on my computer yet, so I haven't had a chance to test this out to make sure, but from the looks of the code example, it looks as though it is printing out the equivalent Python code of the executed Hy code, not the other way around. This would certainly make more sense. As such, I have changed the word 'Hy' to 'Python' so that the documentation more accurately reflects what (one assumes) is going on.
2014-01-20 14:29:57 +11:00
Gergely Nagy
3bad6c14ee
hy/core/macros.hy: Reimplement (unless) in terms of (if-not)
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2014-01-18 22:57:29 +01:00
Gergely Nagy
e90b24b73a
hy/core/macros.hy: Add an (if-not) macro
Sometimes it is better to start with the false condition, sometimes that
makes the code clearer. For that, the (if-not) macro, which simply
reverses the order of the condition blocks, can be of great use.

Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2014-01-18 22:56:20 +01:00
Gergely Nagy
21709f0199 hy/core/macros.hy: Add defn-alias / defun-alias
In the same vein as defmacro-alias, this implements defn-alias /
defun-alias, which does essentially the same thing as defmacro-alias,
but for functions.

Signed-off-by: Gergely Nagy <algernon@balabit.hu>
2014-01-18 16:09:35 +01:00
Jack Hooper
d028b8a7b2 Added closing bracket ']' 2014-01-18 22:22:33 +11:00
Jack Hooper
06d41f7cd0 Corrected chessboard example
A chessboard is 8 x 8. Yours was 8 x 9.
2014-01-18 16:33:40 +11:00
Nicolas Dandrimont
8447a9dfdb Merge branch 'master' into pr/455 2014-01-17 20:35:44 +01:00
Nicolas Dandrimont
3286271cb8 Merge branch 'master' into pr/454 2014-01-17 20:32:50 +01:00
Nicolas Dandrimont
331165da32 Merge branch 'master' into pr/450 2014-01-17 20:31:01 +01:00
Nicolas Dandrimont
27962fb441 Light copy-editing 2014-01-17 20:28:24 +01:00
Nicolas Dandrimont
eedebd12b3 Merge branch 'master' into pr/443 2014-01-17 20:25:09 +01:00
Nicolas Dandrimont
2094133193 Merge branch 'master' into pr/441 2014-01-17 20:23:49 +01:00
Nicolas Dandrimont
4022203496 Merge branch 'master' into pr/440 2014-01-17 20:20:39 +01:00
Nicolas Dandrimont
1b435a9a2a Merge branch 'master' into pr/439 2014-01-17 20:18:43 +01:00
Nicolas Dandrimont
e0f9c9c191 Merge branch 'master' into pr/438 2014-01-17 20:14:16 +01:00
Nicolas Dandrimont
512f14d195 Merge branch 'master' into pr/437 2014-01-17 20:09:39 +01:00
rubberduckdev
d273ad112f Rewording and reformatting plaintext
Is this rewording unwieldy?
2014-01-17 18:20:41 +02:00
Gergely Nagy
59ca6e4cd0 docs: Document (defmacro-alias)
Signed-off-by: Gergely Nagy <algernon@balabit.hu>
2014-01-17 12:05:35 +01:00
Gergely Nagy
ac49818956 docs: Correct the defmacro syntax in the API docs
Signed-off-by: Gergely Nagy <algernon@balabit.hu>
2014-01-17 12:02:19 +01:00
Berker Peksag
d4bc17461c Add @f to AUTHORS. 2014-01-17 04:04:23 +02:00
f
8ec2719e2d Visual and text changes in quickstart page. Kind of beautifying. It also
includes transparent versions of Cuddles.
2014-01-17 04:02:33 +02:00
Berker Peksag
db9b9c6876 Move all contrib.meth tests to tests/native_tests/contrib/. 2014-01-17 03:56:12 +02:00
Foxboron
a35ecc41bd Fix reader macros to actually be macros 2014-01-17 01:07:47 +01:00
Gergely Nagy
8ef02a54b5 hy/lex/parser.py: Add support for sub-object mangling
With this patch, every identifier is split up along dots, each part gets
separately mangled, and then it is all joined back together. This allows
for fun stuff like (.foo? (Foo)), and even more contrived examples.

Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2014-01-16 16:23:35 +01:00
Gergely Nagy
e49ad3b3d5 tests/lex/test_lex.py: Add a few tests to cover identifier mangling
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2014-01-16 16:23:35 +01:00
Gergely Nagy
ceb615d010 hy/lex/parser.py: Move most of the identifier mangling into a def
As a refactoring step, move the identifier mangling done in t_identifier
into a separate def.

Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2014-01-16 16:20:51 +01:00
Morten Linderud
d34c22eeac Merge pull request #448 from olasd/feature/genexpr
Add set comprehensions, dict comprehensions and generator expressions
2014-01-16 06:06:12 -08:00
Gergely Nagy
8de61c65e7 Merge pull request #447 from rubberduckdev/patch-2
Missing comma
2014-01-16 05:14:58 -08:00
Gergely Nagy
b7a13fa88d Merge pull request #452 from berkerpeksag/silence-title-too-short
Silence a "Title underline too short" warning.
2014-01-16 05:12:26 -08:00
Berker Peksag
685a1b80fa Silence a "Title underline too short" warning. 2014-01-16 14:08:18 +02:00
Berker Peksag
60e66476f5 Merge pull request #449 from rubberduckdev/patch-3
Correcting a typo
2014-01-15 18:01:50 -08:00
Berker Peksag
e919f75aaf Merge pull request #446 from rubberduckdev/patch-1
Missing "of"
2014-01-15 17:59:01 -08:00
Yuval Langer
e50ca4fc07 Correcting typos. 2014-01-16 03:54:44 +02:00
rubberduckdev
cd66f18e2e Rewording
Not sure if the rewording is much better.
2014-01-16 02:40:46 +02:00
rubberduckdev
6c15f14ff7 Correcting a typo 2014-01-16 02:13:05 +02:00