Компания Microsoft объявила (https://cloudblogs.microsoft.com/quantum/2019/07/11/microsof... об открытии исходных текстов пакета Quantum Development Kit (https://www.microsoft.com/en-us/quantum/development-kit) (QDK), ориентированного на разработку приложений для квантовых компьютеров. В дополнение к ранее опубликованным примерам (https://github.com/Microsoft/Quantum) квантовых приложений и библиотекам (https://github.com/microsoft/QuantumLibraries), теперь опубликованы исходные тексты компилятора (https://github.com/microsoft/qsharp-compiler/) для языка Q#, runtime-компонентов (https://github.com/microsoft/qsharp-runtime), квантового симулятора (https://github.com/microsoft/qsharp-runtime/blob/master/src/... обработчика LanguageServer (https://github.com/microsoft/qsharp-compiler/blob/master/src... для интеграции с интегрированными средами разработки, а также дополнений к редактору Visual Studio Code (https://github.com/microsoft/qsharp-compiler/blob/master/src... и пакету Visual Studio (https://github.com/microsoft/qsharp-compiler/blob/master/src.... Код опубликован (https://github.com/microsoft/qsharp-compiler/) под лицензией MIT, проект доступен на GitHub для приёма изменений и исправлений от сообщества.Для разработки квантовых алгоритмов предлагается использовать предметно-ориентированный язык Q# (https://ru.wikipedia.org/wiki/Q_Sharp), предоставляющий средства для манипуляции кубитами. Язык Q# во многом напоминает языки C# и F#, отличаясь применением ключевого слова
"function" для определения функций, новым ключевым словом "operation" для квантовых операций, отсутствием многострочных комментариев и применением assert вместо обработчиков исключений.
Для разработки на Q# могут использоваться платформы Windows, Linux и macOS, которые поддерживаются в Quantum Development Kit. Разрабатываемые квантовые алгоритмы могут тестироваться в симуляторе, способном обрабатывать до 32 кубитов на обычном ПК и до 40 кубитов в облаке Azure. Для IDE предоставляются модули для подсветки синтаксиса и отладчик, позволяющий устанавливать точки останова в коде на Q#, выполнять пошаговую отладку, оценивать необходимые для выполнения квантового алгоритма ресурсы и ориентировочную стоимость решения.
URL: https://cloudblogs.microsoft.com/quantum/2019/07/11/microsof.../
Новость: https://www.opennet.me/opennews/art.shtml?num=51096
Друк опенсорца?
Друг EEE.
Сейчас прибегут хомячки и начнут рассказывать какой же майкрософт хороший.
Сейчас прибегут альтернативные хомячки и начнут рассказывать, какой же Майкрософт плохой. И какая плохая, негодная лицензия MIT. А потом выстроятся в очередь к приехавшему в Россию (https://habr.com/ru/company/jugru/blog/455936/) Столлману и будут ему плакаться в жилетку.
perfectly balanced as all things should be
> perfectly balanced as all things should beНу, смотря что считать идеальным балансом - полное равновесие или всё-таки перевес в _нужную_ сторону, что даёт движение и развитие. Пока одни негодуют о "свободе" и конспирологически упражняются, вторые просто пишут и выкладывают полезный и актуальный код. Если вторых больше - всё нормально.
Опенсорса бы не существовало и майки не выкладывали бы код, если бы не было негодующих о свободе
> Опенсорса бы не существовало и майки не выкладывали бы код, если бы
> не было негодующих о свободеЛюбой идеолог должен уметь вовремя остановиться и не превращать _полезные_ и _практичные_ идеи во фрик-шоу.
Это ты про M$ и огрызок с их "полезными и практичными" идеями, так они и им подобные не собираются останавливаться и будут искать другие способы замыкания всего на себя, а Столлман и его адепты противостоят этим "идеям" всеобщего блага.
> а Столлман и его адепты противостоят этим "идеям" всеобщего благаДа, что-то такое было у баснописца Крылова. Кажется, про чихуахуа и мамонта...
>>если бы
>> не было негодующих о свободе
>идеолог должен
>не превращать _полезные_ и _практичные_
> идеиТы путаешь идеологию и полезных идиотов.
Слова-то похожие, да?
Да у вас винегрет в голове
> Да у вас винегрет в головеЯ даже боюсь вообразить, что там у вас - вдруг развидеть не получится.
(сходил по ссылке) Прикольные у него запросы :-)Я знаю пару, ммм... хостелов, где никто паспорт не спросит. Насчет вайфая не уверен, но - койкоместа дешевые, интернациональный среднеазиатский коллектив, да и подножным кормом никого не удивишь.
Столмана в шеш-беш научат игать :)
Столманн опять будет ногти грызть?
> Столманн опять будет ногти грызть?Скорее всего, судя по приведенной на Хабре анкете для желающих принять у себя в доме его свободолюбейшество, грызть он будет провода от микрофонов.
>> Столманн опять будет
> Скорее всего, судя по
>он будетНо не беспокойтесь! Ваша с приятелями
кирпичная кладка на опенетиках
нам гораздо ближе и милее. </целуем, любим>
Интересно, кстати, Столлман кроме своего емакса какой-нибудь современный код запилил за последние лет тридцать?
Не думаю, что у него на это есть время. Неустанная пропаганда свободы отнимает все силы же ж.
Только не МС, они уже столько технологий похоронили.
Лучше подождать чтонить на базе того же LLVM.
> Только не МС, они уже столько технологий похоронили.
> Лучше подождать чтонить на базе того же LLVM."(...) под лицензией MIT, проект доступен на GitHub для приёма изменений и исправлений от сообщества" - где тут похороны?
Ви таки знаете, надо немного подождать и случится.Ваще этот факап с интеграцией Linux в M$ уже зашел слишком далеко, кроме энтропии ничего не вносят, пользы от их решений в этой области с гулькин ( пись ) , а шуму как будто новый докер придумали ( знатоки поймут ). Короч нет хуже маркетинга чем маркетинга.
> Ваще этот факап с интеграцией LinuxОни тебе твой уютный Линукс испортили? Вносят деструктивные коммиты? Тогда к чему этот хипеж и стоны с плачами?
этот регистрант явно ms student
> этот регистрант явно ms student...и получает по __(указать предполагаемую сумму) долларов за каждый комментарий, в котором явно выражается позитивное отношение к компании Microsoft и по __(указать предполагаемую сумму) за каждый, в котором явно выражается негативное отношение к FSF. Как же-с, нарочитую статью на вики опеннетовской все читали.
Microsoft! Жадные п-сы - ГДЕ МОИ БАБКИ?!(чорт, непозитивно как-то вышло в этот раз)
Код мозиллы тоже доступен, а вот с форками как то не очень получается.
МС гробила свои поделки довольно часто, глупо в это вляпыватся ещё раз.
>и
> исправлений от сообщества" - где тут похороны?Ты знал! Оно мертво и не закопано...
http://www.opennet.me/openforum/vsluhforumID3/115850.html#117
http://www.opennet.me/openforum/vsluhforumID3/114582.html#79
http://www.opennet.me/openforum/vsluhforumID3/112776.html#48
http://www.opennet.me/openforum/vsluhforumID3/107969.html#18
http://www.opennet.me/openforum/vsluhforumID3/106177.html#11
http://www.opennet.me/openforum/vsluhforumID3/104784.html#63
http://www.opennet.me/openforum/vsluhforumID3/105876.html#129
>Только не МС, они уже столько технологий похоронили.
>Лучше подождать чтонить на базе того же LLVM.Во-во, лучше им предложить возглавить LLVM.
Отличная идея!
> Отличная идея!Ду**к шо ле?? Там и так один и тот же ZOG рулит.
gccего в любом случае не жалко - а так, может, что хорошее выйдет, а не очередной троянец libiberty.so
> отличаясь применением ключевого слова "function" для определения функций, новым ключевым словом "operation" для квантовых операций, отсутствием многострочных комментариев и применением assert вместо обработчиков исключенийЯ так понимаю, что многострочные комменарии могут привести к неопределённости Гейзенберга и коллапсу вселенной?
Кот Шрёдингера забадается ходить вокруг дуба зелёного, читая многострочные комментарии.
Интересная штука. Любопытно было бы поиграться и вывихнуть себе мозги до выхода за узкие рамки машины Тьюринга. Закопать эту долбаную машину как устаревший хлам из прошлого тысячелетия.Но тут, как я понимаю дотнет нужен. А дотнет не нужен. :(
Так а кто заставляет дотнетом обмазываться? Есть, например, православный qtl:
> Так а кто заставляет дотнетом обмазываться? Есть, например, православный qtl:
> http://tph.tuwien.ac.at/~oemer/qcl.htmlЯ знаю границы своих возможностей. Грызть гранит квантовых вычислений в одиночку совершенно бесперспективно для меня. Даже более того, я знаю пределы своей мотивации -- я не буду грызть гранит квантовых вычислений: этим надо заниматься систематически, часов по несколько в неделю как минимум год за годом. Но вот следить за тем, как грызут другие и учится повторять то, что делают они -- это может сработать. qcl, судя по страничке которую ты показываешь, имеет последний релиз 2014 года, и есть основания полагать, что с тех пор его никто не трогал. Значит он бесполезен в моём случае совершенно.
> что с тех пор его никто не трогал. Значит он бесполезен в моём случае совершенно.Где связь между этими тезисами?
Весь предыдущий комментарий посвящён ответу на твой вопрос. Если ты этого ответа не видишь там, то я думаю, мои способности объяснять ниже твоих способностей понимать и дальнейший разговор бессмысленен. Впрочем, если у тебя есть основания полагать, что это не так, я могу попробовать перефразировать.
ты сам то какого года выпуска?
А почему вы интересуетесь?
А какой еще смысл, кроме как грызть гранит? Без основательной теоретической подготовки в этом всем смысла будет не больше, чем в какой-нибудь игрушке типа Human Resource Machine.А если таки грызть - qcl сделан в рамках защиты диссертации PhD, текст которой он регулярно обновляет и сделал из нее отличный учебник.
Вон тот же Scheme не обновлялся уже лет 10, и, тем не менее, остается прекрасным инструментом для обучения.
> А какой еще смысл, кроме как грызть гранит? Без основательной теоретической подготовки
> в этом всем смысла будет не больше, чем в какой-нибудь игрушке
> типа Human Resource Machine.Пфеу. Во-первых, это заявление о том, что без основательной теоретической подготовки не будет смысла, я рассматриваю как необоснованное. Это ты так считаешь почему-то, не зная при этом почему. Спорим ты не проводил эксперимента с обучением сотни человек КВ, причём так чтобы 50 с теоретической подготовкой, а другие 50 без неё, с тем чтобы сравнить результаты такого обучения? В лучшем случае в подтверждение этого своего утверждения ты сможешь привести какие-нибудь мутные абстрактные соображения, а скорее всего ты вообще ничего не сможешь сказать.
Во-вторых, я сорок лет наблюдал за собой, и я понял одну огромную мудрость: если мне хочется что-нибудь знать, то искать смыслы и рационализации для своего любопытства -- это очень вредно. Можно заставлять себя изучать то, что не интересно, это иногда бывает полезно, но запрещать себе изучать то, что интересно из-за того, что я не могу вербализовать причины для изучения и доказать осмысленность этого -- это глупость. То есть даже если твоё утверждение и обосновано, мне плевать на него, пускай смыслами озадачиваются подростки -- это их призвание, я же в этом вопросе доверяюсь интуиции, она меня никогда не подводила.
> А если таки грызть - qcl сделан в рамках защиты диссертации PhD,
> текст которой он регулярно обновляет и сделал из нее отличный учебник.Я изучал классическое программирование разглядывая примеры решения вполне реальных задач. И я считаю что это единственный способ заслуживающий внимания. Всё остальное -- это не программирование, а теоретические сопли. Этими соплями тоже нужно обмазываться иногда, но гораздо важнее наблюдать за тем, что и как делают другие. И этих других нужны как минимум десятки, лучше тысячи. Один человек -- не выглядит многообещающе.
> Вон тот же Scheme не обновлялся уже лет 10, и, тем не
> менее, остается прекрасным инструментом для обучения.Может быть. Но в MIT прекратили читать SICP уже лет двадцать как, если не больше. И я не посоветую никому изучать классическое программирование на примере scheme: лучше взять что-нибудь практичное и мейнстримовое: C, python или js, но никак не scheme. Схему можно потом изучить, когда за плечами будет года два практики, и то не ради схемы и не ради SICP, а ради того, чтобы понять что такое lisp.
Тот, кто поступил в MIT, и так уже умеет хотя бы немного программировать на каком-нибудь python или js. Зря прекратили, я считаю.
> Тот, кто поступил в MIT, и так уже умеет хотя бы немного
> программировать на каком-нибудь python или js. Зря прекратили, я считаю.А я не заканчивал MIT, и полагаю что в этом вопросе моё мнение совершенно не котируется. Ну вот вообще никак.
Квантовый компьютер является машиной Тьюринга.
> Квантовый компьютер является машиной Тьюринга.Нет. Я оставлял выше ссылку, там подробно описано почему твоё заявление неверно.
Машину Тьюринга можно симулировать на универсальном квантовом компьютере, квантовый компьютер (в т.ч. универсальный) можно симулировать на малшине Тьюринга.
> Машину Тьюринга можно симулировать на универсальном квантовом компьютере, квантовый компьютер
> (в т.ч. универсальный) можно симулировать на малшине Тьюринга.Смотря что называть симуляцией. Ты можешь симулировать результат, но не процесс. Если взять пространство возможных результатов алгоритма, перебрать его элемент за элементом, и выбрать тот, который подходит, то можно ли это называть симуляцией?
>> Машину Тьюринга можно симулировать на универсальном квантовом компьютере, квантовый компьютер
>> (в т.ч. универсальный) можно симулировать на малшине Тьюринга.
> Смотря что называть симуляцией. Ты можешь симулировать результат, но не процесс. Если
> взять пространство возможных результатов алгоритма, перебрать его элемент за элементом,
> и выбрать тот, который подходит, то можно ли это называть симуляцией?И процесс можно симулировать
>>> Машину Тьюринга можно симулировать на универсальном квантовом компьютере, квантовый компьютер
>>> (в т.ч. универсальный) можно симулировать на малшине Тьюринга.
>> Смотря что называть симуляцией. Ты можешь симулировать результат, но не процесс. Если
>> взять пространство возможных результатов алгоритма, перебрать его элемент за элементом,
>> и выбрать тот, который подходит, то можно ли это называть симуляцией?
> И процесс можно симулироватьПопробуй.
Квантовый компьютер можно симулировать на машине Тьюринга включая все состояния волновых функций, то есть, весь процесс. Просто это займёт крайне много времени.
> Квантовый компьютер можно симулировать на машине Тьюринга включая все состояния волновых
> функций, то есть, весь процесс. Просто это займёт крайне много времени.Это не совсем "просто". Ассимптотическая сложность будет другой. Если мы возьмём любой процессор и напишем его симулятор работающий под другим процессором, то ассимптотическая сложность выполнения любой симулируемой операции будет O(1). Если же мы попытаемся просимулировать квантовый процессор, то сложность операций вдруг начнёт зависеть от чего-то там -- я не могу сказать, поскольку не настолько шарю. А это значит, что симуляция не просто будет занимать больше времени, это значит что мы не сможем в общем случае сказать насколько дольше -- в 2 раза? в 1000 раз? в 1000000 раз? В конкретных случаях может будет получаться в 2 раза дольше, в 1000 или в 1000000, но в общем случае не будет верхней границы, то есть верхней границей будет бесконечность.
Ну это разумеется. Тем не менее, квантовый компьютер может эмулироваться на машине Тьюринга. Скорость эмуляции - это отдельный вопрос.
> квантовый компьютер может эмулироваться на машине ТьюрингаТеоретически. В том же теоретическом смысле может, в котором вся криптография нестойкая, потому что любую криптографическую функцию можно обратить перебором.
Почему этим не будут пользоваться многие люди:
https://github.com/microsoft/qsharp-compiler/search?q=teleme...
Ну форк/патч, делов-то. Ынтырпрайзный код - он тупо-понятный, с правильно названными типами и так далее. Кромсать - одно удовольствие.
А отменит ли форк их privacy policy, на который мы якобы соглашаемся, пользуясь их ПО? А нет ли там чего-нибудь заложенного тайно? Да, можно тыкать галочки, отключать, вырезать и патчить, но в идеале просто не пользоваться или пользоваться альтернативой без выключенного трояна внутри и всяких сомнительных соглашений, включая соглашение с разрешением на работу этого трояна (we respect your privacy или как там озаглавливают эту категорию в соглашениях), которые еще и могут обновить в любой момент без уведомления.
Справедливости ради, там написано:> By default, sending out telemetry is disabled for all code in this repository, but it can be enabled via compilation flag.
Наверное, бессмысленно браться за сабж, если нет понимания не то чтоб даже квантовой механики, а -- философии современной физики, в первую очередь сути физических/мыслительных моделей (для входа в эту тему можно порекомендовать статьи Винера и Пайерлса). Физическое же образование в отечественных вузах донельзя математизировано.
Не соглашусь. Просто другие правила игры (доступны другие действия), которые нужно просто принять за данность. И всё, можешь программировать)
> Не соглашусь. Просто другие правила игры (доступны другие действия), которые нужно просто
> принять за данность. И всё, можешь программировать)Чтобы быть "индyсом КВ", этого, может быть, и достаточно.
> Наверное, бессмысленно браться за сабж, если нет понимания не то чтоб даже квантовой механики, а -- философии современной физики, в первую очередь сути физических/мыслительных моделейЗдесь[1], например, есть изложение азов квантовых вычислений, которые не требуют никакой сути и философии. Квантовые вычисления свели к кубитам, и всё что надо уметь понимать -- это кубиты и то, как они взаимодействуют друг с другом. КМ и физика не нужны. Точно так же, как тебе совершенно не нужно понимать закон Ома, или (о ужас!) принципы функционирования транзистора, для того, чтобы писать программы на ассемблере или жабаскрипте.
>> Наверное, бессмысленно браться за сабж, если нет понимания не то чтоб даже квантовой механики, а -- философии современной физики, в первую очередь сути физических/мыслительных моделей
> [1] https://quantum.country/qcvcМольер кланяется. Начато именно с квантовой механики. Ну даже смешно предполагать, что в КВ без неё можно было обойтись -- ну хотя бы для постановки задач.
А такое длинное введение у авторов получилось именно потому, что они решили обойтись без тех самых общих закономерностей, -- т.е. без философии -- пост-классической физики.
Но за ссылочку спасибо, поскольку свежая.
Куплю квантовый компьютер дешево. Пока железо не вышло в массы все эти эмуляторы нафиг не сдались, имхо. Пустая трата времени. Почему? Потому что в реальном железе все будет иначе: кубитов больше, скорость работы иная и т.д. и т.п. Там где на эмуляторе алгоритм фуфло, в реалности окажется очень даже рабочим.
Суть тулкита в том, чтобы к моменту появления железа, у вас уже были свои наработки.
И МС будет в плюсе в долгосрочной переспективе, т.к. и тут будет использоваться его софт.
И потенциальный вендор-лок, в дальниейшем.
> отличаясь применением ключевого слова "function" для определения функцийКак же терпеть это не могу. Ну и без него же все понятно что есть функция, в нормальных си-языках
Всё что делает компания Microsoft не нужно никому.