LINUX.ORG.RU
ФорумTalks

Лор, а ты знаешь про?


0

0

Squirrel Shell - шелл для белочки?

Сей шелл имеет Java-like синтаксис, кроссплатформенный. Скрипты - орешки (*.nut)


http://squirrelsh.sourceforge.net/

#!/usr/bin/squirrelsh
// Work with command line parameters
run("foo", [ __argv[1], __argv[2] ]);

#!/usr/bin/squirrelsh
// Multiply two 2x2 matrices
// It's possible to use matrices of any size
function matrix (w, h)
{
   local r = array(h);
   for (local i = 0; i < h; i++)
      r[i] = array(w, 0);
   return r;
}
local m1 = matrix(2, 2),
      m2 = matrix(2, 2),
      r  = matrix(2, 2);
r[0][0] = m1[0][0] * m2[0][0] + m1[0][1] * m2[1][0];
r[0][1] = m1[0][0] * m2[0][1] + m1[0][1] * m2[1][1];
r[1][0] = m1[1][0] * m2[0][0] + m1[1][1] * m2[1][0];
r[1][1] = m1[1][0] * m2[0][1] + m1[1][1] * m2[1][1];

#/usr/bin/squirrelsh

//запуск процесса.

run ("vim README");

★★★★

Последнее исправление: pashazz (всего исправлений: 2)

> run («vim README»);

Давно интересуюсь, как сишников и сочувствующих не ВЫБЕШИВАЕТ от этих избыточных знаков препинания? Ведь машине чтобы однозначно распарсить такую строчку хватило бы «run vim README(перевод строки)»

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

>Давно интересуюсь, как сишников и сочувствующих не ВЫБЕШИВАЕТ от этих избыточных знаков препинания?

Это же красиво.

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

>как сишников и сочувствующих не ВЫБЕШИВАЕТ от этих избыточных знаков препинания

Пейсонщик детектед. Там нет избыточных знаков препинания.

распарсить такую строчку хватило бы «run vim README(перевод строки)»


А что должно быть в скобках?

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

> Пейсонщик детектед

Там скобочки и кавычки в соответствующих местах обязательны. Если опустить пустые скобки, то вместо результата выполнения функции мы присвоим переменной саму функцию.

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

> вместо результата выполнения функции мы присвоим переменной саму функцию

Ну и насколько часто это требуется на практике? :) А присвоить всё-таки результат? :)))) Вопрос риторический.

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

>А зачем в данном случае скобки? Зачем скобки в puts каком-нибудь?

Нет ну правда, что ты собрался той команде передовать в скобках?

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

> Нет ну правда, что ты собрался той команде передовать в скобках?

??????

Я спрашиваю, зачем там вообще скобки как таковые, так как я не вижу в них смысла. И тем уж тем более я не понимаю (и не могу вразумительно ответить), что там можно передавать в скобках. Достаточно написать «команда параметры» как в баше. Всё что после команды и до CR/LF - параметры

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

Речь о том как могло бы быть, а не как оно есть :)

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

>Ведь машине чтобы однозначно распарсить такую строчку хватило бы «run vim README(перевод строки)»

Это ж ты написал. Вот и объясни теперь зачем тут скобки?

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

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

Пейсонщики - они такие, да.

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

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

>Давно интересуюсь, как сишников и сочувствующих не ВЫБЕШИВАЕТ от этих избыточных знаков препинания?

Изучение Си вносит необратимые изменнеия в мозг

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

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

это твои личные фантазии, в реальности все обходятся скобками

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

>Давно интересуюсь, как сишников и сочувствующих не ВЫБЕШИВАЕТ от этих избыточных знаков препинания?

С какого перепоя они избыточные?

Ведь машине чтобы однозначно распарсить такую строчку хватило бы «run vim README(перевод строки)»


Особенно, если vim - переменная, ога.

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

> printf(_(«echo %s = %f\n»), getname(obj), pow(sin(obj.value),3));

printf «echo %s = %f\n», getname(obj), pow(sin(obj.value),3)

можно и вообще

printf «echo %s = %f\n» getname(obj) pow(sin(obj.value),3)

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

> Давно интересуюсь, как сишников и сочувствующих не ВЫБЕШИВАЕТ от этих избыточных знаков препинания? Ведь машине чтобы однозначно распарсить такую строчку хватило бы «run vim README(перевод строки)»

с этим бороться можно только сделав однозначный парсер естественного языка. или создать искусственный, чтоб однозначно парсился. но там придется контекст объяснять, что еще длиннее выйдет...

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

> Пейсонщик детектед. Там нет избыточных знаков препинания.

если тут о питоне речь то причем тут вообще он? единственный знак который бы был сэкономлен в питоне это точка с запятой. остальное так же криво выглядит.

лучше бы эту ненависть к питону направили на что-то другое, может толк бы вышел .. вообще по-моему ненависть к неодушевленому предмету (в частности языку программирования) чем-то сродни фетишизму - только с обратным знаком. а это уже сексуальное извращение.

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

> с этим бороться можно только сделав однозначный парсер естественного языка. или создать искусственный, чтоб однозначно парсился. но там придется контекст объяснять, что еще длиннее выйдет...

Откройте для себя QBASIC 25летней давности...

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

Ведь машине чтобы однозначно распарсить такую строчку хватило бы «run vim README(перевод строки)»

Зачем так длинно, когда можно просто

`vim README`

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

Откройте для себя QBASIC 25летней давности...

Ну, на Форте шелл-вызовы, как раз, обычно в таком виде и делались:

RUN: vim README

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