Comments 20
Они предложили более амбициозную идею: если многие учёные предпочитают Python, то ступите на их поле
Это очень, очень трезво и рационально. В научной среде часто если человек начал со STATA то он в ней до пенсии и сидит. Конечно, это не показатель каким профессором надо быть, но гораздо проще упростить жизнь ленивым профессорам и идти им навстречу, чем заставлять переучиться.
Mozilla, браво.
Не знаю что там внутри, но чисто с точки зрения банальной эрудиции, в C тоже нет сборщика мусора, но cpython как-то существует.
Тредов, собственно, в C тоже нет, только сторонними библиотеками. Но это не так важно как то, что треды в тех рамках, в которых они существуют в питоне (в условиях GIL, то есть concurrency без parallelism) тоже особо ничего не требуют от виртуальной машины. То есть иллюзию тредов можно создать тупо переключениями контекста, просто машина не перестанет от этого быть "однопроцессорной", но и в питоне этого особо нет. А вот когда начинается попытка из питона подёргать сишный код, который разводит параллелизм, то да, тут либо нужны нормальные треды в wasm, либо очень сильно извращаться и тормозить.
Попробую ещё раз. Garbage Collection или, скажем, Preemptive Multitasking — это просто такие структуры данных, их можно реализовать на любом языке. Слышать, что какой-то тюринг-полный язык с ними "несовместим", мне крайне странно. Более того, это не такие уж и сложные структуры данных, чтобы париться из-за них, когда ты и так уже реализуешь аж целый интерпретатор питона, который тоже всего лишь структура данных. Параллелизм да — он нечто аппаратное.
Надеюсь, проект взлетит и станет прототипом многих специализированных инструментов.
p.s. как по мне, это очередная попытка перетянуть на себя одеяло.
Идея по вертикали разделить код и результат довольно удбоная. В Jupyter приходится крутить туда-сюда а чтобы кому-то показать то надо скрывать код. Ну и не хватает фишек IDE и json в гит класть не удобно.
А поподробнее? До нормального IDE там ещё далеко.
github.com/jupyterlab/jupyterlab-git — сам не пользовался, но подозреваю что это то, что нужно для интеграции с git-ом.
Variable Inspector — позволяет видеть значения переменных
для отладки — pip install ipdb
(https://stackoverflow.com/questions/32409629/what-is-the-right-way-to-debug-in-ipython-notebook). Сам тоже не использовал.
Да я про этот минус и имел ввиду: в Jupyter автодополнение только для объектов, которые уже в памяти. Если определяешь функцию в которой пишешь a = ...
то автодополнений для методов a
не будет. После PyCharm, который очень часто все типы выводит и предлагает автодоплнение ощущения не те. Поэтому в основном весь код пишу в PyCharm а из Jupyter только вызываю функции. В этом плане немного растраивает matplotlib
потому что там всё через **kwargs
и подсказок нету, каждый раз смотреть доку надо.
Недавно релизнулся PyCharm Pro 2019.
В нём как раз реализовали всё так как я себе представлял https://www.youtube.com/watch?v=TIZH4aPSN2E
Iodide: интерактивный научный редактор от Mozilla