LINUX.ORG.RU

osh — объектная оболочка

 ,


0

0

Object Shell (osh) — это инструмент, объединяющий в себе обработку структурированных данных, доступ к базам данных, файлам, процессам и удаленный доступ к кластерам. Эти возможности доступны посредством интерфейса командной строки и интерфейсу программирования на Python. Osh обрабатывает потоки объектов Python, используя простые команды. Обработка сложных данных осуществляется при помощи последовательности команд, в которых вывод одной команды присоединен ко вводу следующей. Это напоминает конвееры Unix, но не ограничивается передачей текстовых строк.

В новом релизе, вышедшем сегодня, произошли значительные изменения. В частности, доступ к базам данных может осуществляться любым совместимым с DBAPI 2.0 драйвером.

Из новых команд: ls генерирует поток объектов File. ps генерирует поток объектов Process. merge объединяет упорядоченные потоки объектов из разных потоков выполнения, затрачивая обычно меньше памяти и времени, чем при обычной сортировке.

>>> Подробности

★★★★★

Проверено: Shaman007 ()

Я правильно понял что они эти идеи взяли из M$ PowerShell? А вообще однозначно респект.

Deleted
()

osh — объектная оболочка.

>osh — объектный шелл

По-русски всё же "объектная оболочка". Подредактируйте заголовок, пожалуйста.

А вообще задумка интересная.

Camel ★★★★★
()

Кому нужна эта тухлая идеология из 20 века? Даешь чистый функциональный шелл !

anonymous
()

Oh, sh...
по тексту интересно, ждем ебилдов.

AiFiLTr0 ★★★★★
()

Следующая будет "Yozh Tvaiu Klesh"?

Gharik
()

Ну и в чем смысл?

Сила шелла состоит как раз в том, что сущности представляются строками и потоком данных, обрабатывая которые можно сделать кучу вещей.

Например, берем вывод rpm и используем как список файлов. А тут получается только примитивная обработка объектов только в рамках тех операций, которые к ним напрямую применимы.

AVL2 ★★★★★
()

> Object Shell (osh) — это инструмент, объединяющий в себе обработку структурированных данных, доступ к базам данных, файлам, процессам и удаленный доступ к кластерам. Эти возможности доступны посредством интерфейса командной строки и интерфейсу программирования на Python. Osh обрабатывает потоки объектов Python, используя простые команды.

P.S. судя по описанию ребята осилили сделать симлинк /bin/osh на /usr/bin/python.

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

>Наконец-то появился свободный аналог Windows PowerShell!

Это для написания скриптов? Я правильно понял?

ttnl ★★★★★
()

перл уже давно изобрели, не надо строить велосипеды

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

> Кстати MS запатентовал эту идею. Так что ждите проблем с этим софтом.

в 2006 уже была версия 0.6.3. Так что m$ пойдёт лесом даже в пиндосстане, не говоря уже о нормальных странах.

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

>дурило. osh выглядит как настоящий shell, а rush - это что-то вроде недоделанного ipython ;)

А кто сказал что объектный шелл должен выглядеть как _настоящий_ шелл? Надо вообще к Smalltal в этом плане стремиться или вообще написать оный на ST.

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

> А тут получается только примитивная обработка объектов только в рамках тех операций, которые к ним напрямую применимы.

Не понял. А что, операций со строками бесконечно много? Или это объект не может быть представлен, в числе прочего, в виде строки? Тут возможностей намного больше.

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

>Я одного не понял - кто этот Фред которого надо кастовать все время чтобы оно работало?

Вот и я говорю, что с rush все интуитивно понятно, а это какой-то красноглазый велосипед.

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

>Вот и я говорю, что с rush все интуитивно понятно, а это какой-то красноглазый велосипед.

Руш вообще не канает.

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

> osh выглядит как настоящий shell

скорее он выглядит как мешок синтаксического сахара к osh.api.* :) но, в общем, любопытно...

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

> Я одного не понял - кто этот Фред которого надо кастовать все время чтобы оно работало?

Я вот я сразу понял. Это показана возможность исполнения команд на удаленом сервере. Можно никого не кастовать, а использовать локально. Мне очень понравилось, но функционала очень мало. С другой стороны новые возможности легко добавить)

rlz
()
Ответ на: osh — объектная оболочка. от Camel

>>osh — объектный шелл

> По-русски всё же "объектная оболочка". Подредактируйте заголовок, пожалуйста.

А "оболочка", между прочим, это микрософтизм: в винде shell -- это программа с функциональностью ПРОВОДНИКА, а не интерпретатора команд. Кто не помнит, была такая штука DOS Shell примерно с той же функциональностью, что и проводник современной винды. Проводник, однако, умеет исполнять некотрые специфические текстовые команды, касающиеся отображаемого в нём содержимого.

В Юниксе shell -- это ИНТЕРПРЕТАТОР КОМАНД. Микрософт сейчас думает, не применить ли к PowerShell ртермин "интерпретатор команд", потому как это НЕ оболочка.

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

ты не понимаешь

# <xml><world><net><domain="127.0.0.1"><computer><user="root"><execute="ls"/></us er></computer></domain></net></world></xml>

это очень удобно! и очень быстро!��

anonymous
()

> конвееры

конвейеры

anonymous
()

>Object Shell (osh)

В биореактор это поделие!

Quasar ★★★★★
()

osh - OH SHI

anonymous
()

по делу: какбе ipython.

volh ★★
()

> В новом релизе, вышедшим сегодня, произошли...

Каким, простите, вышедшим? Кто вышел? Куда?

Шоман, вкомпилируй уже спеллчекер себе в моцк!

anonymous
()

> ...релизе, вышедшим сегодня...

О, Шома приступил-таки к изучению русского языка! Азы освоены. Правильно, правильно, "жи" и "ши" пишется с буковой "и". Но НЕ ВСЕГДА! :)

anonymous
()

заманчиво, нужно поставить, посмотреть

alt0v14 ★★★
()

Ebash! - расширеная оболочка

Extended Bourne Again Shell (Ebash!) — это инструмент, объединяющий в себе обработку B-деревьев, графических файлов, процессов, почтовый клиент, интернет-пейджер, web-браузер, а также доступ к Remote Desktop. Эти восхитительные возможности доступны посредством интерфейса командной строки (в настоящий момент авторы работают над ликвидацией этого архаизма) и интерфейсу программирования на С#. Ebash! обрабатывает объекты C# посредством команд виртуальной машины C#. Обработка сложных данных осуществляется при помощи последовательности команд, в которых вывод одной команды присоединен ко вводу следующей. В Microsoft назвали эту технологию "конвееры". В отличии от изживших себя конвееров UNIX, Ebash!-конвееры способны передавать не только невыразительные ASCII-строки, но и графические файлы, например симпатичные иконки ^_^.

В новом релизе, вышедшим сегодня, произошли значительные изменения. В частности, помимо устаревших гипертекстовых протоколов теперь поддерживается протокол OSCAR. Из новых команд: ls перечисляет файлы. ps перечисляет процессы. merge объединяет упорядоченные конвееры выполнения из разных потоков объектов. Реального применения этой технологии никто не знает, но работает быстро. Ведутся усиленные работы над командами id, pwd и uname. Как утверждают разработчики, Ebash! полностью соответствует философии и духу UNIX - "пиши жирный монолитный софт назначение которого никому не понятно" и "ООП - технология будущего, решающая все проблемы".

blackstyle.

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

>Ebash! - расширеная оболочка

Чорт, а ведь это идея!

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

> А "оболочка", между прочим, это микрософтизм: в винде shell -- это программа с функциональностью ПРОВОДНИКА, а не интерпретатора команд. Кто не помнит, была такая штука DOS Shell примерно с той же функциональностью, что и проводник современной винды. Проводник, однако, умеет исполнять некотрые специфические текстовые команды, касающиеся отображаемого в нём содержимого.

Шелл как явление существовал еще до Микрософта, до винды и до доса вообще. man история вычислительных технологий и систем.

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

> О, Шома приступил-таки к изучению русского языка! Азы освоены. Правильно, правильно, "жи" и "ши" пишется с буковой "и". Но НЕ ВСЕГДА! :)

Это все невнимательный Шима, а Шома здесь ни при чем.

Пофиксил.

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

(проверил) да нет, лично у меня аномалий в этом плане вроде как нету. И не близнецы.

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

Ну будет тебе поток объектов, на каждом сделаешь obj.text и получишь поток raw текста именного такого, какой любит твоя бабушка.

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

>> Сила шелла состоит как раз в том, что сущности представляются строками и потоком данных, обрабатывая которые можно сделать кучу вещей.

Проблема в том, что разнородные данные представляются только одним монолитным потоком текста. Некоторые вещи в "сыром" текстовом представлении очень сложно парсить, а часто и вовсе невозможно. Вот например подскажите как можно распарсить в shell-скрипте вывод ls -l, разложив по разным местам всю информацию которая выдаётся. Hint: это невозможно.

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

> Я правильно понял что они эти идеи взяли из M$ PowerShell?

Нет, неправильно. Они были еще до Monad Shell, как звался PowerShell в девичестве. Если кто-то у кого-то и взял идею, так это наоборот.

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

> Сила шелла состоит как раз в том, что сущности представляются строками и потоком данных, обрабатывая которые можно сделать кучу вещей.

Вроде 5 звезд, а говорит глупости. Прямо Оруэлловщина какая-то, недостаток это сила.

Еще Раймонд, когда писал в The Art of UNIX Programming¹, черт помнит сколько лет назад про недостатки UNIX, отмечал что — цитирую — A Unix File Is Just a Big Bag of Bytes. К шеллу это точно так же относится, очевидно. Пока мы гоняем через пайпы текст это еще пол-беды, нам, как правило, известна его грамматика и можно попарсить. Хотя и то — это лишние заморочки, которые, на самом деле, только мешают и хотелось бы, чтобы сериализация-десериализация была прозрачной. А вот когда мы начинаем гонять через пайпы картинки, а еще хуже — документы (LaTeX, конечно, рулит, но не им единым), то все становится сложным и запутанным.

Вот есть у нас ImageMagick, есть convert(1), и он тратит кучи времени на то, чтобы просто понять что же ему за поток байтов пришел на STDIN, если он с него читает, а не из файла. Вместо того, чтобы получить объект, который имеет содержимое, имеет MIME-тип и т.д..

_________
1) http://www.faqs.org/docs/artu/ch20s03.html

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

напомню в кратце. 
итак - что поддерживают текстовые форматы и не поддерживают  двоичные:
инкапсуляция,
переносимость,
простота конструкции,
упрощение отладки,
постоянная сложность разбора вместо непредсказуемо увеличивающейся сложности разбора бинарного формата

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

Вообще-то идея объединить мощь юникс шелла и возможность работы с графическими объектами была ещё в BeOS , так что линукс и виндовс идут лесом!

У кого-нибудь получается с первого раза угадать какой-код нарисован на картинке требующегося написать при отправке сообщения на этом сайте ? Сами создатели пробовали в этих смазанных кляксах увидеть буквы?

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

А где ты тут увидел бинарный формат?

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

>философии и духу UNIX а что за философия "иду хуюникс"?

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