LINUX.ORG.RU

История изменений

Исправление LamerOk, (текущая версия) :

Так что ответа я не увидел. Стандартные благоглупости,

Если ты не видишь аргументов, то это не потому, что их нет, а потому что ты недостаточно квалифицирован, чтобы их увидеть.

архитектура современных компьютеров

Читается отдельным курсом

  1. И наиболее наглядно иллюстрируется именно в абстрактной машине Си.
  2. Куда пропали операционные системы?

Сишечка - это лучшая иллюстрация как к курсу по аппаратным решениям, так и к материалу об операционных системах. Не видеть этого можно лишь в одном случае - тотальной безграмотности в обоих пунктах.

Вставь паскаль вместо си и получишь то же самое.

Нет, не получу.

  1. Я получу язык, который был мёртв в индустрии ещё 20 лет назад, а сейчас уже перекочёвывает из голоцена в плейстоцен.
  2. Я получу язык, в котором в принципе нет культуры использования платформозависимых типов, таких как size_t, ptrdiff_t и прочего.
  3. Я получу язык, в котором невозможно описать обобщённую структуру данных под разные платформы, и продемонстрироватьи type punning на примере sockaddr и sockaddr_in.
  4. На нём даже продемонстрировать эволюцию разрядности API не возможно на примере sockaddr_in и sockaddr_in6.
  5. Я получу язык, в последней живой «эталонной» имплементации которого структура sockaddr определена более чем в десяти (десяти, Карл!) разных местах:
$ grep -F 'sockaddr = record' -R .
./packages/httpd20/src/apr/apr.pas:  sockaddr = record
./packages/httpd22/src/apr/apr.pas:  sockaddr = record
./packages/libc/src/bsocketh.inc:   sockaddr = record
./packages/libc/src/bsocketh.inc:   osockaddr = record
./packages/libcurl/src/libcurl.pp:  curl_sockaddr = record
./packages/libndsfpc/src/dswifi/inc/sys/socket.inc:  sockaddr = record
./packages/libogcfpc/src/network.pp:  sockaddr = record
./packages/mysql/src/mysql.inc:       sockaddr = record
./packages/winunits-jedi/src/jwadsgetdc.pas:  sockaddr = record
./packages/winunits-jedi/src/jwawinsock.pas:  sockaddr = record
./packages/winunits-jedi/src/jwawinsock2.pas:  sockaddr = record
./rtl/netware/nwserv.pp:   Tsockaddr = record
./rtl/netwlibc/libc.pp:   sockaddr = record
./rtl/os2/so32dll.pas:  sockaddr = record
./rtl/os2/so32dll.pas:  osockaddr = record
./tests/webtbs/tw29064.pp:  sockaddr = record

И вот это говно предлагается для изучения системному программированию и архитектуре машин?

Предлагаете редактировать и компилить прогу для каждого n?

Писать «чёрные ящики» скучно.

Ты же «чёрный ящик» от «белого» не отличаешь. Как тебя в преподавание программированию-то занесло? Голод выгнал серого на улицы города?

Исправление LamerOk, :

Так что ответа я не увидел. Стандартные благоглупости,

Если ты не видишь аргументов, то это не потому, что их нет, а потому что ты недостаточно квалифицирован, чтобы их увидеть.

архитектура современных компьютеров

Читается отдельным курсом

  1. И наиболее наглядно иллюстрируется именно в абстрактной машине Си.
  2. Куда пропали операционные системы?

Сишечка - это лучшая иллюстрация как к курсу по аппаратным решениям, так и к материалу об операционных системах. Не видеть этого можно лишь в одном случае - тотальной безграмотности в обоих пунктах.

Вставь паскаль вместо си и получишь то же самое.

Нет, не получу.

  1. Я получу язык, который был мёртв в индустрии ещё 20 лет назад, а сейчас уже перекочёвывает из голоцена в плейстоцен.
  2. Я получу язык, в котором в принципе нет культуры использования платформозависимых типов, таких как size_t, ptrdiff_t и прочего.
  3. Я получу язык, в котором невозможно описать обобщённую структуру данных под разные платформы, и продемонстрироватьи type punning на примере sockaddr и sockaddr_in.
  4. На нём даже продемонстрировать эволюцию разрядности API не возможно на примере sockaddr_in и sockaddr_in6.
  5. Я получу язык, в последней живой «эталонной» имплементации которого структура sockaddr определена более чем в десяти (десяти, Карл!) разных местах:
$ grep -F 'sockaddr = record' -R .
./packages/httpd20/src/apr/apr.pas:  sockaddr = record
./packages/httpd22/src/apr/apr.pas:  sockaddr = record
./packages/libc/src/bsocketh.inc:   sockaddr = record
./packages/libc/src/bsocketh.inc:   osockaddr = record
./packages/libcurl/src/libcurl.pp:  curl_sockaddr = record
./packages/libndsfpc/src/dswifi/inc/sys/socket.inc:  sockaddr = record
./packages/libogcfpc/src/network.pp:  sockaddr = record
./packages/mysql/src/mysql.inc:       sockaddr = record
./packages/winunits-jedi/src/jwadsgetdc.pas:  sockaddr = record
./packages/winunits-jedi/src/jwawinsock.pas:  sockaddr = record
./packages/winunits-jedi/src/jwawinsock2.pas:  sockaddr = record
./rtl/netware/nwserv.pp:   Tsockaddr = record
./rtl/netwlibc/libc.pp:   sockaddr = record
./rtl/os2/so32dll.pas:  sockaddr = record
./rtl/os2/so32dll.pas:  osockaddr = record
./tests/webtbs/tw29064.pp:  sockaddr = record

И вот это говно предлагается для изучения системному программированию и архитектуре машин?

Предлагаете редактировать и компилить прогу для каждого n?

Писать «чёрные ящики» скучно.

Ты же «чёрный» ящик от «белого» не отличаешь. Как тебя в преподавание программированию-то занесло? Голод выгнал серого на улицы города?

Исходная версия LamerOk, :

Так что ответа я не увидел. Стандартные благоглупости,

Если ты не видишь аргументов, то это не потому, что их нет, а потому что ты недостаточно квалифицирован, чтобы их увидеть.

архитектура современных компьютеров

Читается отдельным курсом

  1. И наиболее наглядно иллюстрируется именно в абстрактной машине Си.
  2. Куда пропали операционные системы?

Сишечка - это лучшая иллюстрация как к курсу по аппаратным решениям, так и к материалу об операционных системах. Не видеть этого можно лишь в одном случае - тотальной безграмотности в обоих пунктах.

Вставь паскаль вместо си и получишь то же самое.

Нет, не получу.

  1. Я получу язык, который был мёртв в индустрии ещё 20 лет назад, а сейчас уже перекочёвывает из голоцена в плейстоцен.
  2. Я получу язык, в котором в принципе нет культуры использования платформозависимых типов, таких как size_t, ptrdiff_t и прочего.
  3. Я получу язык, в котором невозможно описать обобщённую структуру данных под разные платформы, и продемонстрироватьи type punning на примере sockaddr и sockaddr_in.
  4. На нём даже продемонстрировать эволюцию 32-ух битного в 64-ёх битное API не возможно на примере sockaddr_in и sockaddr_in6.
  5. Я получу язык, в последней живой «эталонной» имплементации которого структура sockaddr определена более чем в десяти (десяти, Карл!) разных местах:
$ grep -F 'sockaddr = record' -R .
./packages/httpd20/src/apr/apr.pas:  sockaddr = record
./packages/httpd22/src/apr/apr.pas:  sockaddr = record
./packages/libc/src/bsocketh.inc:   sockaddr = record
./packages/libc/src/bsocketh.inc:   osockaddr = record
./packages/libcurl/src/libcurl.pp:  curl_sockaddr = record
./packages/libndsfpc/src/dswifi/inc/sys/socket.inc:  sockaddr = record
./packages/libogcfpc/src/network.pp:  sockaddr = record
./packages/mysql/src/mysql.inc:       sockaddr = record
./packages/winunits-jedi/src/jwadsgetdc.pas:  sockaddr = record
./packages/winunits-jedi/src/jwawinsock.pas:  sockaddr = record
./packages/winunits-jedi/src/jwawinsock2.pas:  sockaddr = record
./rtl/netware/nwserv.pp:   Tsockaddr = record
./rtl/netwlibc/libc.pp:   sockaddr = record
./rtl/os2/so32dll.pas:  sockaddr = record
./rtl/os2/so32dll.pas:  osockaddr = record
./tests/webtbs/tw29064.pp:  sockaddr = record

И вот это говно предлагается для изучения системному программированию и архитектуре машин?

Предлагаете редактировать и компилить прогу для каждого n?

Писать «чёрные ящики» скучно.

Ты же «чёрный» ящик от «белого» не отличаешь. Как тебя в преподавание программированию-то занесло? Голод выгнал серого на улицы города?