мета-данные страницы
  •  
Загрузка не удалась. Возможно, проблемы с правами доступа?

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
haskell [24/11/2018 18:18] – [Урок 6.2 Взаимодействие с STDIN-STDOUT] Владимир Власовhaskell [05/09/2024 19:52] (текущий) Владимир Власов
Строка 30: Строка 30:
   - [[http://habrahabr.ru/post/225393/|Haskell IDE от FP Complete (описание на русском онлайн IDE)]], сейчас доступна по адресу: [[http://web.archive.org/web/20140705061020/http://habrahabr.ru/post/225393/|Haskell IDE от FP Complete (копия статьи)]]   - [[http://habrahabr.ru/post/225393/|Haskell IDE от FP Complete (описание на русском онлайн IDE)]], сейчас доступна по адресу: [[http://web.archive.org/web/20140705061020/http://habrahabr.ru/post/225393/|Haskell IDE от FP Complete (копия статьи)]]
   - [[http://tryhaskell.org/|онлайн песочница для попробовать в браузере]]   - [[http://tryhaskell.org/|онлайн песочница для попробовать в браузере]]
 +  - [[https://play.haskell.org/|Haskell Playground]] 
  
-<HTML> 
-<!-- http://dshevchenko.biz/hs.html --> 
-</HTML> 
 ===== Урок 1. Знакомство с интерпретатором ghci ===== ===== Урок 1. Знакомство с интерпретатором ghci =====
  
Строка 79: Строка 77:
  
 Для просмотра тех или иных значений функции ''f'' можно попробовать набрать ''f 4'', а для просмотра произвольного значения ''foo'' набрать ''show foo''. Для просмотра тех или иных значений функции ''f'' можно попробовать набрать ''f 4'', а для просмотра произвольного значения ''foo'' набрать ''show foo''.
 +
 +Дополнительно отметим, что командами вида '':!cmd'' можно вызвать команду шелла ''cmd'' (например ''ls'' в Linux или ''dir'' в Windows).
  
  
Строка 1200: Строка 1200:
  
 <code haskell> <code haskell>
-infixl 7 (&&&) +infixl 7 &&& 
-infixl 5 (|||)+infixl 5 |||
 </code> </code>
  
Строка 1547: Строка 1547:
   writeFile "testUp.txt" (unlines up_lst)   writeFile "testUp.txt" (unlines up_lst)
 </code> </code>
-Здесь "чистая функция" transform преобразует в строках символы к верхнему регистру. "Чистая функция" ''lines'' разбивает входящую строку на список строк по признаку конца строки, а функция ''unlines'', наоборот, получив список строк, склеивает их в одну.+Здесь "чистая функция" ''transform'' преобразует в строках символы к верхнему регистру. "Чистая функция" ''lines'' разбивает входящую строку на список строк по признаку конца строки, а функция ''unlines'', наоборот, получив список строк, склеивает их в одну.
  
 Работа с "чистыми функциями" в монадическом коде (для нас пока это означает "внутри блока ''do''") должна осуществляться с помощью конструкции ''let''. Работа с "чистыми функциями" в монадическом коде (для нас пока это означает "внутри блока ''do''") должна осуществляться с помощью конструкции ''let''.
Строка 1554: Строка 1554:
 ==== 6.6 Запуск и компиляция ==== ==== 6.6 Запуск и компиляция ====
  
-Запуск подготовленных указанным выше способом возможен разными путями. +Запуск подготовленных указанным выше способом файлов возможен разными путями. 
 Во-первых, мы можем по-прежнему из ''ghci'' загружать нужный файл и указывать на выполнение функцию ''main''. Во-первых, мы можем по-прежнему из ''ghci'' загружать нужный файл и указывать на выполнение функцию ''main''.
  
Строка 2607: Строка 2607:
 то не распозналось.. Если элементы во входном списке еще остались, то переходим к шагу 1. то не распозналось.. Если элементы во входном списке еще остались, то переходим к шагу 1.
  
-Ниже применяем полученные функции для создания парсера parser.+Ниже применяем полученные функции для создания парсера ''parse''.
 <code haskell> <code haskell>
 parse teststr = if (mss == "S" parse teststr = if (mss == "S"