Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - Rifat

Страницы: 1 [2] 3 4 5
16
Думаю что всего человек 100 активных пользователей оберона наберется, не все же знают про данный форум.

17
Предлагаю создать профсоюз обероновцев и сдавать по 30 рублей каждый месяц в качестве взноса. На полученные 100 долларов, покупать adwords и этим пропагандировать Оберон :)

18
Да, концепция о которой я сказал, это лично мое субъективное мнение.

19
Общий раздел / Re:[Oberon-07M] Порядок компоновки.
« : Апрель 10, 2011, 02:18:17 pm »
Пожелание учту.

20
Так как FormalType = ["ARRAY" "OF"] qualident.
Считаю, это правильным, так как зачем описывать типы, при описании процедуры, когда для этого есть специальная секция TYPE, в которой все такие типы и должны описываться.

21
Компилятор усложнит это точно.

К тому же ваше изначальное утвержение, что из описания языка слудует, что могут быть перегруженные функции, неправильно.
Если внимательно почитать сообщение о языке, то можно найти:
Every identifier occurring in a program must be  introduced by a declaration, unless it is a
predefined identifier. Declarations also serve to specify certain permanent properties of an object,
such as whether it is a constant, a type, a variable, or a procedure.
The identifier is then used to refer to the associated object. This is possible in those parts of a
program only which are within the scope of the declaration. No identifier may denote more than
one object within a given scope.

22
Общий раздел / Re:[Oberon-07M] Порядок компоновки.
« : Апрель 10, 2011, 01:52:03 pm »
А у меня были :)
Проблема была не в том, что консольное приложение совсем ничего не выводило, а в том, что при попытке перенаправления вывода от консольной программы в файл, то файл был пустым.
Возможно, этот глюк проявляться только на некоторых версиях Windows, возможно, что если у вас другая версия Windows или SP, то вам повезёт и данный глюк не проявится. В любом случае, для каких-то целей это поле в бинарном файле нужно и лучше там указывать правильное значение.

23
Да, может я не точно выразился, по значению нельзя передавать массивы и записи, а указатели можно. Указатель тоже относится к структурным типам.

24
Общий раздел / Re:[Oberon-07M] Порядок компоновки.
« : Апрель 10, 2011, 01:46:01 pm »
Нет, вы не поняли. В заголовке бинарного файла есть поле, которое показывает данный бинарный файл консольный или оконный (находится по смешению 5Ch от начала PE заголовка, там хранится число 2 или 3).
Если, например, указать что приложение оконное, а на самом деле, оно пытается выводить что-то в консоль, то можно наблюдать определенные глюки, некоторые WinApi функции будут при этом возвращать код ошибки, и консольное приложение будет работать неправильно. 

25
В Oberon-07 структурные типы могут передаваться в процедуры только по ссылке (через указатель), а не по значению. Соответственно при передаче массива в процедуру, можно указать VAR, если массив может быть изменен, или же CONST, если это входной параметр. Передача массива без VAR или CONST запрещена.

26
Думаю, это следует из концепции данного языка программирования. А концепция такова, что нужно сделать язык максимально простым, чтобы такое несовершенное существо, как человек, которому свойственно ошибаться, мог совершить как можно меньше ошибок.

Цели сделать из Oberon-07 второй C++ или PL/1 нет :)

27
Общий раздел / Re:[Oberon-07M] Порядок компоновки.
« : Апрель 10, 2011, 01:32:42 pm »
Почитайте http://exaprog.com/userguide.pdf

Там написано:
linker.exe projectfile binaryfile
projectfile  is file which contains “console” or “window”  in  the first   line for
building console or  gui  application.  Following  lines  in project   file should contain
modules names in order, which they are initialized.

То есть первая строка, это не имя модуля.

28
В грамматике языка oberon-07M эта конструкция описана:
ProcedureFlags = ["[" string "," string "," integer "]"].
ImportedProcedure = "PROCEDURE" ProcedureFlags identdef[FormalParameters]

0 - означает stdcall
Других соглашений вызова для импортированных процедур пока нет.

29
Если компилятор упал, пришлите мне, пожалуйста, на почту, которая указана на сайте компилятора, файл error.log.

Насчет ошибок компилятории, невозможность такой конструкции следует из грамматики языка:
FPSection = ["CONST" | "VAR"] ident {"," ident} ":" FormalType.
FormalType = ["ARRAY" "OF"] qualident.
qualident = [ident "."] ident.

Насчет номеров позиций ошибки, в ближайшее время исправлю.


Страницы: 1 [2] 3 4 5