?

Log in

Новый язык программирования Ya - C/C++ Developers [entries|archive|friends|userinfo]
C/C++ Developers

[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Новый язык программирования Ya [Dec. 1st, 2012|03:20 pm]
C/C++ Developers

ru_c

[ya_lang]
Я Павел Сенаторов из Москвы, разработчик нового языка Ya.

Есть http://Ya-Lang.com где есть описание языка на английском и частично на русском.

Главная моя проблема - познакомить интересующихся новыми языками с Ya, кто знает в каких блогах, wiki или где еще можно про это написать - скажите. Проще всего через email arrow at ya-lang.com .

Ya is based on C++ and gets most of C++ as is. Yet there is no compatibility with C++, C++ program is not a Ya program and cannot be compiled as is.

My question: how to make those interesting in new languages know that this is new language. Please write me through http://Ya-Lang.com

Basic concepts (ideas, basics) of Ya
- double compilation - while compiler compiles, parts of the compiling program could be executed. It's required for extending Ya syntax, lexical tokens and to perform optimizations, with optimizer being written in the program being compiled.
- extandable syntax
- possible to add new statements. For example it's possible to to add statement 'foreach' for newly written type of a container.
- probably it will be possible to add to language syntax even a new nonterminal and rules for using it
- extandable lexical tokens
- possibility to add to expressions new operations.
- for example for sortings it's required comparison result of lesser or equal or bigger and it's possible to add new operation, let's name it <=>, which makes it for standard types.
- next example: let's <-> will notify exchange of values of variables (swap). Usage: int i,j; i <-> j;
- possibility to make other new constants. For example time is typically written like 10:53:17 - addition of a new kind of constant is described as regex and the code for transforming of text of new constant into required type the programmer writes on Ya. Note that this code will be executed on compile time, not run time.
- support for databases and internal structures like databases - it will probably be done as library. The same kind of feature in C# is named LinQ
- many small changes in the base of C++
- no project file. Each Ya project has _main_ source that compiler compiles. Main source contains description of other modules of program and which files contain this modules. It must not be described in main source and could be partially in other modules, yet the compiler should know from sources which modules are parts of program and where they are.
- named modules: module name; at the start of each compiled file
- header files are not used. Instead it is the statement using module, module; so separate header and implementation for a module goes out, because using module gets interface into work but not implementation details.
- type description is changed:
- keyword class is not used, $ used instead.
- new types are described like here:
- $constint = int-;
- $myClass { body of structure-class }
- all types are considered as classes, for example it is possible to inherit from int.
linkReply

Comments:
[User Picture]From: wrar
2012-12-01 09:18 pm (UTC)
Сразу к главному:

Язык стал разрабатывать примерно с 02 - щас уже точно не скажеш. Серьезная активность пошла в 06-09, но сильно мешала наркомания, если это так назвать - я сидел на трамадоле - это такое обезболевающее. С трамалом все кончилось по инициативе мамы - в августе 09 я стал еще что-то жрать, мама послала сестру Аню и мою любовницу Дину меня спасать, так что я в итоге провел сентябрь-декабрь 09 в спецзаведении по лечению наркоманов в подмосковье. Это вполне сработало и пробовать заново трамал или что-то еще пока не собираюсь, хотя интерес с чего это я трамал жрал все же есть некий.

А в январе 12 я стал думать что делать и понял что меня интересует только язык. Без языка можно сразу кидаться - жить незачем, а там правильнее чем тут, все же на том свету наша родина и тут оказываемся ну типа в путешествии, а чего-то достичь можно только там. Щас я в этом не уверен, неспроста народ родится.

[...]

я собираюсь-надеюсь на Ya и заработать. Т.е. формально будет shareware - типа месяц-два можно пользоваться-пробовать, а потом плати $1000 если хочеш на нем работать.
(Reply) (Thread)
[User Picture]From: slonik_v_domene
2012-12-18 04:57 pm (UTC)
В 2012 году продавать компилятор, при условии, что его разработчик частное лицо - абсурд.
(Reply) (Parent) (Thread)
[User Picture]From: slonik_v_domene
2012-12-18 04:54 pm (UTC)
Вы бы хоть пример программы показали, что-ли. Ну, и до кучи - ebnf языка, чтобы хоть примерно понимать, что планируется.
(Reply) (Thread)