Programming Erlang : Software for a Concurrent World
없습니다
작가정보
저자(글) Armstrong, Joe
목차
Begin 1(6)
Road Map 2(3)
Begin Again 5(1)
Acknowledgments 6(1)
Getting Started 7(26)
Overview 7(3)
Installing Erlang 10(2)
The Code in This Book 12(1)
Starting the Shell 13(1)
Simple Integer Arithmetic 14(2)
Variables 16(5)
Floating-Point Numbers 21(1)
Atoms 22(2)
Tuples 24(3)
Lists 27(2)
Strings 29(1)
Pattern Matching Again 30(3)
Sequential Programming 33(34)
Modules 33(6)
Back to Shopping 39(3)
Functions with the Same Name and Different Arity 42(1)
Funs 42(6)
Simple List Processing 48(3)
List Comprehensions 51(3)
Arithmetic Expressions 54(1)
Guards 55(4)
Records 59(3)
case and if Expressions 62(1)
Building Lists in Natural Order 63(1)
Accumulators 64(3)
Exceptions 67(10)
Exceptions 67(1)
Raising an Exception 68(1)
try catch 69(3)
catch 72(1)
Improving Error Messages 73(1)
Programming Style with try catch 73(1)
Catching Every Possible Exception 74(1)
Old- and New-Style Exception Handling 75(1)
Stack Traces 75(2)
Advanced Sequential Programming 77(32)
BIFs 78(1)
Binaries 78(2)
The Bit Syntax 80(9)
Miscellaneous Short Topics 89(20)
Compiling and Running Your Program 109(20)
Starting and Stopping the Erlang Shell 109(1)
Modifying the Development Environment 110(3)
Different Ways to Run Your Program 113(5)
Automating Compilation with Makefiles 118(3)
Command Editing in the Erlang Shell 121(1)
Getting Out of Trouble 122(1)
When Things Go Wrong 122(3)
Getting Help 125(1)
Tweaking the Environment 126(1)
The Crash Dump 127(2)
Concurrency 129(4)
Concurrent Programming 133(18)
The Concurrency Primitives 134(1)
A Simple Example 135(1)
Client-Server---An Introduction 136(4)
How Long Does It Take to Create a Process? 140(2)
Receive with a Timeout 142(3)
Selective Receive 145(1)
Registered Processes 146(2)
How Do We Write a Concurrent Program? 148(1)
A Word About Tail Recursion 148(1)
Spawning with MFAs 149(1)
Problems 150(1)
Errors in Concurrent Programs 151(16)
Linking Processes 151(1)
An on_exit Handler 152(2)
Remote Handling of Errors 154(1)
The Details of Error Handling 154(8)
Error Handling Primitives 162(2)
Sets of Linked Processes 164(1)
Monitors 164(1)
A Keep-Alive Process 165(2)
Distributed Programming 167(16)
The Name Server 169(5)
The Distribution Primitives 174(3)
Libraries for Distributed Programming 177(1)
The Cookie Protection System 178(1)
Socket-Based Distribution 179(4)
IRC Lite 183(22)
Message Sequence Diagrams 185(1)
The User Interface 186(1)
Client-Side Software 187(4)
Server-Side Software 191(4)
Running the Application 195(1)
The Chat Program Source Code 196(7)
Exercises 203(2)
Interfacing Techniques 205(14)
Ports 206(1)
Interfacing an External C Program 207(6)
open_port 213(1)
Linked-in Drivers 214(4)
Notes 218(1)
Programming with Files 219(20)
Organization of the Libraries 219(1)
The Different Ways of Reading a File 220(8)
The Different Ways of Writing to a File 228(4)
Directory Operations 232(1)
Finding Information About a File 233(1)
Copying and Deleting Files 234(1)
Bits and Pieces 234(1)
A Find Utility 235(4)
Programming with Sockets 239(28)
Using TCP 240(9)
Control Issues 249(3)
Where Did That Connection Come From? 252(1)
Error Handling with Sockets 253(1)
UDP 254(3)
Broadcasting to Multiple Machines 257(2)
A SHOUTcast Server 259(7)
Digging Deeper 266(1)
ETS and DETS: Large Data Storage Mechanisms 267(18)
Basic Operations on Tables 268(1)
Types of Table 269(1)
ETS Table Efficiency Considerations 270(1)
Creating an ETS Table 271(2)
Example Programs with ETS 273(5)
DETS 278(3)
What Haven't We Talked About? 281(1)
Code Listings 282(3)
OTP Introduction 285(22)
The Road to the Generic Server 286(9)
Getting Started with gen_server 295(4)
The gen_server Callback Structure 299(4)
Code and Templates 303(3)
Digging Deeper 306(1)
Mnesia: The Erlang Database 307(22)
Database Queries 307(4)
Adding and Removing Data in the Database 311(2)
Mnesia Transactions 313(4)
Storing Complex Data in Tables 317(2)
Table Types and Location 319(3)
Creating the Initial Database 322(1)
The Table Viewer 323(1)
Digging Deeper 323(2)
Listings 325(4)
Making a System with OTP 329(30)
Generic Event Handling 330(3)
The Error Logger 333(7)
Alarm Management 340(2)
The Application Servers 342(3)
The Supervision Tree 345(3)
Starting the System 348(4)
The Application 352(2)
File System Organization 354(1)
The Application Monitor 355(1)
Digging Deeper 355(2)
How Did We Make That Prime? 357(2)
Multicore Prelude 359(2)
Programming Multicore CPUs 361(24)
How to Make Programs Run Efficiently on a Multicore CPU 362(4)
Parallelizing Sequential Code 366(3)
Small Messages, Big Computations 369(4)
mapreduce and Indexing Our Disk 373(10)
Growing Into the Future 383(2)
Documenting Our Program 385(6)
Erlang Type Notation 386(3)
Tools That Use Types 389(2)
Erlang on Microsoft Windows 391(4)
Erlang 391(1)
Fetch and Install MinGW 391(1)
Fetch and Install MSYS 392(1)
Install the MSYS Developer Toolkit (Optional) 392(1)
Emacs 392(3)
Resources 395(4)
Online Documentation 395(1)
Books and Theses 396(1)
Link Collections 396(1)
Blogs 396(1)
Forums, Online Communities, and Social Sites 397(1)
Conferences 397(1)
Projects 397(1)
Bibliography 398(1)
A Socket Application 399(16)
An Example 399(3)
How lib_chan Works 402(3)
The lib_chan Code 405(10)
Miscellaneous 415(20)
Analysis and Profiling Tools 415(3)
Debugging 418(9)
Tracing 427(4)
Dynamic Code Loading 431(4)
Module and Function Reference 435(68)
Module: application 435(1)
Module: base64 436(1)
Module: beam_lib 437(1)
Module: c 437(2)
Module: calendar 439(1)
Module: code 440(1)
Module: dets 441(3)
Module: dict 444(1)
Module: digraph 445(1)
Module: digraph_utils 446(1)
Module: disk_log 447(1)
Module: epp 448(1)
Module: erl_eval 449(1)
Module: erl_parse 449(1)
Module: erl_pp 450(1)
Module: erl_scan 450(1)
Module: erl_tar 450(1)
Module: erlang 451(9)
Module: error_handler 460(1)
Module: error_logger 460(1)
Module: ets 461(3)
Module: file 464(2)
Module: file_sorter 466(1)
Module: filelib 467(1)
Module: filename 467(1)
Module: gb_sets 468(2)
Module: gb_trees 470(1)
Module: gen_event 471(1)
Module: gen_fsm 472(1)
Module: gen_sctp 473(1)
Module: gen_server 474(1)
Module: gen_tcp 474(1)
Module: gen_udp 475(1)
Module: global 475(1)
Module: inet 476(1)
Module: init 477(1)
Module: io 477(1)
Module: io_lib 478(1)
Module: lib 479(1)
Module: lists 479(4)
Module: math 483(1)
Module: ms_transform 483(1)
Module: net_adm 483(1)
Module: net_kernel 484(1)
Module: os 484(1)
Module: proc_lib 485(1)
Module: qlc 485(1)
Module: queue 486(1)
Module: random 487(1)
Module: regexp 488(1)
Module: rpc 488(2)
Module: seq_trace 490(1)
Module: sets 490(1)
Module: shell 491(1)
Module: slave 491(1)
Module: sofs 492(4)
Module: string 496(1)
Module: supervisor 497(1)
Module: sys 497(1)
Module: timer 498(1)
Module: win32reg 499(1)
Module: zip 500(1)
Module: zlib 500(3)
Index 503
기본정보
ISBN | 9781934356005 ( 193435600X ) |
---|---|
발행(출시)일자 | 2021년 01월 01일 |
쪽수 | 준비중 |
언어 | 영어 |
Klover
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집 (0)
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
판매가 5,000원 미만 상품의 경우 리워드 지급 대상에서 제외됩니다. (2024년 9월 30일부터 적용)
구매 후 리뷰 작성 시, e교환권 100원 적립
-
반품/교환방법
* 오픈마켓, 해외배송 주문, 기프트 주문시 [1:1 상담>반품/교환/환불] 또는 고객센터 (1544-1900) -
반품/교환가능 기간
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내 -
반품/교환비용
-
반품/교환 불가 사유
(단지 확인을 위한 포장 훼손은 제외)
2) 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
예) 화장품, 식품, 가전제품(악세서리 포함) 등
3) 복제가 가능한 상품 등의 포장을 훼손한 경우
예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
4) 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
5) 디지털 컨텐츠인 ebook, 오디오북 등을 1회이상 ‘다운로드’를 받았거나 '바로보기'로 열람한 경우
6) 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
7) 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
8) 세트상품 일부만 반품 불가 (필요시 세트상품 반품 후 낱권 재구매)
9) 기타 반품 불가 품목 - 잡지, 테이프, 대학입시자료, 사진집, 방통대 교재, 교과서, 만화, 미디어전품목, 악보집, 정부간행물, 지도, 각종 수험서, 적성검사자료, 성경, 사전, 법령집, 지류, 필기구류, 시즌상품, 개봉한 상품 등 -
상품 품절
-
소비자 피해보상 환불 지연에 따른 배상
2) 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함
상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)