Re[2]: Новый browser и JavaScript
От: c-smile Канада http://terrainformatica.com
Дата: 09.12.04 19:25
Оценка:
Здравствуйте, Рома Мик, Вы писали:


РМ>Не морочь себе голову ИМХО. Есть уже интерпритатор готовый? Прикурчивай по минимуму и начинай тестировать. Если важно это дело с прототипами, то оно всплывет. Попроси народ накидать нетривиальных примеров использования javascript и пробуй.


Посмотрел я на SEE engine (ECMAScript) и понял лучше бы его автор и не писал.
Байткода нет. GC фактически тоже нет. Мрак.

В общем делаю downgrade с-smile до уровня JS

РМ>Я правда не очень понимаю, как ты собираешься его прикручивать. ДОМ-то твой не настоящий, а что за javascript без ДОМа?


Ложится один в один практически. обертки просто надо написать.

c-smile — компилируемый поэтому comptibility прослойки пишутся на нем и транслируются в байткод.
Т.е. можно выбирать программно IE flawor / Gecko flawor.
Re[4]: Новый browser и JavaScript
От: c-smile Канада http://terrainformatica.com
Дата: 09.12.04 19:32
Оценка:
Здравствуйте, yxiie, Вы писали:

Y>Здравствуйте, c-smile, Вы писали:


Y>ты заметь, что в JavaScript нет явных определений class.

Y>именно через prototype это эмулируется

Я заметил как ты понимаешь. Давно.
Сходи например сюда: http://c-smile.sourceforge.net/

По всей видимости я как то не так вопрос задаю...

В Веб Программировании народ воспринимает JS как данность и снаружи.
Я же смотрю на это дело изнутри. С точки зрения имплементации.
Так вот с точки зрения имплементации лишний prototype в имплементации.
сажает производительнось значительно. Без него все прекрасно ложится и пртототипирование
и эмуляция ООП и т.д.

Вот я и думаю кому это было нужно — замедлять производительность?
Чей-то злой умысел или как?
Re[3]: Новый browser и JavaScript
От: Рома Мик Россия http://romamik.com
Дата: 09.12.04 19:56
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>c-smile — компилируемый поэтому comptibility прослойки пишутся на нем и транслируются в байткод.

CS>Т.е. можно выбирать программно IE flawor / Gecko flawor.
Да теперь то уж и просто по спецификации можно по идее...
Re[2]: Новый browser и JavaScript
От: c-smile Канада http://terrainformatica.com
Дата: 09.12.04 20:03
Оценка:
Здравствуйте, B.F.AngelLab, Вы писали:

BFA>Одним из наших проектов тоже браузер.


Ага! Ну ка, ну ка.... подробности?

BFA>Было бы интересно пообщаться.


Интересно пришла ли мне пора общаться с ангелами или нет?
Имхо имечко вы себе выбрали оченно двусмысленное, особенно для запада.

Особенно angel-jobs.com звучит просто караул!

Мой e-mail в профайл если серьезно.

BFA>АСЯ: 103577986


Кто такая "АСЯ" ?
Re[3]: Новый browser и JavaScript
От: B.F.AngelLab Россия http://www.angel-jobs.com
Дата: 09.12.04 20:16
Оценка:
Здравствуйте, c-smile, Вы писали:
CS>Ага! Ну ка, ну ка.... подробности?
Многое выкладывать здесь немогу, поскольку по этому проекту идет оформление патентов, но в кратце могу сказать, что мы пересматриваем в первую очередь подход к интернет безопасности и удобство пользования интернетом в целом (не только браузинг).

BFA>>Было бы интересно пообщаться.

CS>Интересно пришла ли мне пора общаться с ангелами или нет?
Мощные маркетинговые решения и великолепное финансовое положение говорят за это

CS>Имхо имечко вы себе выбрали оченно двусмысленное, особенно для запада.

В общем да... Но по нашим тестам плюсов именно такого имени намного больше, чем минусов.

CS>Особенно angel-jobs.com звучит просто караул!

Великолепные перспективы. Начнете с младшего ангела. Большие перспективы карьерного роста — можете дорасти до архангела

BFA>>АСЯ: 103577986

CS>Кто такая "АСЯ" ?
icq.com
www.angel-jobs.com требуются программисты зарплата от $1500
Re[5]: Новый browser и JavaScript
От: yxiie Украина www.enkord.com
Дата: 09.12.04 22:35
Оценка:
Здравствуйте, c-smile, Вы писали:

...

pototype сделан для того, чтобы каждый объект не держал в себе копию методов, ведь при копировании такого объекта:
a.some=function () {...}
будут копироваться и методы. а если их много? очень много? вот для этого и придумали pototype.
так что не надо думать, что ты умнее ECMA они придумывали стандарт не исходя из каких=то эфимерных целей, а исходя из практической реализации, так что pototype думаю придется делать однозначно
... << RSDN@Home 1.1.3 stable >>
Re[4]: Новый browser и JavaScript
От: c-smile Канада http://terrainformatica.com
Дата: 09.12.04 22:46
Оценка: :))
Здравствуйте, B.F.AngelLab, Вы писали:

BFA>Великолепные перспективы. Начнете с младшего ангела. Большие перспективы карьерного роста — можете дорасти до архангела


Эх-хе-хе...

angel-jobs.com — adminstrative contact — pr@sexkontent.com

Кем работать будем?
Re[5]: Новый browser и JavaScript
От: yxiie Украина www.enkord.com
Дата: 09.12.04 22:50
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Я заметил как ты понимаешь. Давно.

CS>Сходи например сюда: http://c-smile.sourceforge.net/

не знаю, что я там должен был увидеть, но я посмотрел
скриптовый язык симпатичный, но итнересует скорость работы вирт.машины, в сравнении скажем с perl, lua, python. тесты делели?
и еще один момент интересует — он что, правда public domain?
... << RSDN@Home 1.1.3 stable >>
Re[6]: Новый browser и JavaScript
От: c-smile Канада http://terrainformatica.com
Дата: 09.12.04 23:06
Оценка:
Здравствуйте, yxiie, Вы писали:

Y>Здравствуйте, c-smile, Вы писали:


Y>pototype сделан для того, чтобы каждый объект не держал в себе копию методов, ведь при копировании такого объекта:

Y>a.some=function () {...}
Y>будут копироваться и методы. а если их много? очень много? вот для этого и придумали pototype.

В моем варианте instances тоже не содержат методов:


function  MyObject() {  }
MyObject.myClassMethod = function() { alert("ku-ku"); } // цепляем метод к "классу"

var a = new MyObject();
a.myClassMethod(); // выдаст alert(ku-ku)


JavaScript для того чтобы достичь точно того же использует:


function  MyObject() {  }

MyObject.prototype.myClassMethod = function() { alert("ku-ku"); }

var a = new MyObject();
a.myClassMethod(); // выдаст alert(ku-ku)


Зачем нужен prototype?


Y>так что не надо думать, что ты умнее ECMA они придумывали стандарт не исходя из каких=то эфимерных целей, а исходя из практической реализации, так что pototype думаю придется делать однозначно


Мда...

Вопрос не в том делать или нет. "Каждый солдат должен знать свой маневр" что бы достичь результата самым эффективным образом. Вот мне и интересно — в чем смысл такого решения.

Для справки JavaScript родился в Нетскейп. Автор (основной?): Вальдемар Хорват (Waldemar Horvat)
К сожалению не могу найти его e-mail. Все которые в инете — дохлые.

А ECMA как например Госстандарт России сама(само) ничего не придумывает.

Как и W3C кстати.
Re[6]: Новый browser и JavaScript
От: c-smile Канада http://terrainformatica.com
Дата: 09.12.04 23:10
Оценка:
Здравствуйте, yxiie, Вы писали:

Y>скриптовый язык симпатичный, но итнересует скорость работы вирт.машины, в сравнении скажем с perl, lua, python. тесты делели?


Нет. Некогда было. Теоретически одно из самых быстрых решений.

Y>и еще один момент интересует — он что, правда public domain?


Да.
Re[6]: Новый browser и JavaScript
От: c-smile Канада http://terrainformatica.com
Дата: 09.12.04 23:29
Оценка:
Здравствуйте, yxiie, Вы писали:

CS>>Сходи например сюда: http://c-smile.sourceforge.net/


Y>не знаю, что я там должен был увидеть, но я посмотрел


На самом деле c-smile это практически JavaScript v.2.0
Нормальные классы, наследование и пр.

См. например http://www.mozilla.org/js/language/evolvingJS.pdf

Единcтвенно что не имплементировано в нем так это ограничители типов JS 2.0:

var num:Number = 22;
Re[7]: Новый browser и JavaScript
От: yxiie Украина www.enkord.com
Дата: 10.12.04 00:08
Оценка:
Здравствуйте, c-smile, Вы писали:

...

CS>Зачем нужен prototype?


блин, я уже устал
в предидущем посту я объяснил. ладно, попробую показать на пальцах...
если идет обращение к полю или методу и объект его не содержит — идет поиск в свойстве prototype, таким образом как-бы достигается реализация таких вещей как class и object.

это класс:
function MyClass() {
    this.field=4;
}

MyClass.prototype.method=function () {
    trace(this.field);
}


а это объект (экземпляр):
var myobj=new MyClass();
myobj.method();


такие вещи тебе знакомы?
... << RSDN@Home 1.1.3 stable >>
Re[7]: Новый browser и JavaScript
От: yxiie Украина www.enkord.com
Дата: 10.12.04 00:08
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Здравствуйте, yxiie, Вы писали:


Y>>скриптовый язык симпатичный, но итнересует скорость работы вирт.машины, в сравнении скажем с perl, lua, python. тесты делели?


CS>Нет. Некогда было. Теоретически одно из самых быстрых решений.


практика показывает, что теория часто сильно отличается от практики
тесты посмотреть было бы очень интересно.
я помню тоже начинал изучение С++ с написания JavaScript-подобного интерпретатора, только я еще извращался, прикрутил классам перегрузку операторов, препроцессор
но это не важно, важно то, что скорость исполнения по тестам оказалась во много раз ниже того же пхп 4.0.3
так что советую сделать тесты, чтобы серьезно попуститься (ну или очень воспрять духом)

и что примечательно — не нашел вообще никакой доки, хоть это пожалуй вполне свойственно public domain вещам
... << RSDN@Home 1.1.3 stable >>
Re[7]: Новый browser и JavaScript
От: yxiie Украина www.enkord.com
Дата: 10.12.04 00:08
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>На самом деле c-smile это практически JavaScript v.2.0

CS>Нормальные классы, наследование и пр.

CS>См. например http://www.mozilla.org/js/language/evolvingJS.pdf


CS>Единcтвенно что не имплементировано в нем так это ограничители типов JS 2.0:


CS>var num:Number = 22;


меня больше интересует виртуальная машина (если она действительно хорошая).
там на сайте написано, что он легко интегрируется в С++ программы. насколько это так? (легко)
дело в том, что у меня уже есть своя архитектура, со встроенными типами, рефлексией и.т.д., а вот нормальную вирт. машину с продвинутой оптимизацией писать как-то влом..., поэтому пока скрипты и не прикручиваю.
... << RSDN@Home 1.1.3 stable >>
Re[8]: Новый browser и JavaScript
От: c-smile Канада http://terrainformatica.com
Дата: 10.12.04 00:56
Оценка:
Здравствуйте, yxiie, Вы писали:

Y>меня больше интересует виртуальная машина (если она действительно хорошая).

Y>там на сайте написано, что он легко интегрируется в С++ программы. насколько это так? (легко)
Y>дело в том, что у меня уже есть своя архитектура, со встроенными типами, рефлексией и.т.д., а вот нормальную вирт. машину с продвинутой оптимизацией писать как-то влом..., поэтому пока скрипты и не прикручиваю.

С PHP веселая песня вообще-то. У него нет garbage collector. Вообще.
Т.е. VM создается на момент исполнения запроса и уходит вся скопом вместе с аллоцированной памятью. Что не для каждй задачи подходит. Но зато действительно шустро — malloc это просто mem += len;

Ты разберись что тебе надо сначала.

Если принципиально эффективность то можно и JavaVM (не javascript) прикрутить — исходников в инете море. Рекомендую JamVM

Что может получиться со своей JavaVM вот например у меня здесь:
http://www.terrainformatica.com/org/j-smile/index.htm

Иyтерпретация java bytecode настолько шустра что мне даже удалось
рисование вынести в Java.

Кроме того что куча всяких жутко удобных IDE в инете.

Там на скрнишоте (download тоже) аппликация которая полностью рисуется в Java
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.