Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет nancygold ([info]nancygold)
@ 2024-08-14 19:02:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Настроение: amused
Entry tags:computing

The Main Difference Between Symta and Python

$ time ./symta.exe -e 'I 0; while I < 100000000: ++I; say I'
100000000
No
real    0m 1.40s
user    0m 0.14s
sys     0m 0.00s

$ time python -c "i = 0; [i := i+1 for _ in range(100000000)]; print(i)"
100000000
real    0m 6.31s
user    0m 1.25s
sys     0m 0.71s

$ time ./symta.exe -e 'I 0; while I < 1000000000: ++I; say I'
1000000000
No
real    0m 13.74s
user    0m 9.20s
sys     0m 0.01s

$ time python -c "i = 0; [i := i+1 for _ in range(1000000000)]; print(i)"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "<string>", line 1, in <listcomp>
MemoryError
Command exited with non-zero status 1
real    0m 10.72s
user    0m 4.00s
sys     0m 1.43s



Nope. Symta doesn't compile to native code.


(Читать комментарии) - (Добавить комментарий)


(Анонимно)
2024-08-14 20:19 (ссылка)
Also, you are cheating a bit. Python is 30% with a while loop(on my machine at least):

time python -c $'i = 0\nwhile i<100000000: i+=1\nprint(i)'

real 0m4.532s
user 0m4.327s
sys 0m0.170s

And it doesn't crash on the larger number:

time python -c $'i = 0\nwhile i<1000000000: i+=1\nprint(i)'

real 0m45.012s
user 0m42.086s
sys 0m1.606s

(Ответить) (Ветвь дискуссии)


(Анонимно)
2024-08-14 20:23 (ссылка)
>30%

30% faster всмысле

(Ответить) (Уровень выше)


[info]nancygold
2024-08-14 20:24 (ссылка)
Yeah. It indeed works. I was just using whatever ChatGPT gave me.

(Ответить) (Уровень выше)


(Читать комментарии) -