[00:45:47] <valexey> не топик, а жесть: http://habrahabr.ru/blogs/open_source/125588/
[08:02:21] <geniepro> http://www.izcity.com/data/system/article399.htm
[08:44:33] <valexey> да, линукс рулит
[08:47:43] <geniepro> да чем же он тут рулит-то? о_О
[08:48:24] <geniepro> "Философия управления LinuxBIOS проста - она заключается в следующем: "Позвольте ядру Linux выполнить это" (Let the Linux kernel do it). Другими словами, если Linux может выполнить какую-нибудь определенную задачу, вроде инициализации устройства, то необходимость в любом другом ПО, тоже способном осуществить это, просто отпадает как таковая. Было замечено, что часто Linux еще раз делает ту же работу, за которую в любом случае отвечает BIOS. Или, что еще хуже, Linux достаются задачи, которые BIOS в большинстве случаев делает неправильно. Из этого следует, что BIOS должен поручатся тот объем работы, который не в состоянии выполнить ядро Linux. Претворяя эту концепцию в жизнь, LinuxBIOS в то же время является быстрой и небольшой альтернативой (двоичный файл системы занимает 36 Кб, в зависимости от конфигурации)."
[08:52:34] <geniepro> таки они всё-таки засунули в флешку ядро линукса...
[09:17:36] <valexey> именно этим и рулит
[09:20:09] <valexey> вообще linuxBIOS это ж баян. это давным давно используется.
[10:03:33] <valexey> Гы. А начиная с MacOS 8.6 у классики было наноядро.
[10:03:41] <valexey> http://en.wikipedia.org/wiki/Mac_OS_nanokernel
[12:54:23] <valexey> "Pascal was the primary high-level language used for development in the Apple Lisa <http://en.wikipedia.org/wiki/Apple_Lisa>, and in the early years of the Mac. Parts of the original Macintosh <http://en.wikipedia.org/wiki/Apple_Macintosh> operating system were hand-translated into Motorola 68000 <http://en.wikipedia.org/wiki/Motorola_68000>assembly language <http://en.wikipedia.org/wiki/Assembly_language> from the Pascal sources."
[13:02:58] <valexey> "Microsoft's MFC and Borland's OWL were both based directly on MacApp concepts."
[13:49:40] <valexey> интересно, почему apple таки закопала Pascal?
[13:51:39] <valexey> "MacApp was perhaps the first truly usable framework in all meanings of the term. Compiled applications were quite reasonable in terms of size and memory footprint, and the performance was not bad enough to make developers shy from it."
[14:15:10] <geniepro> мода, наверное
[14:15:42] <valexey> да какая нафиг мода? бабло же :-)
[14:16:59] <valexey> да и дорого же это. львиная доля кода макоси на паскале же было
[14:17:26] <valexey> нынче вот Си (чистый) не моден, но ведь никто ядро оси и API её на новомодной скажем яве не переписывает.
[14:17:34] <valexey> да и на просто C++ не переписывают
[14:27:35] <geniepro> JavaOS, FantomOS есть же
[14:27:43] <valexey> и что?
[14:27:53] <valexey> я имею ввиду существующие продакшн оси
[14:27:58] <geniepro> так что кто хочет, тот переписывает
[14:28:02] <valexey> а не экспериментальные поделки, которые не факт что существуют
[14:28:31] <valexey> так вот, просто так переписывать готовую систему приносящую прибыль на другом языыке никто не стал бы
[14:28:47] <geniepro> была мода делать всякие юнипсы на сях, потом начали прочие хреноси делать на сях, вот и аппл на это повёлся -- мода же
[14:30:54] <valexey> да какая нафиг мода? тогда ядра осей на асме писались и никак иначе.
[14:31:12] <valexey> иначе они писались только на больших машинах, где было много памяти (больше 128 Кб)
[15:00:46] <valexey> http://www.ralentz.com/old/mac/humor/mpw-c-errors.html
[15:03:39] <valexey> "The MPW Shell command language was based on the Unix csh <http://en.wikipedia.org/wiki/C_shell> language, but was extended to support the main features of the Macintosh GUI. It had simple commands to create menus, dialogs (prompts), and new shell windows. The cursor could be controlled, and MPW scripts or tools could easily be attached to a menu item. Command key shortcuts could be specified. Window size and location could be controlled."
[15:37:01] <valexey> "Note: Dynamic memory allocation on the stack is usually handled automatically if you
are using a high-level development language such as Pascal. The compiler generates the
code that creates and deletes stack frames for each function or procedure call."
[15:40:17] <valexey> гы. В МакОси (классике) в процессе работы программы мог запускаться процесс дефрагментации кучи.
[15:40:34] <valexey> То есть во время работы программы память компактифицировалась.
[15:42:20] <geniepro> а сейчас разве такого нет?
[15:42:46] <geniepro> это, по-моему, в любом нормальном аллокаторе памяти должно быть...
[15:42:55] <valexey> нет конечно
[15:42:57] <geniepro> ну, юнипсы/линупсы не в счёт...
[15:43:06] <valexey> как ты себе это представляешь? :-)
[15:43:15] <valexey> я не про старницы памяти, а про блоки произвольного размера
[15:43:18] <geniepro> а в чём проблема?
[15:43:24] <valexey> то есть стректурку переместить наример.
[15:43:55] <valexey> в том, что твои указатели на эти структуры станут невалидными.
[15:46:44] <geniepro> я как-то тут недавно цитировал ругань одного из авторов книг про аллокаторы памяти, как он ругал линупс за его хреновый аллокатор памяти
[15:50:18] <valexey> про какой из аллокаторов? на каком уровне?
[15:57:15] <geniepro> http://www.xakep.ru/magazine/xa/093/146/1.asp
[15:58:22] <geniepro> чота не нашёл я ту статью -- не помню, про кого там было... (
[16:10:52] <valexey> хакер в очередной раз изображает капитана?
[16:11:56] <geniepro> http://habrahabr.ru/blogs/compilers/125626/#habracut
[16:35:01] <valexey> да, clang рулит
[16:35:10] <valexey> впрочем,  llvm рулит сильнее :-)
[16:37:28] <geniepro> в коде силанга баги копипаста! и вапще он не может компилить проги, которые компилит мелкософтский компилер.
вот она, переносимость кода на с++ ггг
[16:38:27] <valexey> все проги конечно не может
[16:38:34] <valexey> а те проги которые писаны на С++ - может
[16:39:09] <geniepro> с++11 уже не понимает
[16:39:26] <valexey> и не должен
[16:39:56] <geniepro> http://news.mail.ru/economics/6495865/?frommail=1
[16:40:39] <valexey> было с месяц назад
[16:45:43] <valexey> вообще более стабильного и более переносимого между реализациями языка чем С++ я не видел.
[16:46:17] <geniepro> си?
[16:47:54] <valexey> да не, там примерно то же самое
[16:47:59] <valexey> то есть оно не более
[16:51:43] <valexey> "C seemed to have been designed for people who can't type, since strange symbols seem to substitute for words which I relate to better (like "begin" and "end")."
[16:58:40] <valexey> Статья на тему "как оседлать плюсы паскалисту": http://www.mactech.com/articles/frameworks/5_5/Pascal_manSubmerges_Feiler.html
[17:30:30] <valexey> Дас, похоже попытка миграции MacApp с паскаля на с++ потерпела фиаско.
[17:31:22] <valexey> настолько, что в результате сами яблодевелоперы стали пользоваться сторонними либами. метроворковским PowerPlant'ом. На котором и был написан Finder вплоть до MacOS X 10.4
[17:34:12] <valexey> " There was hope that MacApp could become a cross-platform development system.  In those dark days, it was thought that all development platforms had to support Windows or suffer ultimate demise."
[17:37:02] <valexey> гы-ы. суровые юниксоиды пришли и обидели яббловых метросексуалов:
[17:37:05] <valexey> "NeXT engineers brought their own class library to Apple, as well as a contempt for the programming tools developed at Apple. "
[17:42:36] <valexey> vlad2: а вы с карбона еще не намылились мигрировать на какаву?
[17:49:36] <vlad2> ААА!!!
[17:49:51] <vlad2> Не рассказывайте мне про MacApp и его "концепты"!!!
[17:50:50] <vlad2> И про его реализацию на С++.
[17:51:39] <vlad2> Борланд и то поступил честнее, сделав билдер совместимым с паскальной VCL, а не переписав ее на С++ :)
[17:52:20] <valexey> vlad2: доводилось сталкиваться?
[17:52:55] <valexey> судя по последним постам в списке рассылки (за 2011 год) там уже шаблоны во всю
[17:53:10] <valexey> ну и TObject они закопали в 90-х годах еще.
[17:54:52] <valexey> Вообще, до версии 3.0 под MacApp можно было на плюсах писать, при этом оно было вполне себе паскальное. То есть оно было многоязычное. Правда писать на плюсах под это было не естественно :-)
[17:55:58] <valexey> Но начиная с 1991 года, судя по вот этой статье: http://basalgangster.macgui.com/RetroMacComputing/The_Long_View/Entries/2011/5/28_MacApp_-_evolution.html там началась вообще жесть и содомия. На паскале уже нельзя было писать (переписали на плюсах же) а на плюсах еще нельзя было писать (конструкторы, деструкторы не использовались, все глючило и так далее).
[17:56:47] <valexey> vlad2: а на классике было что-то ниже уровнем чем MacApp? То есть какой-то аналог голимого WinApi? Чтобы никакого ООП, и голимая процедурщина.
[17:58:19] <vlad2> Дык, оно у нас до сих пор в ядре гуя :) Ужос!
[17:59:17] <vlad2> МакАпп не пережил переход на OSX, поэтому нам сами пришлось его тащить. Что было, естественно, огромной ошибкой. Ибо надо было закопать и начать юзать кокоа.
[17:59:54] <vlad2> Я так понял, что на классике ниже Макаппа быо что-то вроде окна с функциями рисования. И все.
[18:00:25] <vlad2> В смысле совсем голоко окна - прямоунольник с графическим портом.
[18:01:32] <vlad2> На момент, когда мы стали его тащить - там был полный расцвет "обжекта паскаля на С++".
[18:03:13] <vlad2> (со всемы вытекающими ужосами)
[18:12:51] <valexey> vlad2: как так? написано что macApp современный нормально под макосьикс работает
[18:13:14] <valexey> The current version is R16.1.  It is a completely usable Carbon framework and compatible with XCode 3 and OS X 6 (Snow Leopard). 
[18:13:40] <vlad2> Видимо на момент, когда мы его взяли к себе (лет 7 назад) - стабильной  версии под OSX не было.
[18:14:06] <vlad2> Сейчас оно  уже неинтересно, даже если вылезано до мелочей.
[18:14:07] <valexey> это да. его долго пытались карбонизировать.  было много плача. и видать таки попилили.
[18:15:12] <valexey> Но вы фигня, adobe вон, форкнул MacApp версии два :-) То есть ровно тогда, когда яббл решил все переписать на С++, адоб сказал - анунафиг, и пошел своим путем со своей веткой макАппа
[18:15:15] <valexey> "No doubt, Adobe forked their own version of MacApp some time near the release of version 3 of the library, and continued to use if for a long time after that, moving it in new directions of their own making.  Maybe I should have done that."
[18:15:17] <vlad2> Вообще писали его более злобные ООП-ники, чем VCL/OWL/MFC. Был ли он этого лучше - не уверен.
[18:15:37] <valexey> Гм. А куда уж злобнее то?
[18:16:46] <vlad2> В смысле? MFC - Это вообще ООП с очень большой натяжкой. OWL - тоже. VCL - так, пионерство - более мнее вменяемая иерархия, и на том спасибо.
[18:16:48] <valexey> Про то как пришел метроворкс и зарулил их всех:
[18:16:53] <valexey> "And Metrowerks built their own class library, PowerPlant.  PowerPlant was not an advanced system inspired by the latest ideas about object-oriented programming.  It was a practical system that tried to provide object-oriented solutions to all the operating system features that Macintosh programmers needed to use.  It wasn’t a research project, it was a product.  PowerPlant stayed stable as things changed, and grew by additions, not by revolutionary redesign. "
[18:17:34] <vlad2> Эту штуку не щупал, ничего не скажу.
[18:17:54] <valexey> vlad2: блин, сколько же вашему проекту лет, если у вас даже не PowerPlant, а MacApp? Все вменяемые люди после 1994 года ведь на поверПланте писали.
[18:18:18] <vlad2> 20 лет ;)
[18:18:33] <valexey> ужас.
[18:18:38] <vlad2> Угу.
[18:19:03] <valexey> Гм. То есть с большой вероятностью под мак оно начиналось еще на паскале.
[18:19:07] <valexey> Или на чистом си.
[18:20:28] <vlad2> Не, паскаля вроде никогда не было. Но я могу ошибаться.
[18:20:57] <vlad2> Вообще я не верю во вменяему любу 94 года.
[18:21:38] <valexey> ну, MacApp то считай 1985 года :-)
[18:22:16] <valexey> PowerPlant столь хорош был, что яббл его использовал для своих продуктов, а  MacApp не использовал :-)
[18:22:36] <valexey> В частности до 10.4  включительно Finder был писан на PowerPlant'e
[18:22:50] <valexey> (была версия PowerPlant'a и под карбон тоже)
[18:24:12] <valexey> vlad2: а что такое графический порт? :-)
[18:24:36] <vlad2> Файндер глючит до сих пор :)
[18:25:13] <vlad2> Ну там графический контекст какой-то. В терминах АПИ назывался "port".
[18:25:35] <valexey> файндер переписали же. на какаве.
[18:25:46] <valexey> а теперь говорят и йтюнз на какаве перепишут
[18:25:56] <vlad2> Ему это не исльно помогло. Все равно глючит и на 10.5.
[18:26:27] <valexey> кстати, по внешнему виду и поведению какава-приложения от карбона отличаются как-нибудь?
[18:26:32] <vlad2> йтюнз меня вообще не парит :) Пусть хоть на обероне переписыват.
[18:27:14] <valexey> ужас
[18:27:16] <valexey> :-)
[18:27:21] <vlad2> Конечно отличается. В карбоне только 10-я часть доступна из гуйни, которая есть в кокоа. И со следующими версиями ОС - разры все больше.ю
[18:27:35] <valexey> гм. да? а что не доступно?
[18:27:55] <valexey> небось только что-то высокоуровневое, ну, то есть то, что без проблем можно реализовать руками
[18:28:02] <vlad2> Да ты запусти этот, как его, интерфейс билдер и посмотри :)
[18:28:52] <valexey> интерфейс билдара больше нет :-)
[18:29:02] <valexey> они слились в экстазе с XCode :-)
[18:29:16] <vlad2> Пипец.
[18:29:37] <vlad2> Не удивительно, что он всю ночь проект грузил.
[18:30:38] <valexey> что, у вас много там xib-файлов? или как они там у вас зовутся :-)
[18:31:33] <vlad2> У нас их вообще нет ;)
[18:31:39] <vlad2> Есть пара нибов.
[18:33:00] <vlad2> У нас же макапп - тогда еще не было интерфейс билдеров ;)
[18:33:37] <valexey> кошмарики какие
[18:33:53] <valexey> гм. QuickDraw port может быть одновременно только один
[18:34:06] <vlad2> Только не спрашивай, что у нас вместо интерфейс билдера ;)
[18:34:06] <valexey> и это глобальная переменная в твоем сегменте памяти
[18:34:09] <valexey> кошмарр
[18:34:25] <vlad2> Да, да! Только один!!! И это были все баги, баги!
[18:34:27] <valexey> А что у вас вместо интерфейс-билдера? Ниужели все на html сделали? :-)
[18:34:44] <valexey> читаю http://www.mindfiresolutions.com/download/Mac=Memory%20Manager.pdf - доставляет
[18:35:55] <vlad2> Вместо интерфейс билдера у нас спец. ресурс едитор для макаппа - AdLib. Я только скажу, что он ранеится только в классике. Все остальное - сплошное !@#$
[18:36:08] <valexey> вообще, иной оберонщик прослезился бы - все на паскале, система простая, многозадачность кооперативная (если соответствующий екстеншн поставлен, если нет, то нет многозадачности никакой).
[18:36:37] <valexey> Только не говори, что вы до сих пор классику поддерживаете!
[18:36:58] <vlad2> Да, я помню мне на форуме один оберонщик доказывал, что программировать в кооперативной многозадачности "проще и понятнее".
[18:37:14] <vlad2> Примеры, конечно, касались разбивки циклов и всего такого.
[18:37:51] <vlad2> (ну и вставка йилдов ).
[18:38:27] <vlad2> Классику не поддерживаем, но тяжкое наследие есть.
[18:38:50] <valexey> ну, он прав тащемто. действительно проще и понятней. модульность не нарушается, не надо морочить голову мьютексами и так далее
[18:38:52] <vlad2> Яж говорю - только совсем недавно выхерачил кооперативную многозадачность своими руками :)
[18:39:00] <valexey> гы
[18:40:00] <valexey> о! паскаль походу анимешники придумывали, зацени какие няшные ушки посреди строки кода:
[18:40:02] <valexey> cRect := myControl^^.contrlRect;
[18:40:54] <vlad2> Самое забавное, что после выхерачиванию кооперативных потоков - ни одного бага на race condition (чего так боятся и от чего спасает КМ) так и не было обнаружено.
[18:41:50] <vlad2> В С++/CLI оно тоже есть ;)
[18:41:58] <valexey> э?
[18:42:07] <valexey> а, там для манагед указателей?
[18:42:14] <vlad2> Угу.
[18:42:19] <valexey> void^ foo; // :-)
[18:42:31] <valexey> а дереференсинг там тоже этой крышей?
[18:42:45] <vlad2> Там крыша и еще какой-то значок.
[18:42:48] <vlad2> Вроде.
[18:42:59] <vlad2> НЕ помню.
[18:43:09] <valexey> ужоз
[18:43:11] <vlad2> Может %
[18:43:18] <valexey> впрочем, ^^ тогда там уже не получится
[18:43:52] <vlad2> Кстати, в анимэшках проги на сях обычно ;)
[18:45:20] <vlad2> Во всяком случае с сишным синтаксисом.
[18:45:41] <valexey> ну, японцы же, чего ты хочешь?
[18:45:51] <valexey> сишный синтаксис больше не иероглифы их похож :-)
[18:46:04] <valexey> то есть сишные проги для них более читабельны нежели паскалевские
[18:49:36] <valexey> ты вот на синтаксис руби посмотри
[18:54:13] <valexey> kemiisto: а как думаешь ты, зачем apple закопала паскаль?!
[18:54:49] <kemiisto> Добрый вечер!
[18:55:03] <kemiisto> valexey: это маркетинг!!!111
[18:55:07] <valexey> превед-превед!
[18:55:30] <valexey> а какой нафиг маркетинг? у яббла была туча разрабов сторонних которые привыкли к паскалю и любили паскаль.
[18:55:48] <kemiisto> ну так
[18:55:49] <valexey> а тут они бац, и все на плюсах переписали, паскаль выкинули и поддерживать перестали
[18:55:50] <kemiisto> как раз
[18:55:59] <kemiisto> MS же как делает
[18:56:07] <valexey> более того, переписали на плюсах так, что оно стало неюзабельным даже из плюсов :-)
[18:56:15] <kemiisto> как только хомячки привыкнут к какой-то технологии
[18:56:25] <valexey> а когда МС так делала в последний раз? не упомню
[18:56:26] <kemiisto> они ее закапывают
[18:56:32] <kemiisto> MFC
[18:56:48] <valexey> и? MFC никуда не делось
[18:56:52] <kemiisto> скоро пора .NET закапывать
[18:56:55] <valexey> оно развиваеццо и используеццо
[18:56:55] <kemiisto> ну да
[18:56:58] <kemiisto> не делось
[18:56:59] <kemiisto> угу
[18:58:43] <valexey> но вообще, в последнее время у МС какая-то содомия с средстами разработки
[18:58:52] <valexey> начинают метаться примерно как яббл в 90х
[18:59:11] <kemiisto> ябл дометался блин
[18:59:18] <kemiisto> хуже не придумаешь
[18:59:19] <kemiisto> :D
[18:59:42] <vlad2> Оберон всех спасет! :)
[18:59:48] <valexey> ну, а чо? сейчас со средствами разработки в яббле много лучше чем было в 90х
[18:59:51] <valexey> стабильней
[19:00:06] <valexey> vlad2: оберон, по моему, остался где-то на уровне макоси-классики :-)
[19:00:32] <valexey> вот если взять макось классику и присобачить туда сборщик мусора - то будет идеальная ось для оберонщика
[19:02:30] <vlad2> Хе-хе.
[19:03:48] <vlad2> Ну, на самом деле, можно придумать что-то более реальное. Взять обычный браузер и прихерачить туда оберон...
[19:04:13] <valexey> не, ну реально когда читаешь описание устройства макоси-классики, прям так и хочется в те времена - ось устроена ну очень просто. не то что сейчас… эх…
[19:04:22] <kemiisto> реальное оберонщиков не интересует!
[19:04:30] <kemiisto> пора бы уже понять...
[19:05:08] <valexey> vlad2: а зачем?
[19:05:11] <vlad2> Потом написать "наш форум наиболее прятно смотрится в нашем браузере",
[19:05:13] <valexey> и на каком уровне?
[19:05:49] <vlad2> Ну и, соответсвенно, заходишь на форум с такого ьраузера - а там тебе "интерфейс как текст" в полный рость :)
[19:06:14] <vlad2> Ну и т.д.
[19:06:22] <valexey> гыгы
[19:06:26] <vlad2> Супер-мега-сайты клепать на этом.
[19:06:40] <valexey> то есть вместо нормального форматирования тебе просто исходный код html вываливается? :-)
[19:06:41] <vlad2> (круче всяких флэшей)
[19:07:27] <valexey> ниверю :-)
[19:07:43] <vlad2> А главное можно будет рекламировать: устали от ошибок типизации? но хотите писать под веб? Приходите к нам!!!
[19:08:51] <vlad2> НУ и там вводный курс про циклы и почему дебаггер это плохо.
[19:09:19] <valexey> Ж-)
[19:10:13] <vlad2> И народ потянется :) Особенно, если инфо21 хорошенько модерировать.
[19:10:36] <kemiisto> и будей мейнстрим
[19:10:37] <kemiisto> нет
[19:10:38] <Жаба> kemiisto, ну нет так нет
[19:10:39] <kemiisto> !!!
[19:10:45] <kemiisto> no way!!!111
[19:10:58] <vlad2> Сишники останутся писать свои линуксы. А вот пэхэпэшники и прочие жабаскриптисты - могу уверовать.
[19:13:49] <vlad2> А главное - современно, студенты потянутся! Главное контролок гламурных побольше.
[19:14:00] <valexey> ну да, они (похапешники) готовы верить маркетинговому булшиту и вообще они к извращениям привычные
[19:45:33] <valexey> блин. xcode  сложился
[19:46:04] <valexey> точнее сказал, что произошла унутренняя ошибка и на выбор можем либо крашнуться прямо сейчас, либо продолжить работу, то тогда икскод за себя не отвечает
[20:12:43] <vlad2> Бывает :)
[20:12:59] <vlad2> Когда циклы не по дейкстре пишешь :)
[20:44:03] <valexey> блин. нинавижу
[20:44:35] <valexey> как, как в этом ObjC поганом, конструктор перекрыть?! То есть чтобы мои переменные гарантированно были проинициализированны.
[20:45:42] <valexey> приходится смотреть все init-функции у родятела и перекрывать их ВСЕ
[20:51:07] <valexey> Ня. Сцуки. Проинспектировать path можно, а модифицировать нет!
[20:51:14] <valexey> УБИТЬ КАЗЛОВ!!1
[20:51:59] <vlad2> Это все фигня... Вот в жабаскрипте... Когда дело доходит до "конструкторов"...
[20:54:03] <valexey> ну, там же нет конструкторов как таковых. там же прототипирование
[20:54:13] <valexey> то есть создаешь клона барашка и насилуешь его
[20:54:36] <valexey> блин. в этом кварце шо, реально CGMutablePath нельзя модифицировать?
[20:54:54] <valexey> только отращивать его?
[20:55:01] <valexey> ужасы какие таки…
[20:57:30] <vlad2> Когда в языке чего-то нет, а оно надо (постоянно) - начинаются извращения и головная боль при сопровождении.
[20:57:59] <valexey> ня. пытаюсь подвигать 160 линий на экране - тормоза неимоверные
[20:58:08] <valexey> что-то я делаю не так…
[23:23:16] <vlad2> Не, не не пепец ли???
[23:23:23] <vlad2> 11.9.6 The Strict Equality Comparison Algorithm
The comparison x === y, where x and y are values, produces true or false. Such a comparison is performed
as follows:
1. If Type(x) is different from Type(y), return false.
2. If Type(x) is Undefined, return true.
3. If Type(x) is Null, return true.
4. If Type(x) is Number, then
a. If x is NaN, return false.
b. If y is NaN, return false.
c. If x is the same Number value as y, return true.
d. If x is +0 and y is -0, return true.
e. If x is -0 and y is +0, return true.
f. Return false.
5. If Type(x) is String, then return true if x and y are exactly the same sequence of characters (same length and
same characters in corresponding positions); otherwise, return false.
6. If Type(x) is Boolean, return true if x and y are both true or both false; otherwise, return false.
7. Return true if x and y refer to the same object. Otherwise, return  false.
NOTE This algorithm differs from the SameValue Algorithm (9.12) in its treatment of signed zeroes and NaNs