{-# LANGUAGE ScopedTypeVariables #-}
module Main (main) where
import Data.List()
import Data.String()
import Data.List.Split
import Data.Function
import Data.Maybe
import System.Environment
main = do
args <- getArgs
putStrLn $ base64encode $ head args
intToBase64 = (fromJust.) $ flip lookup $ zip [0..63] "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
base64ToInt = (fromJust.) $ flip lookup $ zip "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" [0..63]
base64encode :: String -> String
base64encode = concatMap translate . chunksOf 6 . concatMap (toBits8 . fromEnum)
translate x =
(intToBase64 . binToInt) x : case length x of
2 -> "=="
4 -> "="
6 -> ""
binToInt :: [Bool] -> Int
binToInt = sum . mulWeight . map fromEnum
where
mulWeight = map (\(i,x)->x * 2^i) . zip [0..] . reverse
boolToString :: Bool -> String
boolToString True = "1"
boolToString False = "0"
toBitsBySize :: forall a t. (Integral t, Integral a) => t -> a -> [Bool]
toBitsBySize 0 x = []
toBitsBySize sz 0 = [False | i <- [1..sz]]
toBitsBySize sz x = if k == 0
then False : toBitsBySize n x
else True : toBitsBySize n (x - k*m)
where n = sz - 1
m = 2^n
k = x `div` m
toBits8 = toBitsBySize 8
{-# LANGUAGE ScopedTypeVariables #-} 这行什么意思?
但是我看到的貌似是 Emacs 的 ghc-mod 最好
寫c的是不是習慣無視compile warning啊?
每次compile大一點的lib,都是warning不用錢一直刷
近年写点小 C 都是用 clang,那才不敢忽视 warn
如果写点大型的,不忽视 warn 等下爆炸就不知道哪里改起了
有點想學新語言(#
不過還是先玩好Python好了qwq
that's why you need a server
另外剛才我學會了 __name__ = __main__
因为会开启优化,如果你用的是 pypy 还是 cpython
嘛 學到新技能的時候應該是很高興 想跟其他人分享的
name = "__main__" 是防止 import 时执行
新加坡国立大学一年就出了好几个 paper 做 JS GPU interop
try:
while true:
print("true")
except:
print("error")
10^200 = 1.0000000000000005e+200
@jimchen5209 認為 @Zeinok 的意思是: consolas
/*
Gregory–Leibniz series
π = 4/1 - 4/3 + 4/5 - 4/7 + 4/9 - 4/11 ....
*/
var pi = 0;
var i = 1;
while(true){
pi = pi + ( 4 / i ) - ( 4 / ( i + 2 ) );
i += 4;
console.log(pi);
}
pi = 0
i = 1
while True:
pi = pi + (4 / i ) - ( 4 / (i+2))
i += 4
print (pi)
如果是Python2的話 記住要把他改成Float
/*
Nilakantha's series
π = 3 + 4/(2x3x4) - 4/(4x5x6) + 4/(6x7x8) - 4/(8x9x10) + .....
*/
var pi = 3;
var i = 2;
while(true){
pi = pi + ( 4 / (i*(i+1)*(i+2)) ) - ( 4 / ((i+2)*(i+3)*(i+4)) );
i += 4;
console.log(pi);
}
# pi
pi = 3
i = 2
while True:
pi = pi + (4/(i*(i+1)*(i+2)))-(4/((i+2)*(i+3)*(i+4)))
i +=4
print(pi)
為什麼CPU都是一顆一顆賣 GPU就都是跟顯卡綁在一起
好像沒有內建GPU插槽的主機版,不過我覺得要做的話,其實做得出來
你要顯示就要GPU,GPU是顯示卡的一部份,所以他在顯示卡上
你要運算就要CPU CPU是主板的一部分 所以他在主板上
不然你想算完再過主機板然後放進RAM然後再過一次主機板然後到某個顯示孔嗎
你不做成一體的你要怎樣讓他頻寬大然後又統一規格又能替換
你的意思是既然可以單獨換CPU不換主板
那為什麼GPU不能單獨換GPU不換那張卡ㄇ?
其實GPU也是可以跟CPU一樣啊
其實Intel內顯就是跟輸出供電分離的單獨GPU啊(雖然跟CPU共封裝)
如果全部都跟主板綁在一起,那一個CPU就要出搭配很多主機板的型號XD
這樣很麻煩
GPU需要的頻寬能有多寬
pcie3.0 x16還不都是從CPU拉出來的
那是送資料給GPU去運算的頻寬,不包含GPU和VRAM之間的頻寬阿
RAM一般走線不也是在CPU旁而已
GPU的RAM也是啊 是有差逆
GPU 是負責處理圖形, 顯卡是負責輸出訊息給螢幕的
因為電路要做成統一規格然後頻寬要夠大而且還要能拆裝不是嗎
所以我說那個CPU和RAM之間的頻寬和GPU和VRAM之間的頻寬差異
也沒多大啊
Intel的CPU+腳座也沒比BGA大多少啊
大部分零件都整合的話搞不好連RAM都焊死,這樣要擴充就要從廠商或自己解焊,很麻煩🙈
電阻燒斷 -> 換整組
電容爆掉 -> 換整組
焊點脫焊 -> 換整組
所以顯卡之所以會都配好這樣賣是不是因為其實組合的方式都蠻固定的?
就像是買710的人不會去配8G顯存這樣(?
對要用顯卡做怪事的來說
可能VRAM遠遠不夠用也說不定XDDD
這裡搞不好就有一個叫 code 的 user(?)
function callback() { for(;;); } (X
觉得…… 如果用 Typescript 写一个 Electron App
用 electron 是为了用 HTML 和 JS 排版
多核心,需要处理 message passing 还有很多东西
我建议 《Haskell programming from First Principles》
await Promise.all[counter(), pi()]
Koru 心想好像應該造訪一次 FB 的 Data Center
然後 FB 就死掉了
有人知道什麼原因造成Invalid DNS record identifier
所以一定要透過開放標準的 PCI Express 跟 CPU 溝通
borrower, ownership 只是对内存操作做的抽象
用不好 Python,觉得 Go 和 Python 差不多,听到运行效率高,而且很多大神用得好,才进 Go
QQ難怪我覺的不自然(那段的意思應該是:因為我註冊時被登記成男生了
窩剛剛和 koru 在 deep telegeam 避難
@jimchen5209 認為 @windasd 的意思是: 現在好像正常了?