Programming 523

(PowerShell) 1부터 10까지 더하기

# for 사용$sum=0for ($i=1; $i -le 10; $i++) { $sum+=$i}$sum# Measure-Object 사용(1..10|Measure-Object -Sum).Sum 참고:Measure-Object (Microsoft.PowerShell.Utility) - PowerShell | Microsoft Learn Measure-Object (Microsoft.PowerShell.Utility) - PowerShellcmdlet은 Measure-Object 특정 유형의 개체의 속성 값을 계산합니다. Measure-Object 는 명령의 매개 변수에 따라 세 가지 유형의 측정을 수행합니다. cmdlet은 Measure-Object 개체의 속성 값에 대한 계산을 수행learn.mic..

Programming 2025.01.19

(PowerShell) 로또 번호 생성

1..45|get-random -count 6정렬도 하면:1..45|get-random -count 6|sort 참고: Get-Random (Microsoft.PowerShell.Utility) - PowerShell | Microsoft Learn Get-Random (Microsoft.PowerShell.Utility) - PowerShellcmdlet은 Get-Random 임의로 선택된 숫자를 가져옵니다. 개체 Get-Random컬렉션을 제출하는 경우 컬렉션에서 하나 이상의 임의로 선택된 개체를 가져옵니다. 매개 변수나 입력 Get-Random 이 없으면 명령은learn.microsoft.com

Programming 2025.01.17

(Clojure) 매크로에 대한 고찰

Common Lisp는 unhygienic macro이어서, symbol 겹침을 방지하려면 gensym을 사용해야 한다. 그런데 매크로 정의도 코드이므로 유연성이 높다. Racket은 기본적으로 hygienic macro인데, 패턴 방식이라 만들기는 쉬운데 유연성은 낮다.defmacro를 제공하기는 한다. Clojure는 Common Lisp 방식인데 auto-gensym이라는 것이 있다. 매크로 정의 안에서 #으로 끝나는 변수는 gensym된 변수가 된다. 미리 let으로 gensym해서 만들어 놓을 필요가 없다. 그런데 auto-gensym은 defmacro 컴파일 시간에 미리 gensym하는 거라서 Common Lisp처럼 매크로 확장시마다 let으로 gensym하는 것과는 의미가 다르다. 참고: ..

Programming 2025.01.07

CodeConvert 소개

google에서 convert go to rust 라고 치면 맨 위에 나오는 사이트이다. URL: Free Code Converter CodeConvert AI - Convert code with a click of a button Convert from ActionScript www.codeconvert.ai AI를 이용해서 프로그램 소스 코드를 다른 프로그래밍 언어로 변환해준다. 지원하는 언어는 C, C++, Common Lisp, Go, Rust, Racket, Java 등 다양하다. 예제로 MNIST를 Go에서 Rust로 변환해봤는데, csv 파일 읽는 공통 부분을 함수로 빼냈다! 대단하다. let (answer, data) = (&line[0], &line[1..]); 부분도 원래 없는 answ..

Programming 2024.04.20