Common Lisp から、 NCURSES を触りたくなった。早速、Quicklisp で、 cl-charms をインストールしてみよう:
* (ql:quickload "cl-charms") To load "cl-charms":
(in-package :cl-user) | |
(setf lis1 (list 1 2 3)) | |
(print lis1) ; (1 2 3) | |
(setf lis2 (list 1 (list 2 3) (list 4 5))) | |
(print lis2) ; (1 (2 3) (4 5)) |
(in-package :cl-user) | |
;; 表示してまわったり | |
(dolist (p '(1 2 3)) | |
(print p)) | |
;; 和をとってみたり | |
(let ((accum 0)) | |
(dolist (p '(1 2 3 4 5)) | |
(incf accum p)) |
(in-package :cl-user) | |
(destructuring-bind (a b c) | |
'(1 2 3) | |
(print a) ; 1 | |
(print b) ; 2 | |
(print c)) ; 3 | |
(terpri) |
#include <iostream> | |
#include <cassert> | |
#include <cstring> | |
class Cons; | |
enum class Tag { int_, cons, string }; | |
class Lisp_ptr { | |
public: |
#include <iostream> | |
#include <cassert> | |
#include <cstring> | |
class Cons; | |
enum class Tag { int_, cons, string }; | |
class Lisp_ptr { | |
public: |
#include <iostream> | |
#include <vector> | |
int main(){ | |
// 1,2,3,4,5 を持った vector | |
std::vector<int> hoge{1, 2, 3, 4, 5}; | |
for(auto i : hoge){ | |
std::cout << i << " "; | |
} | |
std::cout << '\n'; |
#include <iostream> | |
#include <cassert> | |
#include <cstring> | |
class Cons; | |
enum class Tag { int_, cons, string }; | |
class Lisp_ptr { | |
public: |
#include <iostream> | |
#include <cassert> | |
#include <cstring> | |
#include <iterator> | |
class Cons; | |
enum class Tag { int_, cons, string }; | |
class Lisp_ptr { |
#include <iostream> | |
#include <cassert> | |
#include <cstring> | |
#include <iterator> | |
class Cons; | |
enum class Tag { int_, cons, string }; | |
class Lisp_ptr { |