Как стать автором
Обновить

Комментарии 52

НЛО прилетело и опубликовало эту надпись здесь
Если я не ошибаюсь, в «привычном бейсике» был Do … Loop

…это не говоря о том, что после условия в If должно быть слово Then, а End If пишется отдельно.
Здесь пишется как If...Else (ElseIf)...EndIf. Написание вполне логичное. Then тогда вообще не имеет смысла, т.к. при выполнении условия подразумевается выполнение кода.
Здесь есть. Главное — удобно.
Мне кажется или на Питоне тот же HelloWorld был бы куда проще?
Продемонстрируйте, сравним.
если по-простому:

from Tkinter import *

root = Tk()

w = Label(root, text="Hello, world!")
w.pack()

root.mainloop()
Это — по-простому? Нужно онкно с сообщением. На PureBasic'e, если максимально просто, консолью, будет так:

OpenConsole()
Print («Hello, World»)

Да и вообще, PureBasic — компилируемый язык программирования. Нет смысла сравнивать с Python'ом.
Консольное окно с сообщением? Пример на Ruby:

p "Hello, World"

Насчёт сравнения компилируемых и интерпретируемых языков… Если по-простому, вы не правы.
Обоснуйте.
Дело в том, что многие современные языки программирования могут выступать как компилируемые, так и интерпретируемые.
Это мне известно. Только речь идет не про эти языки, а про Python и PureBasic в данном случае.
Это и есть окно с сообщениями.

Какая разница, компилируемый или нет, когда тут GUI сравнивается? Вот пример на компилируемом:

module Main where
import Graphics.UI.WX
main = start $ do
    f <- frame [text := "Hello, Habr!"]
    textEntry f [text := "Hello, Habr!"]
Вот уже ближе. Это по-вашему, просто? Хотя бы визуально. А сколько места будет занимать exe-шник?
Конечно, это проще ручного цикла обработки. Там ещё и layout'ы есть удобные, так что не требуется задавать размеры, а с фиксированными размерами будет напряг при изменении размеров окна.
А по-вашему 2 строки на описание окна это сложно? Если да, то чем это сложнее?
exe-шник не замерял, какой-то странный вопрос с учётом нынешних скоростей и ёмкостей. Уж явно не больше 10 мегов будет (при независимом exe, включающем всё, разумеется).
Даже с учетом «нынешних скоростей и ёмкостей», 10 мегов на Hello World — это какая-то жесть.
Отдельные индивидуумы целые игры пишут, уложившись в 65 байт…
Вы ведь не думаете, что если программа увеличится с 5 до 100 строк, то она станет весить не 10 мегов, а 200?
Так что про «Hello World»'ность программы — какой-то странный аргумент.
Извините, но даже 5 метров для «Hello World» — это слишком. Вот после таких мыслей и появляются всяческие мегатонные MS Office, Nero и т.д. Оптимизация кода — это весомый аргумент.

Оптимизированный код и небольшие программы на выходе — вот, что мне нравится в этом языке.
MS Office тем не менее продаётся хорошо, и создавался профессионалами, что наводит на мысли.
Говорить о 5-мегабайтности Hello World'а не имеет смысла, потому что их никто не пишет, а программа не станет в 10 раз больше, потому что в этих 5 мегабайтах и заключён весь GUI, ваш код на размер уже так влиять не будет.

Разумеется, если Вы именно Hello World и пишете, то можно взять Си без рантайма и на одном АПИ наваять, будет минимальная программа, но смысл? Не стоит затрат.

Вообще, придирка к вашему коду должна была заключаться не в том, что «на Python проще», а в том, что у вас
Event = WaitWindowEvent
что очень низкоуровнево, писать так большие программы не получится.
Возможно, GUI-библиотеки там тоже есть, но вы язык и его библиотеки практически не описали.
Layout'ы есть везде, в том числе и здесь. Правда, не нативные, а созданные умельцами.

Суть не в этих двух строках. Программы с бОльшим количеством функционала будут иметь еще больший отрыв в количестве строк.
Именно, бо́льшие программы на PureBasic оторвутся в бо́льшую сторону значительно, а если GUI-библиотек нет и приходится события обрабатывать самому, то этот отрыв будет ещё и нелинейным.
Поэтому и был недоумённый (исходный) вопрос про простоту того же самого на Python. Хочется услышать от вас, есть всё-таки аналогичный мощный и простой способ писать так на PureBasic?
Раз уж пошла такая пьянка…

#include <QtGui/QApplication>
#include <QtGui/QLabel>

int main(int argc, char *argv[]) {
    QApplication app(argc, argv);
    QLabel lbl("Hello, Habr!");
    lbl.show();
    return app.exec();
}


И всего две калории за 0.00$ ;) Зачем платить больше?

P.S. Хотя по объему кода с Haskell, конечно, все равно не сравнить…
Ну, если вы ярый сторонник бесплатного ПО, мне Вас не переубедить.

Хотя тот код еще можно оптимизировать…
Да, еще конечно не сравнить по размеру получаемой программы.
Я не против заплатить, если оно того стоит… Но в этом случае, мне так не кажется.
это — аналог вашего примера. окно, в которое помещается лейбл с текстом.
на счет «нет смысла сравнивать» — просили пример на Пайтоне, я его привел.
НЛО прилетело и опубликовало эту надпись здесь
может для перехода с бейсика на делфи или си?
Для повышения самооценки тех, кто использует другие языки.
Не нужно язвить. PureBasic предназначен для создания автономных консольных и GUI программ.
Как и любой другой компилируемый язык.
Тогда что непонятного?
Чем он лучше других?
Разве об этом где-то было сказано? Попробуйте — и узнаете, лучше или нет. Мне нравится и я хочу о нем рассказать. Уверен, кому-то тоже понравится.
не лучше ли тогда изучать что-то посерьезнее?
А почему Вы считаете этот язык несерьезным? С его помощью можно создавать программы любой сложности, в Интернете по этому языку уже тонна информации, исходников, примеров, библиотек…
хм, странно, почему это на плюсах или шарпе пишут больше софта, чем на ПьюэБэйсике?..

совершенно неизвестно какими нагрузочными характеристиками обладают это библиотеки, да и язык в целом, поэтому и считаю его несерьезным.
Потому что плюсы больше распространены.

Я уверен в нагрузочных характеристиках этого языка, т.к. пользуюсь им давно. Поэтому считаю его ничем не хуже остальных.
Спасибо за уточнение.
пишем в одну строку!
Не только. Если не ошибаюсь, в демоверсии еще нельзя вызывать API-функции.
Perl-программисты смеются над такими ограничениями :)
Сдается, что во времена, когда написание компилятора — это тема лабораторной работы в некоторых институтах, желание брать деньги за 800 строк…
Кому надо — тот найдет, где достать эту программу. А я уже попробовал и собираюсь купить лицензию (кстати, пожизненную).
Мне одному кажется, что это рекламный пост?
DISREGARD THAT, я уже сам не могу понять, что имел ввиду.
С помощью этого языка вы напишете любую программу любой сложности, только с гораздо меньшими усилиями, нежели используя языки вроде Си или Дельфи.


Tell me moar.

Особенно, когда надо будет что-то поменять в программе.
Нда, Вы правы, тут немного неверно высказался. Я имел ввиду более простой синтаксис. А приложенные усилия зависят от мозгов.

А почему вы считаете, что используя этот язык, будет сложно что-либо поменять в программе?
Чем он лучше бесплатного AutoIt?
Который тоже под винду(этот бейсик ведь не кроссплатформенный?).
Сходил по ссылке, оказывается кросс платформенный. А для мака такие же маленькие бинарники продуцирует?
Нет Мака, соответственно, нет возможности проверить.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории