Расширение JavaScript с ключевыми словами

На самом деле Java должен использовать строкового разработчика в Вашем втором примере.

основная проблема с попыткой оптимизировать эти примеры далеко состоит в том, что выполнение так потребовало бы доказательство теорем . То, что означает, что компилятор должен был бы создать математическое доказательство того, что Вы - код, на самом деле сделает. И это не маленькая задача вообще. На самом деле способность доказать, что весь код действительно имеет эффект, эквивалентна проблеме остановки.

Несомненно, можно придумать тривиальные примеры, но количество тривиальных примеров неограниченно. Вы могли всегда думать о чем-то еще, таким образом, нет никакого способа поймать их всех.

, Конечно, возможно для [приблизительно 111] код, как доказывать, не иметь любой эффект, как в Ваших примерах. То, что Вы хотели бы сделать, имеют компилятор, оптимизируют далеко каждую проблему, которая может быть доказана неиспользованной во время P.

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

Вы могли бы хотеть изучить Haskel, который я думаю, имеет самую усовершенствованную теорию, доказывающую материал, хотя я не уверен в этом. Я не знаю это сам.

5
задан jd. 1 October 2009 в 20:04
поделиться

2 ответа

Вы не можете добавлять ключевые слова в язык, но все является объектом, и все может быть расширено с помощью прототипирования.

Обычно я бы не стал ссылаться на Крокфорда, но у него действительно есть довольно приличное освещение этого , которое предоставит вам синтаксис вида foo.inherits (bar); , который настолько хорош, насколько можно было бы пожелать. Это довольно распространенный образец.

4
ответ дан 14 December 2019 в 04:42
поделиться

Невозможно добавлять новые ключевые слова в JavaScript, нет. Вы могли бы создать свой собственный красивый интерфейс для создания классов, возможно, черпая вдохновение в одной из бесчисленных библиотек, фреймворков и инструментальных средств, уже существующих!

0
ответ дан 14 December 2019 в 04:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: