LINUX.ORG.RU

Сообщения betalor

 

Французский язык

Привет!

Посоветуйте годных учебников по франуцузскому языку. Занимаюсь самостоятельно и хочу за пару лет прокачать язык с нуля до уровня B1/B2. Насколько это вообще реально?

Как вы вообще учите иностранные языки? Какими методиками пользуетесь?

 

betalor
()

Тестирование скала-приложений

Начал учить скалу по книге «functional programming in scala». Имею следующее:

package chapter01

object MyModule {
  def abs(n: Int): Int =
    if (n < 0) -n
    else n

  private def formatAbs(x: Int): String = {
    val msg = "The absolute value of %d is %d"
    msg.format(x, abs(x))
  }

  def main(args: Array[String]): Unit =
    println(formatAbs(-42))
}

Теперь хочу написать кое-какие тесты. И, если для функций abs и formatAbs я смог кое-что написать:

import org.scalatest._
import org.scalatest.PrivateMethodTester._

import chapter01.MyModule

class chapter01Spec extends FlatSpec with Matchers {
  "Absolute value of neg integers" should "return correct values" in {
    MyModule.abs(-42) should be(42)
    MyModule.abs(-1234567890) should be(1234567890)
    MyModule.abs(42) should be(42)
  }

  "formatAbs" should "return correct string" in {
    val formatAbs = PrivateMethod[String]('formatAbs)
    MyModule invokePrivate formatAbs(-42) should be("The absolute value of -42 is 42")
  }
....

то для функции main ничего не могу придумать. Точнее родил тест на проверку типа возвращаемого значения:

....
  "main" should "return Unit type" in {
    val formatAbs = PrivateMethod[String]('formatAbs)
    val a = MyModule.main(new Array[String](0))
    val b = MyModule invokePrivate formatAbs(-42)
    a should be (println(b))}}

Почитал про scalamock, но не понял, как мокать синглтон.

Словом, нужна помощь.

 

betalor
()

Функциональное программирование в гибридных языках

Привет!

Подскажите, если ли библиотеки для функционального программирования а-ля scalaz для более других гибридных языков (F#/OCaml и т.п.)?

 

betalor
()

ЯПЗТ для изучения

Привет!

После прочтения комментариев из моей прошлой темы, я решил остановить выбор на Coq.

Вопросы:

  • насколько сложно въехать в Coq без знания OCaml?
  • посоветуйте адекватные источники информации (книги или лекции) о Coq
  • какой набор инструменов надо установить для продуктивной работы?

 , ,

betalor
()

Нубский взгляд на языки функционального программирования

Привет!

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

  • Haskell — чистый функциональный, библиотек много, развитая инфраструктура, высокий порог вхождения. Компиляторы, верификаторы, финансы.
  • SML/OCaml — классика функционального программирования, относительно низкий порог вхождения. В индустрии применяются жостаточно редко: компиляторы, верификаторы, финансы, числодробилки.
  • Scala — гибридный язык, развитая система типов, интероп с джавой. Высокий порог вхождения. Финансы, корпоративный сектор.
  • Agda/Coq — мощная система типов, экстрация программ в разные языки, верификация. Компиляторы, верификаторы.
  • F# — гибридный язык, дотнет/моно. Корпоративный сектор.

А теперь вопрос: с точки зрения изучения теории типов и прочего матана, который стоит за языками программирования, какой язык лучше взять?

Перемещено mono из talks

 , , ,

betalor
()

учебный проект на Erlang

Разыскивается сабж.

Цели: научиться применять эрланг на практике; научится грамотному форматированию исходников и составлению документации; ну и в перспективе влиться в разработку нужного сообществу проекта.

Теоретическая подготовка: дочитываю чезарини, параллельно листаю лерн-ю-сам-эрланг.

 ,

betalor
()

Работа в институтах РАН

Привет!

Подходит к концу срок моего обучения в ВУЗе. Планирую поступать в аспирантуру. Область научных интересов: машинное обучение, формальная верификация. Пока иду на диплом с отличием.

Общеизвестно, что наука в России в основном сосредоточена в структурных подразделениях РАН. Посему есть желание попасть на работу с последующим обучением в аспирантуре именно туда.

Что умею:

  • системное программирование для GNU/Linux на Си
  • умею скриптовать рутину на bash, немного знаю Python
  • есть некоторый наколеночный опыт с Coq и вообще функциональным программированием: послушал курс Одерски на курсере, пробовал писать лабораторки на OCaml.

 ,

betalor
()

Формальная верификация

Привет!

Я заинтересовался языками с зависимыми типами. Попробовал писать на Agda, но она мне не очень понравилась. Переключился на Coq. Начал читать Software Fuondations и решать задания оттуда.

Русскоязычных материалов по Coq практически нет. В ЖЖ есть gds и deni_ok, тут и на хабре есть ymn.

Что почитать по основам Coq? Язык английский, русский.

Какой простенький проект подойдет для новичка?

 ,

betalor
()

Debian Oldstable проблема со звуком

Привет!

Не могу настроить звук на рабочем компьютере. Логи ниже

lspci -vvv

00:01.1 Audio device: ATI Technologies Inc Device 9902
	Subsystem: ATI Technologies Inc Device 9902
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin B routed to IRQ 18
	Region 0: Memory at fef44000 (32-bit, non-prefetchable) [size=16K]
	Capabilities: <access denied>
	Kernel driver in use: HDA Intel

lsmod | grep snd

snd_hda_intel          19859  2 
snd_usb_audio          64086  2 
snd_usb_lib            13976  1 snd_usb_audio
snd_seq_midi            4400  0 
snd_seq_midi_event      4628  1 snd_seq_midi
snd_seq                42913  2 snd_seq_midi,snd_seq_midi_event
snd_rawmidi            15515  2 snd_usb_lib,snd_seq_midi
snd_seq_device          4493  3 snd_seq_midi,snd_seq,snd_rawmidi
snd_hda_codec_realtek   235714  1 
snd_hda_codec_atihdmi     2251  1 
snd_hda_codec          54308  3 snd_hda_intel,snd_hda_codec_realtek,snd_hda_codec_atihdmi
snd_pcm                60487  4 snd_hda_intel,snd_usb_audio,snd_hda_codec
snd_timer              15598  2 snd_seq,snd_pcm
snd_hwdep               5380  2 snd_usb_audio,snd_hda_codec
snd                    46542  17 snd_hda_intel,snd_usb_audio,snd_seq,snd_rawmidi,snd_seq_device,snd_hda_codec_realtek,snd_hda_codec,snd_pcm,snd_timer,snd_hwdep
soundcore               4598  1 snd
snd_page_alloc          6265  2 snd_hda_intel,snd_pcm
usbcore               123399  6 snd_usb_audio,snd_usb_lib,uvcvideo,ohci_hcd,ehci_hcd

dmesg | egrep -i 'snd|sound|audio'

[    3.445873] usbcore: registered new interface driver snd-usb-audio
[  227.172109] usbcore: deregistering interface driver snd-usb-audio
[  228.445587] usbcore: registered new interface driver snd-usb-audio

aplay -l

**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 3: ATI HDMI [ATI HDMI]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: Generic_1 [HD-Audio Generic], device 0: ALC887 Analog [ALC887 Analog]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 2: Generic_1 [HD-Audio Generic], device 1: ALC887 Digital [ALC887 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

В какую сторону копать?

 ,

betalor
()

Учебный проект на Haskell

Привет!

Я практически дочитал lyah и теперь ищу простенький проект для практического приминения.

Что посоветуете?

 

betalor
()

Параллельный POST из curl

Привет!

Мне нужно отправить 100500 параллельных POST запросов вида

curl --data «param1=value1&param2=value2» http://example.com/resource.cgi

из башевского скрипта.

Как лучше всего это сделать?

 ,

betalor
()

Сбор статистики по локальному git-репозиторию

Привет!

Можно ли стандартными средствами git получить статистику по автору:

  • сколько коммитов сделано?
  • сколько строк добавлено?
  • сколько строк удалено?

 

betalor
()

git: сгенерировать патчи по всем коммитам

Привет!

У меня есть репозиторий с проектом. Мне нужно сгенерировать патчи из всех коммитов, т.е., например, в репе 10 коммитов, мне надо получить патчи вида 0001-first-commit-message.patch и так далее.

смотрел на git forman-patch, но не нашел как получить все патчи, а не патч на один определенный коммит.

 ,

betalor
()

Построение графа системных вызовов

Привет!

Каким образом можно построить граф сисколлов, которые вызываются в процессе выполнения какой-либо программы?

Например, я хочу знать, по какой цепочке вызовов проходит, например, ls -la /tmp

betalor
()

Верификация софта и железа

Привет!

Подскажите литературу/блоги/etc, посвященные методам верификации программ и аппаратного обеспечения.

Занимается ли кто-нибудь формальной верификацией драйверов или отдельных подсистем линуксового ядра?

 ,

betalor
()

планшет как development board

В свете моего интереса ко встраиваемым системам и «маргинальным» операционным системам (minix, genode, etc) возник вопрос: можно ли приспособить какой-нибудь китайский планшет для разного рода экспериментов в области embedded OS?

Что нужно от планшета:

  • процессорная архитектура ARM, MIPS или PowerPC;
  • возможность загрузки нормального линукса;
  • желательно наличие какого-нибудь инструментария а-ля buildroot/ltib для автоматизации сборки кастомного линукса;
  • по периферии особых требований нет: usb есть во всех моделях, наличие паябельного корпуса для использования неразведенных GPIO не принципиально;
  • цена. чем меньше, тем лучше.

 , ,

betalor
()

Встраиваемые системы, микроядра сотоварищи

Привет!

Недавно в универе закончился курс по операционным системам. Ничего дельного не рассказали, так что учился сам по книгам Таненбаума («Современные ОС» и «ОС разработка и реализация»), в связи с чем у меня возникло несколько вопросов:

  • насколько оправдано использование микроядерных ОС во встраиваемых системах?
  • какая из микроядерных ОС по-вашему более перспективна?
  • в каком направлении копать, если у меня есть интерес к микроядрам (язык Си знаю более-менее, Си++ не знаю)? minix? l4? fiasco?
  • какая из микроядерных ОС наиболее приветлива к новичкам (имхо миникс лидирует из-за учебника Таненбаума, но меня смущают перспективы его применения на практике — порт на арм до сих пор не вышел)

В первую очередь интересуют проекты с открытыми исходниками.

 ,

betalor
()

кернел стайлгайд

Привет!

Есть ли какое-нибудь средство, которое умеет перемалывать исходники до соответствия стилям, принятым в разработке ядра?

Например, у меня есть кусок кода с пробелами, с разными стилями и т.п., я хочу загрузить код в емакс, нажать заветную комбинацию и на выходе получить код, на который не ругается scripts/checkpatch.pl.

кода очень много, так что руками его править не хочется.

 ,

betalor
()

опять про книги

Привет!

Подскажите хорошую литературу по основам веб-программирования. Хочу разбираться во всяких там вебсокетах и прочих комет-серверах.

Умею немного программировать на си и питоне.

В процессе обучения хочу использовать эрланг на сервере и джаваскрипт/кофескрипт на клиенте.

Спасибо

 , ,

betalor
()

Посоветуйте FPGA

Привет!

Подскажите отладочную плату, пригодную для изучения ПЛИС. Критерии следующие:

  • xilix или altera — не принципиально. порт линуксового ядра на сколько я знаю есть и под ниос, и под микроблейз;
  • соответственно нужна микросхема, с количеством вентилей достаточным для запуска линукса;
  • наличие среды разработки и инструментальных средств отладки, которые заведутся под современными дистрибутивами;
  • цена — чем меньше, тем лучше (студентота, да). хотелось бы уложиться в 150 - 200 долларов.

из недорогих плат наткнулся на эту.

покритикуйте выбор. подскажите другие варианты.

 ,

betalor
()

RSS подписка на новые темы