LINUX.ORG.RU

Вышел Gambas 2.4

 , ,


0

0

Вышел stable-release 2.4 Gambas (в переводе с испанского - "креветка") - OpenSource среды визуального программирования на одноимённом языке, созданной французским программистом Бенуа Миниши (Benoît Minisini). В новой версии исправлены ошибки в компонентах GB.FORM, GB.GTK, GB.QT и GB.WEB, изменилось поведение функции MID$, а также добавлен перевод интерфейса на испанский язык. Практически сразу после выхода версии 2.4 (в тот же день) вышел fix 2.4.1, который позволяет собрать данный релиз под OpenSUSE 10.3.

Для справки: Gambas представляет собой развитие Visual BASIC. Gambas, так же, как и классический VB, позволяет быстро и эффективно создавать графические приложения, но уже под Linux и графические библиотеки QT/GTK+. При этом, в отличие от VB, Gambas является полностью объектно-ориентированным и в части ООП включает большое количество концептуальных заимствований из Java. Благодаря встроенному дизайнеру форм, развитому редактору кода с подсветкой синтаксиса, контекстной справкой и автодополнением, а также мощным средствам отладки, на сегодняшний день Gambas является, пожалуй, единственной средой программирования на BASIC, не уступающей, а в чём-то и превосходящей аналогичные средства визуальной разработки под ОС Windows. После окончательной смерти коммерческого KBasic и крайне нестабильного HBasic, среди прямых конкурентов Gambas можно назвать лишь среду Mono, позволяющую программировать на VB.Net в удобном интегрированном окружении.

>>> Сайт программы

★★★★★

Проверено: Shaman007 ()
Ответ на: комментарий от mirage

>> умеет, это компилятор в нативный код.

Там IDE есть?

>> вот только что скомпилял 'print "hello, world!"' — 16 кил.

MessageRequester("message", "hello, world!") - 3 072 байт

deis
()
Ответ на: комментарий от vyv

>В штатах очень популярен VB. Зайди на rentacoder и удивись как много заявок с требуемым языком - VB. В том-же автокаде, который так любят упоминать ЛИСПеры как пример коммерческого его использования,сделали поддержку VB, а в последних версиях добивают полную поддержку NET.

Если не ошибаюсь, сабж совсем не vb, и не имеет такой интеграции даже с охфисом. В никсах вживление его везде и вся не прокатит. А вот для обучения и написания местечковых поделок штука наверное хорошая. Помнится, лет 10 на зад, будуче в инсте, дописывал какую-то шнягу, связанную с расчетом состава бетона. Чтобы разобраться в бредыдущем что и как ушло несколько минут. Уж не помню подробностей, но добавлениея дополнительных методов расчета, прикручивание к аксесу(велся какой-то учет образцов для испытания), распечатка каких-то ярлычков, вывод данных в йоксель и тп было крайне тривиально, учитывая что vb ни до, ни после я не видел. А бояться "низкого порога вхождения" и тп - значит бояться вендекапца.

madcore ★★★★★
()
Ответ на: комментарий от deis

>Там IDE есть?

А сам как думаешь?

>MessageRequester("message", "hello, world!") - 3 072 байт

printf("Hello World") - 9 кб, после стрип 5. Ну и?

madcore ★★★★★
()
Ответ на: комментарий от black7

>кстати на мк-52 отступов не было. и жили же как-то =) 

>хотя уверен, сейчас бы нашлись призывающие к рефакторингу, будь это тема о нем =)

Ты не поверишь, но они и в те времена были! :D Естественно, что программу на МК-52 можно структурно записать.

00 5
01 П0
02 5
05 П4
06     ИП0
07     КП4
08 FL0
09 06

где-то так, если я за 17 лет отсутствия практики его код не забыл :)

Другое дело, что так программа раз в 10 больше места занимала бы :)

KRoN73 ★★★★★
()
Ответ на: комментарий от deis

>В огороде бузина, в Киеве дядька...

>И цевой?

Товой, что ты не понял ничерта. И живёшь по меркам, устаревшим даже в 1998-м году.

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Не удивлюсь, если на каких-то системах строку "hello, world!" можно отковырять напр. в биосе/пзу или системной библиотеке, так что достаточно будет одного системного вызова для вывода строки :)

madcore ★★★★★
()
Ответ на: комментарий от madcore

>не имеет такой интеграции даже с охфисом

а что, всфкие открытые офисы уже умеют «интегрироваться» с чем-то кроме себя? вот ежели допиляют dbus в OOo и кедах, можно будет о чём-то думать.

mirage
()
Ответ на: комментарий от mirage

> открытые офисы уже умеют «интегрироваться» с чем-то кроме себя?

Нет, конечно. Всякие там PyUNO не в счет - это ж Питон, там пробелы, это так сложно... :D

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

я не сказал «использовать компоненты офиса в своём софте» — это и в gambas можно, если koffice экспортирует соотв. интерфейсы (посмотрите на пример web browser из поставки gambas). я имел в виду — интегрировать нечто *В* офис, наподобие ActiveX под оффтопиком.

mirage
()
Ответ на: комментарий от Quasar

> понабежали спецы-имбицилы! я прекрасно помню как только пробуя линукс искал какой нибудь аналог VB (все таки школьная программа сказывалась) и как удивился когда смог найти Gambas, вообщем считаю что прога необходима и желаю ей процветания.

splinter ★★★★★
()
Ответ на: комментарий от madcore

>> >Там IDE есть? >> А сам как думаешь?

Посмотрел на сайте... Думаю, что нет

>> >MessageRequester("message", "hello, world!") - 3 072 байт >> printf("Hello World") - 9 кб, после стрип 5. Ну и?

PureBasic рвёт С?

deis
()
Ответ на: комментарий от madcore

>Не удивлюсь, если на каких-то системах строку "hello, world!" можно отковырять напр. в биосе/пзу или системной библиотеке, так что достаточно будет одного системного вызова для вывода строки :)

Э... А что, в Linux это не так? :) В DOS так и было. $-terminated строка в DS:DX, 9 в AH и int 21h :)

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

>> >И цевой? >> Товой, что ты не понял ничерта. И живёшь по меркам, устаревшим даже в 1998-м году.

Объяснись?

deis
()
Ответ на: комментарий от mirage

>> >MessageRequester("message", "hello, world!") - 3 072 байт
> это нативный код, использующий только libc? нет? апстену.

Бога ради,
MessageBox_(0, "Hello World", "", 0)

Не libc, но тем не менее...

deis
()
Ответ на: комментарий от deis

>> >Там IDE есть? >> А сам как думаешь? >Посмотрел на сайте... Думаю, что нет

А еще подумать, если лицезрение не помогает? Напоминаю, это позиционируется как аналог _visual_ basic

>> >MessageRequester("message", "hello, world!") - 3 072 байт >> printf("Hello World") - 9 кб, после стрип 5. Ну и?

>PureBasic рвёт С?

По вашей фаллометричемкой логике да.

madcore ★★★★★
()
Ответ на: комментарий от KRoN73

>Э... А что, в Linux это не так? :) В DOS так и было. $-terminated строка в DS:DX, 9 в AH и int 21h :)

Я про то, чтобы саму строку в себе не хранить

madcore ★★★★★
()
Ответ на: комментарий от deis

>> Бога ради, >> MessageBox_(0, "Hello World", "", 0)

>2 048 байт

Бинарники обычно выравниваются на некоторую границу для оптимизации(да и один фиг в ФС грануляция не до байта). Например, обычный досовский exe-шник не льзя было обычными линкерами сделать меньше 512 байт, но можно было порезать заголовок, чтобы размер миниальной проги получился 40-50 байт(точную цифру не помню). Как там с PE-заголовками(или какие там в венде) не в курсе.

madcore ★★★★★
()
Ответ на: комментарий от madcore

>> >Там IDE есть? >> А сам как думаешь? >Посмотрел на сайте... Думаю, что нет >> А еще подумать, если лицезрение не помогает? Напоминаю, это позиционируется как аналог _visual_ basic

FreeBasic позиционируется как аналог VB???

>> >MessageRequester("message", "hello, world!") - 3 072 байт >> printf("Hello World") - 9 кб, после стрип 5. Ну и? >> >PureBasic рвёт С? >> По вашей фаллометричемкой логике да.

Сколько за собой тащит VB?

deis
()
Ответ на: комментарий от deis

>И что?

Я это первый выше спросил. Смысла измерять размеры бинарников нет. Но иногда есть смысл измерять привязанность к либам :)

madcore ★★★★★
()
Ответ на: комментарий от madcore

>> Я это первый выше спросил. Смысла измерять размеры бинарников нет. Но иногда есть смысл измерять привязанность к либам :)

Я ответил

deis
()
Ответ на: комментарий от deis

ой, чего я уговариваю, собственно? юзайте свою pure-проприетарщину, кто ж вам запрещает?

mirage
()
Ответ на: комментарий от lester

>помню написал eject.exe в 17 байт :)

или 4.2, или это был .com с расширением .exe.

проуфкод или фэйл.

mirage
()

Хых...

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

anonymous
()
Ответ на: комментарий от anonymous

>> Нет бейсика лучше чем freebasic. А это среда программирования, а идэ для быстрого создания окошек. Для некоторых целей подходит, для остальных нет

IDE - это integrated development environment...

deis
()
Ответ на: удаленный комментарий

>Нет, конечно. Всякие там PyUNO не в счет - это ж Питон, там пробелы, это так сложно

К сожалению, в Pythone есть и другие недостатки - например, вот это

class Test:

____id=0

____def __init__(self,i):

________self.id=i

t=Test(1)

t.id = 2

t.it =3

В результате ошибки - в объекте t появится новое поле (it)

AlexLorovitch
()
Ответ на: комментарий от AlexLorovitch

> В результате ошибки - в объекте t появится новое поле (it)

Используй __slots__. И, вроде бы, pylint такое ловит.

Кстати, а разве в Руби поведение не идентично Питону?

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

>> Используй __slots__. И, вроде бы, pylint такое ловит.

Проще не использовать Python :)

>> Кстати, а разве в Руби поведение не идентично Питону?

Нет в таких случаях Руби говорит

./test.rb:26: undefined method `x=' for Class (NoMethodError)

PS Выбирал в свое время язык для скриптов между Питоном и Руби - и осознанно выбрал Руби.

AlexLorovitch
()
Ответ на: комментарий от AlexLorovitch

>> Используй __slots__. И, вроде бы, pylint такое ловит.

> Проще не использовать Python :)

Тогда это слишком похоже на повод еще раз утвердиться в выборе не-Питона.

tailgunner ★★★★★
()
Ответ на: комментарий от CtrlAltBs

>Так все таки - есть альтернатива Gambas?

В какой части ?

Для программирования чего ?

Gambas - хорош для обучения (поскольку требуют в школе Basic).

Для не слишком навороченных полу-любительских программок с графикой.

Для перетаскивания в Линукс программ, наваянных под QuickBasic и VB.

Вообще, как это ни странно, Basic имеет право на жизнь, поскольку в отличие от многих ЯП (типа Питон, Руби) - он стандартизирован в ISO (как и С,Pascal,Fortran,Ada,Lisp).

AlexLorovitch
()
Ответ на: комментарий от AlexLorovitch

собственно, basic, и то, что реализовано в gambas — вещи напрочь разные. gambas'овский basic — обычный объектно-ориентированый язык, примерно как жаба.

mirage
()
Ответ на: комментарий от CtrlAltBs

(естественно под Linux. Или ответ будет - под Linux такого не бывает?)

CtrlAltBs
()
Ответ на: комментарий от CtrlAltBs

>Опять уходите от ответа. Ладно - для профессиональных навороченных программ с графикой что будет? Vim/Emacs?

А при чем здесь Vim & Emacs ?

Речь про язык программирования в Linux.

Для профессиональных-навороченных программ нужно подключать много дополнительных библиотек, которые на С,С++.

Учитывать возможность портирования на иные OC и процессоры.

Добиваться максимально шустрого кода.

Лучше всего для этого пользовать С, С++.

Как вариант - С# Mono.

Ежели писать на Питоне (есть любители :) - то все равно часть кодов лучше писать на С, а на Питоне - только саму граф.морду.

Не обязательно для всего этого жить в Vim.

Есть Анюта+Glade, есть Kdevelop, есть Monodevelop.

AlexLorovitch
()
Ответ на: комментарий от AlexLorovitch

>Учитывать возможность портирования на иные OC и процессоры.

>Лучше всего для этого пользовать С, С++.

посмеялся, благодарю.

mirage
()
Ответ на: комментарий от mirage

>Учитывать возможность портирования на иные OC и процессоры.

>Лучше всего для этого пользовать С, С++.

> посмеялся, благодарю.

А что есть другой ЯП, реализованный на всех достойных внимания процессорах ?

На сайте FSF много пакетов, написанных на других языках ?

AlexLorovitch
()
Ответ на: комментарий от DOKA

> Всем срочно начинать портировать свои программы на BrainFuck!

И ты думаешь, они станут сильно меньше? ))

LamerOk ★★★★★
()
Ответ на: комментарий от tailgunner

>> Нет, конечно. Ruby - чистый объектный язык.

> И что?

Ну видимо, человек хотел сказать, что в Руби с классами и объектами все хорошо, правильно и они там - естественная и неотъемлемая часть языка.

В Питоне - ООП прикручено сбоку и местами криво.

AlexLorovitch
()
Ответ на: комментарий от AlexLorovitch

>А что есть другой ЯП, реализованный на всех достойных внимания процессорах ?

java?

>На сайте FSF много пакетов, написанных на других языках ?

что должна доказать эта фраза? что по мнению FSF пользователи настолько тупы, что ниасилят поставить что-то нестрандартное, а дистростроители ниасилят включить в дистр? согласен.

mirage
()
Ответ на: комментарий от AlexLorovitch

> В Питоне - ООП прикручено сбоку и местами криво.

И примером этого является возможность присваивания неизвестному атрибуту? Веско.

tailgunner ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.