Commit Graph

  • 074edd11d3
    Add Windows 10 information belliash 2018-08-16 18:19:33 +02:00
  • a8961eb36f
    Fix build belliash 2018-08-16 17:48:17 +02:00
  • 2c28b63d90
    Properly interpret language constructs, fixes #28. belliash 2018-08-16 17:42:30 +02:00
  • 9100bf0696
    Treat 'import' as a special keyword. belliash 2018-08-16 16:32:28 +02:00
  • b5fe36c14b
    There is no need for include_once() and require_once() Aer is object-oriented language and the code it includes is executed in the global scope. Global scope can contain only classes and namespaces and they cannot be re-declared. Thus every file can be included just once. We can leave this to programmer, or take care about it on interpreter side. With this commit, include() and require() builtin functions allows to load file just once. Thanks to that, there is no need for include_once() and require_once(). Done in scope of #30. belliash 2018-08-16 16:12:29 +02:00
  • 510410096b
    Aer is OOP language. There is nothing like function. belliash 2018-08-16 13:57:35 +02:00
  • 4961922b1d
    Unify error with other related to namespace. belliash 2018-08-16 13:36:19 +02:00
  • 793b6127d5
    Temporarily fix namespace support. The namespace feature is not supported in this version, they are treated same way as global scope. belliash 2018-08-16 12:39:05 +02:00
  • 787f3b5d5f
    Synchronize the namespace also with first semicolon. belliash 2018-08-16 12:01:36 +02:00
  • be27532fdf
    Unify error level for namespace support. belliash 2018-08-16 11:26:47 +02:00
  • e208e778e0
    Compile global scope independently, fixes #40. belliash 2018-08-16 11:15:03 +02:00
  • 039fde099f
    Compile Aer code or chunk of code. belliash 2018-08-16 09:34:18 +02:00
  • f9946e9842
    Reimplement filegroup() and fileowner() as builtin function, #42. belliash 2018-08-15 21:58:21 +02:00
  • f33f8d66b4
    Correct warning messages. belliash 2018-08-15 21:43:17 +02:00
  • 16ea44372f
    Dictionary correction. belliash 2018-08-15 21:35:44 +02:00
  • ac1dee48c9
    Reimplement fileinode() as builtin function, #42. belliash 2018-08-15 21:28:59 +02:00
  • b642858044
    Add missing definition belliash 2018-08-15 20:20:56 +02:00
  • b94a23d580
    Get rid of PH7 ident belliash 2018-08-15 20:03:39 +02:00
  • 7c7a837efb
    Correct another bunch of typos. belliash 2018-08-15 19:06:00 +02:00
  • 71d46e3052
    Compiler rework does not allow functions in global scope. These functions will be rewritten in C as a builtin functions in scope of #42. belliash 2018-08-15 18:56:10 +02:00
  • da0b7eb629
    Some useless function belliash 2018-08-15 17:34:40 +02:00
  • af139b3f0a
    Reimplement C-like min() and max() functions. These functions should have C-like implementation and take exactly 2 arguments: integer or float. Finally, C-implementation will be faster than using PH7 builtin library that needs to be compiled and interpreted. belliash 2018-08-15 17:26:26 +02:00
  • 89d7aca73a
    Correct typo belliash 2018-08-15 16:38:33 +02:00
  • 8ab67084a0
    It is as easy to instantiate the class as to remove this useless functions. belliash 2018-08-15 16:31:28 +02:00
  • 6f491b398a
    Always show compilation errors belliash 2018-08-15 16:01:09 +02:00
  • 8e87989719
    A;ways show compilation errors from evaluated code belliash 2018-08-15 15:41:53 +02:00
  • 052649e677
    Trust builtin library. The builtin library should compile successfully. Otherwise, we want to know about it. belliash 2018-08-15 14:12:44 +02:00
  • 0e64c7cc6e
    Fix builtin library belliash 2018-08-15 14:08:59 +02:00
  • 64b9ac4406
    Forward declaration already in compiler.h belliash 2018-08-15 11:18:40 +02:00
  • be454ff7be
    Rename PH7_COMPILE_SINGLE_STMT to PH7_COMPILE_STATEMENT belliash 2018-08-14 23:48:15 +02:00
  • 26b1675021
    API function rename belliash 2018-08-14 17:43:43 +02:00
  • ece036b214
    Rework the entry point * some functions were not used and have been removed * some parameters seemed to be useless and have been removed * code cleanup belliash 2018-08-14 13:45:27 +02:00
  • 1cb3e394cf
    Implement pseudo boolean type. belliash 2018-08-14 10:42:52 +02:00
  • 7e3c79d3c5
    Functions naming cleanup belliash 2018-08-13 20:16:37 +02:00
  • 02fde9c30f
    It is not PHP compiler belliash 2018-08-13 19:53:08 +02:00
  • d7f9d8e157
    Add missing 'finally' keyword. belliash 2018-08-12 22:04:47 +02:00
  • aa6e00db27
    Forward declaration for all functions. belliash 2018-08-12 21:58:27 +02:00
  • 59c15caf4e
    Use something more human readable belliash 2018-08-12 21:16:05 +02:00
  • 6b7591a137
    Move common part to compiler.h belliash 2018-08-12 21:11:13 +02:00
  • 289af8f9ae
    Unify compiler's function naming convenction belliash 2018-08-12 20:58:01 +02:00
  • 5ef5cf3e46
    Make errors more readable. belliash 2018-08-12 19:36:17 +02:00
  • 429c28d0cc
    Rework error lovels for AerScript. belliash 2018-08-12 19:35:43 +02:00
  • 029dd9bfb4
    Several changes made: * Do not overload entry point * Automatically call Program::__construct() * Automatically call Program::main(); * Fix all tests belliash 2018-08-12 12:52:35 +02:00
  • 8cbfca2bc9
    Do not overload entry point belliash 2018-08-12 12:27:15 +02:00
  • c39e627aef
    Remove the backtick quoted string. belliash 2018-08-12 11:08:09 +02:00
  • cef0f40820
    Compile namespace belliash 2018-08-12 11:06:01 +02:00
  • c298a41eb7
    More verbose error messages belliash 2018-08-12 10:30:44 +02:00
  • e866575cb5
    More verbose errors belliash 2018-08-12 10:18:42 +02:00
  • c759b1f106
    Improove error reporting for method declarations belliash 2018-08-12 09:23:21 +02:00
  • b61fc9d3e6
    Rename function to save it from typo belliash 2018-08-11 23:21:40 +02:00
  • 576edc6c20
    Several changes to virtual class/method. Fixes #41 * do not automatically mark class as virtual when at least one virtual method found * force non-virtual method to contain body * force non-virtual class to implement all methods belliash 2018-08-11 22:50:05 +02:00
  • 3f46f01805
    Rename anonymous functions belliash 2018-08-11 21:40:05 +02:00
  • 0d8391eaaa
    Correct typos belliash 2018-08-11 21:22:04 +02:00
  • 5d9ccf9c65
    More tests belliash 2018-08-10 08:51:38 +02:00
  • 3252f54615 Temporarily look for modules in binary/ subdirectory. This will allow us to test modules. Final version should take the full path from configuration. belliash 2018-08-10 08:47:42 +02:00
  • 0561c5f901
    Redundant slash belliash 2018-08-10 08:44:58 +02:00
  • bfbe97255c
    This is not needed to build modules belliash 2018-08-10 08:44:09 +02:00
  • fc4b17434e
    Remove duplicated builtin functions belliash 2018-08-09 21:34:13 +02:00
  • 8936f6529f
    Remove duplicate belliash 2018-08-09 21:32:00 +02:00
  • 94b29fa238
    Remove duplicates belliash 2018-08-09 21:27:24 +02:00
  • 8f7fc71027
    Consider a method with compiled default value associated as a candidate to call. Fixes #37. belliash 2018-08-08 09:00:24 +02:00
  • e15166d940
    Temporary fix for master branch belliash 2018-08-08 06:52:15 +02:00
  • bca4d1a2fa
    Always select an appropriate function to call It does not matter, if we call function, anonymouss function or method. It is important to select appropriate function to call everytime. Otherwise, if function or method is not overloaded it will call it regardless the number and type of parameters it takes. type belliash 2018-08-07 19:48:12 +02:00
  • 34dd052f74
    quick typo fix belliash 2018-08-07 19:45:34 +02:00
  • 370465fe79
    We should use %z to match (SyString *) length and to not display trash. belliash 2018-08-07 19:02:28 +02:00
  • c419b8605d
    Add more tests belliash 2018-08-07 17:16:28 +02:00
  • 7711bdb6bc Merge branch 'master' of https://git.codingworkshop.eu.org/AerScript/Aer David Carlier 2018-08-07 13:55:27 +00:00
  • a0fb911d7a Fix #36, unrolling through the frames needed to also reset to the initial frame after David Carlier 2018-08-07 13:55:13 +00:00
  • 80f376af62
    Test debug_backtrace() function belliash 2018-08-07 15:47:14 +02:00
  • cdc58f2795
    Cleanup after 2c37807370 - get rid of global keyword, #29. belliash 2018-08-07 12:27:21 +02:00
  • a4e6962a67
    Free dot operator for further usage belliash 2018-08-07 08:13:44 +02:00
  • 6f0d1ab3ff
    Tests should use new string concatenation operator belliash 2018-08-07 07:53:26 +02:00
  • e4ab5974fa
    Let the compiler use OP_ADD instead of OP_CAT belliash 2018-08-07 07:47:25 +02:00
  • 9a56751879
    Allow addition operator (+) to concatenate strings. belliash 2018-08-07 06:54:44 +02:00
  • 3a994221ce
    Add another chapter to the readme belliash 2018-08-06 19:28:03 +02:00
  • 4bbdc20174
    This commit contains several changes: * print() is now treated as standard function * get rid of echo() function * fix test suite and it fixes #26. belliash 2018-08-06 17:18:27 +02:00
  • bcde1f446d
    It does not matter if it is empty string or not, we want to process it. Empty string should not ever been even considered as a NULL. Fixing #35. Piotr Likoski 2018-08-06 16:13:49 +02:00
  • a8259e7dbc
    Empty double-quoted string can be served as single-quoted string. Preparing for further changes in scope of #35. Piotr Likoski 2018-08-06 16:03:22 +02:00
  • dd239530d8
    Test if unicode characters can be used as method / variable name belliash 2018-08-06 08:23:51 +02:00
  • ff6a7012a4
    Another test, converting arab numbers to roman belliash 2018-08-05 22:25:15 +02:00
  • fcd35584de
    Simple 'Hello world' test belliash 2018-08-05 22:10:26 +02:00
  • bb2322117f
    Continuous Integration belliash 2018-08-05 20:05:21 +02:00
  • 64ee53a63a
    Add first Aer test belliash 2018-08-03 08:00:39 +02:00
  • 3f2d36910d
    Add tests support belliash 2018-08-02 22:34:26 +02:00
  • 8681dcf61c Added new chapter Piotr Likoski 2018-08-02 20:18:48 +02:00
  • e0b939d9a2
    In general it is a bad idea to compare memory. We should compare strings and check its length. Fixes #34. belliash 2018-08-02 17:42:19 +02:00
  • 19f8cf2599 Comply with GCC extensions Piotr Likoski 2018-08-02 16:33:07 +02:00
  • c86361a08b Add paragraph about native UTF-8 support Piotr Likoski 2018-08-02 16:21:04 +02:00
  • 6527b58b74 Fix ASM keyword in hash.c yvan-burrie 2018-08-02 02:54:01 +02:00
  • ddfa1ecb0d Syntax Error in vfs.c yvan-burrie 2018-08-02 02:45:23 +02:00
  • 614c192ec4
    It derives also from C++ belliash 2018-08-01 18:27:48 +02:00
  • 77c02c8055
    Correct a typo belliash 2018-08-01 18:27:20 +02:00
  • f83822343b
    Update issue template belliash 2018-08-01 17:24:13 +02:00
  • 7afe2c7c41
    AerScript on the read belliash 2018-08-01 17:04:42 +02:00
  • b0cbf5c0f6
    Build Aer belliash 2018-08-01 16:43:26 +02:00
  • b3ffd9cd8a
    The language is called AerScript or just Aer belliash 2018-08-01 16:35:30 +02:00
  • 449c427450
    Automatically build everything if necessary belliash 2018-08-01 12:16:03 +02:00
  • 5abfefbb04
    Remove duplicated entries belliash 2018-08-01 12:02:00 +02:00
  • 2c37807370
    Get rid of global keyword, fixes #29 belliash 2018-07-31 15:24:56 +02:00
  • aa5a20f283
    There is nothing like GOTO statement in P# belliash 2018-07-30 17:35:40 +02:00