Перейти до основного вмісту

Публікації

Wirbel - проект закрито

Мій останній пост про мову Wirbel трошки привернув увагу зацікавлених пітоністів, але тут я вимушений всіх розчарувати (заголовок цього коротенького поста натякає на це).  З моменту останньої публікації пройшло вже більше двох тижнів, а всі мої спроби достукатись до автора з приводу Wirbel так і не увінчались успіхом. Останні активні зміни в сорцах датовані 2008 роком, так що, судячи з усього, автор, як то кажуть, "забив" на своє дітище, і зайнявся чимось більш корисним з його точки зору. Все, що може бути цікавим про мову можна глянути в попередньому коротенькому огляді. Спробував написати на Wirbel програмку, яка вирішує квадратне рівняння і в мене вийшло, але тільки тоді, коли я самостійно реалізував алгоритм отримання квадратного кореня числа =) Варто зазначити, що код компілятора, який, як вже згадувалось, написаний на C++, читати досить легко. Автор пише ідеально структурирований і чистий код (навіть враховуючи глибоку відсутність у мене практичних навиків написання ...

Wirbel - компільований Python. Трошки про мову і встановлення.

Трошки про мову Ну, не зовсім Python, точніше зовсім не Python, але синтаксично ідентичний, за виключенням деяких обмежень, які накладає собою компильованість в бінарник, а також деяких нових можливостей. Автором мови і компілятора є німецький розробник по імені Матіас Кеттнер.  Ось короткий список характеристик, а заодно і відмінностей від Python 2.х: print - функція. Тому print("Hello, world!") Бінарный код, що не потребує рантайма і сумісний з C++ Списки типізовані, так що [1, 2, 3, "string"] створити не вийде Є сігнатури функцій, а тому def x(a), і def x(a, b) - дві різні функції Кортежі змінні і можуть включати різні типи даних, навідміну від списків: (1, true, "Hi") Рядок і символ - різні типи даних. Символ - один байт true, false - зарезервовані слова (в нижьому регістрі) import відсутній, автор запевняє, що компілятор все сам знайде. Wirbel дозволяє писати бібліотеки і підключати їх з C/C++ Ну і, звісно, швидкість, як же без цього Ну, ц...

"Clippy reborn" на Хакатоні від developers.org.ua

Clippy reborn on Hackaton Багатьом відомо, що на минулих вихідних в Києві, в офісі компанії Ciklum відбувся абсолютно прекрасний захід під назвою DOU Hackathon, ініціатором і організатором яклшл є Макс Іщенко, він же головний на developers.org.ua . Суть заходу була в абсолютному і чистому 24-годинному кодінгу на вільну тему на будь-якій доступній технології і мові. Тривало все цілу ніч і принесло багато задоволення і приємної втоми. Команда, членом якої я був, виступила в наступному складі: Дзінько Ростислав (я) - Python - розробник Котлярський Олександр (alex.k) - Ruby / Mac / Mobile - розробник Дмитро Домашевський - Python - розробник Але, як не дивно, нічого з того, в чому ми маємо багато досвіду ми не використовували, навпаки - ціллю було створити щось прикольне з допомогою чогось, в чому ми ні бум-бум, при цьому отримавши не тільки задоволення, але і нові знання і досвід. Таким чином народилась ідея нашого проекту Clippy, який, по суті, є просто прикольним розширенням для Goo...

Тепер Google App Engine SDK доступний на мові Google Go

В даному пості не виявлю особливої творчості, просто публікую тут переклад посту з блогу Go Project. Цей пост вважаю дуже важливим, оскільки це перше серйозне застосування цієї мови; і хоча мова позиціонується як засіб системного прогрумвання, в даному випадку отримуємо мову для веб розробки на хмарній платформі Google App Engine. Оригінал :  Пост на блозі Go Project Google App Engine надає надійні, масштабовані і прості засоби для створення веб додатків. Більше сотні тисяч додатків хостяться на appspot.com і користувацьких доменах, і при цьому використовують інфраструктуру App Engine. Спочатку система була зроблена для створення додатків на Python, а в 2009-му році додалась ще й підтримка мови Java. Сьогодні, на Google I/O, ми з захопленням оголошуємо вам, що наступним буде Go. Зараз ця можливість позначена як експериментальна в App Engine, оскільки технологія є новою; але при цьому команды App Engine і Go раді цьому досягненню. Під словами "технологія нова" ми маємо ...

Інструменти для розробки на Python для MS Visual Studio 2010

Напевно, багато хто вже чув про те, що в розробці перебуває такий прекрасний продукт. І ось сьогодні вийшла друга бета версія. Нагадаю дл тих, хто не в курсі, що цей плагін для Visual Studio підтримує не тільки  IronPython, але й CPython починаючи з версії 2.5. Більше того, частково підтримуються також PyPy і Jython, і виходить під ліцензією Apache 2.0 (студію, все-таки, доведеться придбати :) ). Для Python-розробників, які працюють з ОС Microsoft Windows це буде хорошим подарунком. Єдиний мінус в тому, що тестувались інструменти тільки  на Windows 7 і Windows Server 2008, так що користувачам XP і Vista, мабуть, доведеться познайомитись з підводними каменями у вигляді багів. Ось як це виглядає: Кроме всего вышесказанного набор инструментов поддерживает следующие вещи: Редактор, Intellisense, REPL, … Підтримка CPython і IronPython Локальне і віддалене відлагодження Профілювання Інтерактивні паралельні обчислення, що супроводжуються інтегрованим IPython REPL Пі...

Python: PEP-8 чи не PEP-8

Пост - не технічний, кому не цікаво - можете далі не читати... PEP-8, хоча й фактично є пропозицією по розширенню Python під номером 8, серед Python програмістів уже став терміном, що позначає правила стилю оформлення коду. Ні, я не збираюсь зараз описувати його тут - про нього можна почитати в першоджерелі . Питання в тому, слідувати цьому стандарту, чи не слідувати? Ітак, стандарт це в більшості випадків добре, оскільки вносить порядок. Наприклад, стандарт USB 2.0 - просто прекрасний стандарт, уявіть собі, якби флешки були не USB, а кожна мала б свій вихід :)... Жахливо, так, були б у нас USB-порти як card-reader'и - 62 в 1.. Реально 62 в 1 Інша справа з PEP-8. Тут все по іншому, адже програма не змінює свою поведінку, якщо ми будемр робити відступ не в 4 пробіла, а 2 (добре, що більшість, все-таки, робить 4), або будемо ставити пробіл перед другою дужкою, чи не будемо і т.д..  Отже, кожен програміст може редагувати свій код як йому хочеться. Мені, наприклад, подобається...

Python: Обчислювані аргументи функцій

Вступ Для більш-менш притомного Python програміста наступна форма визначення функції не є секретом, і взагалі досить часто використовується: >>> def f(a, b=4) ...     return a+b Абсолютно друнувата функція, що не несе практичного сенсу, але тим не менш є дуже зручною в даному випадку. В нашій функції b - необов'язковий аргумент, в чому ми можемо переконатись, зробивши декілька викликів: >>> f(1,3) 4 >>> f(0) 4 >>> f(2) 6 Отже, тут все очевидно. Що ж станеться з функцією, якщо ми передамо аргументу значення по замовчуванню як обчислюваний вираз? Документація по Python нас строго попереджує : значення по замовчуванню обчислюється тільки один раз, окрім значень, що змінюються (наприклад, списків, за посиланням є навіть приклад такої ситуації). Давайте спробуємо: >>> from random import random >>> def f2(d=random()) ...         return d >>> f2() 0.62437741519371093 >...